From f3ab06b3d470b2e454b2d042e043ba606defb631 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 15:38:19 +0300 Subject: [PATCH 01/80] Bump precommit hooks. --- .pre-commit-config.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 48bd7f9..e4081de 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,17 +5,17 @@ exclude: '^(.tox/|ci/templates/|src/hunter.(pth|embed)$|src/hunter/vendor/|.bumpversion.cfg$|.*\.c$)' # Note the order is intentional to avoid multiple passes of the hooks repos: - - repo: https://github.com/charliermarsh/ruff-pre-commit - rev: v0.0.262 + - repo: https://github.com/astral-sh/ruff-pre-commit + rev: v0.4.2 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix, --show-fixes] - repo: https://github.com/psf/black - rev: 23.3.0 + rev: 24.4.2 hooks: - id: black - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 + rev: v4.6.0 hooks: - id: trailing-whitespace exclude_types: @@ -28,6 +28,6 @@ repos: - id: debug-statements exclude: '^tests/sample*|src/hunter/actions.py' - repo: https://github.com/MarcoGorelli/cython-lint - rev: v0.1.8 + rev: v0.16.2 hooks: - id: cython-lint From b70190e480c2ae6b516515dde52b099b00057ec2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 16:14:38 +0300 Subject: [PATCH 02/80] Bump min python to 3.8, bump cython in tests, and various skel updates. Also docs theme switch to furo. --- .bumpversion.cfg | 4 ++ .cookiecutterrc | 14 +++--- .coveragerc | 7 ++- .pre-commit-config.yaml | 2 +- .readthedocs.yml | 4 ++ LICENSE | 2 +- README.rst | 10 ++-- ci/bootstrap.py | 2 +- .../.github/workflows/github-actions.yml | 30 ++++++++--- docs/conf.py | 18 +++---- docs/requirements.txt | 2 +- pyproject.toml | 28 ++++++----- setup.py | 50 ++++++++++--------- tests/setup.py | 38 +++++++------- tox.ini | 16 +++--- 15 files changed, 131 insertions(+), 96 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index f86dfcc..b663f17 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -22,3 +22,7 @@ replace = version = release = '{new_version}' [bumpversion:file:src/hunter/__init__.py] search = __version__ = '{current_version}' replace = __version__ = '{new_version}' + +[bumpversion:file:.cookiecutterrc] +search = version: {current_version} +replace = version: {new_version} diff --git a/.cookiecutterrc b/.cookiecutterrc index 2dd10c3..e7d0fe6 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -1,9 +1,6 @@ # Generated by cookiepatcher, a small shim around cookiecutter (pip install cookiepatcher) default_context: - allow_tests_inside_package: 'no' - c_extension_function: '-' - c_extension_module: '-' c_extension_optional: 'yes' c_extension_support: cython codacy: 'no' @@ -17,17 +14,19 @@ default_context: email: contact@ionelmc.ro formatter_quote_style: single full_name: Ionel Cristian Mărieș + function_name: compute github_actions: 'yes' github_actions_osx: 'yes' github_actions_windows: 'yes' license: BSD 2-Clause License + module_name: core package_name: hunter pre_commit: 'yes' project_name: Hunter project_short_description: Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API and a convenient terminal API (see `Environment variable activation `_). pypi_badge: 'yes' pypi_disable_upload: 'no' - release_date: '2022-09-27' + release_date: '2023-04-26' repo_hosting: github.com repo_hosting_domain: github.com repo_main_branch: master @@ -38,10 +37,11 @@ default_context: sphinx_docs: 'yes' sphinx_docs_hosting: https://python-hunter.readthedocs.io/ sphinx_doctest: 'no' - sphinx_theme: sphinx-py3doc-enhanced-theme + sphinx_theme: furo test_matrix_separate_coverage: 'yes' - version: 3.5.1 + tests_inside_package: 'no' + version: 3.6.1 version_manager: bump2version website: https://blog.ionelmc.ro year_from: '2015' - year_to: '2023' + year_to: '2024' diff --git a/.coveragerc b/.coveragerc index b74227a..2d8a895 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,6 +1,11 @@ +[paths] +source = src + [run] branch = true -source = src +source = + src + tests parallel = true plugins = Cython.Coverage diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index e4081de..5177597 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -9,7 +9,7 @@ repos: rev: v0.4.2 hooks: - id: ruff - args: [--fix, --exit-non-zero-on-fix, --show-fixes] + args: [--fix, --exit-non-zero-on-fix, --show-fixes, --unsafe-fixes] - repo: https://github.com/psf/black rev: 24.4.2 hooks: diff --git a/.readthedocs.yml b/.readthedocs.yml index 59ff5c0..009a913 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -3,6 +3,10 @@ version: 2 sphinx: configuration: docs/conf.py formats: all +build: + os: ubuntu-22.04 + tools: + python: "3" python: install: - requirements: docs/requirements.txt diff --git a/LICENSE b/LICENSE index 0906fcc..d50735b 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ BSD 2-Clause License -Copyright (c) 2015-2023, Ionel Cristian Mărieș. All rights reserved. +Copyright (c) 2015-2024, Ionel Cristian Mărieș. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/README.rst b/README.rst index 92421af..9183b9e 100644 --- a/README.rst +++ b/README.rst @@ -10,13 +10,11 @@ Overview * - docs - |docs| * - tests - - | |github-actions| - | |codecov| + - |github-actions| |codecov| * - package - - | |version| |wheel| |supported-versions| |supported-implementations| - | |commits-since| + - |version| |wheel| |supported-versions| |supported-implementations| |commits-since| .. |docs| image:: https://readthedocs.org/projects/python-hunter/badge/?style=flat - :target: https://python-hunter.readthedocs.io/ + :target: https://readthedocs.org/projects/python-hunter/ :alt: Documentation Status .. |github-actions| image:: https://github.com/ionelmc/python-hunter/actions/workflows/github-actions.yml/badge.svg @@ -25,7 +23,7 @@ Overview .. |codecov| image:: https://codecov.io/gh/ionelmc/python-hunter/branch/master/graphs/badge.svg?branch=master :alt: Coverage Status - :target: https://codecov.io/github/ionelmc/python-hunter + :target: https://app.codecov.io/github/ionelmc/python-hunter .. |version| image:: https://img.shields.io/pypi/v/hunter.svg :alt: PyPI Package latest release diff --git a/ci/bootstrap.py b/ci/bootstrap.py index 9b807b9..f3c9a7e 100755 --- a/ci/bootstrap.py +++ b/ci/bootstrap.py @@ -64,7 +64,7 @@ def main(): tox_environments = [line for line in tox_environments if line.startswith('py')] for template in templates_path.rglob('*'): if template.is_file(): - template_path = str(template.relative_to(templates_path)) + template_path = template.relative_to(templates_path).as_posix() destination = base_path / template_path destination.parent.mkdir(parents=True, exist_ok=True) destination.write_text(jinja.get_template(template_path).render(tox_environments=tox_environments)) diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index c98c13e..7dad0fb 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -1,5 +1,5 @@ name: build -on: [push, pull_request] +on: [push, pull_request, workflow_dispatch] jobs: test: name: {{ '${{ matrix.name }}' }} @@ -22,9 +22,9 @@ jobs: {% for env in tox_environments %} {% set prefix = env.split('-')[0] -%} {% if prefix.startswith('pypy') %} -{% set python %}pypy-{{ prefix[4] }}.{{ prefix[5] }}{% endset %} +{% set python %}pypy-{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% set cpython %}pp{{ prefix[4:5] }}{% endset %} -{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5] }}{% endset %} +{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% else %} {% set python %}{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} {% set cpython %}cp{{ prefix[2:] }}{% endset %} @@ -46,7 +46,10 @@ jobs: python: '{{ python }}' toxpython: '{{ toxpython }}' python_arch: '{{ python_arch }}' - tox_env: '{{ env }}{% if 'cover' in env %},codecov{% endif %}' + tox_env: '{{ env }}' +{% if 'cover' in env %} + cover: true +{% endif %} cibw_arch: '{{ cibw_arch }}' {% if env.endswith('cython-nocov') and not prefix.startswith('pypy') %} cibw_build: '{{ cpython }}-{{ wheel_arch }}' @@ -58,14 +61,14 @@ jobs: {% endfor %} {% endfor %} steps: - - uses: docker/setup-qemu-action@v2 + - uses: docker/setup-qemu-action@v3 if: matrix.cibw_arch == 'aarch64' with: platforms: arm64 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: {{ '${{ matrix.python }}' }} architecture: {{ '${{ matrix.python_arch }}' }} @@ -105,6 +108,11 @@ jobs: !matrix.cibw_build run: > tox -e {{ '${{ matrix.tox_env }}' }} -v + - uses: codecov/codecov-action@v3 + if: matrix.cover + with: + verbose: true + flags: {{ '${{ matrix.tox_env }}' }} - name: check wheel if: matrix.cibw_build run: twine check wheelhouse/*.whl @@ -113,3 +121,11 @@ jobs: if: matrix.cibw_build with: path: wheelhouse/*.whl + finish: + needs: test + if: {{ '${{ always() }}' }} + runs-on: ubuntu-latest + steps: + - uses: codecov/codecov-action@v3 + with: + CODECOV_TOKEN: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %} diff --git a/docs/conf.py b/docs/conf.py index dad6e8e..3c5b13e 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,7 +1,4 @@ import os -import traceback - -import sphinx_py3doc_enhanced_theme os.environ['PUREPYTHONHUNTER'] = 'yes' @@ -20,7 +17,7 @@ source_suffix = '.rst' master_doc = 'index' project = 'Hunter' -year = '2015-2023' +year = '2015-2024' author = 'Ionel Cristian Mărieș' copyright = f'{year}, {author}' try: @@ -28,17 +25,19 @@ version = release = get_distribution('hunter').version except Exception: + import traceback + traceback.print_exc() version = release = '3.6.1' pygments_style = 'trac' templates_path = ['.'] extlinks = { - 'issue': ('https://github.com/ionelmc/python-hunter/issues/%s', '#'), - 'pr': ('https://github.com/ionelmc/python-hunter/pull/%s', 'PR #'), + 'issue': ('https://github.com/ionelmc/python-hunter/issues/%s', '#%s'), + 'pr': ('https://github.com/ionelmc/python-hunter/pull/%s', 'PR #%s'), } -html_theme = 'sphinx_py3doc_enhanced_theme' -html_theme_path = [sphinx_py3doc_enhanced_theme.get_html_theme_path()] + +html_theme = 'furo' html_theme_options = { 'githuburl': 'https://github.com/ionelmc/python-hunter/', } @@ -46,9 +45,6 @@ html_use_smartypants = True html_last_updated_fmt = '%b %d, %Y' html_split_index = False -html_sidebars = { - '**': ['searchbox.html', 'globaltoc.html', 'sourcelink.html'], -} html_short_title = f'{project}-{version}' napoleon_use_ivar = True diff --git a/docs/requirements.txt b/docs/requirements.txt index 6234ed0..c03e307 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,2 @@ sphinx>=1.3 -sphinx-py3doc-enhanced-theme>=2.3.2 +furo diff --git a/pyproject.toml b/pyproject.toml index 68667ca..bc129a9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,19 +7,25 @@ requires = [ build-backend = "backend" backend-path = ["build_backend"] -[tool.ruff.per-file-ignores] +[tool.ruff] +extend-exclude = ["static", "ci/templates"] +line-length = 140 +src = ["src", "tests"] +target-version = "py38" +[tool.cython-lint] +max-line-length = 140 + +[tool.ruff.lint.per-file-ignores] "ci/*" = ["S"] "tests/*" = ["ALL"] -[tool.ruff] -extend-exclude = ["static", "ci/templates"] +[tool.ruff.lint] ignore = [ "RUF001", # ruff-specific rules ambiguous-unicode-character-string "S101", # flake8-bandit assert "S308", # flake8-bandit suspicious-mark-safe-usage "E501", # pycodestyle line-too-long ] -line-length = 140 select = [ "B", # flake8-bugbear "C4", # flake8-comprehensions @@ -40,22 +46,20 @@ select = [ "UP", # pyupgrade "W", # pycodestyle warnings ] -src = ["src", "tests"] -target-version = "py37" -[tool.ruff.flake8-pytest-style] +[tool.ruff.lint.flake8-pytest-style] fixture-parentheses = false mark-parentheses = false -[tool.ruff.isort] +[tool.ruff.lint.flake8-quotes] +inline-quotes = "single" + +[tool.ruff.lint.isort] extra-standard-library = ["opcode"] forced-separate = ["conftest"] force-single-line = true [tool.black] line-length = 140 -target-version = ["py37"] +target-version = ["py38"] skip-string-normalization = true - -[tool.ruff.flake8-quotes] -inline-quotes = "single" diff --git a/setup.py b/setup.py index 6bc77a7..8ac9838 100755 --- a/setup.py +++ b/setup.py @@ -2,13 +2,13 @@ import os import re import sys -from distutils.command.build import build from itertools import chain from pathlib import Path from setuptools import Extension from setuptools import find_packages from setuptools import setup +from setuptools.command.build import build from setuptools.command.build_ext import build_ext from setuptools.command.develop import develop from setuptools.command.easy_install import easy_install @@ -139,11 +139,11 @@ def read(*names, **kwargs): 'Programming Language :: Python', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3 :: Only', - 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Topic :: Utilities', @@ -163,19 +163,21 @@ def read(*names, **kwargs): 'code', 'source', ], - python_requires='>=3.7', + python_requires='>=3.8', install_requires=[], extras_require={ ':platform_system != "Windows"': ['manhole >= 1.5'], }, - setup_requires=[ - 'setuptools_scm>=3.3.1,!=4.0.0', - 'cython', - ] - if Cython - else [ - 'setuptools_scm>=3.3.1,!=4.0.0', - ], + setup_requires=( + [ + 'setuptools_scm>=3.3.1,!=4.0.0', + 'cython', + ] + if Cython + else [ + 'setuptools_scm>=3.3.1,!=4.0.0', + ] + ), entry_points={ 'console_scripts': [ 'hunter-trace = hunter.remote:main', @@ -188,17 +190,19 @@ def read(*names, **kwargs): 'develop': DevelopWithPTH, 'build_ext': OptionalBuildExt, }, - ext_modules=[] - if hasattr(sys, 'pypy_version_info') - else [ - Extension( - str(path.relative_to('src').with_suffix('')).replace(os.sep, '.'), - sources=[str(path)], - extra_compile_args=CFLAGS.split(), - extra_link_args=LFLAGS.split(), - include_dirs=[str(path.parent)], - ) - for path in Path('src').glob('**/*.pyx' if Cython else '**/*.c') - ], + ext_modules=( + [] + if hasattr(sys, 'pypy_version_info') + else [ + Extension( + str(path.relative_to('src').with_suffix('')).replace(os.sep, '.'), + sources=[str(path)], + extra_compile_args=CFLAGS.split(), + extra_link_args=LFLAGS.split(), + include_dirs=[str(path.parent)], + ) + for path in Path('src').glob('**/*.pyx' if Cython else '**/*.c') + ] + ), distclass=BinaryDistribution, ) diff --git a/tests/setup.py b/tests/setup.py index c8203db..ce9de4d 100644 --- a/tests/setup.py +++ b/tests/setup.py @@ -25,21 +25,25 @@ setup( package_dir={'': 'tests'}, zip_safe=False, - setup_requires=[ - 'cython', - ] - if Cython - else [], - ext_modules=[] - if hasattr(sys, 'pypy_version_info') - else [ - Extension( - splitext(relpath(path, 'tests').replace(os.sep, '.'))[0], - sources=[path], - include_dirs=[dirname(path), 'src', 'src/hunter'], - define_macros=[('CYTHON_TRACE', '1')], - ) - for root, _, _ in os.walk('tests') - for path in glob(join(root, '*.pyx' if Cython else '*.c')) - ], + setup_requires=( + [ + 'cython', + ] + if Cython + else [] + ), + ext_modules=( + [] + if hasattr(sys, 'pypy_version_info') + else [ + Extension( + splitext(relpath(path, 'tests').replace(os.sep, '.'))[0], + sources=[path], + include_dirs=[dirname(path), 'src', 'src/hunter'], + define_macros=[('CYTHON_TRACE', '1')], + ) + for root, _, _ in os.walk('tests') + for path in glob(join(root, '*.pyx' if Cython else '*.c')) + ] + ), ) diff --git a/tox.ini b/tox.ini index 508ceb3..9e3d52e 100644 --- a/tox.ini +++ b/tox.ini @@ -14,20 +14,20 @@ envlist = clean, check, docs, - {py37,py38,py39,py310,py311,pypy37,pypy38,pypy39}-{pure,cython}-{cover,nocov}, + {py38,py39,py310,py311,py312,pypy38,pypy39,pypy310}-{pure,cython}-{cover,nocov}, report ignore_basepython_conflict = true [testenv] basepython = - pypy37: {env:TOXPYTHON:pypy3.7} pypy38: {env:TOXPYTHON:pypy3.8} pypy39: {env:TOXPYTHON:pypy3.9} - py37: {env:TOXPYTHON:python3.7} + pypy310: {env:TOXPYTHON:pypy3.10} py38: {env:TOXPYTHON:python3.8} py39: {env:TOXPYTHON:python3.9} py310: {env:TOXPYTHON:python3.10} py311: {env:TOXPYTHON:python3.11} + py312: {env:TOXPYTHON:python3.12} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests @@ -42,7 +42,7 @@ deps = pytest pytest-benchmark cover: pytest-cov - {cython,cover}: cython==3.0.0b2 + {cython,cover}: cython==3.0.10 manhole==1.8.0 process-tests setuptools-scm @@ -77,7 +77,7 @@ commands = basepython = {env:TOXPYTHON:python} pip_pre = true deps = - cython==3.0.0b2 + cython==3.0.10 skip_install = true commands = {posargs:python setup.py clean --all build_ext --force} @@ -104,7 +104,7 @@ commands = [testenv:codecov] deps = codecov - cython==3.0.0b2 + cython==3.0.10 skip_install = true setenv = PYTHONPATH={toxinidir}/src @@ -114,7 +114,7 @@ commands = [testenv:report] deps = coverage - cython==3.0.0b2 + cython==3.0.10 skip_install = true setenv = PYTHONPATH={toxinidir}/src @@ -127,4 +127,4 @@ commands = coverage erase skip_install = true deps = coverage - cython==3.0.0b2 + cython==3.0.10 From 5c463b06a255b3bd54764341015495cd48504aca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 16:43:18 +0300 Subject: [PATCH 03/80] Fix a bunch of linting issues and upgrade a lot of string formatting to f-strings. --- build_backend/backend.py | 2 +- pyproject.toml | 1 + src/hunter/_event.pxd | 1 + src/hunter/_event.pyx | 4 +-- src/hunter/_predicates.pxd | 6 ++++ src/hunter/_predicates.pyx | 5 ++- src/hunter/_tracer.pxd | 1 + src/hunter/actions.py | 48 +++++++++++++-------------- src/hunter/event.py | 8 ++--- src/hunter/predicates.py | 43 +++++++----------------- src/hunter/util.py | 67 +++++++++++--------------------------- tests/eviltracer.pxd | 1 + tests/sample5.pyx | 1 + 13 files changed, 72 insertions(+), 116 deletions(-) diff --git a/build_backend/backend.py b/build_backend/backend.py index b87cef1..da6a44f 100644 --- a/build_backend/backend.py +++ b/build_backend/backend.py @@ -2,4 +2,4 @@ from setuptools.build_meta import * # noqa if hasattr(build_meta, 'build_editable'): - del build_editable + del build_editable # noqa: F821 diff --git a/pyproject.toml b/pyproject.toml index bc129a9..b50de29 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,6 +23,7 @@ max-line-length = 140 ignore = [ "RUF001", # ruff-specific rules ambiguous-unicode-character-string "S101", # flake8-bandit assert + "S307", "S308", # flake8-bandit suspicious-mark-safe-usage "E501", # pycodestyle line-too-long ] diff --git a/src/hunter/_event.pxd b/src/hunter/_event.pxd index 8b3d041..0810593 100644 --- a/src/hunter/_event.pxd +++ b/src/hunter/_event.pxd @@ -8,6 +8,7 @@ cdef extern from *: void PyFrame_FastToLocals(FrameType) int PyFrame_GetLineNumber(FrameType) + @cython.final cdef class Event: cdef: diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index 8823d12..014cee7 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -249,9 +249,9 @@ cdef class Event: elif filename.endswith(('.pyc', '.pyo')): filename = filename[:-1] elif filename.endswith(('.so', '.pyd')): - basename = CYTHON_SUFFIX_RE.sub('', filename) + cybasename = CYTHON_SUFFIX_RE.sub('', filename) for ext in ('.pyx', '.py'): - cyfilename = basename + ext + cyfilename = cybasename + ext if exists(cyfilename): filename = cyfilename break diff --git a/src/hunter/_predicates.pxd b/src/hunter/_predicates.pxd index a5e68e6..3e365e3 100644 --- a/src/hunter/_predicates.pxd +++ b/src/hunter/_predicates.pxd @@ -18,27 +18,32 @@ cdef class Query: readonly tuple query_regex readonly tuple query_startswith + @cython.final cdef class And: cdef: readonly tuple predicates + @cython.final cdef class Or: cdef: readonly tuple predicates + @cython.final cdef class Not: cdef: readonly object predicate + @cython.final cdef class When: cdef: readonly object condition readonly tuple actions + @cython.final cdef class From: cdef: @@ -48,6 +53,7 @@ cdef class From: readonly int origin_depth readonly int origin_calls + @cython.final cdef class Backlog: cdef: diff --git a/src/hunter/_predicates.pyx b/src/hunter/_predicates.pyx index cdd5368..617934d 100644 --- a/src/hunter/_predicates.pyx +++ b/src/hunter/_predicates.pyx @@ -73,6 +73,7 @@ cdef Event_getter_typedef[17] Event_getters = [ Event_get_builtin, ] + @cython.final cdef class QueryEntry: cdef Event_getter_typedef getter @@ -94,6 +95,7 @@ cdef class QueryEntry: and self.getter_index == ( other).getter_index ) + @cython.final cdef class Query: """ @@ -125,8 +127,6 @@ cdef class Query: ``threadid``, ``threadname``. """ - cdef void* prefix_getter_pointer - query_eq = {} query_startswith = {} query_endswith = {} @@ -196,7 +196,6 @@ cdef class Query: self.query_gt = tuple(sorted(query_gt.items())) self.query_gte = tuple(sorted(query_gte.items())) - def __str__(self): return 'Query(%s)' % ( ', '.join([ diff --git a/src/hunter/_tracer.pxd b/src/hunter/_tracer.pxd index 81eb15a..91a16b5 100644 --- a/src/hunter/_tracer.pxd +++ b/src/hunter/_tracer.pxd @@ -31,6 +31,7 @@ cdef extern from "pystate.h": Py_tracefunc c_tracefunc Py_tracefunc c_profilefunc + @cython.final cdef class Tracer: cdef: diff --git a/src/hunter/actions.py b/src/hunter/actions.py index e11ef7d..1c339a7 100644 --- a/src/hunter/actions.py +++ b/src/hunter/actions.py @@ -6,6 +6,7 @@ from collections import defaultdict from itertools import islice from os import getpid +from typing import ClassVar from . import config from .util import BUILTIN_SYMBOLS @@ -67,10 +68,10 @@ def __eq__(self, other): return type(self) is type(other) and self.klass == other.klass and self.kwargs == other.kwargs def __str__(self): - return '{0.__class__.__name__}(klass={0.klass}, kwargs={0.kwargs})'.format(self) + return f'{self.__class__.__name__}(klass={self.klass}, kwargs={self.kwargs})' def __repr__(self): - return '{0.__class__.__name__}(klass={0.klass!r}, kwargs={0.kwargs!r})'.format(self) + return f'{self.__class__.__name__}(klass={self.klass!r}, kwargs={self.kwargs!r})' def __call__(self, event): """ @@ -87,10 +88,10 @@ def __eq__(self, other): return type(self) is type(other) and self.options == other.options def __str__(self): - return '{0.__class__.__name__}(options={0.options})'.format(self) + return f'{self.__class__.__name__}(options={self.options})' def __repr__(self): - return '{0.__class__.__name__}(options={0.options!r})'.format(self) + return f'{self.__class__.__name__}(options={self.options!r})' def __call__(self, event): import manhole @@ -104,7 +105,7 @@ class ColorStreamAction(Action): Baseclass for your custom action. Just implement your own ``__call__``. """ - _stream_cache = {} + _stream_cache: ClassVar = {} _stream = None _tty = None _repr_func = None @@ -151,18 +152,18 @@ def __eq__(self, other): def __str__(self): return ( - '{0.__class__.__name__}(stream={0.stream}, force_colors={0.force_colors}, ' - 'filename_alignment={0.filename_alignment}, thread_alignment={0.thread_alignment}, ' - 'pid_alignment={0.pid_alignment} repr_limit={0.repr_limit}, ' - 'repr_func={0.repr_func})'.format(self) + f'{self.__class__.__name__}(stream={self.stream}, force_colors={self.force_colors}, ' + f'filename_alignment={self.filename_alignment}, thread_alignment={self.thread_alignment}, ' + f'pid_alignment={self.pid_alignment} repr_limit={self.repr_limit}, ' + f'repr_func={self.repr_func})' ) def __repr__(self): return ( - '{0.__class__.__name__}(stream={0.stream!r}, force_colors={0.force_colors!r}, ' - 'filename_alignment={0.filename_alignment!r}, thread_alignment={0.thread_alignment!r}, ' - 'pid_alignment={0.pid_alignment!r} repr_limit={0.repr_limit!r}, ' - 'repr_func={0.repr_func!r})'.format(self) + f'{self.__class__.__name__}(stream={self.stream!r}, force_colors={self.force_colors!r}, ' + f'filename_alignment={self.filename_alignment!r}, thread_alignment={self.thread_alignment!r}, ' + f'pid_alignment={self.pid_alignment!r} repr_limit={self.repr_limit!r}, ' + f'repr_func={self.repr_func!r})' ) @property @@ -275,7 +276,7 @@ def filename_prefix(self, event=None): filename = f'[...]{filename[5 - self.filename_alignment :]}' return '{:>{}}{} '.format(filename, self.filename_alignment, lineno, **self.other_colors) else: - return '{:>{}} '.format('', self.filename_alignment) + return f'{"":>{self.filename_alignment}} ' def pid_prefix(self): """ @@ -287,7 +288,7 @@ def pid_prefix(self): pid_align = self.pid_alignment else: pid = pid_align = '' - return '{:{}}'.format(pid, pid_align) + return f'{pid:{pid_align}}' def thread_prefix(self, event): """ @@ -302,7 +303,7 @@ def thread_prefix(self, event): threading_support = len(self.seen_threads) > 1 thread_name = threading.current_thread().name if threading_support else '' thread_align = self.thread_alignment if threading_support else '' - return '{:{}}'.format(thread_name, thread_align) + return f'{thread_name:{thread_align}}' def output(self, format_str, *args, **kwargs): """ @@ -431,7 +432,7 @@ class CallPrinter(CodePrinter): EVENT_COLORS = CALL_COLORS - locals = defaultdict(list) + locals: ClassVar = defaultdict(list) @classmethod def cleanup(cls): @@ -483,9 +484,11 @@ def __call__(self, event): '{VARS}{0}{VARS-NAME}{1}{VARS}={RESET}{2}'.format( prefix, var_display, - self.try_str(event.locals.get(var_lookup, MISSING)) - if event.detached - else self.try_repr(event.locals.get(var_lookup, MISSING)), + ( + self.try_str(event.locals.get(var_lookup, MISSING)) + if event.detached + else self.try_repr(event.locals.get(var_lookup, MISSING)) + ), **self.other_colors, ) for prefix, var_lookup, var_display in get_arguments(code) @@ -860,10 +863,7 @@ def __call__(self, event): ), ) else: - template = '{{}}{{}}{{}}{{CONT}}:{{BRIGHT}}{{fore(BLUE)}}{} {{KIND}}<= {{BRIGHT}}{{fore(YELLOW)}}no frames available {{NORMAL}}(detached={})'.format( - event.function, - event.detached, - ) + template = f'{{}}{{}}{{}}{{CONT}}:{{BRIGHT}}{{fore(BLUE)}}{event.function} {{KIND}}<= {{BRIGHT}}{{fore(YELLOW)}}no frames available {{NORMAL}}(detached={event.detached})' template += '{RESET}\n' self.output( template, diff --git a/src/hunter/event.py b/src/hunter/event.py index 7767bd2..17fcb0a 100644 --- a/src/hunter/event.py +++ b/src/hunter/event.py @@ -116,12 +116,8 @@ def __init__( self.detached = False def __repr__(self): - return ''.format( - self.kind, - self.function, - self.module, - self.filename, - self.lineno, + return ( + f'' ) def __eq__(self, other): diff --git a/src/hunter/predicates.py b/src/hunter/predicates.py index b49d756..dfa6e0e 100644 --- a/src/hunter/predicates.py +++ b/src/hunter/predicates.py @@ -139,7 +139,7 @@ def __init__(self, **query): self.query_gte = tuple(sorted(query_gte.items())) def __str__(self): - return 'Query(%s)' % ( + return 'Query(%s)' % ( # noqa: UP031 ', '.join( ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) for kind, mapping in [ @@ -159,7 +159,7 @@ def __str__(self): ) def __repr__(self): - return '' % ' '.join( + return '' % ' '.join( # noqa: UP031 fmt % (mapping,) for fmt, mapping in [ ('query_eq=%r', self.query_eq), @@ -289,10 +289,7 @@ def __str__(self): ) def __repr__(self): - return ''.format( - self.condition, - self.actions, - ) + return f'' def __eq__(self, other): return isinstance(other, When) and self.condition == other.condition and self.actions == other.actions @@ -367,11 +364,7 @@ def __init__(self, condition, predicate=None, watermark=0): self._origin_calls = None def __str__(self): - return 'From({}, {}, watermark={})'.format( - self.condition, - self.predicate, - self.watermark, - ) + return f'From({self.condition}, {self.predicate}, watermark={self.watermark})' def __repr__(self): return f'' @@ -444,7 +437,7 @@ def __init__(self, *predicates): self.predicates = predicates def __str__(self): - return 'And(%s)' % ', '.join(str(p) for p in self.predicates) + return f'And({", ".join(str(p) for p in self.predicates)})' def __repr__(self): return f'' @@ -507,7 +500,7 @@ def __init__(self, *predicates): self.predicates = predicates def __str__(self): - return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) + return f'Or({", ".join(str(p) for p in self.predicates)})' def __repr__(self): return f'' @@ -570,10 +563,10 @@ def __init__(self, predicate): self.predicate = predicate def __str__(self): - return 'Not(%s)' % self.predicate + return f'Not({self.predicate})' def __repr__(self): - return '' % self.predicate + return f'' def __eq__(self, other): return isinstance(other, Not) and self.predicate == other.predicate @@ -669,7 +662,7 @@ def __init__( ): self.action = action() if inspect.isclass(action) and issubclass(action, Action) else action if not isinstance(self.action, ColorStreamAction): - raise TypeError('Action %r must be a ColorStreamAction.' % self.action) + raise TypeError(f'Action {self.action!r} must be a ColorStreamAction.') self.condition = condition self.queue = collections.deque(maxlen=size) self.size = size @@ -744,24 +737,10 @@ def __call__(self, event): return result def __str__(self): - return 'Backlog({}, size={}, stack={}, vars={}, action={}, filter={})'.format( - self.condition, - self.size, - self.stack, - self.vars, - self.action, - self._filter, - ) + return f'Backlog({self.condition}, size={self.size}, stack={self.stack}, vars={self.vars}, action={self.action}, filter={self._filter})' def __repr__(self): - return ''.format( - self.condition, - self.size, - self.stack, - self.vars, - self.action, - self._filter, - ) + return f'' def __eq__(self, other): return ( diff --git a/src/hunter/util.py b/src/hunter/util.py index c1c2f60..9acc2ed 100644 --- a/src/hunter/util.py +++ b/src/hunter/util.py @@ -91,8 +91,7 @@ def get_arguments(code): def flatten(something): if isinstance(something, (list, tuple)): for element in something: - for subelement in flatten(element): - yield subelement + yield from flatten(element) else: yield something @@ -158,67 +157,39 @@ def safe_repr(obj, maxdepth=5): newdepth = maxdepth - 1 # only represent exact builtins - # (subclasses can have side-effects due to __class__ as a property, __instancecheck__, __subclasscheck__ etc) + # (subclasses can have side effects due to __class__ as a property, __instancecheck__, __subclasscheck__ etc.) if obj_type is dict: - return '{%s}' % ', '.join(f'{safe_repr(k, maxdepth)}: {safe_repr(v, newdepth)}' for k, v in obj.items()) + return f'{{{", ".join(f"{safe_repr(k, maxdepth)}: {safe_repr(v, newdepth)}" for k, v in obj.items())}}}' elif obj_type is list: - return '[%s]' % ', '.join(safe_repr(i, newdepth) for i in obj) + return f'[{", ".join(safe_repr(i, newdepth) for i in obj)}]' elif obj_type is tuple: - return '(%s%s)' % ( # noqa: UP031 - ', '.join(safe_repr(i, newdepth) for i in obj), - ',' if len(obj) == 1 else '', - ) + return f'({", ".join(safe_repr(i, newdepth) for i in obj)}{"," if len(obj) == 1 else ""})' elif obj_type is set: - return '{%s}' % ', '.join(safe_repr(i, newdepth) for i in obj) + return f'{{{", ".join(safe_repr(i, newdepth) for i in obj)}}}' elif obj_type is frozenset: - return '%s({%s})' % ( # noqa: UP031 - obj_type.__name__, - ', '.join(safe_repr(i, newdepth) for i in obj), - ) + return f'{obj_type.__name__}({{{", ".join(safe_repr(i, newdepth) for i in obj)}}})' elif obj_type is deque: - return '{}([{}])'.format( - obj_type.__name__, - ', '.join(safe_repr(i, newdepth) for i in obj), - ) + return f'{obj_type.__name__}([{", ".join(safe_repr(i, newdepth) for i in obj)}])' elif obj_type in (Counter, OrderedDict, defaultdict): - return '%s({%s})' % ( # noqa: UP031 - obj_type.__name__, - ', '.join(f'{safe_repr(k, maxdepth)}: {safe_repr(v, newdepth)}' for k, v in obj.items()), - ) + return f'{obj_type.__name__}({{{", ".join(f"{safe_repr(k, maxdepth)}: {safe_repr(v, newdepth)}" for k, v in obj.items())}}})' elif obj_type is Pattern: if obj.flags: - return 're.compile(%s, flags=%s)' % ( # noqa: UP031 - safe_repr(obj.pattern), - RegexFlag(obj.flags), - ) + return f're.compile({safe_repr(obj.pattern)}, flags={RegexFlag(obj.flags)})' else: - return 're.compile(%s)' % safe_repr(obj.pattern) + return f're.compile({safe_repr(obj.pattern)})' elif obj_type in (date, timedelta): return repr(obj) elif obj_type is datetime: - return '%s(%d, %d, %d, %d, %d, %d, %d, tzinfo=%s%s)' % ( - obj_type.__name__, - obj.year, - obj.month, - obj.day, - obj.hour, - obj.minute, - obj.second, - obj.microsecond, - safe_repr(obj.tzinfo), - ', fold=%s' % safe_repr(obj.fold) if hasattr(obj, 'fold') else '', + return ( + f'{obj_type.__name__}({obj.year}, {obj.month}, {obj.day}, {obj.hour}, {obj.minute}, {obj.second}, {obj.microsecond}, ' + f'tzinfo={safe_repr(obj.tzinfo)}{f", fold={safe_repr(obj.fold)}" if hasattr(obj, "fold") else ""})' ) elif obj_type is time: - return '%s(%d, %d, %d, %d, tzinfo=%s%s)' % ( - obj_type.__name__, - obj.hour, - obj.minute, - obj.second, - obj.microsecond, - safe_repr(obj.tzinfo), - f', fold={safe_repr(obj.fold)}' if hasattr(obj, 'fold') else '', + return ( + f'{obj_type.__name__}({obj.hour}, {obj.minute}, {obj.second}, {obj.microsecond}, ' + f'tzinfo={safe_repr(obj.tzinfo)}{f", fold={safe_repr(obj.fold)}" if hasattr(obj, "fold") else ""})' ) - elif obj_type is types.MethodType: # noqa + elif obj_type is types.MethodType: self = obj.__self__ name = getattr(obj, '__qualname__', None) if name is None: @@ -236,7 +207,7 @@ def safe_repr(obj, maxdepth=5): return repr(obj) else: # if the object has a __dict__ then it's probably an instance of a pure python class, assume bad things - # with side-effects will be going on in __repr__ - use the default instead (object.__repr__) + # with side effects will be going on in __repr__ - use the default instead (object.__repr__) return object.__repr__(obj) diff --git a/tests/eviltracer.pxd b/tests/eviltracer.pxd index d7fba58..c45735e 100644 --- a/tests/eviltracer.pxd +++ b/tests/eviltracer.pxd @@ -14,6 +14,7 @@ cdef extern from "vendor/_compat.h": ctypedef class types.FrameType[object PyFrameObject, check_size ignore]: pass + @cython.final cdef class EvilTracer: cdef readonly object _calls diff --git a/tests/sample5.pyx b/tests/sample5.pyx index 5e4f93e..3961c98 100644 --- a/tests/sample5.pyx +++ b/tests/sample5.pyx @@ -1,6 +1,7 @@ # cython: linetrace=True, language_level=3 foo = bar = lambda x: x + @foo @bar def foo(): From 587face0b83d5e58b4f62513240e33d6e405fc0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 16:43:39 +0300 Subject: [PATCH 04/80] Update ci conf. --- .github/workflows/github-actions.yml | 583 +++++++++++++++++---------- 1 file changed, 370 insertions(+), 213 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 74d41dd..8048dbc 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1,5 +1,5 @@ name: build -on: [push, pull_request] +on: [push, pull_request, workflow_dispatch] jobs: test: name: ${{ matrix.name }} @@ -19,139 +19,12 @@ jobs: toxpython: 'python3.11' tox_env: 'docs' os: 'ubuntu-latest' - - name: 'py37-pure-cover (ubuntu/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-pure-cover,codecov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py37-pure-cover (windows/AMD64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-pure-cover,codecov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py37-pure-cover (macos/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-pure-cover,codecov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'macos-latest' - - name: 'py37-pure-nocov (ubuntu/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py37-pure-nocov (windows/AMD64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py37-pure-nocov (macos/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'macos-latest' - - name: 'py37-cython-cover (ubuntu/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-cover,codecov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py37-cython-cover (windows/AMD64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-cover,codecov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py37-cython-cover (macos/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-cover,codecov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'macos-latest' - - name: 'py37-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp37-*manylinux*' - os: 'ubuntu-latest' - - name: 'py37-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp37-*musllinux*' - os: 'ubuntu-latest' - - name: 'py37-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp37-*manylinux*' - os: 'ubuntu-latest' - - name: 'py37-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp37-*musllinux*' - os: 'ubuntu-latest' - - name: 'py37-cython-nocov (windows/AMD64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp37-*' - os: 'windows-latest' - - name: 'py37-cython-nocov (windows/x86)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x86' - tox_env: 'py37-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp37-*' - os: 'windows-latest' - - name: 'py37-cython-nocov (macos/x86_64)' - python: '3.7' - toxpython: 'python3.7' - python_arch: 'x64' - tox_env: 'py37-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp37-*' - os: 'macos-latest' - name: 'py38-pure-cover (ubuntu/x86_64)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' - tox_env: 'py38-pure-cover,codecov' + tox_env: 'py38-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -159,7 +32,8 @@ jobs: python: '3.8' toxpython: 'python3.8' python_arch: 'x64' - tox_env: 'py38-pure-cover,codecov' + tox_env: 'py38-pure-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -167,7 +41,8 @@ jobs: python: '3.8' toxpython: 'python3.8' python_arch: 'x64' - tox_env: 'py38-pure-cover,codecov' + tox_env: 'py38-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -199,7 +74,8 @@ jobs: python: '3.8' toxpython: 'python3.8' python_arch: 'x64' - tox_env: 'py38-cython-cover,codecov' + tox_env: 'py38-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -207,7 +83,8 @@ jobs: python: '3.8' toxpython: 'python3.8' python_arch: 'x64' - tox_env: 'py38-cython-cover,codecov' + tox_env: 'py38-cython-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -215,7 +92,8 @@ jobs: python: '3.8' toxpython: 'python3.8' python_arch: 'x64' - tox_env: 'py38-cython-cover,codecov' + tox_env: 'py38-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -279,7 +157,8 @@ jobs: python: '3.9' toxpython: 'python3.9' python_arch: 'x64' - tox_env: 'py39-pure-cover,codecov' + tox_env: 'py39-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -287,7 +166,8 @@ jobs: python: '3.9' toxpython: 'python3.9' python_arch: 'x64' - tox_env: 'py39-pure-cover,codecov' + tox_env: 'py39-pure-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -295,7 +175,8 @@ jobs: python: '3.9' toxpython: 'python3.9' python_arch: 'x64' - tox_env: 'py39-pure-cover,codecov' + tox_env: 'py39-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -327,7 +208,8 @@ jobs: python: '3.9' toxpython: 'python3.9' python_arch: 'x64' - tox_env: 'py39-cython-cover,codecov' + tox_env: 'py39-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -335,7 +217,8 @@ jobs: python: '3.9' toxpython: 'python3.9' python_arch: 'x64' - tox_env: 'py39-cython-cover,codecov' + tox_env: 'py39-cython-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -343,7 +226,8 @@ jobs: python: '3.9' toxpython: 'python3.9' python_arch: 'x64' - tox_env: 'py39-cython-cover,codecov' + tox_env: 'py39-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -407,7 +291,8 @@ jobs: python: '3.10' toxpython: 'python3.10' python_arch: 'x64' - tox_env: 'py310-pure-cover,codecov' + tox_env: 'py310-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -415,7 +300,8 @@ jobs: python: '3.10' toxpython: 'python3.10' python_arch: 'x64' - tox_env: 'py310-pure-cover,codecov' + tox_env: 'py310-pure-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -423,7 +309,8 @@ jobs: python: '3.10' toxpython: 'python3.10' python_arch: 'x64' - tox_env: 'py310-pure-cover,codecov' + tox_env: 'py310-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -455,7 +342,8 @@ jobs: python: '3.10' toxpython: 'python3.10' python_arch: 'x64' - tox_env: 'py310-cython-cover,codecov' + tox_env: 'py310-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -463,7 +351,8 @@ jobs: python: '3.10' toxpython: 'python3.10' python_arch: 'x64' - tox_env: 'py310-cython-cover,codecov' + tox_env: 'py310-cython-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -471,7 +360,8 @@ jobs: python: '3.10' toxpython: 'python3.10' python_arch: 'x64' - tox_env: 'py310-cython-cover,codecov' + tox_env: 'py310-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -535,7 +425,8 @@ jobs: python: '3.11' toxpython: 'python3.11' python_arch: 'x64' - tox_env: 'py311-pure-cover,codecov' + tox_env: 'py311-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -543,7 +434,8 @@ jobs: python: '3.11' toxpython: 'python3.11' python_arch: 'x64' - tox_env: 'py311-pure-cover,codecov' + tox_env: 'py311-pure-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -551,7 +443,8 @@ jobs: python: '3.11' toxpython: 'python3.11' python_arch: 'x64' - tox_env: 'py311-pure-cover,codecov' + tox_env: 'py311-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -583,7 +476,8 @@ jobs: python: '3.11' toxpython: 'python3.11' python_arch: 'x64' - tox_env: 'py311-cython-cover,codecov' + tox_env: 'py311-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -591,7 +485,8 @@ jobs: python: '3.11' toxpython: 'python3.11' python_arch: 'x64' - tox_env: 'py311-cython-cover,codecov' + tox_env: 'py311-cython-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -599,7 +494,8 @@ jobs: python: '3.11' toxpython: 'python3.11' python_arch: 'x64' - tox_env: 'py311-cython-cover,codecov' + tox_env: 'py311-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -659,107 +555,146 @@ jobs: cibw_arch: 'x86_64' cibw_build: 'cp311-*' os: 'macos-latest' - - name: 'pypy37-pure-cover (ubuntu/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-pure-cover (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-pure-cover,codecov' + tox_env: 'py312-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'pypy37-pure-cover (windows/AMD64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-pure-cover (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-pure-cover,codecov' + tox_env: 'py312-pure-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy37-pure-cover (macos/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-pure-cover (macos/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-pure-cover,codecov' + tox_env: 'py312-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' - - name: 'pypy37-pure-nocov (ubuntu/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-pure-nocov (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-pure-nocov' + tox_env: 'py312-pure-nocov' cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'pypy37-pure-nocov (windows/AMD64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-pure-nocov (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-pure-nocov' + tox_env: 'py312-pure-nocov' cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy37-pure-nocov (macos/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-pure-nocov (macos/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-pure-nocov' + tox_env: 'py312-pure-nocov' cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' - - name: 'pypy37-cython-cover (ubuntu/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-cython-cover (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-cython-cover,codecov' + tox_env: 'py312-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'pypy37-cython-cover (windows/AMD64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-cython-cover (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-cython-cover,codecov' + tox_env: 'py312-cython-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy37-cython-cover (macos/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-cython-cover (macos/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-cython-cover,codecov' + tox_env: 'py312-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' - - name: 'pypy37-cython-nocov (ubuntu/x86_64/manylinux)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-cython-nocov' + tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' - cibw_build: false + cibw_build: 'cp312-*manylinux*' os: 'ubuntu-latest' - - name: 'pypy37-cython-nocov (windows/AMD64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-cython-nocov' + tox_env: 'py312-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp312-*musllinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp312-*manylinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp312-*musllinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' cibw_arch: 'AMD64' - cibw_build: false + cibw_build: 'cp312-*' + os: 'windows-latest' + - name: 'py312-cython-nocov (windows/x86)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x86' + tox_env: 'py312-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp312-*' os: 'windows-latest' - - name: 'pypy37-cython-nocov (macos/x86_64)' - python: 'pypy-3.7' - toxpython: 'pypy3.7' + - name: 'py312-cython-nocov (macos/x86_64)' + python: '3.12' + toxpython: 'python3.12' python_arch: 'x64' - tox_env: 'pypy37-cython-nocov' + tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' - cibw_build: false + cibw_build: 'cp312-*' os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' - tox_env: 'pypy38-pure-cover,codecov' + tox_env: 'pypy38-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -767,7 +702,8 @@ jobs: python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' - tox_env: 'pypy38-pure-cover,codecov' + tox_env: 'pypy38-pure-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -775,7 +711,8 @@ jobs: python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' - tox_env: 'pypy38-pure-cover,codecov' + tox_env: 'pypy38-pure-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -807,7 +744,8 @@ jobs: python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' - tox_env: 'pypy38-cython-cover,codecov' + tox_env: 'pypy38-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' @@ -815,7 +753,8 @@ jobs: python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' - tox_env: 'pypy38-cython-cover,codecov' + tox_env: 'pypy38-cython-cover' + cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' @@ -823,7 +762,8 @@ jobs: python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' - tox_env: 'pypy38-cython-cover,codecov' + tox_env: 'pypy38-cython-cover' + cover: true cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' @@ -851,15 +791,219 @@ jobs: cibw_arch: 'x86_64' cibw_build: false os: 'macos-latest' + - name: 'pypy39-pure-cover (ubuntu/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy39-pure-cover (windows/AMD64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy39-pure-cover (macos/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy39-pure-nocov (ubuntu/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy39-pure-nocov (windows/AMD64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy39-pure-nocov (macos/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy39-cython-cover (ubuntu/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy39-cython-cover (windows/AMD64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy39-cython-cover (macos/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy39-cython-nocov (ubuntu/x86_64/manylinux)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy39-cython-nocov (windows/AMD64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy39-cython-nocov (macos/x86_64)' + python: 'pypy-3.9' + toxpython: 'pypy3.9' + python_arch: 'x64' + tox_env: 'pypy39-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy310-pure-cover (ubuntu/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy310-pure-cover (windows/AMD64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy310-pure-cover (macos/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy310-pure-nocov (ubuntu/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy310-pure-nocov (windows/AMD64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy310-pure-nocov (macos/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy310-cython-cover (ubuntu/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy310-cython-cover (windows/AMD64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy310-cython-cover (macos/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' + - name: 'pypy310-cython-nocov (ubuntu/x86_64/manylinux)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'pypy310-cython-nocov (windows/AMD64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'pypy310-cython-nocov (macos/x86_64)' + python: 'pypy-3.10' + toxpython: 'pypy3.10' + python_arch: 'x64' + tox_env: 'pypy310-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'macos-latest' steps: - - uses: docker/setup-qemu-action@v2 + - uses: docker/setup-qemu-action@v3 if: matrix.cibw_arch == 'aarch64' with: platforms: arm64 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python }} architecture: ${{ matrix.python_arch }} @@ -899,6 +1043,11 @@ jobs: !matrix.cibw_build run: > tox -e ${{ matrix.tox_env }} -v + - uses: codecov/codecov-action@v3 + if: matrix.cover + with: + verbose: true + flags: ${{ matrix.tox_env }} - name: check wheel if: matrix.cibw_build run: twine check wheelhouse/*.whl @@ -907,3 +1056,11 @@ jobs: if: matrix.cibw_build with: path: wheelhouse/*.whl + finish: + needs: test + if: ${{ always() }} + runs-on: ubuntu-latest + steps: + - uses: codecov/codecov-action@v3 + with: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} From c475917e17b427ce07490fdbb8a986aa0be52485 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 16:44:36 +0300 Subject: [PATCH 05/80] Recompile with latest cython release. --- src/hunter/_event.c | 3395 +++++--- src/hunter/_predicates.c | 13000 +++++++++++++++++------------ src/hunter/_tracer.c | 2784 ++++-- src/hunter/vendor/_cymem/cymem.c | 3567 +++++--- 4 files changed, 14160 insertions(+), 8586 deletions(-) diff --git a/src/hunter/_event.c b/src/hunter/_event.c index 6da8af2..83cb6be 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.0b2 */ +/* Generated by Cython 3.0.10 */ /* BEGIN: Cython Metadata { @@ -37,10 +37,15 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) #error Cython requires Python 2.7+ or Python 3.3+. #else -#define CYTHON_ABI "3_0_0b2" +#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API +#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#else +#define __PYX_EXTRA_ABI_MODULE_NAME "" +#endif +#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x030000B2 +#define CYTHON_HEX_VERSION 0x03000AF0 #define CYTHON_FUTURE_DIVISION 1 #include #ifndef offsetof @@ -73,6 +78,7 @@ END: Cython Metadata */ #ifndef Py_HUGE_VAL #define Py_HUGE_VAL HUGE_VAL #endif +#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX #if defined(GRAALVM_PYTHON) /* For very preliminary testing purposes. Most variables are set the same as PyPy. The existence of this section does not imply that anything works or is even tested */ @@ -131,6 +137,8 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(PYPY_VERSION) #define CYTHON_COMPILING_IN_PYPY 1 #define CYTHON_COMPILING_IN_CPYTHON 0 @@ -139,8 +147,9 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_NOGIL 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #if PY_VERSION_HEX < 0x03050000 @@ -174,12 +183,16 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #if PY_VERSION_HEX < 0x03090000 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #define CYTHON_PEP489_MULTI_PHASE_INIT 1 + #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK @@ -187,7 +200,13 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(CYTHON_LIMITED_API) + #ifdef Py_LIMITED_API + #undef __PYX_LIMITED_VERSION_HEX + #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API + #endif #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 @@ -235,7 +254,7 @@ END: Cython Metadata */ #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 1 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 @@ -244,7 +263,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif -#elif defined(PY_NOGIL) + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 +#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 @@ -253,11 +274,17 @@ END: Cython Metadata */ #ifndef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 1 #endif + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #ifndef CYTHON_USE_ASYNC_SLOTS #define CYTHON_USE_ASYNC_SLOTS 1 #endif + #ifndef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #ifndef CYTHON_USE_UNICODE_INTERNALS @@ -265,8 +292,6 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif @@ -278,11 +303,22 @@ END: Cython Metadata */ #endif #undef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #ifndef CYTHON_METH_FASTCALL + #define CYTHON_METH_FASTCALL 1 + #endif #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 + #ifndef CYTHON_PEP487_INIT_SUBCLASS + #define CYTHON_PEP487_INIT_SUBCLASS 1 + #endif #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif + #ifndef CYTHON_USE_MODULE_STATE + #define CYTHON_USE_MODULE_STATE 0 + #endif #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif @@ -290,6 +326,12 @@ END: Cython Metadata */ #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 + #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC + #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 + #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 + #endif #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 @@ -339,7 +381,7 @@ END: Cython Metadata */ #define CYTHON_FAST_THREAD_STATE 1 #endif #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000) + #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) @@ -380,6 +422,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 1 + #endif #endif #if !defined(CYTHON_FAST_PYCCALL) #define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) @@ -457,6 +502,14 @@ END: Cython Metadata */ # define CYTHON_NCP_UNUSED CYTHON_UNUSED # endif #endif +#ifndef CYTHON_USE_CPP_STD_MOVE + #if defined(__cplusplus) && (\ + __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600)) + #define CYTHON_USE_CPP_STD_MOVE 1 + #else + #define CYTHON_USE_CPP_STD_MOVE 0 + #endif +#endif #define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) #ifdef _MSC_VER #ifndef _MSC_STDINT_H_ @@ -518,6 +571,18 @@ END: Cython Metadata */ #endif #endif #endif +#ifdef __cplusplus + template + struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; + #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL::value) +#else + #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0) +#endif +#if CYTHON_COMPILING_IN_PYPY == 1 + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000) +#else + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000) +#endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) #ifndef CYTHON_INLINE @@ -534,9 +599,6 @@ END: Cython Metadata */ #endif #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) - #define Py_OptimizeFlag 0 -#endif #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" #if PY_MAJOR_VERSION < 3 @@ -547,67 +609,91 @@ END: Cython Metadata */ #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" #define __Pyx_DefaultClassType PyType_Type -#if PY_VERSION_HEX >= 0x030B00A1 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, +#if CYTHON_COMPILING_IN_LIMITED_API + static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, PyObject *code, PyObject *c, PyObject* n, PyObject *v, PyObject *fv, PyObject *cell, PyObject* fn, PyObject *name, int fline, PyObject *lnos) { - PyObject *kwds=NULL, *argcount=NULL, *posonlyargcount=NULL, *kwonlyargcount=NULL; - PyObject *nlocals=NULL, *stacksize=NULL, *flags=NULL, *replace=NULL, *call_result=NULL, *empty=NULL; - const char *fn_cstr=NULL; - const char *name_cstr=NULL; - PyCodeObject* co=NULL; + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; PyObject *type, *value, *traceback; PyErr_Fetch(&type, &value, &traceback); - if (!(kwds=PyDict_New())) goto end; - if (!(argcount=PyLong_FromLong(a))) goto end; - if (PyDict_SetItemString(kwds, "co_argcount", argcount) != 0) goto end; - if (!(posonlyargcount=PyLong_FromLong(p))) goto end; - if (PyDict_SetItemString(kwds, "co_posonlyargcount", posonlyargcount) != 0) goto end; - if (!(kwonlyargcount=PyLong_FromLong(k))) goto end; - if (PyDict_SetItemString(kwds, "co_kwonlyargcount", kwonlyargcount) != 0) goto end; - if (!(nlocals=PyLong_FromLong(l))) goto end; - if (PyDict_SetItemString(kwds, "co_nlocals", nlocals) != 0) goto end; - if (!(stacksize=PyLong_FromLong(s))) goto end; - if (PyDict_SetItemString(kwds, "co_stacksize", stacksize) != 0) goto end; - if (!(flags=PyLong_FromLong(f))) goto end; - if (PyDict_SetItemString(kwds, "co_flags", flags) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_code", code) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_consts", c) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_names", n) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_varnames", v) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_freevars", fv) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_cellvars", cell) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_linetable", lnos) != 0) goto end; - if (!(fn_cstr=PyUnicode_AsUTF8AndSize(fn, NULL))) goto end; - if (!(name_cstr=PyUnicode_AsUTF8AndSize(name, NULL))) goto end; - if (!(co = PyCode_NewEmpty(fn_cstr, name_cstr, fline))) goto end; - if (!(replace = PyObject_GetAttrString((PyObject*)co, "replace"))) goto cleanup_code_too; - if (!(empty = PyTuple_New(0))) goto cleanup_code_too; // unfortunately __pyx_empty_tuple isn't available here - if (!(call_result = PyObject_Call(replace, empty, kwds))) goto cleanup_code_too; - Py_XDECREF((PyObject*)co); - co = (PyCodeObject*)call_result; - call_result = NULL; - if (0) { - cleanup_code_too: - Py_XDECREF((PyObject*)co); - co = NULL; + #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else { + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - end: - Py_XDECREF(kwds); - Py_XDECREF(argcount); - Py_XDECREF(posonlyargcount); - Py_XDECREF(kwonlyargcount); - Py_XDECREF(nlocals); - Py_XDECREF(stacksize); - Py_XDECREF(replace); - Py_XDECREF(call_result); - Py_XDECREF(empty); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); if (type) { PyErr_Restore(type, value, traceback); } - return co; + return result; } + #ifndef CO_OPTIMIZED + #define CO_OPTIMIZED 0x0001 + #endif + #ifndef CO_NEWLOCALS + #define CO_NEWLOCALS 0x0002 + #endif + #ifndef CO_VARARGS + #define CO_VARARGS 0x0004 + #endif + #ifndef CO_VARKEYWORDS + #define CO_VARKEYWORDS 0x0008 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x0200 + #endif + #ifndef CO_GENERATOR + #define CO_GENERATOR 0x0020 + #endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x0080 + #endif +#elif PY_VERSION_HEX >= 0x030B0000 + static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); + if (!empty_bytes) return NULL; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); + Py_DECREF(empty_bytes); + return result; + } #elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) @@ -642,6 +728,11 @@ END: Cython Metadata */ #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False) #endif #define __Pyx_NoneAsNull(obj) (__Pyx_Py_IsNone(obj) ? NULL : (obj)) +#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o) +#else + #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) +#endif #ifndef CO_COROUTINE #define CO_COROUTINE 0x80 #endif @@ -677,8 +768,13 @@ END: Cython Metadata */ typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames); #else - #define __Pyx_PyCFunctionFast _PyCFunctionFast - #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #if PY_VERSION_HEX >= 0x030d00A4 + # define __Pyx_PyCFunctionFast PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords + #else + # define __Pyx_PyCFunctionFast _PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #endif #endif #if CYTHON_METH_FASTCALL #define __Pyx_METH_FASTCALL METH_FASTCALL @@ -702,7 +798,32 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_VERSION_HEX < 0x030900B1 +#if PY_MAJOR_VERSION >= 0x030900B1 +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) +#else +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) +#endif +#define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func) +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth) +#elif !CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func) +#endif +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags) +static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { + return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; +} +#endif +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +#if CYTHON_COMPILING_IN_LIMITED_API + return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; +#else + return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +#endif +} +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) +#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -728,6 +849,8 @@ END: Cython Metadata */ #define __Pyx_PyThreadState_Current PyThreadState_Get() #elif !CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() #elif PY_VERSION_HEX >= 0x03060000 #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #elif PY_VERSION_HEX >= 0x03000000 @@ -803,7 +926,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { } #endif #endif -#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() @@ -815,7 +938,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && CYTHON_USE_UNICODE_INTERNALS +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); @@ -852,9 +975,14 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next #endif +#if CYTHON_COMPILING_IN_LIMITED_API + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) +#else + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) +#endif #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ - PyTypeObject *type = Py_TYPE(obj);\ + PyTypeObject *type = Py_TYPE((PyObject*)obj);\ assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\ PyObject_GC_Del(obj);\ Py_DECREF(type);\ @@ -867,7 +995,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) @@ -886,7 +1014,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, (Py_UCS4) ch) #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) #else @@ -904,11 +1032,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY @@ -978,9 +1106,34 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif #if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) #else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) +#else + static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { + PyObject *module = PyImport_AddModule(name); + Py_XINCREF(module); + return module; + } #endif #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject @@ -1060,11 +1213,20 @@ static CYTHON_INLINE float __PYX_NAN() { #endif #define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } + { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } -#ifndef __PYX_EXTERN_C +#ifdef CYTHON_EXTERN_C + #undef __PYX_EXTERN_C + #define __PYX_EXTERN_C CYTHON_EXTERN_C +#elif defined(__PYX_EXTERN_C) + #ifdef _MSC_VER + #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.") + #else + #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead. + #endif +#else #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" #else @@ -1128,9 +1290,10 @@ static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { #else #define __Pyx_sst_abs(value) ((value<0) ? -value : value) #endif +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s); static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); -#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize @@ -1158,23 +1321,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) #define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const wchar_t *u) -{ - const wchar_t *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#else -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) -{ - const Py_UNICODE *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#endif -#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) -#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode +#define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode #define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) #define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) @@ -1199,6 +1346,45 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) #endif #if CYTHON_USE_PYLONG_INTERNALS + #if PY_VERSION_HEX >= 0x030C00A7 + #ifndef _PyLong_SIGN_MASK + #define _PyLong_SIGN_MASK 3 + #endif + #ifndef _PyLong_NON_SIZE_BITS + #define _PyLong_NON_SIZE_BITS 3 + #endif + #define __Pyx_PyLong_Sign(x) (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK) + #define __Pyx_PyLong_IsNeg(x) ((__Pyx_PyLong_Sign(x) & 2) != 0) + #define __Pyx_PyLong_IsNonNeg(x) (!__Pyx_PyLong_IsNeg(x)) + #define __Pyx_PyLong_IsZero(x) (__Pyx_PyLong_Sign(x) & 1) + #define __Pyx_PyLong_IsPos(x) (__Pyx_PyLong_Sign(x) == 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) (__Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_SignedDigitCount(x)\ + ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x)) + #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue) + #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x) + #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x) + #else + #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_CompactValue(x) ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0]) + #endif + typedef Py_ssize_t __Pyx_compact_pylong; + typedef size_t __Pyx_compact_upylong; + #else + #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0) + #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0) + #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0) + #define __Pyx_PyLong_IsPos(x) (Py_SIZE(x) > 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) __Pyx_sst_abs(Py_SIZE(x)) + #define __Pyx_PyLong_SignedDigitCount(x) Py_SIZE(x) + #define __Pyx_PyLong_IsCompact(x) (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1) + #define __Pyx_PyLong_CompactValue(x)\ + ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) + typedef sdigit __Pyx_compact_pylong; + typedef digit __Pyx_compact_upylong; + #endif #if PY_VERSION_HEX >= 0x030C00A5 #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->long_value.ob_digit) #else @@ -1206,6 +1392,7 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #endif #endif #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#include static int __Pyx_sys_getdefaultencoding_not_ascii; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1226,7 +1413,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { char ascii_chars[128]; int c; for (c = 0; c < 128; c++) { - ascii_chars[c] = c; + ascii_chars[c] = (char) c; } __Pyx_sys_getdefaultencoding_not_ascii = 1; ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); @@ -1256,6 +1443,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #else #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +#include static char* __PYX_DEFAULT_STRING_ENCODING; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1316,18 +1504,23 @@ static const char *__pyx_f[] = { #define __Pyx_FastGIL_Forget() #define __Pyx_FastGilFuncInit() +/* ForceInitThreads.proto */ +#ifndef __PYX_FORCE_INIT_THREADS + #define __PYX_FORCE_INIT_THREADS 0 +#endif + /* #### Code section: numeric_typedefs ### */ /* #### Code section: complex_type_declarations ### */ /* #### Code section: type_declarations ### */ /*--- Type declarations ---*/ -struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines; -struct __pyx_obj_6hunter_6_event_Event; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc; struct __pyx_obj_6hunter_7_tracer_Tracer; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; +struct __pyx_obj_6hunter_6_event_Event; +struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines; /* "vendor/_cymem/cymem.pxd":2 * # cython: language_level=3str @@ -1346,30 +1539,89 @@ typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); */ typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); -/* "hunter/_event.pyx":363 +/* "_tracer.pxd":36 + * + * @cython.final + * cdef class Tracer: # <<<<<<<<<<<<<< + * cdef: + * readonly object handler + */ +struct __pyx_obj_6hunter_7_tracer_Tracer { + PyObject_HEAD + PyObject *handler; + PyObject *previous; + PyObject *threading_support; + int profiling_mode; + int depth; + int calls; + PyObject *__weakref__; + PyObject *_threading_previous; + Py_tracefunc _previousfunc; +}; + + +/* "vendor/_cymem/cymem.pxd":5 + * ctypedef void (*free_t)(void *p) * + * cdef class PyMalloc: # <<<<<<<<<<<<<< + * cdef malloc_t malloc + * cdef void _set(self, malloc_t malloc) + */ +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { + PyObject_HEAD + struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; + __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t malloc; +}; + + +/* "vendor/_cymem/cymem.pxd":11 + * cdef PyMalloc WrapMalloc(malloc_t malloc) * - * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< - * limit=10): - * dedent = None + * cdef class PyFree: # <<<<<<<<<<<<<< + * cdef free_t free + * cdef void _set(self, free_t free) */ -struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines { +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { PyObject_HEAD - Py_ssize_t __pyx_v_amount; - PyObject *__pyx_v_collector; - PyObject *__pyx_v_dedent; - PyObject *__pyx_v_filename; - PyObject *__pyx_v_limit; - PyObject *__pyx_v_line; - PyObject *__pyx_v_module_globals; - PyObject *__pyx_v_start; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; - PyObject *(*__pyx_t_2)(PyObject *); + struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; + __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t free; +}; + + +/* "vendor/_cymem/cymem.pxd":17 + * cdef PyFree WrapFree(free_t free) + * + * cdef class Pool: # <<<<<<<<<<<<<< + * cdef readonly size_t size + * cdef readonly dict addresses + */ +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { + PyObject_HEAD + struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtab; + size_t size; + PyObject *addresses; + PyObject *refs; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; +}; + + +/* "vendor/_cymem/cymem.pxd":29 + * + * + * cdef class Address: # <<<<<<<<<<<<<< + * cdef void* ptr + * cdef readonly PyMalloc pymalloc + */ +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { + PyObject_HEAD + void *ptr; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; }; -/* "hunter/_event.pxd":12 +/* "hunter/_event.pxd":13 * * @cython.final * cdef class Event: # <<<<<<<<<<<<<< @@ -1405,37 +1657,42 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "vendor/_cymem/cymem.pxd":29 +/* "hunter/_event.pyx":363 * * - * cdef class Address: # <<<<<<<<<<<<<< - * cdef void* ptr - * cdef readonly PyMalloc pymalloc + * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< + * limit=10): + * dedent = None */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { +struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines { PyObject_HEAD - void *ptr; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; + Py_ssize_t __pyx_v_amount; + PyObject *__pyx_v_collector; + PyObject *__pyx_v_dedent; + PyObject *__pyx_v_filename; + PyObject *__pyx_v_limit; + PyObject *__pyx_v_line; + PyObject *__pyx_v_module_globals; + PyObject *__pyx_v_start; + PyObject *__pyx_t_0; + Py_ssize_t __pyx_t_1; + PyObject *(*__pyx_t_2)(PyObject *); }; -/* "vendor/_cymem/cymem.pxd":17 - * cdef PyFree WrapFree(free_t free) + +/* "vendor/_cymem/cymem.pxd":5 + * ctypedef void (*free_t)(void *p) * - * cdef class Pool: # <<<<<<<<<<<<<< - * cdef readonly size_t size - * cdef readonly dict addresses + * cdef class PyMalloc: # <<<<<<<<<<<<<< + * cdef malloc_t malloc + * cdef void _set(self, malloc_t malloc) */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtab; - size_t size; - PyObject *addresses; - PyObject *refs; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; + +struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc { + void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); }; +static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; /* "vendor/_cymem/cymem.pxd":11 @@ -1445,47 +1702,27 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { * cdef free_t free * cdef void _set(self, free_t free) */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t free; -}; - -/* "vendor/_cymem/cymem.pxd":5 - * ctypedef void (*free_t)(void *p) - * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef malloc_t malloc - * cdef void _set(self, malloc_t malloc) - */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t malloc; +struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree { + void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); }; +static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; -/* "_tracer.pxd":35 +/* "vendor/_cymem/cymem.pxd":17 + * cdef PyFree WrapFree(free_t free) * - * @cython.final - * cdef class Tracer: # <<<<<<<<<<<<<< - * cdef: - * readonly object handler + * cdef class Pool: # <<<<<<<<<<<<<< + * cdef readonly size_t size + * cdef readonly dict addresses */ -struct __pyx_obj_6hunter_7_tracer_Tracer { - PyObject_HEAD - PyObject *handler; - PyObject *previous; - PyObject *threading_support; - int profiling_mode; - int depth; - int calls; - PyObject *__weakref__; - PyObject *_threading_previous; - Py_tracefunc _previousfunc; -}; +struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { + void *(*alloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t); + void (*free)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *); + void *(*realloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t); +}; +static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool; /* "hunter/_event.pyx":47 @@ -1525,50 +1762,6 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj_6hunter_6_event_Event *); static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_obj_6hunter_6_event_Event *); static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_obj_6hunter_6_event_Event *); - - -/* "vendor/_cymem/cymem.pxd":17 - * cdef PyFree WrapFree(free_t free) - * - * cdef class Pool: # <<<<<<<<<<<<<< - * cdef readonly size_t size - * cdef readonly dict addresses - */ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { - void *(*alloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t); - void (*free)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *); - void *(*realloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool; - - -/* "vendor/_cymem/cymem.pxd":11 - * cdef PyMalloc WrapMalloc(malloc_t malloc) - * - * cdef class PyFree: # <<<<<<<<<<<<<< - * cdef free_t free - * cdef void _set(self, free_t free) - */ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree { - void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; - - -/* "vendor/_cymem/cymem.pxd":5 - * ctypedef void (*free_t)(void *p) - * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef malloc_t malloc - * cdef void _set(self, malloc_t malloc) - */ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc { - void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; /* #### Code section: utility_code_proto ### */ /* --- Runtime support code (head) --- */ @@ -1663,11 +1856,18 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #if CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; -#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#if PY_VERSION_HEX >= 0x030C00A6 +#define __Pyx_PyErr_Occurred() (__pyx_tstate->current_exception != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL) +#else +#define __Pyx_PyErr_Occurred() (__pyx_tstate->curexc_type != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->curexc_type) +#endif #else #define __Pyx_PyThreadState_declare #define __Pyx_PyThreadState_assign -#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#define __Pyx_PyErr_Occurred() (PyErr_Occurred() != NULL) +#define __Pyx_PyErr_CurrentExceptionType() PyErr_Occurred() #endif /* PyErrFetchRestore.proto */ @@ -1679,7 +1879,7 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6 #define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) #else #define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) @@ -1756,12 +1956,18 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define __Pyx_TraceFrameInit(codeobj)\ if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj; #if PY_VERSION_HEX >= 0x030b00a2 + #if PY_VERSION_HEX >= 0x030C00b1 + #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ + ((!(check_tracing) || !(tstate)->tracing) &&\ + (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc))) + #else #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ (unlikely((tstate)->cframe->use_tracing) &&\ (!(check_tracing) || !(tstate)->tracing) &&\ (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc))) - #define __Pyx_EnterTracing(tstate) PyThreadState_EnterTracing(tstate) - #define __Pyx_LeaveTracing(tstate) PyThreadState_LeaveTracing(tstate) + #endif + #define __Pyx_EnterTracing(tstate) PyThreadState_EnterTracing(tstate) + #define __Pyx_LeaveTracing(tstate) PyThreadState_LeaveTracing(tstate) #elif PY_VERSION_HEX >= 0x030a00b1 #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ (unlikely((tstate)->cframe->use_tracing) &&\ @@ -1962,7 +2168,20 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /* fastcall.proto */ -#define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) +#elif CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#else + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) +#endif +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) + #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) +#else + #define __Pyx_Arg_NewRef_VARARGS(arg) arg + #define __Pyx_Arg_XDECREF_VARARGS(arg) +#endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) @@ -1972,15 +2191,24 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); + #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) + #endif + #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs + to have the same reference counting */ + #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS + #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) + #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS #define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) #else @@ -2104,7 +2332,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, #if !CYTHON_VECTORCALL #if PY_VERSION_HEX >= 0x03080000 #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -2215,6 +2443,12 @@ static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long int (inplace ? PyNumber_InPlaceSubtract(op1, op2) : PyNumber_Subtract(op1, op2)) #endif +/* PyObjectCall2Args.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); + +/* PyObjectCallMethod1.proto */ +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); + /* StringJoin.proto */ #if PY_MAJOR_VERSION < 3 #define __Pyx_PyString_Join __Pyx_PyBytes_Join @@ -2223,18 +2457,10 @@ static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long int #define __Pyx_PyString_Join PyUnicode_Join #define __Pyx_PyBaseString_Join PyUnicode_Join #endif -#if CYTHON_COMPILING_IN_CPYTHON - #if PY_MAJOR_VERSION < 3 - #define __Pyx_PyBytes_Join _PyString_Join - #else - #define __Pyx_PyBytes_Join _PyBytes_Join - #endif -#else static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values); -#endif /* GetTopmostException.proto */ -#if CYTHON_USE_EXC_INFO_STACK +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); #endif @@ -2263,7 +2489,7 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) #define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) #endif -#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_Occurred(), err1, err2) +#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) /* GetException.proto */ @@ -2322,7 +2548,11 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { Py_ssize_t len = Py_SIZE(list); if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) { Py_INCREF(x); + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + L->ob_item[len] = x; + #else PyList_SET_ITEM(list, len, x); + #endif __Pyx_SET_SIZE(list, len + 1); return 0; } @@ -2370,22 +2600,22 @@ static int __Pyx_MergeVtables(PyTypeObject *type); #endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto -#define __PYX_HAVE_RT_ImportType_proto -#if __STDC_VERSION__ >= 201112L +#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 +#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif -#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT(s) alignof(s) +#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize { - __Pyx_ImportType_CheckSize_Error = 0, - __Pyx_ImportType_CheckSize_Warn = 1, - __Pyx_ImportType_CheckSize_Ignore = 2 +enum __Pyx_ImportType_CheckSize_3_0_10 { + __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, + __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 }; -static PyTypeObject *__Pyx_ImportType(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size); +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); #endif /* Import.proto */ @@ -2405,7 +2635,22 @@ static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec #endif /* PyMethodNew.proto */ -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + typesModule = PyImport_ImportModule("types"); + if (!typesModule) return NULL; + methodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + if (!methodType) return NULL; + result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); + Py_DECREF(methodType); + return result; +} +#elif PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { CYTHON_UNUSED_VAR(typ); if (!self) @@ -2429,7 +2674,7 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CYFUNCTION_COROUTINE 0x08 #define __Pyx_CyFunction_GetClosure(f)\ (((__pyx_CyFunctionObject *) (f))->func_closure) -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_GetClassObj(f)\ (((__pyx_CyFunctionObject *) (f))->func_classobj) #else @@ -2443,7 +2688,10 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CyFunction_SetDefaultsGetter(f, g)\ ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g) typedef struct { -#if PY_VERSION_HEX < 0x030900B1 +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject_HEAD + PyObject *func; +#elif PY_VERSION_HEX < 0x030900B1 PyCFunctionObject func; #else PyCMethodObject func; @@ -2451,7 +2699,7 @@ typedef struct { #if CYTHON_BACKPORT_VECTORCALL __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2461,12 +2709,12 @@ typedef struct { PyObject *func_globals; PyObject *func_code; PyObject *func_closure; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif void *defaults; int defaults_pyobjects; - size_t defaults_size; // used by FusedFunction for copying defaults + size_t defaults_size; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2474,9 +2722,13 @@ typedef struct { PyObject *func_annotations; PyObject *func_is_coroutine; } __pyx_CyFunctionObject; +#undef __Pyx_CyOrPyCFunction_Check #define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_IsCyOrPyCFunction(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) #define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#undef __Pyx_IsSameCFunction +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, @@ -2570,12 +2822,6 @@ typedef const char *__Pyx_TypeName; /* CIntFromPy.proto */ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); -/* PyObjectCall2Args.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); - -/* PyObjectCallMethod1.proto */ -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); - /* CoroutineBase.proto */ struct __pyx_CoroutineObject; typedef PyObject *(*__pyx_coroutine_body_t)(struct __pyx_CoroutineObject *, PyThreadState *, PyObject *); @@ -2653,7 +2899,8 @@ static PyObject *__Pyx_Generator_Next(PyObject *self); static int __pyx_Generator_init(PyObject *module); /* CheckBinaryVersion.proto */ -static int __Pyx_check_binary_version(void); +static unsigned long __Pyx_get_runtime_version(void); +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionExport.proto */ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); @@ -2867,8 +3114,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_module_globals, PyObject *__pyx_v_start, PyObject *__pyx_v_collector, PyObject *__pyx_v_limit); /* proto */ -static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ /* #### Code section: late_includes ### */ /* #### Code section: module_state ### */ typedef struct { @@ -2931,11 +3178,11 @@ typedef struct { PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address; #if CYTHON_USE_MODULE_STATE - PyObject *__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; PyObject *__pyx_type_6hunter_6_event_Event; + PyObject *__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; #endif - PyTypeObject *__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines; PyTypeObject *__pyx_ptype_6hunter_6_event_Event; + PyTypeObject *__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines; PyObject *__pyx_n_s_CYTHON_SUFFIX_RE; PyObject *__pyx_n_s_Event; PyObject *__pyx_n_s_Event_clone; @@ -3124,10 +3371,10 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event_Event); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); Py_CLEAR(clear_module_state->__pyx_n_s_CYTHON_SUFFIX_RE); Py_CLEAR(clear_module_state->__pyx_n_s_Event); Py_CLEAR(clear_module_state->__pyx_n_s_Event_clone); @@ -3294,10 +3541,10 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event_Event); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); Py_VISIT(traverse_module_state->__pyx_n_s_CYTHON_SUFFIX_RE); Py_VISIT(traverse_module_state->__pyx_n_s_Event); Py_VISIT(traverse_module_state->__pyx_n_s_Event_clone); @@ -3499,11 +3746,11 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool #define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address #if CYTHON_USE_MODULE_STATE -#define __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines __pyx_mstate_global->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines #define __pyx_type_6hunter_6_event_Event __pyx_mstate_global->__pyx_type_6hunter_6_event_Event +#define __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines __pyx_mstate_global->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines #endif -#define __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines __pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines #define __pyx_ptype_6hunter_6_event_Event __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event +#define __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines __pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines #define __pyx_n_s_CYTHON_SUFFIX_RE __pyx_mstate_global->__pyx_n_s_CYTHON_SUFFIX_RE #define __pyx_n_s_Event __pyx_mstate_global->__pyx_n_s_Event #define __pyx_n_s_Event_clone __pyx_mstate_global->__pyx_n_s_Event_clone @@ -3668,7 +3915,7 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("make_kind_names", 0); + __Pyx_RefNannySetupContext("make_kind_names", 1); __Pyx_TraceCall("make_kind_names", __pyx_f[0], 36, 0, __PYX_ERR(0, 36, __pyx_L1_error)); /* "hunter/_event.pyx":37 @@ -3683,7 +3930,7 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 37, __pyx_L1_error) } - __pyx_t_1 = PyList_GET_SIZE(__pyx_v_strings); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 37, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyList_GET_SIZE(__pyx_v_strings); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 37, __pyx_L1_error) __pyx_t_2 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_6hunter_6_event_mem->__pyx_vtab)->alloc(__pyx_v_6hunter_6_event_mem, __pyx_t_1, (sizeof(PyObject *))); if (unlikely(__pyx_t_2 == ((void *)NULL))) __PYX_ERR(0, 37, __pyx_L1_error) __pyx_v_array = ((PyObject **)__pyx_t_2); @@ -3696,13 +3943,20 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject */ __Pyx_TraceLine(39,0,__PYX_ERR(0, 39, __pyx_L1_error)) __pyx_t_1 = 0; - __pyx_t_3 = __pyx_v_strings; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; + __pyx_t_3 = __pyx_v_strings; __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 39, __pyx_L1_error) + #endif + if (__pyx_t_4 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely((0 < 0))) __PYX_ERR(0, 39, __pyx_L1_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 39, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_XDECREF_SET(__pyx_v_string, __pyx_t_5); @@ -3778,7 +4032,7 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); __Pyx_AddTraceback("hunter._event.make_kind_names", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; + __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_name); __Pyx_XDECREF(__pyx_v_string); @@ -3805,21 +4059,27 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO PyObject *__pyx_v_depth = 0; PyObject *__pyx_v_calls = 0; PyObject *__pyx_v_threading_support = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[7] = {0,0,0,0,0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_frame,&__pyx_n_s_kind,&__pyx_n_s_arg,&__pyx_n_s_tracer,&__pyx_n_s_depth,&__pyx_n_s_calls,&__pyx_n_s_threading_support,0}; - PyObject* values[7] = {0,0,0,0,0,0,0}; - values[3] = (PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None); - values[4] = ((PyObject *)Py_None); - values[5] = ((PyObject *)Py_None); - values[6] = __pyx_k_; + values[3] = __Pyx_Arg_NewRef_VARARGS((PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None)); + values[4] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); + values[5] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); + values[6] = __Pyx_Arg_NewRef_VARARGS(__pyx_k_); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -3843,19 +4103,28 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_frame)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_frame)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_kind)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_kind)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, 1); __PYX_ERR(0, 61, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_arg)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_arg)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, 2); __PYX_ERR(0, 61, __pyx_L3_error) @@ -3864,28 +4133,28 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO case 3: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_tracer); - if (value) { values[3] = value; kw_args--; } + if (value) { values[3] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 4: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_depth); - if (value) { values[4] = value; kw_args--; } + if (value) { values[4] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 5: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_calls); - if (value) { values[5] = value; kw_args--; } + if (value) { values[5] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 6: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_threading_support); - if (value) { values[6] = value; kw_args--; } + if (value) { values[6] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) } } @@ -3918,10 +4187,18 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO __pyx_v_calls = values[5]; __pyx_v_threading_support = values[6]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, __pyx_nargs); __PYX_ERR(0, 61, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._event.Event.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -3935,6 +4212,12 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO __pyx_L1_error:; __pyx_r = -1; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4471,10 +4754,11 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_3__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_3__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_2__repr__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -4494,7 +4778,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_RefNannySetupContext("__repr__", 1); __Pyx_TraceCall("__repr__", __pyx_f[0], 100, 0, __PYX_ERR(0, 100, __pyx_L1_error)); /* "hunter/_event.pyx":101 @@ -4527,15 +4811,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_self->kind); __Pyx_GIVEREF(__pyx_v_self->kind); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->kind); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->kind)) __PYX_ERR(0, 102, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; @@ -4591,10 +4875,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_4__eq__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -4611,7 +4896,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_RefNannySetupContext("__eq__", 1); __Pyx_TraceCall("__eq__", __pyx_f[0], 105, 0, __PYX_ERR(0, 105, __pyx_L1_error)); /* "hunter/_event.pyx":106 @@ -4676,19 +4961,27 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v_value_filter = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("detach (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_value_filter,0}; - PyObject* values[1] = {0}; - values[0] = ((PyObject *)Py_None); + values[0] = __Pyx_Arg_NewRef_FASTCALL(((PyObject *)Py_None)); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4702,7 +4995,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds case 0: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_value_filter); - if (value) { values[0] = value; kw_args--; } + if (value) { values[0] = __Pyx_Arg_NewRef_FASTCALL(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 108, __pyx_L3_error) } } @@ -4720,10 +5013,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v_value_filter = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("detach", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 108, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._event.Event.detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -4731,6 +5032,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6_event_5Event_6detach(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v_value_filter); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4744,7 +5051,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__5) - __Pyx_RefNannySetupContext("detach", 0); + __Pyx_RefNannySetupContext("detach", 1); __Pyx_TraceCall("detach", __pyx_f[0], 108, 0, __PYX_ERR(0, 108, __pyx_L1_error)); /* "hunter/_event.pyx":109 @@ -4807,12 +5114,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("clone (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("clone", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "clone", 0))) return NULL; @@ -4832,7 +5147,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__6) - __Pyx_RefNannySetupContext("clone", 0); + __Pyx_RefNannySetupContext("clone", 1); __Pyx_TraceCall("clone", __pyx_f[0], 111, 0, __PYX_ERR(0, 111, __pyx_L1_error)); /* "hunter/_event.pyx":112 @@ -4891,7 +5206,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("instruction_getter", 0); + __Pyx_RefNannySetupContext("instruction_getter", 1); __Pyx_TraceCall("instruction_getter", __pyx_f[0], 114, 0, __PYX_ERR(0, 114, __pyx_L1_error)); /* "hunter/_event.pyx":117 @@ -5051,10 +5366,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_11instruction_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_11instruction_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_11instruction___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -5070,7 +5386,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 126, 0, __PYX_ERR(0, 126, __pyx_L1_error)); /* "hunter/_event.pyx":128 @@ -5131,7 +5447,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("threadid_getter", 0); + __Pyx_RefNannySetupContext("threadid_getter", 1); __Pyx_TraceCall("threadid_getter", __pyx_f[0], 130, 0, __PYX_ERR(0, 130, __pyx_L1_error)); /* "hunter/_event.pyx":133 @@ -5167,7 +5483,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -5177,8 +5494,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_4, }; + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 135, __pyx_L1_error) @@ -5314,10 +5632,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8threadid_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_8threadid_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_8threadid___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -5333,7 +5652,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 142, 0, __PYX_ERR(0, 142, __pyx_L1_error)); /* "hunter/_event.pyx":144 @@ -5391,7 +5710,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("threadname_getter", 0); + __Pyx_RefNannySetupContext("threadname_getter", 1); __Pyx_TraceCall("threadname_getter", __pyx_f[0], 146, 0, __PYX_ERR(0, 146, __pyx_L1_error)); /* "hunter/_event.pyx":147 @@ -5428,7 +5747,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -5438,8 +5758,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_4, }; + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 149, __pyx_L1_error) @@ -5532,10 +5853,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_10threadname_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_10threadname_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_10threadname___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -5551,7 +5873,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 153, 0, __PYX_ERR(0, 153, __pyx_L1_error)); /* "hunter/_event.pyx":155 @@ -5607,7 +5929,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("locals_getter", 0); + __Pyx_RefNannySetupContext("locals_getter", 1); __Pyx_TraceCall("locals_getter", __pyx_f[0], 157, 0, __PYX_ERR(0, 157, __pyx_L1_error)); /* "hunter/_event.pyx":158 @@ -5747,10 +6069,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6locals_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_6locals_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_6locals___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -5766,7 +6089,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 166, 0, __PYX_ERR(0, 166, __pyx_L1_error)); /* "hunter/_event.pyx":168 @@ -5822,7 +6145,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("globals_getter", 0); + __Pyx_RefNannySetupContext("globals_getter", 1); __Pyx_TraceCall("globals_getter", __pyx_f[0], 170, 0, __PYX_ERR(0, 170, __pyx_L1_error)); /* "hunter/_event.pyx":171 @@ -5949,10 +6272,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_7globals_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_7globals_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_7globals___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -5968,7 +6292,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 178, 0, __PYX_ERR(0, 178, __pyx_L1_error)); /* "hunter/_event.pyx":180 @@ -6024,7 +6348,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("function_getter", 0); + __Pyx_RefNannySetupContext("function_getter", 1); __Pyx_TraceCall("function_getter", __pyx_f[0], 182, 0, __PYX_ERR(0, 182, __pyx_L1_error)); /* "hunter/_event.pyx":183 @@ -6151,10 +6475,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8function_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_8function_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_8function___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -6170,7 +6495,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 190, 0, __PYX_ERR(0, 190, __pyx_L1_error)); /* "hunter/_event.pyx":192 @@ -6219,10 +6544,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_15function_object_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_15function_object_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_15function_object___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -6252,7 +6578,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 194, 0, __PYX_ERR(0, 194, __pyx_L1_error)); /* "hunter/_event.pyx":197 @@ -6359,7 +6685,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -6369,6 +6696,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_3, __pyx_v_code->co_name, Py_None}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); @@ -6392,7 +6720,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -6402,6 +6731,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_3, __pyx_v_candidate, ((PyObject *)__pyx_v_code)}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); @@ -6452,7 +6782,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -6462,6 +6793,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_7}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -6486,7 +6818,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_GOTREF(__pyx_t_3); __pyx_t_7 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -6496,6 +6829,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_7, __pyx_v_first_arg, ((PyObject *)__pyx_v_code)}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); @@ -6599,7 +6933,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_10 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -6609,6 +6944,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_10 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_v_v, ((PyObject *)__pyx_v_code)}; __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_10, 2+__pyx_t_10); @@ -6746,7 +7082,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("module_getter", 0); + __Pyx_RefNannySetupContext("module_getter", 1); __Pyx_TraceCall("module_getter", __pyx_f[0], 225, 0, __PYX_ERR(0, 225, __pyx_L1_error)); /* "hunter/_event.pyx":226 @@ -6916,10 +7252,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6module_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_6module_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_6module___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -6935,7 +7272,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 236, 0, __PYX_ERR(0, 236, __pyx_L1_error)); /* "hunter/_event.pyx":238 @@ -6984,7 +7321,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyCodeObject *__pyx_v_code = 0; PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_basename = NULL; + PyObject *__pyx_v_cybasename = NULL; PyObject *__pyx_v_ext = NULL; PyObject *__pyx_v_cyfilename = NULL; PyObject *__pyx_r = NULL; @@ -7001,7 +7338,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("filename_getter", 0); + __Pyx_RefNannySetupContext("filename_getter", 1); __Pyx_TraceCall("filename_getter", __pyx_f[0], 240, 0, __PYX_ERR(0, 240, __pyx_L1_error)); /* "hunter/_event.pyx":242 @@ -7068,7 +7405,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -7078,6 +7416,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_n_s_file}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -7143,7 +7482,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -7153,6 +7493,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_tuple__10}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -7170,7 +7511,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) */ __Pyx_TraceLine(250,0,__PYX_ERR(0, 250, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_slice__11, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error) @@ -7192,7 +7533,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ __Pyx_TraceLine(251,0,__PYX_ERR(0, 251, __pyx_L1_error)) @@ -7200,7 +7541,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -7210,6 +7552,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_tuple__12}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -7225,9 +7568,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj /* "hunter/_event.pyx":252 * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): - * basename = CYTHON_SUFFIX_RE.sub('', filename) # <<<<<<<<<<<<<< + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) # <<<<<<<<<<<<<< * for ext in ('.pyx', '.py'): - * cyfilename = basename + ext + * cyfilename = cybasename + ext */ __Pyx_TraceLine(252,0,__PYX_ERR(0, 252, __pyx_L1_error)) __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 252, __pyx_L1_error) @@ -7237,7 +7580,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -7247,6 +7591,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_kp_s__7, __pyx_v_filename}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 2+__pyx_t_6); @@ -7255,45 +7600,46 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_v_basename = __pyx_t_2; + __pyx_v_cybasename = __pyx_t_2; __pyx_t_2 = 0; /* "hunter/_event.pyx":253 * elif filename.endswith(('.so', '.pyd')): - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< - * cyfilename = basename + ext + * cyfilename = cybasename + ext * if exists(cyfilename): */ __Pyx_TraceLine(253,0,__PYX_ERR(0, 253, __pyx_L1_error)) - __pyx_t_2 = __pyx_tuple__13; __Pyx_INCREF(__pyx_t_2); __pyx_t_7 = 0; + __pyx_t_2 = __pyx_tuple__13; __Pyx_INCREF(__pyx_t_2); + __pyx_t_7 = 0; for (;;) { if (__pyx_t_7 >= 2) break; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; if (unlikely((0 < 0))) __PYX_ERR(0, 253, __pyx_L1_error) #else - __pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 253, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_XDECREF_SET(__pyx_v_ext, __pyx_t_4); __pyx_t_4 = 0; /* "hunter/_event.pyx":254 - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): - * cyfilename = basename + ext # <<<<<<<<<<<<<< + * cyfilename = cybasename + ext # <<<<<<<<<<<<<< * if exists(cyfilename): * filename = cyfilename */ __Pyx_TraceLine(254,0,__PYX_ERR(0, 254, __pyx_L1_error)) - __pyx_t_4 = PyNumber_Add(__pyx_v_basename, __pyx_v_ext); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 254, __pyx_L1_error) + __pyx_t_4 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_XDECREF_SET(__pyx_v_cyfilename, __pyx_t_4); __pyx_t_4 = 0; /* "hunter/_event.pyx":255 * for ext in ('.pyx', '.py'): - * cyfilename = basename + ext + * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< * filename = cyfilename * break @@ -7303,7 +7649,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -7313,6 +7660,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_v_cyfilename}; __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -7326,7 +7674,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj if (__pyx_t_1) { /* "hunter/_event.pyx":256 - * cyfilename = basename + ext + * cyfilename = cybasename + ext * if exists(cyfilename): * filename = cyfilename # <<<<<<<<<<<<<< * break @@ -7348,7 +7696,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj /* "hunter/_event.pyx":255 * for ext in ('.pyx', '.py'): - * cyfilename = basename + ext + * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< * filename = cyfilename * break @@ -7357,21 +7705,25 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj /* "hunter/_event.pyx":253 * elif filename.endswith(('.so', '.pyd')): - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< - * cyfilename = basename + ext + * cyfilename = cybasename + ext * if exists(cyfilename): */ __Pyx_TraceLine(253,0,__PYX_ERR(0, 253, __pyx_L1_error)) } + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + goto __pyx_L9_for_end; __pyx_L7_break:; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + goto __pyx_L9_for_end; + __pyx_L9_for_end:; /* "hunter/_event.pyx":251 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ } @@ -7432,7 +7784,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_L0:; __Pyx_XDECREF((PyObject *)__pyx_v_code); __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_basename); + __Pyx_XDECREF(__pyx_v_cybasename); __Pyx_XDECREF(__pyx_v_ext); __Pyx_XDECREF(__pyx_v_cyfilename); __Pyx_XGIVEREF(__pyx_r); @@ -7452,10 +7804,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8filename_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_8filename_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_8filename___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -7471,7 +7824,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 262, 0, __PYX_ERR(0, 262, __pyx_L1_error)); /* "hunter/_event.pyx":264 @@ -7527,7 +7880,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lineno_getter", 0); + __Pyx_RefNannySetupContext("lineno_getter", 1); __Pyx_TraceCall("lineno_getter", __pyx_f[0], 266, 0, __PYX_ERR(0, 266, __pyx_L1_error)); /* "hunter/_event.pyx":267 @@ -7614,10 +7967,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6lineno_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_6lineno_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_6lineno___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -7633,7 +7987,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 271, 0, __PYX_ERR(0, 271, __pyx_L1_error)); /* "hunter/_event.pyx":273 @@ -7689,7 +8043,7 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("code_getter", 0); + __Pyx_RefNannySetupContext("code_getter", 1); __Pyx_TraceCall("code_getter", __pyx_f[0], 275, 0, __PYX_ERR(0, 275, __pyx_L1_error)); /* "hunter/_event.pyx":276 @@ -7778,10 +8132,11 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_4code_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_4code_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_4code___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -7797,7 +8152,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 281, 0, __PYX_ERR(0, 281, __pyx_L1_error)); /* "hunter/_event.pyx":283 @@ -7858,7 +8213,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("stdlib_getter", 0); + __Pyx_RefNannySetupContext("stdlib_getter", 1); __Pyx_TraceCall("stdlib_getter", __pyx_f[0], 285, 0, __PYX_ERR(0, 285, __pyx_L1_error)); /* "hunter/_event.pyx":286 @@ -7887,7 +8242,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -7897,6 +8253,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_kp_s__14}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -7967,7 +8324,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -7977,6 +8335,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_n_s_namedtuple}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -8041,7 +8400,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_GOTREF(__pyx_t_3); __pyx_t_7 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -8051,6 +8411,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_3}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -8105,7 +8466,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -8115,6 +8477,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_4}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -8226,10 +8589,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6stdlib_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_6stdlib_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_6stdlib___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -8245,7 +8609,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 303, 0, __PYX_ERR(0, 303, __pyx_L1_error)); /* "hunter/_event.pyx":305 @@ -8331,7 +8695,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fullsource_getter", 0); + __Pyx_RefNannySetupContext("fullsource_getter", 1); __Pyx_TraceCall("fullsource_getter", __pyx_f[0], 307, 0, __PYX_ERR(0, 307, __pyx_L1_error)); /* "hunter/_event.pyx":311 @@ -8528,7 +8892,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_TraceLine(325,0,__PYX_ERR(0, 325, __pyx_L13_error)) __pyx_t_18 = NULL; __pyx_t_20 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_15))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_15))) { __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_15); if (likely(__pyx_t_18)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15); @@ -8538,6 +8903,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_20 = 1; } } + #endif { PyObject *__pyx_callargs[5] = {__pyx_t_18, __pyx_t_16, __pyx_t_17, __pyx_t_19, __pyx_v_lines}; __pyx_t_14 = __Pyx_PyObject_FastCall(__pyx_t_15, __pyx_callargs+1-__pyx_t_20, 4+__pyx_t_20); @@ -8551,7 +8917,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o } __pyx_t_15 = NULL; __pyx_t_20 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_12))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_12))) { __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12); if (likely(__pyx_t_15)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12); @@ -8561,6 +8928,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_20 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_15, __pyx_t_13, __pyx_t_14}; __pyx_t_11 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+1-__pyx_t_20, 2+__pyx_t_20); @@ -8573,7 +8941,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o } __pyx_t_12 = NULL; __pyx_t_20 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_10))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_10))) { __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_10); if (likely(__pyx_t_12)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); @@ -8583,6 +8952,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_20 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_12, __pyx_t_11}; __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_20, 1+__pyx_t_20); @@ -8602,7 +8972,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ __Pyx_TraceLine(318,0,__PYX_ERR(0, 318, __pyx_L13_error)) if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) { - __pyx_t_10 = __pyx_t_5; __Pyx_INCREF(__pyx_t_10); __pyx_t_21 = 0; + __pyx_t_10 = __pyx_t_5; __Pyx_INCREF(__pyx_t_10); + __pyx_t_21 = 0; __pyx_t_22 = NULL; } else { __pyx_t_21 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 318, __pyx_L13_error) @@ -8613,19 +8984,31 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o for (;;) { if (likely(!__pyx_t_22)) { if (likely(PyList_CheckExact(__pyx_t_10))) { - if (__pyx_t_21 >= PyList_GET_SIZE(__pyx_t_10)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_10); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 318, __pyx_L13_error) + #endif + if (__pyx_t_21 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_5 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_21); __Pyx_INCREF(__pyx_t_5); __pyx_t_21++; if (unlikely((0 < 0))) __PYX_ERR(0, 318, __pyx_L13_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_10, __pyx_t_21); __pyx_t_21++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_10, __pyx_t_21); __pyx_t_21++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); #endif } else { - if (__pyx_t_21 >= PyTuple_GET_SIZE(__pyx_t_10)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_10); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 318, __pyx_L13_error) + #endif + if (__pyx_t_21 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_21); __Pyx_INCREF(__pyx_t_5); __pyx_t_21++; if (unlikely((0 < 0))) __PYX_ERR(0, 318, __pyx_L13_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_10, __pyx_t_21); __pyx_t_21++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_10, __pyx_t_21); __pyx_t_21++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); #endif } @@ -8787,8 +9170,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ __Pyx_TraceLine(318,0,__PYX_ERR(0, 318, __pyx_L13_error)) } + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + goto __pyx_L27_for_end; __pyx_L20_break:; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + goto __pyx_L27_for_end; + __pyx_L27_for_end:; /* "hunter/_event.pyx":317 * if self.kind == 'call' and code.co_name != '': @@ -8835,7 +9222,6 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o goto __pyx_L14_exception_handled; } goto __pyx_L15_except_error; - __pyx_L15_except_error:; /* "hunter/_event.pyx":317 * if self.kind == 'call' and code.co_name != '': @@ -8844,6 +9230,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o * for _, token, _, _, _ in generate_tokens( * partial( */ + __pyx_L15_except_error:; __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_9); @@ -8895,7 +9282,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_GOTREF(__pyx_t_14); __pyx_t_12 = NULL; __pyx_t_20 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_12)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -8905,6 +9293,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_20 = 1; } } + #endif { PyObject *__pyx_callargs[4] = {__pyx_t_12, __pyx_t_10, __pyx_t_13, __pyx_t_14}; __pyx_t_15 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_20, 3+__pyx_t_20); @@ -8968,9 +9357,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o if (__pyx_t_20) { __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_5, &__pyx_t_14) < 0) __PYX_ERR(0, 336, __pyx_L6_except_error) - __Pyx_GOTREF(__pyx_t_15); - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_14); + __Pyx_XGOTREF(__pyx_t_15); + __Pyx_XGOTREF(__pyx_t_5); + __Pyx_XGOTREF(__pyx_t_14); __Pyx_INCREF(__pyx_t_5); __pyx_v_exc = __pyx_t_5; /*try:*/ { @@ -8982,10 +9371,10 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o * return self._fullsource * */ - __Pyx_TraceLine(337,0,__PYX_ERR(0, 337, __pyx_L33_error)) - __pyx_t_13 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 337, __pyx_L33_error) + __Pyx_TraceLine(337,0,__PYX_ERR(0, 337, __pyx_L34_error)) + __pyx_t_13 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 337, __pyx_L34_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_10 = __Pyx_PyUnicode_Concat(__pyx_kp_u_NO_SOURCE, __pyx_t_13); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 337, __pyx_L33_error) + __pyx_t_10 = __Pyx_PyUnicode_Concat(__pyx_kp_u_NO_SOURCE, __pyx_t_13); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 337, __pyx_L34_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_GIVEREF(__pyx_t_10); @@ -9002,13 +9391,13 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource */ - __Pyx_TraceLine(336,0,__PYX_ERR(0, 336, __pyx_L33_error)) + __Pyx_TraceLine(336,0,__PYX_ERR(0, 336, __pyx_L34_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; - goto __pyx_L34; + goto __pyx_L35; } - __pyx_L33_error:; + __pyx_L34_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -9047,7 +9436,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_lineno = __pyx_t_20; __pyx_clineno = __pyx_t_24; __pyx_filename = __pyx_t_25; goto __pyx_L6_except_error; } - __pyx_L34:; + __pyx_L35:; } __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -9055,7 +9444,6 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o goto __pyx_L5_exception_handled; } goto __pyx_L6_except_error; - __pyx_L6_except_error:; /* "hunter/_event.pyx":312 * @@ -9064,6 +9452,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o * self._fullsource = None * code = self.code_getter() */ + __pyx_L6_except_error:; __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_3); __Pyx_XGIVEREF(__pyx_t_4); @@ -9145,10 +9534,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_10fullsource_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_10fullsource_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_10fullsource___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9164,7 +9554,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 340, 0, __PYX_ERR(0, 340, __pyx_L1_error)); /* "hunter/_event.pyx":342 @@ -9240,7 +9630,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("source_getter", 0); + __Pyx_RefNannySetupContext("source_getter", 1); __Pyx_TraceCall("source_getter", __pyx_f[0], 344, 0, __PYX_ERR(0, 344, __pyx_L1_error)); /* "hunter/_event.pyx":345 @@ -9269,7 +9659,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -9279,6 +9670,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_tuple__12}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -9315,7 +9707,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_GOTREF(__pyx_t_10); __pyx_t_11 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_9))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_9))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_9); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); @@ -9325,6 +9718,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_t_10}; __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -9336,7 +9730,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 } __pyx_t_9 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_9)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -9346,6 +9741,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_t_8}; __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -9423,7 +9819,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_GOTREF(__pyx_t_9); __pyx_t_10 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_10)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); @@ -9433,6 +9830,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[4] = {__pyx_t_10, __pyx_t_3, __pyx_t_8, __pyx_t_9}; __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_5, 3+__pyx_t_5); @@ -9483,9 +9881,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 if (__pyx_t_5) { __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_2, &__pyx_t_9) < 0) __PYX_ERR(0, 350, __pyx_L7_except_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GOTREF(__pyx_t_9); + __Pyx_XGOTREF(__pyx_t_4); + __Pyx_XGOTREF(__pyx_t_2); + __Pyx_XGOTREF(__pyx_t_9); __Pyx_INCREF(__pyx_t_2); __pyx_v_exc = __pyx_t_2; /*try:*/ { @@ -9566,7 +9964,6 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 goto __pyx_L6_exception_handled; } goto __pyx_L7_except_error; - __pyx_L7_except_error:; /* "hunter/_event.pyx":348 * if self.filename.endswith(('.so', '.pyd')): @@ -9575,6 +9972,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: */ + __pyx_L7_except_error:; __Pyx_XGIVEREF(__pyx_t_12); __Pyx_XGIVEREF(__pyx_t_13); __Pyx_XGIVEREF(__pyx_t_14); @@ -9648,10 +10046,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6source_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_6source_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_6source___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9667,7 +10066,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[0], 355, 0, __PYX_ERR(0, 355, __pyx_L1_error)); /* "hunter/_event.pyx":357 @@ -9716,10 +10115,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_11__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_11__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__getitem__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_10__getitem__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), ((PyObject *)__pyx_v_item)); /* function exit code */ @@ -9735,7 +10135,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__getitem__", 0); + __Pyx_RefNannySetupContext("__getitem__", 1); __Pyx_TraceCall("__getitem__", __pyx_f[0], 359, 0, __PYX_ERR(0, 359, __pyx_L1_error)); /* "hunter/_event.pyx":360 @@ -9773,7 +10173,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pxd":14 +/* "hunter/_event.pxd":15 * cdef class Event: * cdef: * readonly FrameType frame # <<<<<<<<<<<<<< @@ -9784,10 +10184,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5frame_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_5frame_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_5frame___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9802,8 +10203,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 14, 0, __PYX_ERR(1, 14, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 15, 0, __PYX_ERR(1, 15, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->frame); __pyx_r = ((PyObject *)__pyx_v_self->frame); @@ -9820,7 +10221,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":15 +/* "hunter/_event.pxd":16 * cdef: * readonly FrameType frame * readonly str kind # <<<<<<<<<<<<<< @@ -9831,10 +10232,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_4kind_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_4kind_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_4kind___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9849,8 +10251,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 15, 0, __PYX_ERR(1, 15, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 16, 0, __PYX_ERR(1, 16, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->kind); __pyx_r = __pyx_v_self->kind; @@ -9867,7 +10269,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pxd":16 +/* "hunter/_event.pxd":17 * readonly FrameType frame * readonly str kind * readonly object arg # <<<<<<<<<<<<<< @@ -9878,10 +10280,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_3arg_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_3arg_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_3arg___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9896,8 +10299,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 16, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 17, 0, __PYX_ERR(1, 17, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->arg); __pyx_r = __pyx_v_self->arg; @@ -9914,7 +10317,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pxd":17 +/* "hunter/_event.pxd":18 * readonly str kind * readonly object arg * readonly int depth # <<<<<<<<<<<<<< @@ -9925,10 +10328,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5depth_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_5depth_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_5depth___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9944,10 +10348,10 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 17, 0, __PYX_ERR(1, 17, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 18, 0, __PYX_ERR(1, 18, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -9965,7 +10369,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":18 +/* "hunter/_event.pxd":19 * readonly object arg * readonly int depth * readonly int calls # <<<<<<<<<<<<<< @@ -9976,10 +10380,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5calls_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_5calls_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_5calls___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -9995,10 +10400,10 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 18, 0, __PYX_ERR(1, 18, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 19, 0, __PYX_ERR(1, 19, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 18, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -10016,7 +10421,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":19 +/* "hunter/_event.pxd":20 * readonly int depth * readonly int calls * readonly bint threading_support # <<<<<<<<<<<<<< @@ -10027,10 +10432,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_17threading_support_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_17threading_support_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_17threading_support___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -10046,10 +10452,10 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 19, 0, __PYX_ERR(1, 19, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 20, 0, __PYX_ERR(1, 20, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 19, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -10067,7 +10473,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str return __pyx_r; } -/* "hunter/_event.pxd":20 +/* "hunter/_event.pxd":21 * readonly int calls * readonly bint threading_support * readonly bint detached # <<<<<<<<<<<<<< @@ -10078,10 +10484,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8detached_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_8detached_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_8detached___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -10097,10 +10504,10 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 20, 0, __PYX_ERR(1, 20, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 21, 0, __PYX_ERR(1, 21, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 20, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -10118,7 +10525,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pxd":21 +/* "hunter/_event.pxd":22 * readonly bint threading_support * readonly bint detached * readonly object builtin # <<<<<<<<<<<<<< @@ -10129,10 +10536,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_7builtin_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6_event_5Event_7builtin_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6_event_5Event_7builtin___get__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -10147,8 +10555,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[1], 21, 0, __PYX_ERR(1, 21, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[1], 22, 0, __PYX_ERR(1, 22, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; @@ -10196,19 +10604,27 @@ PyObject *__pyx_args, PyObject *__pyx_kwds PyObject *__pyx_v_collector = 0; PyObject *__pyx_v_limit = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[5] = {0,0,0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("yield_lines (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_filename,&__pyx_n_s_module_globals,&__pyx_n_s_start,&__pyx_n_s_collector,&__pyx_n_s_limit,0}; - PyObject* values[5] = {0,0,0,0,0}; - values[4] = ((PyObject *)((PyObject *)__pyx_int_10)); + values[4] = __Pyx_Arg_NewRef_FASTCALL(((PyObject *)((PyObject *)__pyx_int_10))); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -10228,26 +10644,38 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_filename)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_filename)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_module_globals)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_module_globals)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, 1); __PYX_ERR(0, 363, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_start)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_start)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, 2); __PYX_ERR(0, 363, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 3: - if (likely((values[3] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_collector)) != 0)) kw_args--; + if (likely((values[3] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_collector)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[3]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, 3); __PYX_ERR(0, 363, __pyx_L3_error) @@ -10256,7 +10684,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds case 4: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_limit); - if (value) { values[4] = value; kw_args--; } + if (value) { values[4] = __Pyx_Arg_NewRef_FASTCALL(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) } } @@ -10282,10 +10710,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v_collector = ((PyObject*)values[3]); __pyx_v_limit = values[4]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 363, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -10298,6 +10734,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10418,7 +10860,8 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; __pyx_t_4 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); @@ -10428,6 +10871,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_4 = 1; } } + #endif { PyObject *__pyx_callargs[3] = {__pyx_t_3, __pyx_cur_scope->__pyx_v_filename, __pyx_cur_scope->__pyx_v_module_globals}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 2+__pyx_t_4); @@ -10443,7 +10887,8 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (likely(PyList_CheckExact(__pyx_t_3)) || PyTuple_CheckExact(__pyx_t_3)) { - __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_5 = 0; + __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); + __pyx_t_5 = 0; __pyx_t_6 = NULL; } else { __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) @@ -10454,19 +10899,31 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py for (;;) { if (likely(!__pyx_t_6)) { if (likely(PyList_CheckExact(__pyx_t_2))) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 367, __pyx_L1_error) + #endif + if (__pyx_t_5 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely((0 < 0))) __PYX_ERR(0, 367, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif } else { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 367, __pyx_L1_error) + #endif + if (__pyx_t_5 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely((0 < 0))) __PYX_ERR(0, 367, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif } @@ -10513,7 +10970,8 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_4 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); @@ -10523,6 +10981,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_4 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_line}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); @@ -10592,7 +11051,8 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = NULL; __pyx_t_4 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); @@ -10602,6 +11062,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_4 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_dedent}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); @@ -10689,8 +11150,12 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py */ __Pyx_TraceLine(367,0,__PYX_ERR(0, 367, __pyx_L1_error)) } + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + goto __pyx_L8_for_end; __pyx_L5_break:; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + goto __pyx_L8_for_end; + __pyx_L8_for_end:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); /* "hunter/_event.pyx":363 @@ -10753,7 +11218,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_detach", 0); + __Pyx_RefNannySetupContext("fast_detach", 1); __Pyx_TraceCall("fast_detach", __pyx_f[0], 378, 0, __PYX_ERR(0, 378, __pyx_L1_error)); /* "hunter/_event.pyx":379 @@ -11012,7 +11477,8 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_INCREF(__pyx_v_value_filter); __pyx_t_8 = __pyx_v_value_filter; __pyx_t_10 = NULL; __pyx_t_9 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_10)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); @@ -11022,6 +11488,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_9 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_7genexpr__pyx_v_value}; __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_9, 1+__pyx_t_9); @@ -11086,7 +11553,8 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_INCREF(__pyx_v_value_filter); __pyx_t_8 = __pyx_v_value_filter; __pyx_t_10 = NULL; __pyx_t_9 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_10)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); @@ -11096,6 +11564,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_9 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_8genexpr1__pyx_v_value}; __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_9, 1+__pyx_t_9); @@ -11134,7 +11603,8 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_INCREF(__pyx_v_value_filter); __pyx_t_1 = __pyx_v_value_filter; __pyx_t_7 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); @@ -11144,6 +11614,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_v_self->arg}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -11354,7 +11825,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_clone", 0); + __Pyx_RefNannySetupContext("fast_clone", 1); __Pyx_TraceCall("fast_clone", __pyx_f[0], 412, 0, __PYX_ERR(0, 412, __pyx_L1_error)); /* "hunter/_event.pyx":413 @@ -11751,180 +12222,6 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_RefNannyFinishContext(); return __pyx_r; } - -static struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[8]; -static int __pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines = 0; - -static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { - o = (PyObject*)__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[--__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } - #endif - return o; -} - -static void __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines(PyObject *o) { - struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *p = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif - PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_v_collector); - Py_CLEAR(p->__pyx_v_dedent); - Py_CLEAR(p->__pyx_v_filename); - Py_CLEAR(p->__pyx_v_limit); - Py_CLEAR(p->__pyx_v_line); - Py_CLEAR(p->__pyx_v_module_globals); - Py_CLEAR(p->__pyx_v_start); - Py_CLEAR(p->__pyx_t_0); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { - __pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines++] = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); - } -} - -static int __pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *p = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o; - if (p->__pyx_v_collector) { - e = (*v)(p->__pyx_v_collector, a); if (e) return e; - } - if (p->__pyx_v_dedent) { - e = (*v)(p->__pyx_v_dedent, a); if (e) return e; - } - if (p->__pyx_v_filename) { - e = (*v)(p->__pyx_v_filename, a); if (e) return e; - } - if (p->__pyx_v_limit) { - e = (*v)(p->__pyx_v_limit, a); if (e) return e; - } - if (p->__pyx_v_line) { - e = (*v)(p->__pyx_v_line, a); if (e) return e; - } - if (p->__pyx_v_module_globals) { - e = (*v)(p->__pyx_v_module_globals, a); if (e) return e; - } - if (p->__pyx_v_start) { - e = (*v)(p->__pyx_v_start, a); if (e) return e; - } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; - } - return 0; -} -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec = { - "hunter._event.__pyx_scope_struct__yield_lines", - sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines = { - PyVarObject_HEAD_INIT(0, 0) - "hunter._event.""__pyx_scope_struct__yield_lines", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - 0, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif static struct __pyx_vtabstruct_6hunter_6_event_Event __pyx_vtable_6hunter_6_event_Event; static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { @@ -11983,7 +12280,14 @@ static void __pyx_tp_dealloc_6hunter_6_event_Event(PyObject *o) { Py_CLEAR(p->_threadidn); Py_CLEAR(p->_threadname); Py_CLEAR(p->_instruction); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif } static int __pyx_tp_traverse_6hunter_6_event_Event(PyObject *o, visitproc v, void *a) { @@ -12342,9 +12646,198 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_6_event_Event, /*tp_methods*/ + __pyx_methods_6hunter_6_event_Event, /*tp_methods*/ + 0, /*tp_members*/ + __pyx_getsets_6hunter_6_event_Event, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + #if !CYTHON_USE_TYPE_SPECS + 0, /*tp_dictoffset*/ + #endif + __pyx_pw_6hunter_6_event_5Event_1__init__, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_6hunter_6_event_Event, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + #if CYTHON_USE_TP_FINALIZE + 0, /*tp_finalize*/ + #else + NULL, /*tp_finalize*/ + #endif + #endif + #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) + 0, /*tp_vectorcall*/ + #endif + #if __PYX_NEED_TP_PRINT_SLOT == 1 + 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030C0000 + 0, /*tp_watched*/ + #endif + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 + 0, /*tp_pypy_flags*/ + #endif +}; +#endif + +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[8]; +static int __pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + #if CYTHON_COMPILING_IN_LIMITED_API + allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); + o = alloc_func(t, 0); + #else + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { + o = (PyObject*)__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[--__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } + #endif + return o; +} + +static void __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines(PyObject *o) { + struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *p = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif + PyObject_GC_UnTrack(o); + Py_CLEAR(p->__pyx_v_collector); + Py_CLEAR(p->__pyx_v_dedent); + Py_CLEAR(p->__pyx_v_filename); + Py_CLEAR(p->__pyx_v_limit); + Py_CLEAR(p->__pyx_v_line); + Py_CLEAR(p->__pyx_v_module_globals); + Py_CLEAR(p->__pyx_v_start); + Py_CLEAR(p->__pyx_t_0); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { + __pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines++] = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } +} + +static int __pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *p = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o; + if (p->__pyx_v_collector) { + e = (*v)(p->__pyx_v_collector, a); if (e) return e; + } + if (p->__pyx_v_dedent) { + e = (*v)(p->__pyx_v_dedent, a); if (e) return e; + } + if (p->__pyx_v_filename) { + e = (*v)(p->__pyx_v_filename, a); if (e) return e; + } + if (p->__pyx_v_limit) { + e = (*v)(p->__pyx_v_limit, a); if (e) return e; + } + if (p->__pyx_v_line) { + e = (*v)(p->__pyx_v_line, a); if (e) return e; + } + if (p->__pyx_v_module_globals) { + e = (*v)(p->__pyx_v_module_globals, a); if (e) return e; + } + if (p->__pyx_v_start) { + e = (*v)(p->__pyx_v_start, a); if (e) return e; + } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; + } + return 0; +} +#if CYTHON_USE_TYPE_SPECS +static PyType_Slot __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines}, + {0, 0}, +}; +static PyType_Spec __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec = { + "hunter._event.__pyx_scope_struct__yield_lines", + sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines), + 0, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_slots, +}; +#else + +static PyTypeObject __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines = { + PyVarObject_HEAD_INIT(0, 0) + "hunter._event.""__pyx_scope_struct__yield_lines", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 + 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + #if PY_MAJOR_VERSION < 3 + 0, /*tp_compare*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + 0, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_6_event_Event, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -12352,9 +12845,9 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_6_event_5Event_1__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6_event_Event, /*tp_new*/ + __pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -12374,13 +12867,13 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; @@ -12598,7 +13091,7 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) */ __pyx_slice__11 = PySlice_New(Py_None, __pyx_int_neg_1, Py_None); if (unlikely(!__pyx_slice__11)) __PYX_ERR(0, 250, __pyx_L1_error) __Pyx_GOTREF(__pyx_slice__11); @@ -12608,7 +13101,7 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ __pyx_tuple__12 = PyTuple_Pack(2, __pyx_kp_s_so, __pyx_kp_s_pyd); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 251, __pyx_L1_error) @@ -12617,9 +13110,9 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { /* "hunter/_event.pyx":253 * elif filename.endswith(('.so', '.pyd')): - * basename = CYTHON_SUFFIX_RE.sub('', filename) + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< - * cyfilename = basename + ext + * cyfilename = cybasename + ext * if exists(cyfilename): */ __pyx_tuple__13 = PyTuple_Pack(2, __pyx_kp_s_pyx, __pyx_kp_s_py); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 253, __pyx_L1_error) @@ -12751,25 +13244,6 @@ static int __Pyx_modinit_type_init_code(void) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 363, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 363, __pyx_L1_error) - #else - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 363, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_print = 0; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_dictoffset && __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - } - #endif __pyx_vtabptr_6hunter_6_event_Event = &__pyx_vtable_6hunter_6_event_Event; __pyx_vtable_6hunter_6_event_Event.code_getter = (PyCodeObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_code_getter; __pyx_vtable_6hunter_6_event_Event.filename_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_filename_getter; @@ -12808,6 +13282,25 @@ static int __Pyx_modinit_type_init_code(void) { if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) #endif if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Event, (PyObject *) __pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 363, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 363, __pyx_L1_error) + #else + __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 363, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_dictoffset && __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + } + #endif __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -12826,49 +13319,34 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT(PyFrameObject), - __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(3, 19, __pyx_L1_error) - __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT(PyCodeObject), - __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) - __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 35, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyFrameObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(3, 19, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyCodeObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 36, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType(__pyx_t_2, "hunter._tracer", "Tracer", sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_7_tracer_Tracer), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(3, 35, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter._tracer", "Tracer", sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_7_tracer_Tracer),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(3, 36, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyImport_ImportModule("hunter.vendor._cymem.cymem"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = __Pyx_ImportType(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyMalloc", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) __PYX_ERR(4, 5, __pyx_L1_error) + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyMalloc", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) __PYX_ERR(4, 5, __pyx_L1_error) __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc*)__Pyx_GetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(4, 5, __pyx_L1_error) - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = __Pyx_ImportType(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyFree", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) __PYX_ERR(4, 11, __pyx_L1_error) + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyFree", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) __PYX_ERR(4, 11, __pyx_L1_error) __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree*)__Pyx_GetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(4, 11, __pyx_L1_error) - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = __Pyx_ImportType(__pyx_t_2, "hunter.vendor._cymem.cymem", "Pool", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) __PYX_ERR(4, 17, __pyx_L1_error) + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "Pool", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) __PYX_ERR(4, 17, __pyx_L1_error) __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool*)__Pyx_GetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(4, 17, __pyx_L1_error) - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = __Pyx_ImportType(__pyx_t_2, "hunter.vendor._cymem.cymem", "Address", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) __PYX_ERR(4, 29, __pyx_L1_error) + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "Address", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) __PYX_ERR(4, 29, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -13086,7 +13564,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__event(PyObject *__pyx_pyinit_modu __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) { int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); - __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to _event pseudovariable */ + __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "_event" pseudovariable */ if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) pystate_addmodule_run = 1; } @@ -13098,10 +13576,8 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__event(PyObject *__pyx_pyinit_modu CYTHON_UNUSED_VAR(__pyx_t_1); __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) Py_INCREF(__pyx_d); - __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_b); - __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_cython_runtime); + __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); @@ -13113,7 +13589,7 @@ if (!__Pyx_RefNanny) { } #endif __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit__event(void)", 0); - if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif @@ -13190,7 +13666,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_partial); __Pyx_GIVEREF(__pyx_n_s_partial); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_partial); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_partial)) __PYX_ERR(0, 2, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13212,7 +13688,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_getline); __Pyx_GIVEREF(__pyx_n_s_getline); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_getline); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_getline)) __PYX_ERR(0, 3, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_linecache, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13234,7 +13710,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_getlines); __Pyx_GIVEREF(__pyx_n_s_getlines); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_getlines); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_getlines)) __PYX_ERR(0, 4, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_linecache, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13256,7 +13732,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_basename); __Pyx_GIVEREF(__pyx_n_s_basename); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_basename); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_basename)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13278,7 +13754,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_exists); __Pyx_GIVEREF(__pyx_n_s_exists); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_exists); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_exists)) __PYX_ERR(0, 6, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13300,7 +13776,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_splitext); __Pyx_GIVEREF(__pyx_n_s_splitext); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_splitext); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_splitext)) __PYX_ERR(0, 7, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13322,7 +13798,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_current_thread); __Pyx_GIVEREF(__pyx_n_s_current_thread); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_current_thread); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_current_thread)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_threading, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13344,7 +13820,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_TokenError); __Pyx_GIVEREF(__pyx_n_s_TokenError); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_TokenError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_TokenError)) __PYX_ERR(0, 9, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_tokenize, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13366,7 +13842,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_generate_tokens); __Pyx_GIVEREF(__pyx_n_s_generate_tokens); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_generate_tokens); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_generate_tokens)) __PYX_ERR(0, 10, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_tokenize, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13388,7 +13864,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_SITE_PACKAGES_PATHS); __Pyx_GIVEREF(__pyx_n_s_SITE_PACKAGES_PATHS); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_SITE_PACKAGES_PATHS); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_SITE_PACKAGES_PATHS)) __PYX_ERR(0, 20, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13410,7 +13886,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_SYS_PREFIX_PATHS); __Pyx_GIVEREF(__pyx_n_s_SYS_PREFIX_PATHS); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_SYS_PREFIX_PATHS); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_SYS_PREFIX_PATHS)) __PYX_ERR(0, 21, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13432,7 +13908,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_CYTHON_SUFFIX_RE); __Pyx_GIVEREF(__pyx_n_s_CYTHON_SUFFIX_RE); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_CYTHON_SUFFIX_RE); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_CYTHON_SUFFIX_RE)) __PYX_ERR(0, 22, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13454,7 +13930,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_LEADING_WHITESPACE_RE); __Pyx_GIVEREF(__pyx_n_s_LEADING_WHITESPACE_RE); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_LEADING_WHITESPACE_RE); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_LEADING_WHITESPACE_RE)) __PYX_ERR(0, 23, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13476,7 +13952,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_MISSING); __Pyx_GIVEREF(__pyx_n_s_MISSING); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_MISSING); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_MISSING)) __PYX_ERR(0, 24, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13498,7 +13974,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_get_func_in_mro); __Pyx_GIVEREF(__pyx_n_s_get_func_in_mro); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_get_func_in_mro); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_get_func_in_mro)) __PYX_ERR(0, 25, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 25, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13520,7 +13996,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_get_main_thread); __Pyx_GIVEREF(__pyx_n_s_get_main_thread); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_get_main_thread); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_get_main_thread)) __PYX_ERR(0, 26, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13542,7 +14018,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_if_same_code); __Pyx_GIVEREF(__pyx_n_s_if_same_code); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_if_same_code); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_if_same_code)) __PYX_ERR(0, 27, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13604,26 +14080,26 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_call); __Pyx_GIVEREF(__pyx_n_s_call); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_call); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_call)) __PYX_ERR(0, 34, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_exception); __Pyx_GIVEREF(__pyx_n_s_exception); - PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_exception); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_exception)) __PYX_ERR(0, 34, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_line); __Pyx_GIVEREF(__pyx_n_s_line); - PyList_SET_ITEM(__pyx_t_3, 2, __pyx_n_s_line); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 2, __pyx_n_s_line)) __PYX_ERR(0, 34, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_return); __Pyx_GIVEREF(__pyx_n_s_return); - PyList_SET_ITEM(__pyx_t_3, 3, __pyx_n_s_return); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 3, __pyx_n_s_return)) __PYX_ERR(0, 34, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_call); __Pyx_GIVEREF(__pyx_n_s_call); - PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_call); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_call)) __PYX_ERR(0, 34, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_exception); __Pyx_GIVEREF(__pyx_n_s_exception); - PyList_SET_ITEM(__pyx_t_3, 5, __pyx_n_s_exception); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 5, __pyx_n_s_exception)) __PYX_ERR(0, 34, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_return); __Pyx_GIVEREF(__pyx_n_s_return); - PyList_SET_ITEM(__pyx_t_3, 6, __pyx_n_s_return); - __pyx_t_4 = __pyx_f_6hunter_6_event_make_kind_names(((PyObject*)__pyx_t_3)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 34, __pyx_L1_error) + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 6, __pyx_n_s_return)) __PYX_ERR(0, 34, __pyx_L1_error); + __pyx_t_4 = __pyx_f_6hunter_6_event_make_kind_names(((PyObject*)__pyx_t_3)); if (unlikely(__pyx_t_4 == ((PyObject **)NULL) && PyErr_Occurred())) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_v_6hunter_6_event_KIND_NAMES = __pyx_t_4; @@ -13662,7 +14138,7 @@ if (!__Pyx_RefNanny) { __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Event_detach, NULL, __pyx_n_s_hunter__event, __pyx_d, ((PyObject *)__pyx_codeobj__5)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_tuple__18); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_6_event_Event->tp_dict, __pyx_n_s_detach, __pyx_t_3) < 0) __PYX_ERR(0, 108, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_6_event_Event, __pyx_n_s_detach, __pyx_t_3) < 0) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_6_event_Event); @@ -13676,7 +14152,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(111,0,__PYX_ERR(0, 111, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Event_clone, NULL, __pyx_n_s_hunter__event, __pyx_d, ((PyObject *)__pyx_codeobj__6)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_6_event_Event->tp_dict, __pyx_n_s_clone, __pyx_t_3) < 0) __PYX_ERR(0, 111, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_6_event_Event, __pyx_n_s_clone, __pyx_t_3) < 0) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_6_event_Event); @@ -13894,7 +14370,7 @@ if (!__Pyx_RefNanny) { /* #### Code section: cleanup_module ### */ /* #### Code section: main_method ### */ /* #### Code section: utility_code_pragmas ### */ -#if _MSC_VER +#ifdef _MSC_VER #pragma warning( push ) /* Warning 4127: conditional expression is constant * Cython uses constant conditional expressions to allow in inline functions to be optimized at @@ -13941,18 +14417,51 @@ static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple return 0; } static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) { - PyObject *exc_type = tstate->curexc_type; + int result; + PyObject *exc_type; +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *current_exception = tstate->current_exception; + if (unlikely(!current_exception)) return 0; + exc_type = (PyObject*) Py_TYPE(current_exception); + if (exc_type == err) return 1; +#else + exc_type = tstate->curexc_type; if (exc_type == err) return 1; if (unlikely(!exc_type)) return 0; - if (unlikely(PyTuple_Check(err))) - return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); +#endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(exc_type); + #endif + if (unlikely(PyTuple_Check(err))) { + result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + } else { + result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(exc_type); + #endif + return result; } #endif /* PyErrFetchRestore */ #if CYTHON_FAST_THREAD_STATE static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *tmp_value; + assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); + if (value) { + #if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) + #endif + PyException_SetTraceback(value, tb); + } + tmp_value = tstate->current_exception; + tstate->current_exception = value; + Py_XDECREF(tmp_value); + Py_XDECREF(type); + Py_XDECREF(tb); +#else PyObject *tmp_type, *tmp_value, *tmp_tb; tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; @@ -13963,14 +14472,34 @@ static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObjec Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#endif } static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject* exc_value; + exc_value = tstate->current_exception; + tstate->current_exception = 0; + *value = exc_value; + *type = NULL; + *tb = NULL; + if (exc_value) { + *type = (PyObject*) Py_TYPE(exc_value); + Py_INCREF(*type); + #if CYTHON_COMPILING_IN_CPYTHON + *tb = ((PyBaseExceptionObject*) exc_value)->traceback; + Py_XINCREF(*tb); + #else + *tb = PyException_GetTraceback(exc_value); + #endif + } +#else *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; +#endif } #endif @@ -13989,14 +14518,20 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject #endif /* PyObjectGetAttrStrNoError */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) __Pyx_PyErr_Clear(); } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + (void) PyObject_GetOptionalAttr(obj, attr_name, &result); + return result; +#else #if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { @@ -14008,6 +14543,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P __Pyx_PyObject_GetAttrStr_ClearAttributeError(); } return result; +#endif } /* GetBuiltinName */ @@ -14339,13 +14875,31 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO { int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); if (unlikely(eq != 0)) { - if (unlikely(eq < 0)) return NULL; // error + if (unlikely(eq < 0)) return NULL; return kwvalues[i]; } } - return NULL; // not found (no exception set) + return NULL; +} +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { + Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + PyObject *dict; + dict = PyDict_New(); + if (unlikely(!dict)) + return NULL; + for (i=0; i= PyTuple_GET_SIZE(kwds)) break; + Py_ssize_t size; +#if CYTHON_ASSUME_SAFE_MACROS + size = PyTuple_GET_SIZE(kwds); +#else + size = PyTuple_Size(kwds); + if (size < 0) goto bad; +#endif + if (pos >= size) break; +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); + if (!key) goto bad; +#elif CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kwds, pos); +#else + key = PyTuple_GetItem(kwds, pos); + if (!key) goto bad; +#endif value = kwvalues[pos]; pos++; } else { if (!PyDict_Next(kwds, &pos, &key, &value)) break; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif } name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(value); + Py_DECREF(key); +#endif + key = NULL; + value = NULL; continue; } +#if !CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif + Py_INCREF(value); name = first_kw_arg; #if PY_MAJOR_VERSION < 3 if (likely(PyString_Check(key))) { @@ -14426,6 +15010,9 @@ static int __Pyx_ParseOptionalKeywords( if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) && _PyString_Eq(**name, key)) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -14455,6 +15042,9 @@ static int __Pyx_ParseOptionalKeywords( if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; if (cmp == 0) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -14481,6 +15071,8 @@ static int __Pyx_ParseOptionalKeywords( goto invalid_keyword; } } + Py_XDECREF(key); + Py_XDECREF(value); return 0; arg_passed_twice: __Pyx_RaiseDoubleKeywordsError(function_name, key); @@ -14500,6 +15092,8 @@ static int __Pyx_ParseOptionalKeywords( function_name, key); #endif bad: + Py_XDECREF(key); + Py_XDECREF(value); return -1; } @@ -14537,8 +15131,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg ternaryfunc call = Py_TYPE(func)->tp_call; if (unlikely(!call)) return PyObject_Call(func, arg, kw); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = (*call)(func, arg, kw); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -14687,7 +15286,9 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } PyErr_SetObject(type, value); if (tb) { -#if CYTHON_FAST_THREAD_STATE + #if PY_VERSION_HEX >= 0x030C00A6 + PyException_SetTraceback(value, tb); + #elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -14744,7 +15345,7 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) { PyObject *result; #if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { @@ -14792,15 +15393,32 @@ static int __Pyx_CheckKeywordStrings( return 1; #else if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { - if (unlikely(PyTuple_GET_SIZE(kw) == 0)) + Py_ssize_t kwsize; +#if CYTHON_ASSUME_SAFE_MACROS + kwsize = PyTuple_GET_SIZE(kw); +#else + kwsize = PyTuple_Size(kw); + if (kwsize < 0) return 0; +#endif + if (unlikely(kwsize == 0)) return 1; if (!kw_allowed) { +#if CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kw, 0); +#else + key = PyTuple_GetItem(kw, pos); + if (!key) return 0; +#endif goto invalid_keyword; } #if PY_VERSION_HEX < 0x03090000 - for (pos = 0; pos < PyTuple_GET_SIZE(kw); pos++) { + for (pos = 0; pos < kwsize; pos++) { +#if CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kw, pos); +#else + key = PyTuple_GetItem(kw, pos); + if (!key) return 0; +#endif if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; } @@ -14923,7 +15541,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, } } #else - if (is_list || PySequence_Check(o)) { + if (is_list || !PyMapping_Check(o)) { return PySequence_GetItem(o, i); } #endif @@ -14975,9 +15593,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, PyObject *result; assert(kwargs == NULL || PyDict_Check(kwargs)); nk = kwargs ? PyDict_Size(kwargs) : 0; + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { return NULL; } + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; + } + #endif if ( #if PY_MAJOR_VERSION >= 3 co->co_kwonlyargcount == 0 && @@ -15052,10 +15676,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { PyObject *self, *result; PyCFunction cfunc; - cfunc = PyCFunction_GET_FUNCTION(func); - self = PyCFunction_GET_SELF(func); + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = cfunc(self, arg); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -15068,42 +15697,33 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject #endif /* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { PyObject *argstuple; - PyObject *result; + PyObject *result = 0; size_t i; argstuple = PyTuple_New((Py_ssize_t)nargs); if (unlikely(!argstuple)) return NULL; for (i = 0; i < nargs; i++) { Py_INCREF(args[i]); - PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; } result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: Py_DECREF(argstuple); return result; } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); #if CYTHON_COMPILING_IN_CPYTHON if (nargs == 0 && kwargs == NULL) { -#if defined(__Pyx_CyFunction_USED) && defined(NDEBUG) - if (__Pyx_IsCyOrPyCFunction(func)) -#else - if (PyCFunction_Check(func)) -#endif - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) { - return __Pyx_PyObject_CallMethO(func, NULL); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); } else if (nargs == 1 && kwargs == NULL) { - if (PyCFunction_Check(func)) - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { - return __Pyx_PyObject_CallMethO(func, args[0]); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); } #endif #if PY_VERSION_HEX < 0x030800B1 @@ -15127,62 +15747,52 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj } #endif #endif - #if CYTHON_VECTORCALL - vectorcallfunc f = _PyVectorcall_Function(func); - if (f) { - return f(func, args, (size_t)nargs, kwargs); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, kwargs); + if (kwargs == NULL) { + #if CYTHON_VECTORCALL + #if PY_VERSION_HEX < 0x03090000 + vectorcallfunc f = _PyVectorcall_Function(func); + #else + vectorcallfunc f = PyVectorcall_Function(func); + #endif + if (f) { + return f(func, args, (size_t)nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, (size_t)nargs, NULL); + } + #endif } - #endif if (nargs == 0) { return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif } /* IterFinish */ static CYTHON_INLINE int __Pyx_IterFinish(void) { -#if CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* exc_type = tstate->curexc_type; + PyObject* exc_type; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + exc_type = __Pyx_PyErr_CurrentExceptionType(); if (unlikely(exc_type)) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) { - PyObject *exc_value, *exc_tb; - exc_value = tstate->curexc_value; - exc_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - Py_DECREF(exc_type); - Py_XDECREF(exc_value); - Py_XDECREF(exc_tb); - return 0; - } else { - return -1; - } - } - return 0; -#else - if (unlikely(PyErr_Occurred())) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) return -1; - } + __Pyx_PyErr_Clear(); + return 0; } return 0; -#endif } /* PyObjectCallNoArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { - PyObject *arg = NULL; - return __Pyx_PyObject_FastCall(func, (&arg)+1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + PyObject *arg[2] = {NULL, NULL}; + return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); } /* PyObjectCallOneArg */ @@ -15400,6 +16010,9 @@ static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyOb } /* dict_iter */ +#if CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 +#include +#endif static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, Py_ssize_t* p_orig_length, int* p_source_is_dict) { is_dict = is_dict || likely(PyDict_CheckExact(iterable)); @@ -15641,7 +16254,7 @@ static PyObject *__Pyx_PyIter_Next2Default(PyObject* defval) { PyObject* exc_type; __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign - exc_type = __Pyx_PyErr_Occurred(); + exc_type = __Pyx_PyErr_CurrentExceptionType(); if (unlikely(exc_type)) { if (!defval || unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) return NULL; @@ -15666,12 +16279,14 @@ static CYTHON_INLINE PyObject *__Pyx_PyIter_Next2(PyObject* iterator, PyObject* PyObject* next; iternextfunc iternext = Py_TYPE(iterator)->tp_iternext; if (likely(iternext)) { -#if CYTHON_USE_TYPE_SLOTS +#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY next = iternext(iterator); if (likely(next)) return next; +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 if (unlikely(iternext == &_PyObject_NextNotImplemented)) return NULL; +#endif #else next = PyIter_Next(iterator); if (likely(next)) @@ -15703,7 +16318,7 @@ static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long int long x; long a = PyInt_AS_LONG(op1); - x = (long)((unsigned long)a - b); + x = (long)((unsigned long)a - (unsigned long)b); if (likely((x^a) >= 0 || (x^~b) >= 0)) return PyInt_FromLong(x); return PyLong_Type.tp_as_number->nb_subtract(op1, op2); @@ -15717,15 +16332,14 @@ static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long int const PY_LONG_LONG llb = intval; PY_LONG_LONG lla, llx; #endif - const digit* digits = __Pyx_PyLong_Digits(op1); - const Py_ssize_t size = Py_SIZE(op1); - if (unlikely(size == 0)) { + if (unlikely(__Pyx_PyLong_IsZero(op1))) { return PyLong_FromLong(-intval); } - if (likely(__Pyx_sst_abs(size) <= 1)) { - a = likely(size) ? digits[0] : 0; - if (size == -1) a = -a; + if (likely(__Pyx_PyLong_IsCompact(op1))) { + a = __Pyx_PyLong_CompactValue(op1); } else { + const digit* digits = __Pyx_PyLong_Digits(op1); + const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(op1); switch (size) { case -2: if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { @@ -15825,15 +16439,54 @@ static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long int } #endif +/* PyObjectCall2Args */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args[3] = {NULL, arg1, arg2}; + return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +} + +/* PyObjectCallMethod1 */ +#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2) +static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { + PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); + Py_DECREF(method); + return result; +} +#endif +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { +#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2 + PyObject *args[2] = {obj, arg}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_Call2Args; + return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else + PyObject *method = NULL, *result; + int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); + if (likely(is_method)) { + result = __Pyx_PyObject_Call2Args(method, obj, arg); + Py_DECREF(method); + return result; + } + if (unlikely(!method)) return NULL; + return __Pyx__PyObject_CallMethod1(method, arg); +#endif +} + /* StringJoin */ -#if !CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values) { - return PyObject_CallMethodObjArgs(sep, __pyx_n_s_join, values, NULL); -} + (void) __Pyx_PyObject_CallMethod1; +#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION < 3 + return _PyString_Join(sep, values); +#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 + return _PyBytes_Join(sep, values); +#else + return __Pyx_PyObject_CallMethod1(sep, __pyx_n_s_join, values); #endif +} /* GetTopmostException */ -#if CYTHON_USE_EXC_INFO_STACK +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate) { @@ -16037,20 +16690,32 @@ static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) #endif { - PyObject *local_type, *local_value, *local_tb; + PyObject *local_type = NULL, *local_value, *local_tb = NULL; #if CYTHON_FAST_THREAD_STATE PyObject *tmp_type, *tmp_value, *tmp_tb; + #if PY_VERSION_HEX >= 0x030C00A6 + local_value = tstate->current_exception; + tstate->current_exception = 0; + if (likely(local_value)) { + local_type = (PyObject*) Py_TYPE(local_value); + Py_INCREF(local_type); + local_tb = PyException_GetTraceback(local_value); + } + #else local_type = tstate->curexc_type; local_value = tstate->curexc_value; local_tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; + #endif #else PyErr_Fetch(&local_type, &local_value, &local_tb); #endif PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE +#if CYTHON_FAST_THREAD_STATE && PY_VERSION_HEX >= 0x030C00A6 + if (unlikely(tstate->current_exception)) +#elif CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) @@ -16127,7 +16792,9 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, return __Pyx_PyObject_FormatAndDecref(s, f); } static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { - PyObject *result = PyObject_Format(s, f); + PyObject *result; + if (unlikely(!s)) return NULL; + result = PyObject_Format(s, f); Py_DECREF(s); return result; } @@ -16148,7 +16815,12 @@ static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject * } else { tmp_type = (PyObject*) Py_TYPE(tmp_value); Py_INCREF(tmp_type); + #if CYTHON_COMPILING_IN_CPYTHON + tmp_tb = ((PyBaseExceptionObject*) tmp_value)->traceback; + Py_XINCREF(tmp_tb); + #else tmp_tb = PyException_GetTraceback(tmp_value); + #endif } #elif CYTHON_USE_EXC_INFO_STACK _PyErr_StackItem *exc_info = tstate->exc_info; @@ -16222,7 +16894,9 @@ static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_co if (!CYTHON_PEP393_ENABLED || ukind == result_ukind) { memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); } else { - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030300F0 || defined(_PyUnicode_FastCopyCharacters) + #if PY_VERSION_HEX >= 0x030d0000 + if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; + #elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030300F0 || defined(_PyUnicode_FastCopyCharacters) _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); #else Py_ssize_t j; @@ -16367,16 +17041,33 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject /* ValidateBasesTuple */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { - Py_ssize_t i, n = PyTuple_GET_SIZE(bases); + Py_ssize_t i, n; +#if CYTHON_ASSUME_SAFE_MACROS + n = PyTuple_GET_SIZE(bases); +#else + n = PyTuple_Size(bases); + if (n < 0) return -1; +#endif for (i = 1; i < n; i++) { +#if CYTHON_AVOID_BORROWED_REFS + PyObject *b0 = PySequence_GetItem(bases, i); + if (!b0) return -1; +#elif CYTHON_ASSUME_SAFE_MACROS PyObject *b0 = PyTuple_GET_ITEM(bases, i); +#else + PyObject *b0 = PyTuple_GetItem(bases, i); + if (!b0) return -1; +#endif PyTypeObject *b; #if PY_MAJOR_VERSION < 3 if (PyClass_Check(b0)) { PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } #endif @@ -16387,20 +17078,46 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } - if (dictoffset == 0 && b->tp_dictoffset) + if (dictoffset == 0) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); - PyErr_Format(PyExc_TypeError, - "extension type '%.200s' has no __dict__ slot, " - "but base type '" __Pyx_FMT_TYPENAME "' has: " - "either add 'cdef dict __dict__' to the extension type " - "or add '__slots__ = [...]' to the base type", - type_name, b_name); - __Pyx_DECREF_TypeName(b_name); - return -1; + Py_ssize_t b_dictoffset = 0; +#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + b_dictoffset = b->tp_dictoffset; +#else + PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); + if (!py_b_dictoffset) goto dictoffset_return; + b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset); + Py_DECREF(py_b_dictoffset); + if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return; +#endif + if (b_dictoffset) { + { + __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + PyErr_Format(PyExc_TypeError, + "extension type '%.200s' has no __dict__ slot, " + "but base type '" __Pyx_FMT_TYPENAME "' has: " + "either add 'cdef dict __dict__' to the extension type " + "or add '__slots__ = [...]' to the base type", + type_name, b_name); + __Pyx_DECREF_TypeName(b_name); + } +#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) + dictoffset_return: +#endif +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif + return -1; + } } +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif } return 0; } @@ -16622,10 +17339,10 @@ static int __Pyx_MergeVtables(PyTypeObject *type) { #endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType -#define __PYX_HAVE_RT_ImportType -static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_0_10 +#define __PYX_HAVE_RT_ImportType_3_0_10 +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) { PyObject *result = 0; char warning[200]; @@ -16679,7 +17396,7 @@ static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -16687,7 +17404,7 @@ static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn && (size_t)basicsize > size) { + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { PyOS_snprintf(warning, sizeof(warning), "%s.%s size changed, may indicate binary incompatibility. " "Expected %zd from C header, got %zd from PyObject", @@ -16724,14 +17441,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { { #if PY_MAJOR_VERSION >= 3 if (level == -1) { - if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) { - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, 1); - #else + if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, 1); - #endif if (unlikely(!module)) { if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) goto bad; @@ -16750,14 +17462,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); Py_DECREF(py_level); #else - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, level); - #else module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, level); #endif - #endif } } bad: @@ -16814,10 +17521,7 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - PyObject *abi_module = PyImport_AddModule((char*) __PYX_ABI_MODULE_NAME); - if (unlikely(!abi_module)) return NULL; - Py_INCREF(abi_module); - return abi_module; + return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); } /* FetchCommonType */ @@ -16978,8 +17682,22 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #endif /* CythonFunctionShared */ +#if CYTHON_COMPILING_IN_LIMITED_API +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + if (__Pyx_CyFunction_Check(func)) { + return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; + } else if (PyCFunction_Check(func)) { + return PyCFunction_GetFunction(func) == (PyCFunction) cfunc; + } + return 0; +} +#else +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +} +#endif static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) { -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API __Pyx_Py_XDECREF_SET( __Pyx_CyFunction_GetClassObj(f), ((classobj) ? __Pyx_NewRef(classobj) : NULL)); @@ -16994,6 +17712,10 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); + if (unlikely(!op->func_doc)) return NULL; +#else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { #if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); @@ -17006,6 +17728,7 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(Py_None); return Py_None; } +#endif } Py_INCREF(op->func_doc); return op->func_doc; @@ -17026,7 +17749,9 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_name = PyObject_GetAttrString(op->func, "__name__"); +#elif PY_MAJOR_VERSION >= 3 op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); @@ -17145,10 +17870,10 @@ __Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) { op->defaults_kwdict = PyTuple_GET_ITEM(res, 1); Py_INCREF(op->defaults_kwdict); #else - op->defaults_tuple = PySequence_ITEM(res, 0); + op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0); if (unlikely(!op->defaults_tuple)) result = -1; else { - op->defaults_kwdict = PySequence_ITEM(res, 1); + op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1); if (unlikely(!op->defaults_kwdict)) result = -1; } #endif @@ -17257,7 +17982,15 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); +#if CYTHON_ASSUME_SAFE_MACROS PyList_SET_ITEM(fromlist, 0, marker); +#else + if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) { + Py_DECREF(marker); + Py_DECREF(fromlist); + return NULL; + } +#endif module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; @@ -17273,6 +18006,18 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); return __Pyx_NewRef(op->func_is_coroutine); } +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject * +__Pyx_CyFunction_get_module(__pyx_CyFunctionObject *op, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_GetAttrString(op->func, "__module__"); +} +static int +__Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_SetAttrString(op->func, "__module__", value); +} +#endif static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, @@ -17292,20 +18037,27 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, +#endif {0, 0, 0, 0, 0} }; static PyMemberDef __pyx_CyFunction_members[] = { +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, +#endif #if CYTHON_USE_TYPE_SPECS {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL #if CYTHON_BACKPORT_VECTORCALL {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif #endif -#if PY_VERSION_HEX < 0x030500A0 +#endif +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, @@ -17328,30 +18080,40 @@ static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) #endif static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { +#if !CYTHON_COMPILING_IN_LIMITED_API PyCFunctionObject *cf = (PyCFunctionObject*) op; +#endif if (unlikely(op == NULL)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API + op->func = PyCFunction_NewEx(ml, (PyObject*)op, module); + if (unlikely(!op->func)) return NULL; +#endif op->flags = flags; __Pyx_CyFunction_weakreflist(op) = NULL; +#if !CYTHON_COMPILING_IN_LIMITED_API cf->m_ml = ml; cf->m_self = (PyObject *) op; +#endif Py_XINCREF(closure); op->func_closure = closure; +#if !CYTHON_COMPILING_IN_LIMITED_API Py_XINCREF(module); cf->m_module = module; +#endif op->func_dict = NULL; op->func_name = NULL; Py_INCREF(qualname); op->func_qualname = qualname; op->func_doc = NULL; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API op->func_classobj = NULL; #else ((PyCMethodObject*)op)->mm_class = NULL; @@ -17397,13 +18159,18 @@ static int __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) { Py_CLEAR(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_CLEAR(m->func); +#else Py_CLEAR(((PyCFunctionObject*)m)->m_module); +#endif Py_CLEAR(m->func_dict); Py_CLEAR(m->func_name); Py_CLEAR(m->func_qualname); Py_CLEAR(m->func_doc); Py_CLEAR(m->func_globals); Py_CLEAR(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API #if PY_VERSION_HEX < 0x030900B1 Py_CLEAR(__Pyx_CyFunction_GetClassObj(m)); #else @@ -17412,6 +18179,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) ((PyCMethodObject *) (m))->mm_class = NULL; Py_XDECREF(cls); } +#endif #endif Py_CLEAR(m->defaults_tuple); Py_CLEAR(m->defaults_kwdict); @@ -17442,14 +18210,20 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { Py_VISIT(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_VISIT(m->func); +#else Py_VISIT(((PyCFunctionObject*)m)->m_module); +#endif Py_VISIT(m->func_dict); Py_VISIT(m->func_name); Py_VISIT(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); Py_VISIT(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); +#endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); @@ -17473,10 +18247,22 @@ __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) #endif } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *f = ((__pyx_CyFunctionObject*)func)->func; + PyObject *py_name = NULL; + PyCFunction meth; + int flags; + meth = PyCFunction_GetFunction(f); + if (unlikely(!meth)) return NULL; + flags = PyCFunction_GetFlags(f); + if (unlikely(flags < 0)) return NULL; +#else PyCFunctionObject* f = (PyCFunctionObject*)func; PyCFunction meth = f->m_ml->ml_meth; + int flags = f->m_ml->ml_flags; +#endif Py_ssize_t size; - switch (f->m_ml->ml_flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { + switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { case METH_VARARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) return (*meth)(self, arg); @@ -17485,24 +18271,43 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 0)) return (*meth)(self, NULL); +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 1)) { PyObject *result, *arg0; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS arg0 = PyTuple_GET_ITEM(arg, 0); #else - arg0 = PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; + arg0 = __Pyx_PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; #endif result = (*meth)(self, arg0); #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) @@ -17510,9 +18315,18 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; @@ -17520,12 +18334,28 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", + py_name); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", f->m_ml->ml_name); +#endif return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { - return __Pyx_CyFunction_CallMethod(func, ((PyCFunctionObject*)func)->m_self, arg, kw); + PyObject *self, *result; +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)func)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else + self = ((PyCFunctionObject*)func)->m_self; +#endif + result = __Pyx_CyFunction_CallMethod(func, self, arg, kw); + return result; } static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; @@ -17545,7 +18375,12 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; +#if CYTHON_ASSUME_SAFE_MACROS argc = PyTuple_GET_SIZE(args); +#else + argc = PyTuple_Size(args); + if (unlikely(!argc) < 0) return NULL; +#endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) return NULL; @@ -17670,7 +18505,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, default: return NULL; } - return ((_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { @@ -17758,7 +18593,7 @@ static PyTypeObject __pyx_CyFunctionType_type = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#ifdef _Py_TPFLAGS_HAVE_VECTORCALL +#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL _Py_TPFLAGS_HAVE_VECTORCALL | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, @@ -17799,13 +18634,13 @@ static PyTypeObject __pyx_CyFunctionType_type = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, #endif -#if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 +#if __PYX_NEED_TP_PRINT_SLOT 0, #endif #if PY_VERSION_HEX >= 0x030C0000 0, #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, #endif }; @@ -17990,20 +18825,93 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif #include "internal/pycore_frame.h" #endif #if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict, + PyObject *firstlineno, PyObject *name) { + PyObject *replace = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; + replace = PyObject_GetAttrString(code, "replace"); + if (likely(replace)) { + PyObject *result; + result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + Py_DECREF(replace); + return result; + } + PyErr_Clear(); + #if __PYX_LIMITED_VERSION_HEX < 0x030780000 + { + PyObject *compiled = NULL, *result = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; + compiled = Py_CompileString( + "out = type(code)(\n" + " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" + " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" + " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" + " code.co_lnotab)\n", "", Py_file_input); + if (!compiled) return NULL; + result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); + Py_DECREF(compiled); + if (!result) PyErr_Print(); + Py_DECREF(result); + result = PyDict_GetItemString(scratch_dict, "out"); + if (result) Py_INCREF(result); + return result; + } + #else + return NULL; + #endif +} static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { + PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL; + PyObject *replace = NULL, *getframe = NULL, *frame = NULL; + PyObject *exc_type, *exc_value, *exc_traceback; + int success = 0; if (c_line) { (void) __pyx_cfilenm; (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } - _PyTraceback_Add(funcname, filename, py_line); + PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + getframe = PySys_GetObject("_getframe"); + if (unlikely(!getframe)) goto bad; + if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; + frame = PyEval_EvalCode(code_object, dict, dict); + if (unlikely(!frame) || frame == Py_None) goto bad; + success = 1; + bad: + PyErr_Restore(exc_type, exc_value, exc_traceback); + Py_XDECREF(code_object); + Py_XDECREF(py_py_line); + Py_XDECREF(py_funcname); + Py_XDECREF(dict); + Py_XDECREF(replace); + if (success) { + PyTraceBack_Here( + (struct _frame*)frame); + } + Py_XDECREF(frame); } #else static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( @@ -18056,7 +18964,7 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( #else py_code = PyCode_NewEmpty(filename, funcname, py_line); #endif - Py_XDECREF(py_funcname); // XDECREF since it's only set on Py3 if cline + Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); @@ -18154,40 +19062,45 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -18209,65 +19122,67 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(int) <= sizeof(long))) { @@ -18279,30 +19194,100 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else int val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (int) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (int) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (int) -1; } } else { @@ -18356,8 +19341,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(int), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -18394,8 +19405,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -18408,7 +19445,8 @@ __Pyx_PyType_GetName(PyTypeObject* tp) __pyx_n_s_name_2); if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { PyErr_Clear(); - Py_XSETREF(name, __Pyx_NewRef(__pyx_kp_s__9)); + Py_XDECREF(name); + name = __Pyx_NewRef(__pyx_kp_s__9); } return name; } @@ -18441,40 +19479,45 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -18496,65 +19539,67 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(long) <= sizeof(long))) { @@ -18566,30 +19611,100 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else long val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (long) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (long) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (long) -1; } } else { @@ -18610,30 +19725,6 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { return (long) -1; } -/* PyObjectCall2Args */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { - PyObject *args[3] = {NULL, arg1, arg2}; - return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* PyObjectCallMethod1 */ -static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { - PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); - Py_DECREF(method); - return result; -} -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { - PyObject *method = NULL, *result; - int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); - if (likely(is_method)) { - result = __Pyx_PyObject_Call2Args(method, obj, arg); - Py_DECREF(method); - return result; - } - if (unlikely(!method)) return NULL; - return __Pyx__PyObject_CallMethod1(method, arg); -} - /* CoroutineBase */ #include #if PY_VERSION_HEX >= 0x030b00a6 @@ -18820,8 +19911,10 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i #if CYTHON_COMPILING_IN_PYPY #else PyObject *exc_tb; - #if PY_VERSION_HEX >= 0x030B00a4 + #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON exc_tb = PyException_GetTraceback(exc_state->exc_value); + #elif PY_VERSION_HEX >= 0x030B00a4 + exc_tb = ((PyBaseExceptionObject*) exc_state->exc_value)->traceback; #else exc_tb = exc_state->exc_traceback; #endif @@ -18835,7 +19928,7 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i Py_XINCREF(tstate->frame); f->f_back = tstate->frame; #endif - #if PY_VERSION_HEX >= 0x030B00a4 + #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON Py_DECREF(exc_tb); #endif } @@ -18917,9 +20010,22 @@ PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) { PyErr_SetNone(PyExc_StopIteration); } else { +#if PY_VERSION_HEX < 0x030d00A1 _PyGen_SetStopIterationValue(result); +#else + if (!PyTuple_Check(result) && !PyExceptionInstance_Check(result)) { + PyErr_SetObject(PyExc_StopIteration, result); + } else { + PyObject *exc = __Pyx_PyObject_CallOneArg(PyExc_StopIteration, result); + if (likely(exc != NULL)) { + PyErr_SetObject(PyExc_StopIteration, exc); + Py_DECREF(exc); + } + } +#endif } - Py_CLEAR(result); + Py_DECREF(result); + result = NULL; } return result; #endif @@ -19673,13 +20779,13 @@ static PyTypeObject __pyx_GeneratorType_type = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, #endif -#if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 +#if __PYX_NEED_TP_PRINT_SLOT 0, #endif #if PY_VERSION_HEX >= 0x030C0000 0, #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, #endif }; @@ -19700,41 +20806,50 @@ static int __pyx_Generator_init(PyObject *module) { } /* CheckBinaryVersion */ -static int __Pyx_check_binary_version(void) { - char ctversion[5]; - int same=1, i, found_dot; - const char* rt_from_call = Py_GetVersion(); - PyOS_snprintf(ctversion, 5, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - found_dot = 0; - for (i = 0; i < 4; i++) { - if (!ctversion[i]) { - same = (rt_from_call[i] < '0' || rt_from_call[i] > '9'); - break; +static unsigned long __Pyx_get_runtime_version(void) { +#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4 + return Py_Version & ~0xFFUL; +#else + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; } - if (rt_from_call[i] != ctversion[i]) { - same = 0; + version += factor * digit; + if (rt_version[i] != '.') break; - } + digit = 0; + factor >>= 8; + ++i; } - if (!same) { - char rtversion[5] = {'\0'}; + return version; +#endif +} +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { + const unsigned long MAJOR_MINOR = 0xFFFF0000UL; + if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) + return 0; + if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR))) + return 1; + { char message[200]; - for (i=0; i<4; ++i) { - if (rt_from_call[i] == '.') { - if (found_dot) break; - found_dot = 1; - } else if (rt_from_call[i] < '0' || rt_from_call[i] > '9') { - break; - } - rtversion[i] = rt_from_call[i]; - } PyOS_snprintf(message, sizeof(message), - "compile time version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); + "compile time Python version %d.%d " + "of module '%.100s' " + "%s " + "runtime version %d.%d", + (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF), + __Pyx_MODULE_NAME, + (allow_newer) ? "was newer than" : "does not match", + (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF) + ); return PyErr_WarnEx(NULL, message, 1); } - return 0; } /* FunctionExport */ @@ -19813,8 +20928,24 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { return 0; } +#include +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) { + size_t len = strlen(s); + if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) { + PyErr_SetString(PyExc_OverflowError, "byte string is too long"); + return -1; + } + return (Py_ssize_t) len; +} static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { - return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return __Pyx_PyUnicode_FromStringAndSize(c_str, len); +} +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) { + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return PyByteArray_FromStringAndSize(c_str, len); } static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; @@ -19983,13 +21114,11 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { #endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(b); - const Py_ssize_t size = Py_SIZE(b); - if (likely(__Pyx_sst_abs(size) <= 1)) { - ival = likely(size) ? digits[0] : 0; - if (size == -1) ival = -ival; - return ival; + if (likely(__Pyx_PyLong_IsCompact(b))) { + return __Pyx_PyLong_CompactValue(b); } else { + const digit* digits = __Pyx_PyLong_Digits(b); + const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b); switch (size) { case 2: if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { @@ -20058,7 +21187,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { /* #### Code section: utility_code_pragmas_end ### */ -#if _MSV_VER +#ifdef _MSC_VER #pragma warning( pop ) #endif diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index 432cb60..fe50de6 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.0b2 */ +/* Generated by Cython 3.0.10 */ /* BEGIN: Cython Metadata { @@ -37,10 +37,15 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) #error Cython requires Python 2.7+ or Python 3.3+. #else -#define CYTHON_ABI "3_0_0b2" +#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API +#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#else +#define __PYX_EXTRA_ABI_MODULE_NAME "" +#endif +#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x030000B2 +#define CYTHON_HEX_VERSION 0x03000AF0 #define CYTHON_FUTURE_DIVISION 1 #include #ifndef offsetof @@ -73,6 +78,7 @@ END: Cython Metadata */ #ifndef Py_HUGE_VAL #define Py_HUGE_VAL HUGE_VAL #endif +#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX #if defined(GRAALVM_PYTHON) /* For very preliminary testing purposes. Most variables are set the same as PyPy. The existence of this section does not imply that anything works or is even tested */ @@ -131,6 +137,8 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(PYPY_VERSION) #define CYTHON_COMPILING_IN_PYPY 1 #define CYTHON_COMPILING_IN_CPYTHON 0 @@ -139,8 +147,9 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_NOGIL 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #if PY_VERSION_HEX < 0x03050000 @@ -174,12 +183,16 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #if PY_VERSION_HEX < 0x03090000 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #define CYTHON_PEP489_MULTI_PHASE_INIT 1 + #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK @@ -187,7 +200,13 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(CYTHON_LIMITED_API) + #ifdef Py_LIMITED_API + #undef __PYX_LIMITED_VERSION_HEX + #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API + #endif #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 @@ -235,7 +254,7 @@ END: Cython Metadata */ #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 1 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 @@ -244,7 +263,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif -#elif defined(PY_NOGIL) + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 +#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 @@ -253,11 +274,17 @@ END: Cython Metadata */ #ifndef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 1 #endif + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #ifndef CYTHON_USE_ASYNC_SLOTS #define CYTHON_USE_ASYNC_SLOTS 1 #endif + #ifndef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #ifndef CYTHON_USE_UNICODE_INTERNALS @@ -265,8 +292,6 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif @@ -278,11 +303,22 @@ END: Cython Metadata */ #endif #undef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #ifndef CYTHON_METH_FASTCALL + #define CYTHON_METH_FASTCALL 1 + #endif #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 + #ifndef CYTHON_PEP487_INIT_SUBCLASS + #define CYTHON_PEP487_INIT_SUBCLASS 1 + #endif #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif + #ifndef CYTHON_USE_MODULE_STATE + #define CYTHON_USE_MODULE_STATE 0 + #endif #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif @@ -290,6 +326,12 @@ END: Cython Metadata */ #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 + #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC + #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 + #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 + #endif #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 @@ -339,7 +381,7 @@ END: Cython Metadata */ #define CYTHON_FAST_THREAD_STATE 1 #endif #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000) + #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) @@ -380,6 +422,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 1 + #endif #endif #if !defined(CYTHON_FAST_PYCCALL) #define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) @@ -457,6 +502,14 @@ END: Cython Metadata */ # define CYTHON_NCP_UNUSED CYTHON_UNUSED # endif #endif +#ifndef CYTHON_USE_CPP_STD_MOVE + #if defined(__cplusplus) && (\ + __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600)) + #define CYTHON_USE_CPP_STD_MOVE 1 + #else + #define CYTHON_USE_CPP_STD_MOVE 0 + #endif +#endif #define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) #ifdef _MSC_VER #ifndef _MSC_STDINT_H_ @@ -518,6 +571,18 @@ END: Cython Metadata */ #endif #endif #endif +#ifdef __cplusplus + template + struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; + #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL::value) +#else + #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0) +#endif +#if CYTHON_COMPILING_IN_PYPY == 1 + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000) +#else + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000) +#endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) #ifndef CYTHON_INLINE @@ -534,9 +599,6 @@ END: Cython Metadata */ #endif #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) - #define Py_OptimizeFlag 0 -#endif #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" #if PY_MAJOR_VERSION < 3 @@ -547,67 +609,91 @@ END: Cython Metadata */ #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" #define __Pyx_DefaultClassType PyType_Type -#if PY_VERSION_HEX >= 0x030B00A1 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, +#if CYTHON_COMPILING_IN_LIMITED_API + static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, PyObject *code, PyObject *c, PyObject* n, PyObject *v, PyObject *fv, PyObject *cell, PyObject* fn, PyObject *name, int fline, PyObject *lnos) { - PyObject *kwds=NULL, *argcount=NULL, *posonlyargcount=NULL, *kwonlyargcount=NULL; - PyObject *nlocals=NULL, *stacksize=NULL, *flags=NULL, *replace=NULL, *call_result=NULL, *empty=NULL; - const char *fn_cstr=NULL; - const char *name_cstr=NULL; - PyCodeObject* co=NULL; + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; PyObject *type, *value, *traceback; PyErr_Fetch(&type, &value, &traceback); - if (!(kwds=PyDict_New())) goto end; - if (!(argcount=PyLong_FromLong(a))) goto end; - if (PyDict_SetItemString(kwds, "co_argcount", argcount) != 0) goto end; - if (!(posonlyargcount=PyLong_FromLong(p))) goto end; - if (PyDict_SetItemString(kwds, "co_posonlyargcount", posonlyargcount) != 0) goto end; - if (!(kwonlyargcount=PyLong_FromLong(k))) goto end; - if (PyDict_SetItemString(kwds, "co_kwonlyargcount", kwonlyargcount) != 0) goto end; - if (!(nlocals=PyLong_FromLong(l))) goto end; - if (PyDict_SetItemString(kwds, "co_nlocals", nlocals) != 0) goto end; - if (!(stacksize=PyLong_FromLong(s))) goto end; - if (PyDict_SetItemString(kwds, "co_stacksize", stacksize) != 0) goto end; - if (!(flags=PyLong_FromLong(f))) goto end; - if (PyDict_SetItemString(kwds, "co_flags", flags) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_code", code) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_consts", c) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_names", n) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_varnames", v) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_freevars", fv) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_cellvars", cell) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_linetable", lnos) != 0) goto end; - if (!(fn_cstr=PyUnicode_AsUTF8AndSize(fn, NULL))) goto end; - if (!(name_cstr=PyUnicode_AsUTF8AndSize(name, NULL))) goto end; - if (!(co = PyCode_NewEmpty(fn_cstr, name_cstr, fline))) goto end; - if (!(replace = PyObject_GetAttrString((PyObject*)co, "replace"))) goto cleanup_code_too; - if (!(empty = PyTuple_New(0))) goto cleanup_code_too; // unfortunately __pyx_empty_tuple isn't available here - if (!(call_result = PyObject_Call(replace, empty, kwds))) goto cleanup_code_too; - Py_XDECREF((PyObject*)co); - co = (PyCodeObject*)call_result; - call_result = NULL; - if (0) { - cleanup_code_too: - Py_XDECREF((PyObject*)co); - co = NULL; + #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else { + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - end: - Py_XDECREF(kwds); - Py_XDECREF(argcount); - Py_XDECREF(posonlyargcount); - Py_XDECREF(kwonlyargcount); - Py_XDECREF(nlocals); - Py_XDECREF(stacksize); - Py_XDECREF(replace); - Py_XDECREF(call_result); - Py_XDECREF(empty); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); if (type) { PyErr_Restore(type, value, traceback); } - return co; + return result; } + #ifndef CO_OPTIMIZED + #define CO_OPTIMIZED 0x0001 + #endif + #ifndef CO_NEWLOCALS + #define CO_NEWLOCALS 0x0002 + #endif + #ifndef CO_VARARGS + #define CO_VARARGS 0x0004 + #endif + #ifndef CO_VARKEYWORDS + #define CO_VARKEYWORDS 0x0008 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x0200 + #endif + #ifndef CO_GENERATOR + #define CO_GENERATOR 0x0020 + #endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x0080 + #endif +#elif PY_VERSION_HEX >= 0x030B0000 + static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); + if (!empty_bytes) return NULL; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); + Py_DECREF(empty_bytes); + return result; + } #elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) @@ -642,6 +728,11 @@ END: Cython Metadata */ #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False) #endif #define __Pyx_NoneAsNull(obj) (__Pyx_Py_IsNone(obj) ? NULL : (obj)) +#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o) +#else + #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) +#endif #ifndef CO_COROUTINE #define CO_COROUTINE 0x80 #endif @@ -677,8 +768,13 @@ END: Cython Metadata */ typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames); #else - #define __Pyx_PyCFunctionFast _PyCFunctionFast - #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #if PY_VERSION_HEX >= 0x030d00A4 + # define __Pyx_PyCFunctionFast PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords + #else + # define __Pyx_PyCFunctionFast _PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #endif #endif #if CYTHON_METH_FASTCALL #define __Pyx_METH_FASTCALL METH_FASTCALL @@ -702,7 +798,32 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_VERSION_HEX < 0x030900B1 +#if PY_MAJOR_VERSION >= 0x030900B1 +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) +#else +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) +#endif +#define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func) +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth) +#elif !CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func) +#endif +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags) +static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { + return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; +} +#endif +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +#if CYTHON_COMPILING_IN_LIMITED_API + return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; +#else + return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +#endif +} +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) +#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -728,6 +849,8 @@ END: Cython Metadata */ #define __Pyx_PyThreadState_Current PyThreadState_Get() #elif !CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() #elif PY_VERSION_HEX >= 0x03060000 #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #elif PY_VERSION_HEX >= 0x03000000 @@ -803,7 +926,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { } #endif #endif -#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() @@ -815,7 +938,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && CYTHON_USE_UNICODE_INTERNALS +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); @@ -852,9 +975,14 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next #endif +#if CYTHON_COMPILING_IN_LIMITED_API + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) +#else + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) +#endif #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ - PyTypeObject *type = Py_TYPE(obj);\ + PyTypeObject *type = Py_TYPE((PyObject*)obj);\ assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\ PyObject_GC_Del(obj);\ Py_DECREF(type);\ @@ -867,7 +995,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) @@ -886,7 +1014,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, (Py_UCS4) ch) #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) #else @@ -904,11 +1032,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY @@ -978,9 +1106,34 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif #if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) -#else + #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) +#else + static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { + PyObject *module = PyImport_AddModule(name); + Py_XINCREF(module); + return module; + } #endif #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject @@ -1060,11 +1213,20 @@ static CYTHON_INLINE float __PYX_NAN() { #endif #define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } + { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } -#ifndef __PYX_EXTERN_C +#ifdef CYTHON_EXTERN_C + #undef __PYX_EXTERN_C + #define __PYX_EXTERN_C CYTHON_EXTERN_C +#elif defined(__PYX_EXTERN_C) + #ifdef _MSC_VER + #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.") + #else + #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead. + #endif +#else #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" #else @@ -1127,9 +1289,10 @@ static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { #else #define __Pyx_sst_abs(value) ((value<0) ? -value : value) #endif +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s); static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); -#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize @@ -1157,23 +1320,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) #define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const wchar_t *u) -{ - const wchar_t *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#else -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) -{ - const Py_UNICODE *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#endif -#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) -#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode +#define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode #define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) #define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) @@ -1198,6 +1345,45 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) #endif #if CYTHON_USE_PYLONG_INTERNALS + #if PY_VERSION_HEX >= 0x030C00A7 + #ifndef _PyLong_SIGN_MASK + #define _PyLong_SIGN_MASK 3 + #endif + #ifndef _PyLong_NON_SIZE_BITS + #define _PyLong_NON_SIZE_BITS 3 + #endif + #define __Pyx_PyLong_Sign(x) (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK) + #define __Pyx_PyLong_IsNeg(x) ((__Pyx_PyLong_Sign(x) & 2) != 0) + #define __Pyx_PyLong_IsNonNeg(x) (!__Pyx_PyLong_IsNeg(x)) + #define __Pyx_PyLong_IsZero(x) (__Pyx_PyLong_Sign(x) & 1) + #define __Pyx_PyLong_IsPos(x) (__Pyx_PyLong_Sign(x) == 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) (__Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_SignedDigitCount(x)\ + ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x)) + #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue) + #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x) + #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x) + #else + #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_CompactValue(x) ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0]) + #endif + typedef Py_ssize_t __Pyx_compact_pylong; + typedef size_t __Pyx_compact_upylong; + #else + #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0) + #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0) + #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0) + #define __Pyx_PyLong_IsPos(x) (Py_SIZE(x) > 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) __Pyx_sst_abs(Py_SIZE(x)) + #define __Pyx_PyLong_SignedDigitCount(x) Py_SIZE(x) + #define __Pyx_PyLong_IsCompact(x) (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1) + #define __Pyx_PyLong_CompactValue(x)\ + ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) + typedef sdigit __Pyx_compact_pylong; + typedef digit __Pyx_compact_upylong; + #endif #if PY_VERSION_HEX >= 0x030C00A5 #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->long_value.ob_digit) #else @@ -1205,6 +1391,7 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #endif #endif #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#include static int __Pyx_sys_getdefaultencoding_not_ascii; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1225,7 +1412,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { char ascii_chars[128]; int c; for (c = 0; c < 128; c++) { - ascii_chars[c] = c; + ascii_chars[c] = (char) c; } __Pyx_sys_getdefaultencoding_not_ascii = 1; ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); @@ -1255,6 +1442,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #else #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +#include static char* __PYX_DEFAULT_STRING_ENCODING; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1316,28 +1504,33 @@ static const char *__pyx_f[] = { #define __Pyx_FastGIL_Forget() #define __Pyx_FastGilFuncInit() +/* ForceInitThreads.proto */ +#ifndef __PYX_FORCE_INIT_THREADS + #define __PYX_FORCE_INIT_THREADS 0 +#endif + /* #### Code section: numeric_typedefs ### */ /* #### Code section: complex_type_declarations ### */ /* #### Code section: type_declarations ### */ /*--- Type declarations ---*/ -struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event; -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr; -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr; -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr; -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr; -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr; -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__; -struct __pyx_obj_6hunter_11_predicates_QueryEntry; -struct __pyx_obj_6hunter_11_predicates_Backlog; -struct __pyx_obj_6hunter_11_predicates_From; -struct __pyx_obj_6hunter_11_predicates_When; -struct __pyx_obj_6hunter_11_predicates_Not; -struct __pyx_obj_6hunter_11_predicates_Or; -struct __pyx_obj_6hunter_11_predicates_And; -struct __pyx_obj_6hunter_11_predicates_Query; -struct __pyx_obj_6hunter_6_event_Event; struct __pyx_obj_6hunter_7_tracer_Tracer; +struct __pyx_obj_6hunter_6_event_Event; +struct __pyx_obj_6hunter_11_predicates_Query; +struct __pyx_obj_6hunter_11_predicates_And; +struct __pyx_obj_6hunter_11_predicates_Or; +struct __pyx_obj_6hunter_11_predicates_Not; +struct __pyx_obj_6hunter_11_predicates_When; +struct __pyx_obj_6hunter_11_predicates_From; +struct __pyx_obj_6hunter_11_predicates_Backlog; +struct __pyx_obj_6hunter_11_predicates_QueryEntry; +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__; +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr; +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr; +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr; +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr; +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr; +struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; /* "hunter/_predicates.pyx":37 * ) @@ -1348,218 +1541,60 @@ struct __pyx_obj_6hunter_7_tracer_Tracer; */ typedef PyObject *(*__pyx_t_6hunter_11_predicates_Event_getter_typedef)(struct __pyx_obj_6hunter_6_event_Event *); -/* "cfunc.to_py":66 - * - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< - * def wrap(Event event): - * """wrap(event: 'Event')""" - */ -struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event { - PyObject_HEAD - PyObject *(*__pyx_v_f)(struct __pyx_obj_6hunter_6_event_Event *); -}; - - -/* "hunter/_predicates.pyx":497 - * - * def __str__(self): - * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< - * - * def __repr__(self): - */ -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr { - PyObject_HEAD - PyObject *__pyx_genexpr_arg_0; - PyObject *__pyx_v_p; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; -}; - - -/* "hunter/_predicates.pyx":447 - * - * def __str__(self): - * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< - * - * def __repr__(self): - */ -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr { - PyObject_HEAD - PyObject *__pyx_genexpr_arg_0; - PyObject *__pyx_v_p; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; -}; - - -/* "hunter/_predicates.pyx":329 - * return 'When(%s, %s)' % ( - * self.condition, - * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< - * ) - * - */ -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr { - PyObject_HEAD - PyObject *__pyx_genexpr_arg_0; - PyObject *__pyx_v_p; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; -}; - - -/* "hunter/_predicates.pyx":323 - * self.condition = condition - * self.actions = tuple( - * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< - * for action in actions) - * - */ -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr { - PyObject_HEAD - PyObject *__pyx_genexpr_arg_0; - PyObject *__pyx_v_action; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; -}; - - -/* "hunter/_predicates.pyx":203 - * return 'Query(%s)' % ( - * ', '.join([ - * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< - * for kind, mapping in [ - * ('', self.query_eq), - */ -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr { - PyObject_HEAD - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_outer_scope; - PyObject *__pyx_genexpr_arg_0; - PyObject *__pyx_v_key; - PyObject *__pyx_v_value; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; - PyObject *(*__pyx_t_2)(PyObject *); -}; - - -/* "hunter/_predicates.pyx":200 - * - * - * def __str__(self): # <<<<<<<<<<<<<< - * return 'Query(%s)' % ( - * ', '.join([ - */ -struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ { - PyObject_HEAD - PyObject *__pyx_8genexpr1__pyx_v_kind; -}; - - -/* "hunter/_predicates.pyx":77 - * - * @cython.final - * cdef class QueryEntry: # <<<<<<<<<<<<<< - * cdef Event_getter_typedef getter - * cdef int getter_index - */ -struct __pyx_obj_6hunter_11_predicates_QueryEntry { - PyObject_HEAD - __pyx_t_6hunter_11_predicates_Event_getter_typedef getter; - int getter_index; - PyObject *value; -}; - - -/* "hunter/_predicates.pxd":52 +/* "_tracer.pxd":36 * * @cython.final - * cdef class Backlog: # <<<<<<<<<<<<<< - * cdef: - * readonly object condition - */ -struct __pyx_obj_6hunter_11_predicates_Backlog { - PyObject_HEAD - PyObject *condition; - int size; - int stack; - int vars; - int strip; - PyObject *action; - PyObject *_try_repr; - PyObject *_filter; - PyObject *queue; -}; - - -/* "hunter/_predicates.pxd":43 - * - * @cython.final - * cdef class From: # <<<<<<<<<<<<<< - * cdef: - * readonly object condition - */ -struct __pyx_obj_6hunter_11_predicates_From { - PyObject_HEAD - PyObject *condition; - PyObject *predicate; - int watermark; - int origin_depth; - int origin_calls; -}; - - -/* "hunter/_predicates.pxd":37 - * - * @cython.final - * cdef class When: # <<<<<<<<<<<<<< - * cdef: - * readonly object condition - */ -struct __pyx_obj_6hunter_11_predicates_When { - PyObject_HEAD - PyObject *condition; - PyObject *actions; -}; - - -/* "hunter/_predicates.pxd":32 - * - * @cython.final - * cdef class Not: # <<<<<<<<<<<<<< - * cdef: - * readonly object predicate - */ -struct __pyx_obj_6hunter_11_predicates_Not { - PyObject_HEAD - PyObject *predicate; -}; - - -/* "hunter/_predicates.pxd":27 - * - * @cython.final - * cdef class Or: # <<<<<<<<<<<<<< + * cdef class Tracer: # <<<<<<<<<<<<<< * cdef: - * readonly tuple predicates + * readonly object handler */ -struct __pyx_obj_6hunter_11_predicates_Or { +struct __pyx_obj_6hunter_7_tracer_Tracer { PyObject_HEAD - PyObject *predicates; + PyObject *handler; + PyObject *previous; + PyObject *threading_support; + int profiling_mode; + int depth; + int calls; + PyObject *__weakref__; + PyObject *_threading_previous; + Py_tracefunc _previousfunc; }; -/* "hunter/_predicates.pxd":22 +/* "_event.pxd":13 * * @cython.final - * cdef class And: # <<<<<<<<<<<<<< + * cdef class Event: # <<<<<<<<<<<<<< * cdef: - * readonly tuple predicates + * readonly FrameType frame */ -struct __pyx_obj_6hunter_11_predicates_And { +struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD - PyObject *predicates; + struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; + PyFrameObject *frame; + PyObject *kind; + PyObject *arg; + int depth; + int calls; + int threading_support; + int detached; + PyObject *builtin; + PyObject *_code; + PyObject *_filename; + PyObject *_fullsource; + PyObject *_function; + PyObject *_function_object; + PyObject *_globals; + PyObject *_lineno; + PyObject *_locals; + PyObject *_module; + PyObject *_source; + PyObject *_stdlib; + PyObject *_thread; + PyObject *_threadidn; + PyObject *_threadname; + PyObject *_instruction; }; @@ -1585,65 +1620,223 @@ struct __pyx_obj_6hunter_11_predicates_Query { }; -/* "_event.pxd":12 +/* "hunter/_predicates.pxd":23 * * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * cdef class And: # <<<<<<<<<<<<<< * cdef: - * readonly FrameType frame + * readonly tuple predicates */ -struct __pyx_obj_6hunter_6_event_Event { +struct __pyx_obj_6hunter_11_predicates_And { PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; - PyFrameObject *frame; - PyObject *kind; - PyObject *arg; - int depth; - int calls; - int threading_support; - int detached; - PyObject *builtin; - PyObject *_code; - PyObject *_filename; - PyObject *_fullsource; - PyObject *_function; - PyObject *_function_object; - PyObject *_globals; - PyObject *_lineno; - PyObject *_locals; - PyObject *_module; - PyObject *_source; - PyObject *_stdlib; - PyObject *_thread; - PyObject *_threadidn; - PyObject *_threadname; - PyObject *_instruction; + PyObject *predicates; }; -/* "_tracer.pxd":35 +/* "hunter/_predicates.pxd":29 * * @cython.final - * cdef class Tracer: # <<<<<<<<<<<<<< + * cdef class Or: # <<<<<<<<<<<<<< * cdef: - * readonly object handler + * readonly tuple predicates */ -struct __pyx_obj_6hunter_7_tracer_Tracer { +struct __pyx_obj_6hunter_11_predicates_Or { PyObject_HEAD - PyObject *handler; - PyObject *previous; - PyObject *threading_support; - int profiling_mode; - int depth; - int calls; - PyObject *__weakref__; - PyObject *_threading_previous; - Py_tracefunc _previousfunc; + PyObject *predicates; }; +/* "hunter/_predicates.pxd":35 + * + * @cython.final + * cdef class Not: # <<<<<<<<<<<<<< + * cdef: + * readonly object predicate + */ +struct __pyx_obj_6hunter_11_predicates_Not { + PyObject_HEAD + PyObject *predicate; +}; + -/* "_event.pxd":12 +/* "hunter/_predicates.pxd":41 + * + * @cython.final + * cdef class When: # <<<<<<<<<<<<<< + * cdef: + * readonly object condition + */ +struct __pyx_obj_6hunter_11_predicates_When { + PyObject_HEAD + PyObject *condition; + PyObject *actions; +}; + + +/* "hunter/_predicates.pxd":48 + * + * @cython.final + * cdef class From: # <<<<<<<<<<<<<< + * cdef: + * readonly object condition + */ +struct __pyx_obj_6hunter_11_predicates_From { + PyObject_HEAD + PyObject *condition; + PyObject *predicate; + int watermark; + int origin_depth; + int origin_calls; +}; + + +/* "hunter/_predicates.pxd":58 + * + * @cython.final + * cdef class Backlog: # <<<<<<<<<<<<<< + * cdef: + * readonly object condition + */ +struct __pyx_obj_6hunter_11_predicates_Backlog { + PyObject_HEAD + PyObject *condition; + int size; + int stack; + int vars; + int strip; + PyObject *action; + PyObject *_try_repr; + PyObject *_filter; + PyObject *queue; +}; + + +/* "hunter/_predicates.pyx":78 + * + * @cython.final + * cdef class QueryEntry: # <<<<<<<<<<<<<< + * cdef Event_getter_typedef getter + * cdef int getter_index + */ +struct __pyx_obj_6hunter_11_predicates_QueryEntry { + PyObject_HEAD + __pyx_t_6hunter_11_predicates_Event_getter_typedef getter; + int getter_index; + PyObject *value; +}; + + +/* "hunter/_predicates.pyx":199 + * self.query_gte = tuple(sorted(query_gte.items())) + * + * def __str__(self): # <<<<<<<<<<<<<< + * return 'Query(%s)' % ( + * ', '.join([ + */ +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ { + PyObject_HEAD + PyObject *__pyx_8genexpr1__pyx_v_kind; +}; + + +/* "hunter/_predicates.pyx":202 + * return 'Query(%s)' % ( + * ', '.join([ + * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< + * for kind, mapping in [ + * ('', self.query_eq), + */ +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr { + PyObject_HEAD + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_outer_scope; + PyObject *__pyx_genexpr_arg_0; + PyObject *__pyx_v_key; + PyObject *__pyx_v_value; + PyObject *__pyx_t_0; + Py_ssize_t __pyx_t_1; + PyObject *(*__pyx_t_2)(PyObject *); +}; + + +/* "hunter/_predicates.pyx":322 + * self.condition = condition + * self.actions = tuple( + * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< + * for action in actions) + * + */ +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr { + PyObject_HEAD + PyObject *__pyx_genexpr_arg_0; + PyObject *__pyx_v_action; + PyObject *__pyx_t_0; + Py_ssize_t __pyx_t_1; +}; + + +/* "hunter/_predicates.pyx":328 + * return 'When(%s, %s)' % ( + * self.condition, + * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< + * ) + * + */ +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr { + PyObject_HEAD + PyObject *__pyx_genexpr_arg_0; + PyObject *__pyx_v_p; + PyObject *__pyx_t_0; + Py_ssize_t __pyx_t_1; +}; + + +/* "hunter/_predicates.pyx":446 + * + * def __str__(self): + * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< + * + * def __repr__(self): + */ +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr { + PyObject_HEAD + PyObject *__pyx_genexpr_arg_0; + PyObject *__pyx_v_p; + PyObject *__pyx_t_0; + Py_ssize_t __pyx_t_1; +}; + + +/* "hunter/_predicates.pyx":496 + * + * def __str__(self): + * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< + * + * def __repr__(self): + */ +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr { + PyObject_HEAD + PyObject *__pyx_genexpr_arg_0; + PyObject *__pyx_v_p; + PyObject *__pyx_t_0; + Py_ssize_t __pyx_t_1; +}; + + +/* "cfunc.to_py":66 + * + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * def wrap(Event event): + * """wrap(event: 'Event')""" + */ +struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event { + PyObject_HEAD + PyObject *(*__pyx_v_f)(struct __pyx_obj_6hunter_6_event_Event *); +}; + + + +/* "_event.pxd":13 * * @cython.final * cdef class Event: # <<<<<<<<<<<<<< @@ -1761,11 +1954,18 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #if CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; -#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#if PY_VERSION_HEX >= 0x030C00A6 +#define __Pyx_PyErr_Occurred() (__pyx_tstate->current_exception != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL) +#else +#define __Pyx_PyErr_Occurred() (__pyx_tstate->curexc_type != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->curexc_type) +#endif #else #define __Pyx_PyThreadState_declare #define __Pyx_PyThreadState_assign -#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#define __Pyx_PyErr_Occurred() (PyErr_Occurred() != NULL) +#define __Pyx_PyErr_CurrentExceptionType() PyErr_Occurred() #endif /* PyErrFetchRestore.proto */ @@ -1777,7 +1977,7 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6 #define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) #else #define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) @@ -1822,7 +2022,20 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /* fastcall.proto */ -#define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) +#elif CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#else + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) +#endif +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) + #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) +#else + #define __Pyx_Arg_NewRef_VARARGS(arg) arg + #define __Pyx_Arg_XDECREF_VARARGS(arg) +#endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) @@ -1832,15 +2045,24 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); + #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) + #endif + #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs + to have the same reference counting */ + #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS + #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) + #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS #define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) #else @@ -1915,12 +2137,18 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam #define __Pyx_TraceFrameInit(codeobj)\ if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj; #if PY_VERSION_HEX >= 0x030b00a2 + #if PY_VERSION_HEX >= 0x030C00b1 + #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ + ((!(check_tracing) || !(tstate)->tracing) &&\ + (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc))) + #else #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ (unlikely((tstate)->cframe->use_tracing) &&\ (!(check_tracing) || !(tstate)->tracing) &&\ (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc))) - #define __Pyx_EnterTracing(tstate) PyThreadState_EnterTracing(tstate) - #define __Pyx_LeaveTracing(tstate) PyThreadState_LeaveTracing(tstate) + #endif + #define __Pyx_EnterTracing(tstate) PyThreadState_EnterTracing(tstate) + #define __Pyx_LeaveTracing(tstate) PyThreadState_LeaveTracing(tstate) #elif PY_VERSION_HEX >= 0x030a00b1 #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ (unlikely((tstate)->cframe->use_tracing) &&\ @@ -2118,7 +2346,22 @@ static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec #endif /* PyMethodNew.proto */ -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + typesModule = PyImport_ImportModule("types"); + if (!typesModule) return NULL; + methodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + if (!methodType) return NULL; + result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); + Py_DECREF(methodType); + return result; +} +#elif PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { CYTHON_UNUSED_VAR(typ); if (!self) @@ -2142,7 +2385,7 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CYFUNCTION_COROUTINE 0x08 #define __Pyx_CyFunction_GetClosure(f)\ (((__pyx_CyFunctionObject *) (f))->func_closure) -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_GetClassObj(f)\ (((__pyx_CyFunctionObject *) (f))->func_classobj) #else @@ -2156,7 +2399,10 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CyFunction_SetDefaultsGetter(f, g)\ ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g) typedef struct { -#if PY_VERSION_HEX < 0x030900B1 +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject_HEAD + PyObject *func; +#elif PY_VERSION_HEX < 0x030900B1 PyCFunctionObject func; #else PyCMethodObject func; @@ -2164,7 +2410,7 @@ typedef struct { #if CYTHON_BACKPORT_VECTORCALL __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2174,12 +2420,12 @@ typedef struct { PyObject *func_globals; PyObject *func_code; PyObject *func_closure; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif void *defaults; int defaults_pyobjects; - size_t defaults_size; // used by FusedFunction for copying defaults + size_t defaults_size; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2187,9 +2433,13 @@ typedef struct { PyObject *func_annotations; PyObject *func_is_coroutine; } __pyx_CyFunctionObject; +#undef __Pyx_CyOrPyCFunction_Check #define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_IsCyOrPyCFunction(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) #define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#undef __Pyx_IsSameCFunction +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, @@ -2273,7 +2523,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, #if !CYTHON_VECTORCALL #if PY_VERSION_HEX >= 0x03080000 #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -2354,7 +2604,11 @@ static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) { Py_ssize_t len = Py_SIZE(list); if (likely(L->allocated > len)) { Py_INCREF(x); + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + L->ob_item[len] = x; + #else PyList_SET_ITEM(list, len, x); + #endif __Pyx_SET_SIZE(list, len + 1); return 0; } @@ -2494,6 +2748,12 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /* pep479.proto */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); +/* PyObjectCall2Args.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); + +/* PyObjectCallMethod1.proto */ +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); + /* StringJoin.proto */ #if PY_MAJOR_VERSION < 3 #define __Pyx_PyString_Join __Pyx_PyBytes_Join @@ -2502,15 +2762,7 @@ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); #define __Pyx_PyString_Join PyUnicode_Join #define __Pyx_PyBaseString_Join PyUnicode_Join #endif -#if CYTHON_COMPILING_IN_CPYTHON - #if PY_MAJOR_VERSION < 3 - #define __Pyx_PyBytes_Join _PyString_Join - #else - #define __Pyx_PyBytes_Join _PyBytes_Join - #endif -#else static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values); -#endif /* GetAttr3.proto */ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); @@ -2538,7 +2790,7 @@ static CYTHON_INLINE int __Pyx_PyStr_Tailmatch(PyObject* self, PyObject* arg, Py /* ListExtend.proto */ static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) { -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 PyObject* none = _PyList_Extend((PyListObject*)L, v); if (unlikely(!none)) return -1; @@ -2556,7 +2808,11 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { Py_ssize_t len = Py_SIZE(list); if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) { Py_INCREF(x); + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + L->ob_item[len] = x; + #else PyList_SET_ITEM(list, len, x); + #endif __Pyx_SET_SIZE(list, len + 1); return 0; } @@ -2597,12 +2853,6 @@ static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, int wraparound, int boundscheck); -/* PyObjectCall2Args.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); - -/* PyObjectCallMethod1.proto */ -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); - /* append.proto */ static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x); @@ -2610,7 +2860,11 @@ static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x); static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *); /* HasAttr.proto */ +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#define __Pyx_HasAttr(o, n) PyObject_HasAttrWithError(o, n) +#else static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *); +#endif /* ValidateBasesTuple.proto */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS @@ -2633,22 +2887,22 @@ static int __Pyx_setup_reduce(PyObject* type_obj); #endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto -#define __PYX_HAVE_RT_ImportType_proto -#if __STDC_VERSION__ >= 201112L +#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 +#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif -#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT(s) alignof(s) +#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize { - __Pyx_ImportType_CheckSize_Error = 0, - __Pyx_ImportType_CheckSize_Warn = 1, - __Pyx_ImportType_CheckSize_Ignore = 2 +enum __Pyx_ImportType_CheckSize_3_0_10 { + __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, + __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 }; -static PyTypeObject *__Pyx_ImportType(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size); +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); #endif /* GetVTable.proto */ @@ -2732,11 +2986,11 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) #define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) #endif -#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_Occurred(), err1, err2) +#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) /* GetTopmostException.proto */ -#if CYTHON_USE_EXC_INFO_STACK +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); #endif @@ -2833,13 +3087,14 @@ static PyObject *__Pyx_Generator_Next(PyObject *self); static int __pyx_Generator_init(PyObject *module); /* CheckBinaryVersion.proto */ -static int __Pyx_check_binary_version(void); +static unsigned long __Pyx_get_runtime_version(void); +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionExport.proto */ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); /* FunctionImport.proto */ -static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig); +static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig); /* InitStrings.proto */ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); @@ -2908,7 +3163,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(struct __pyx_obj_6hunter_11_predicates_Or *, PyObject *); /*proto*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(struct __pyx_obj_6hunter_11_predicates_Not *, PyObject *); /*proto*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state(struct __pyx_obj_6hunter_11_predicates_Backlog *, PyObject *); /*proto*/ -static PyObject *__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *)); /*proto*/ +static PyObject *__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *)); /*proto*/ /* #### Code section: typeinfo ### */ /* #### Code section: before_global_var ### */ #define __Pyx_MODULE_NAME "hunter._predicates" @@ -3110,7 +3365,7 @@ static const char __pyx_k_src_hunter__predicates_pyx[] = "src/hunter/_predicates static const char __pyx_k_QueryEntry___setstate_cython[] = "QueryEntry.__setstate_cython__"; static const char __pyx_k_with_optional_operators_like[] = " with optional operators like: "; static const char __pyx_k_Must_give_at_least_one_action[] = "Must give at least one action."; -static const char __pyx_k_Pyx_CFunc_object__lParenEvent[] = "__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event..wrap"; +static const char __pyx_k_Pyx_CFunc_6hunter_11_predicate[] = "__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event..wrap"; static const char __pyx_k_Backlog_s_size_s_stack_s_vars_s[] = "Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)"; static const char __pyx_k_hunter__predicates_And_predicat[] = ""; static const char __pyx_k_hunter__predicates_From_conditi[] = ""; @@ -3128,7 +3383,7 @@ static const char __pyx_k_Incompatible_checksums_0x_x_vs_0_4[] = "Incompatible c static const char __pyx_k_Incompatible_checksums_0x_x_vs_0_5[] = "Incompatible checksums (0x%x vs (0x23761c9, 0x0444431, 0xf670ef6) = (predicate))"; static const char __pyx_k_Incompatible_checksums_0x_x_vs_0_6[] = "Incompatible checksums (0x%x vs (0x1428ea1, 0xbd128e6, 0x4bbfdb4) = (_filter, _try_repr, action, condition, queue, size, stack, strip, vars))"; /* #### Code section: decls ### */ -static PyObject *__pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_wrap(PyObject *__pyx_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event); /* proto */ +static PyObject *__pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap(PyObject *__pyx_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event); /* proto */ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_name); /* proto */ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ @@ -3246,21 +3501,21 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */ -static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_QueryEntry(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_Backlog(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_From(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_When(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_Not(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_Or(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_11_predicates_And(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_11_predicates_Query(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_And(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_Or(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_Not(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_When(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_From(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_Backlog(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates_QueryEntry(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_items = {0, 0, 0, 0, 0}; static __Pyx_CachedCFunction __pyx_umethod_PyTuple_Type_index = {0, 0, 0, 0, 0}; /* #### Code section: late_includes ### */ @@ -3320,37 +3575,37 @@ typedef struct { #endif PyTypeObject *__pyx_ptype_6hunter_6_event_Event; #if CYTHON_USE_MODULE_STATE - PyObject *__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event; - PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; - PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; - PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr; - PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr; - PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr; - PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__; - PyObject *__pyx_type_6hunter_11_predicates_QueryEntry; - PyObject *__pyx_type_6hunter_11_predicates_Backlog; - PyObject *__pyx_type_6hunter_11_predicates_From; - PyObject *__pyx_type_6hunter_11_predicates_When; - PyObject *__pyx_type_6hunter_11_predicates_Not; - PyObject *__pyx_type_6hunter_11_predicates_Or; - PyObject *__pyx_type_6hunter_11_predicates_And; PyObject *__pyx_type_6hunter_11_predicates_Query; + PyObject *__pyx_type_6hunter_11_predicates_And; + PyObject *__pyx_type_6hunter_11_predicates_Or; + PyObject *__pyx_type_6hunter_11_predicates_Not; + PyObject *__pyx_type_6hunter_11_predicates_When; + PyObject *__pyx_type_6hunter_11_predicates_From; + PyObject *__pyx_type_6hunter_11_predicates_Backlog; + PyObject *__pyx_type_6hunter_11_predicates_QueryEntry; + PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__; + PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr; + PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr; + PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr; + PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; + PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; + PyObject *__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; #endif - PyTypeObject *__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event; - PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr; - PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr; - PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr; - PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr; - PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr; - PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_QueryEntry; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_Backlog; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_From; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_When; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_Not; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_Or; - PyTypeObject *__pyx_ptype_6hunter_11_predicates_And; PyTypeObject *__pyx_ptype_6hunter_11_predicates_Query; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_And; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_Or; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_Not; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_When; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_From; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_Backlog; + PyTypeObject *__pyx_ptype_6hunter_11_predicates_QueryEntry; + PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__; + PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr; + PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr; + PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr; + PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr; + PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr; + PyTypeObject *__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; PyObject *__pyx_n_s_Action; PyObject *__pyx_kp_s_Action_r_must_be_a_ColorStreamAc; PyObject *__pyx_n_s_And; @@ -3384,7 +3639,7 @@ typedef struct { PyObject *__pyx_n_s_Or___setstate_cython; PyObject *__pyx_kp_s_Or_s; PyObject *__pyx_n_s_PickleError; - PyObject *__pyx_n_s_Pyx_CFunc_object__lParenEvent; + PyObject *__pyx_n_s_Pyx_CFunc_6hunter_11_predicate; PyObject *__pyx_n_s_Query; PyObject *__pyx_n_s_QueryEntry; PyObject *__pyx_n_s_QueryEntry___reduce_cython; @@ -3668,36 +3923,36 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); - Py_CLEAR(clear_module_state->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event); - Py_CLEAR(clear_module_state->__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_QueryEntry); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_QueryEntry); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Backlog); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_From); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_From); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_When); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_When); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Not); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Not); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Or); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Or); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_And); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_And); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Query); Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Query); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_And); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_And); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Or); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Or); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Not); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Not); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_When); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_When); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_From); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_From); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Backlog); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_QueryEntry); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_QueryEntry); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr); + Py_CLEAR(clear_module_state->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); + Py_CLEAR(clear_module_state->__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); Py_CLEAR(clear_module_state->__pyx_n_s_Action); Py_CLEAR(clear_module_state->__pyx_kp_s_Action_r_must_be_a_ColorStreamAc); Py_CLEAR(clear_module_state->__pyx_n_s_And); @@ -3731,7 +3986,7 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_Or___setstate_cython); Py_CLEAR(clear_module_state->__pyx_kp_s_Or_s); Py_CLEAR(clear_module_state->__pyx_n_s_PickleError); - Py_CLEAR(clear_module_state->__pyx_n_s_Pyx_CFunc_object__lParenEvent); + Py_CLEAR(clear_module_state->__pyx_n_s_Pyx_CFunc_6hunter_11_predicate); Py_CLEAR(clear_module_state->__pyx_n_s_Query); Py_CLEAR(clear_module_state->__pyx_n_s_QueryEntry); Py_CLEAR(clear_module_state->__pyx_n_s_QueryEntry___reduce_cython); @@ -3993,36 +4248,36 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); - Py_VISIT(traverse_module_state->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event); - Py_VISIT(traverse_module_state->__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_QueryEntry); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_QueryEntry); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Backlog); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_From); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_From); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_When); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_When); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Not); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Not); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Or); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Or); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_And); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_And); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Query); Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Query); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_And); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_And); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Or); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Or); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Not); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Not); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_When); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_When); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_From); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_From); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Backlog); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_QueryEntry); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_QueryEntry); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr); + Py_VISIT(traverse_module_state->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); + Py_VISIT(traverse_module_state->__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); Py_VISIT(traverse_module_state->__pyx_n_s_Action); Py_VISIT(traverse_module_state->__pyx_kp_s_Action_r_must_be_a_ColorStreamAc); Py_VISIT(traverse_module_state->__pyx_n_s_And); @@ -4056,7 +4311,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_Or___setstate_cython); Py_VISIT(traverse_module_state->__pyx_kp_s_Or_s); Py_VISIT(traverse_module_state->__pyx_n_s_PickleError); - Py_VISIT(traverse_module_state->__pyx_n_s_Pyx_CFunc_object__lParenEvent); + Py_VISIT(traverse_module_state->__pyx_n_s_Pyx_CFunc_6hunter_11_predicate); Py_VISIT(traverse_module_state->__pyx_n_s_Query); Py_VISIT(traverse_module_state->__pyx_n_s_QueryEntry); Py_VISIT(traverse_module_state->__pyx_n_s_QueryEntry___reduce_cython); @@ -4351,37 +4606,37 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #endif #define __pyx_ptype_6hunter_6_event_Event __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event #if CYTHON_USE_MODULE_STATE -#define __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event __pyx_mstate_global->__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ -#define __pyx_type_6hunter_11_predicates_QueryEntry __pyx_mstate_global->__pyx_type_6hunter_11_predicates_QueryEntry -#define __pyx_type_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Backlog -#define __pyx_type_6hunter_11_predicates_From __pyx_mstate_global->__pyx_type_6hunter_11_predicates_From -#define __pyx_type_6hunter_11_predicates_When __pyx_mstate_global->__pyx_type_6hunter_11_predicates_When -#define __pyx_type_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Not -#define __pyx_type_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Or -#define __pyx_type_6hunter_11_predicates_And __pyx_mstate_global->__pyx_type_6hunter_11_predicates_And #define __pyx_type_6hunter_11_predicates_Query __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Query +#define __pyx_type_6hunter_11_predicates_And __pyx_mstate_global->__pyx_type_6hunter_11_predicates_And +#define __pyx_type_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Or +#define __pyx_type_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Not +#define __pyx_type_6hunter_11_predicates_When __pyx_mstate_global->__pyx_type_6hunter_11_predicates_When +#define __pyx_type_6hunter_11_predicates_From __pyx_mstate_global->__pyx_type_6hunter_11_predicates_From +#define __pyx_type_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Backlog +#define __pyx_type_6hunter_11_predicates_QueryEntry __pyx_mstate_global->__pyx_type_6hunter_11_predicates_QueryEntry +#define __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ +#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr +#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr +#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr +#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr +#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr +#define __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event __pyx_mstate_global->__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event #endif -#define __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event __pyx_mstate_global->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ -#define __pyx_ptype_6hunter_11_predicates_QueryEntry __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_QueryEntry -#define __pyx_ptype_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog -#define __pyx_ptype_6hunter_11_predicates_From __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From -#define __pyx_ptype_6hunter_11_predicates_When __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When -#define __pyx_ptype_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not -#define __pyx_ptype_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or -#define __pyx_ptype_6hunter_11_predicates_And __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And #define __pyx_ptype_6hunter_11_predicates_Query __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query +#define __pyx_ptype_6hunter_11_predicates_And __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And +#define __pyx_ptype_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or +#define __pyx_ptype_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not +#define __pyx_ptype_6hunter_11_predicates_When __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When +#define __pyx_ptype_6hunter_11_predicates_From __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From +#define __pyx_ptype_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog +#define __pyx_ptype_6hunter_11_predicates_QueryEntry __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_QueryEntry +#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ +#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr +#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr +#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr +#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr +#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr +#define __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event __pyx_mstate_global->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event #define __pyx_n_s_Action __pyx_mstate_global->__pyx_n_s_Action #define __pyx_kp_s_Action_r_must_be_a_ColorStreamAc __pyx_mstate_global->__pyx_kp_s_Action_r_must_be_a_ColorStreamAc #define __pyx_n_s_And __pyx_mstate_global->__pyx_n_s_And @@ -4415,7 +4670,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_Or___setstate_cython __pyx_mstate_global->__pyx_n_s_Or___setstate_cython #define __pyx_kp_s_Or_s __pyx_mstate_global->__pyx_kp_s_Or_s #define __pyx_n_s_PickleError __pyx_mstate_global->__pyx_n_s_PickleError -#define __pyx_n_s_Pyx_CFunc_object__lParenEvent __pyx_mstate_global->__pyx_n_s_Pyx_CFunc_object__lParenEvent +#define __pyx_n_s_Pyx_CFunc_6hunter_11_predicate __pyx_mstate_global->__pyx_n_s_Pyx_CFunc_6hunter_11_predicate #define __pyx_n_s_Query __pyx_mstate_global->__pyx_n_s_Query #define __pyx_n_s_QueryEntry __pyx_mstate_global->__pyx_n_s_QueryEntry #define __pyx_n_s_QueryEntry___reduce_cython __pyx_mstate_global->__pyx_n_s_QueryEntry___reduce_cython @@ -4655,24 +4910,24 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* #### Code section: module_code ### */ /* "cfunc.to_py":67 - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) */ /* Python wrapper */ -static PyObject *__pyx_pw_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_1wrap(PyObject *__pyx_self, +static PyObject *__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -PyDoc_STRVAR(__pyx_doc_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_wrap, "wrap(event: 'Event')"); -static PyMethodDef __pyx_mdef_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_1wrap = {"wrap", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_1wrap, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_wrap}; -static PyObject *__pyx_pw_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_1wrap(PyObject *__pyx_self, +PyDoc_STRVAR(__pyx_doc_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap, "wrap(event: 'Event')"); +static PyMethodDef __pyx_mdef_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap = {"wrap", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap}; +static PyObject *__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else @@ -4681,18 +4936,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("wrap (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4704,7 +4967,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 67, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -4719,29 +4985,43 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("wrap", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 67, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event.wrap", __pyx_clineno, __pyx_lineno, __pyx_filename); + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } + __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event.wrap", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 67, __pyx_L1_error) - __pyx_r = __pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_wrap(__pyx_self, __pyx_v_event); + __pyx_r = __pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap(__pyx_self, __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_wrap(PyObject *__pyx_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { - struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *__pyx_cur_scope; - struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *__pyx_outer_scope; +static PyObject *__pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap(PyObject *__pyx_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { + struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_cur_scope; + struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_outer_scope; PyObject *__pyx_r = NULL; __Pyx_TraceDeclarations __Pyx_RefNannyDeclarations @@ -4749,8 +5029,8 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__r int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("wrap", 0); - __pyx_outer_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *) __Pyx_CyFunction_GetClosure(__pyx_self); + __Pyx_RefNannySetupContext("wrap", 1); + __pyx_outer_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *) __Pyx_CyFunction_GetClosure(__pyx_self); __pyx_cur_scope = __pyx_outer_scope; __Pyx_TraceCall("wrap", __pyx_f[0], 67, 0, __PYX_ERR(0, 67, __pyx_L1_error)); @@ -4770,8 +5050,8 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__r goto __pyx_L0; /* "cfunc.to_py":67 - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) @@ -4780,7 +5060,7 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__r /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event.wrap", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event.wrap", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -4791,14 +5071,14 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__r /* "cfunc.to_py":66 * - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< * def wrap(Event event): * """wrap(event: 'Event')""" */ -static PyObject *__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyObject *(*__pyx_v_f)(struct __pyx_obj_6hunter_6_event_Event *)) { - struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *__pyx_cur_scope; +static PyObject *__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyObject *(*__pyx_v_f)(struct __pyx_obj_6hunter_6_event_Event *)) { + struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_cur_scope; PyObject *__pyx_v_wrap = 0; PyObject *__pyx_r = NULL; __Pyx_TraceDeclarations @@ -4807,27 +5087,27 @@ static PyObject *__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyObject * int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event", 0); - __pyx_cur_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *)__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event, __pyx_empty_tuple, NULL); + __Pyx_RefNannySetupContext("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", 0); + __pyx_cur_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { - __pyx_cur_scope = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *)Py_None); + __pyx_cur_scope = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)Py_None); __Pyx_INCREF(Py_None); __PYX_ERR(0, 66, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } - __Pyx_TraceCall("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event", __pyx_f[0], 66, 0, __PYX_ERR(0, 66, __pyx_L1_error)); + __Pyx_TraceCall("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", __pyx_f[0], 66, 0, __PYX_ERR(0, 66, __pyx_L1_error)); __pyx_cur_scope->__pyx_v_f = __pyx_v_f; /* "cfunc.to_py":67 - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) */ __Pyx_TraceLine(67,0,__PYX_ERR(0, 67, __pyx_L1_error)) - __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_11cfunc_dot_to_py_52__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_1wrap, 0, __pyx_n_s_Pyx_CFunc_object__lParenEvent, ((PyObject*)__pyx_cur_scope), __pyx_n_s_cfunc_to_py, __pyx_d, ((PyObject *)__pyx_codeobj__2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) + __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap, 0, __pyx_n_s_Pyx_CFunc_6hunter_11_predicate, ((PyObject*)__pyx_cur_scope), __pyx_n_s_cfunc_to_py, __pyx_d, ((PyObject *)__pyx_codeobj__2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_wrap = __pyx_t_1; __pyx_t_1 = 0; @@ -4847,8 +5127,8 @@ static PyObject *__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyObject * /* "cfunc.to_py":66 * - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< * def wrap(Event event): * """wrap(event: 'Event')""" */ @@ -4856,7 +5136,7 @@ static PyObject *__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyObject * /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_wrap); @@ -4883,7 +5163,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_function( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_function", 0); + __Pyx_RefNannySetupContext("Event_get_function", 1); __Pyx_TraceCall("Event_get_function", __pyx_f[1], 38, 0, __PYX_ERR(1, 38, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->function_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 38, __pyx_L1_error) @@ -4920,7 +5200,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_module(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_module", 0); + __Pyx_RefNannySetupContext("Event_get_module", 1); __Pyx_TraceCall("Event_get_module", __pyx_f[1], 39, 0, __PYX_ERR(1, 39, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->module_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 39, __pyx_L1_error) @@ -4957,7 +5237,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_lineno(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_lineno", 0); + __Pyx_RefNannySetupContext("Event_get_lineno", 1); __Pyx_TraceCall("Event_get_lineno", __pyx_f[1], 40, 0, __PYX_ERR(1, 40, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->lineno_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 40, __pyx_L1_error) @@ -4994,7 +5274,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_globals(s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_globals", 0); + __Pyx_RefNannySetupContext("Event_get_globals", 1); __Pyx_TraceCall("Event_get_globals", __pyx_f[1], 41, 0, __PYX_ERR(1, 41, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->globals_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 41, __pyx_L1_error) @@ -5031,7 +5311,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_stdlib(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_stdlib", 0); + __Pyx_RefNannySetupContext("Event_get_stdlib", 1); __Pyx_TraceCall("Event_get_stdlib", __pyx_f[1], 42, 0, __PYX_ERR(1, 42, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->stdlib_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 42, __pyx_L1_error) @@ -5067,7 +5347,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_arg(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_arg", 0); + __Pyx_RefNannySetupContext("Event_get_arg", 1); __Pyx_TraceCall("Event_get_arg", __pyx_f[1], 43, 0, __PYX_ERR(1, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_event->arg); @@ -5101,7 +5381,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_locals(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_locals", 0); + __Pyx_RefNannySetupContext("Event_get_locals", 1); __Pyx_TraceCall("Event_get_locals", __pyx_f[1], 44, 0, __PYX_ERR(1, 44, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->locals_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 44, __pyx_L1_error) @@ -5137,7 +5417,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_kind(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_kind", 0); + __Pyx_RefNannySetupContext("Event_get_kind", 1); __Pyx_TraceCall("Event_get_kind", __pyx_f[1], 45, 0, __PYX_ERR(1, 45, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_event->kind); @@ -5171,7 +5451,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_filename( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_filename", 0); + __Pyx_RefNannySetupContext("Event_get_filename", 1); __Pyx_TraceCall("Event_get_filename", __pyx_f[1], 46, 0, __PYX_ERR(1, 46, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->filename_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 46, __pyx_L1_error) @@ -5208,7 +5488,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_source(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_source", 0); + __Pyx_RefNannySetupContext("Event_get_source", 1); __Pyx_TraceCall("Event_get_source", __pyx_f[1], 47, 0, __PYX_ERR(1, 47, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->source_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 47, __pyx_L1_error) @@ -5245,7 +5525,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_fullsourc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_fullsource", 0); + __Pyx_RefNannySetupContext("Event_get_fullsource", 1); __Pyx_TraceCall("Event_get_fullsource", __pyx_f[1], 48, 0, __PYX_ERR(1, 48, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->fullsource_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 48, __pyx_L1_error) @@ -5282,7 +5562,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_threadnam int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_threadname", 0); + __Pyx_RefNannySetupContext("Event_get_threadname", 1); __Pyx_TraceCall("Event_get_threadname", __pyx_f[1], 49, 0, __PYX_ERR(1, 49, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->threadname_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 49, __pyx_L1_error) @@ -5319,7 +5599,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_threadid( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_threadid", 0); + __Pyx_RefNannySetupContext("Event_get_threadid", 1); __Pyx_TraceCall("Event_get_threadid", __pyx_f[1], 50, 0, __PYX_ERR(1, 50, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->threadid_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 50, __pyx_L1_error) @@ -5356,7 +5636,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_instructi int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_instruction", 0); + __Pyx_RefNannySetupContext("Event_get_instruction", 1); __Pyx_TraceCall("Event_get_instruction", __pyx_f[1], 51, 0, __PYX_ERR(1, 51, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->instruction_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 51, __pyx_L1_error) @@ -5393,7 +5673,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_depth(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_depth", 0); + __Pyx_RefNannySetupContext("Event_get_depth", 1); __Pyx_TraceCall("Event_get_depth", __pyx_f[1], 52, 0, __PYX_ERR(1, 52, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_event->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 52, __pyx_L1_error) @@ -5430,7 +5710,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_calls(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_calls", 0); + __Pyx_RefNannySetupContext("Event_get_calls", 1); __Pyx_TraceCall("Event_get_calls", __pyx_f[1], 53, 0, __PYX_ERR(1, 53, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_event->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 53, __pyx_L1_error) @@ -5466,7 +5746,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_builtin(s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_builtin", 0); + __Pyx_RefNannySetupContext("Event_get_builtin", 1); __Pyx_TraceCall("Event_get_builtin", __pyx_f[1], 54, 0, __PYX_ERR(1, 54, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_event->builtin); @@ -5484,7 +5764,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_builtin(s return __pyx_r; } -/* "hunter/_predicates.pyx":82 +/* "hunter/_predicates.pyx":83 * cdef object value * * def __init__(self, object value, str name): # <<<<<<<<<<<<<< @@ -5497,17 +5777,23 @@ static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_value = 0; PyObject *__pyx_v_name = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[2] = {0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_value,&__pyx_n_s_name,0}; - PyObject* values[2] = {0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -5521,20 +5807,26 @@ static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_value)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 82, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_value)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 83, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_name)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 82, __pyx_L3_error) + if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_name)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[1]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 83, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(1, 82, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(1, 83, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 82, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 83, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; @@ -5545,15 +5837,23 @@ static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx __pyx_v_value = values[0]; __pyx_v_name = ((PyObject*)values[1]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(1, 82, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(1, 83, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.QueryEntry.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_name), (&PyString_Type), 1, "name", 1))) __PYX_ERR(1, 82, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_name), (&PyString_Type), 1, "name", 1))) __PYX_ERR(1, 83, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self), __pyx_v_value, __pyx_v_name); /* function exit code */ @@ -5561,6 +5861,12 @@ static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx __pyx_L1_error:; __pyx_r = -1; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5574,48 +5880,48 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 82, 0, __PYX_ERR(1, 82, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 83, 0, __PYX_ERR(1, 83, __pyx_L1_error)); - /* "hunter/_predicates.pyx":83 + /* "hunter/_predicates.pyx":84 * * def __init__(self, object value, str name): * self.value = value # <<<<<<<<<<<<<< * self.getter_index = ALLOWED_KEYS.index(name) * self.getter = Event_getters[self.getter_index] */ - __Pyx_TraceLine(83,0,__PYX_ERR(1, 83, __pyx_L1_error)) + __Pyx_TraceLine(84,0,__PYX_ERR(1, 84, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(__pyx_v_self->value); __Pyx_DECREF(__pyx_v_self->value); __pyx_v_self->value = __pyx_v_value; - /* "hunter/_predicates.pyx":84 + /* "hunter/_predicates.pyx":85 * def __init__(self, object value, str name): * self.value = value * self.getter_index = ALLOWED_KEYS.index(name) # <<<<<<<<<<<<<< * self.getter = Event_getters[self.getter_index] * */ - __Pyx_TraceLine(84,0,__PYX_ERR(1, 84, __pyx_L1_error)) - __pyx_t_1 = __Pyx_CallUnboundCMethod1(&__pyx_umethod_PyTuple_Type_index, __pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_v_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 84, __pyx_L1_error) + __Pyx_TraceLine(85,0,__PYX_ERR(1, 85, __pyx_L1_error)) + __pyx_t_1 = __Pyx_CallUnboundCMethod1(&__pyx_umethod_PyTuple_Type_index, __pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_v_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 84, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_self->getter_index = __pyx_t_2; - /* "hunter/_predicates.pyx":85 + /* "hunter/_predicates.pyx":86 * self.value = value * self.getter_index = ALLOWED_KEYS.index(name) * self.getter = Event_getters[self.getter_index] # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(85,0,__PYX_ERR(1, 85, __pyx_L1_error)) + __Pyx_TraceLine(86,0,__PYX_ERR(1, 86, __pyx_L1_error)) __pyx_v_self->getter = (__pyx_v_6hunter_11_predicates_Event_getters[__pyx_v_self->getter_index]); - /* "hunter/_predicates.pyx":82 + /* "hunter/_predicates.pyx":83 * cdef object value * * def __init__(self, object value, str name): # <<<<<<<<<<<<<< @@ -5636,7 +5942,7 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj return __pyx_r; } -/* "hunter/_predicates.pyx":87 +/* "hunter/_predicates.pyx":88 * self.getter = Event_getters[self.getter_index] * * def __repr__(self): # <<<<<<<<<<<<<< @@ -5647,10 +5953,11 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self)); /* function exit code */ @@ -5667,28 +5974,28 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 87, 0, __PYX_ERR(1, 87, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 88, 0, __PYX_ERR(1, 88, __pyx_L1_error)); - /* "hunter/_predicates.pyx":88 + /* "hunter/_predicates.pyx":89 * * def __repr__(self): * return repr(self.value) # <<<<<<<<<<<<<< * * def __eq__(self, other): */ - __Pyx_TraceLine(88,0,__PYX_ERR(1, 88, __pyx_L1_error)) + __Pyx_TraceLine(89,0,__PYX_ERR(1, 89, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_v_self->value; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = PyObject_Repr(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 88, __pyx_L1_error) + __pyx_t_2 = PyObject_Repr(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":87 + /* "hunter/_predicates.pyx":88 * self.getter = Event_getters[self.getter_index] * * def __repr__(self): # <<<<<<<<<<<<<< @@ -5709,7 +6016,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __ return __pyx_r; } -/* "hunter/_predicates.pyx":90 +/* "hunter/_predicates.pyx":91 * return repr(self.value) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -5720,10 +6027,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -5741,47 +6049,47 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 90, 0, __PYX_ERR(1, 90, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 91, 0, __PYX_ERR(1, 91, __pyx_L1_error)); - /* "hunter/_predicates.pyx":91 + /* "hunter/_predicates.pyx":92 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, QueryEntry) * and self.value == ( other).value */ - __Pyx_TraceLine(91,0,__PYX_ERR(1, 91, __pyx_L1_error)) + __Pyx_TraceLine(92,0,__PYX_ERR(1, 92, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":92 + /* "hunter/_predicates.pyx":93 * def __eq__(self, other): * return ( * isinstance(other, QueryEntry) # <<<<<<<<<<<<<< * and self.value == ( other).value * and self.getter_index == ( other).getter_index */ - __Pyx_TraceLine(92,0,__PYX_ERR(1, 92, __pyx_L1_error)) + __Pyx_TraceLine(93,0,__PYX_ERR(1, 93, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_QueryEntry); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 92, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":93 + /* "hunter/_predicates.pyx":94 * return ( * isinstance(other, QueryEntry) * and self.value == ( other).value # <<<<<<<<<<<<<< * and self.getter_index == ( other).getter_index * ) */ - __Pyx_TraceLine(93,0,__PYX_ERR(1, 93, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->value, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_other)->value, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 93, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 93, __pyx_L1_error) + __Pyx_TraceLine(94,0,__PYX_ERR(1, 94, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->value, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_other)->value, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 94, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 94, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -5791,16 +6099,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":94 + /* "hunter/_predicates.pyx":95 * isinstance(other, QueryEntry) * and self.value == ( other).value * and self.getter_index == ( other).getter_index # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(94,0,__PYX_ERR(1, 94, __pyx_L1_error)) + __Pyx_TraceLine(95,0,__PYX_ERR(1, 95, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->getter_index == ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_other)->getter_index); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 94, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -5809,7 +6117,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":90 + /* "hunter/_predicates.pyx":91 * return repr(self.value) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -5853,12 +6161,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -5877,7 +6193,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_6__reduce_cython__( const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__3) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":2 @@ -5931,18 +6247,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -5954,7 +6278,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -5969,10 +6296,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.QueryEntry.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -5980,6 +6315,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry_8__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5992,7 +6333,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_8__setstate_cython_ const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__4) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 3, 0, __PYX_ERR(0, 3, __pyx_L1_error)); /* "(tree fragment)":4 @@ -6021,7 +6362,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_8__setstate_cython_ return __pyx_r; } -/* "hunter/_predicates.pyx":104 +/* "hunter/_predicates.pyx":106 * See :class:`hunter.event.Event` for fields that can be filtered on. * """ * def __init__(self, **query): # <<<<<<<<<<<<<< @@ -6037,11 +6378,17 @@ struct wrapperbase __pyx_wrapperbase_6hunter_11_predicates_5Query___init__; #endif static int __pyx_pw_6hunter_11_predicates_5Query_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_query = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, __pyx_nargs); return -1;} if (__pyx_kwds && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 1))) return -1; @@ -6102,12 +6449,12 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 104, 0, __PYX_ERR(1, 104, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 106, 0, __PYX_ERR(1, 106, __pyx_L1_error)); /* "hunter/_predicates.pyx":130 - * cdef void* prefix_getter_pointer - * + * ``threadname``. + * """ * query_eq = {} # <<<<<<<<<<<<<< * query_startswith = {} * query_endswith = {} @@ -6119,7 +6466,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __pyx_t_1 = 0; /* "hunter/_predicates.pyx":131 - * + * """ * query_eq = {} * query_startswith = {} # <<<<<<<<<<<<<< * query_endswith = {} @@ -6275,7 +6622,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = NULL; __pyx_t_7 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_9)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); @@ -6285,6 +6633,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __pyx_t_7 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_n_s__5}; __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); @@ -6294,7 +6643,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) { - __pyx_t_8 = __pyx_t_5; __Pyx_INCREF(__pyx_t_8); __pyx_t_10 = 0; + __pyx_t_8 = __pyx_t_5; __Pyx_INCREF(__pyx_t_8); + __pyx_t_10 = 0; __pyx_t_11 = NULL; } else { __pyx_t_10 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 142, __pyx_L7_error) @@ -6305,19 +6655,31 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt for (;;) { if (likely(!__pyx_t_11)) { if (likely(PyList_CheckExact(__pyx_t_8))) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_8)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_8); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 142, __pyx_L7_error) + #endif + if (__pyx_t_10 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_5 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely((0 < 0))) __PYX_ERR(1, 142, __pyx_L7_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_5); #endif } else { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_8)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_8); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 142, __pyx_L7_error) + #endif + if (__pyx_t_10 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely((0 < 0))) __PYX_ERR(1, 142, __pyx_L7_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_5); #endif } @@ -6342,11 +6704,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_7genexpr__pyx_v_p); __pyx_7genexpr__pyx_v_p = 0; - goto __pyx_L11_exit_scope; + goto __pyx_L12_exit_scope; __pyx_L7_error:; __Pyx_XDECREF(__pyx_7genexpr__pyx_v_p); __pyx_7genexpr__pyx_v_p = 0; goto __pyx_L1_error; - __pyx_L11_exit_scope:; + __pyx_L12_exit_scope:; } /* exit inner scope */ __Pyx_XDECREF_SET(__pyx_v_parts, ((PyObject*)__pyx_t_6)); __pyx_t_6 = 0; @@ -6359,7 +6721,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * raise TypeError( */ __Pyx_TraceLine(143,0,__PYX_ERR(1, 143, __pyx_L1_error)) - __pyx_t_10 = PyList_GET_SIZE(__pyx_v_parts); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(1, 143, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyList_GET_SIZE(__pyx_v_parts); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(1, 143, __pyx_L1_error) __pyx_v_count = __pyx_t_10; /* "hunter/_predicates.pyx":144 @@ -6504,11 +6866,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (!__pyx_t_14) { } else { __pyx_t_12 = __pyx_t_14; - goto __pyx_L14_bool_binop_done; + goto __pyx_L15_bool_binop_done; } __pyx_t_14 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_sw, Py_EQ)); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 150, __pyx_L1_error) __pyx_t_12 = __pyx_t_14; - __pyx_L14_bool_binop_done:; + __pyx_L15_bool_binop_done:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_14 = __pyx_t_12; if (__pyx_t_14) { @@ -6537,17 +6899,17 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (!__pyx_t_14) { } else { __pyx_t_12 = __pyx_t_14; - goto __pyx_L18_bool_binop_done; + goto __pyx_L19_bool_binop_done; } __pyx_t_14 = PySet_Check(__pyx_v_value); if (!__pyx_t_14) { } else { __pyx_t_12 = __pyx_t_14; - goto __pyx_L18_bool_binop_done; + goto __pyx_L19_bool_binop_done; } __pyx_t_14 = PyTuple_Check(__pyx_v_value); __pyx_t_12 = __pyx_t_14; - __pyx_L18_bool_binop_done:; + __pyx_L19_bool_binop_done:; __pyx_t_14 = (!__pyx_t_12); if (unlikely(__pyx_t_14)) { @@ -6648,7 +7010,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, basestring): * if not isinstance(value, (list, set, tuple)): */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":156 @@ -6665,11 +7027,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (!__pyx_t_12) { } else { __pyx_t_14 = __pyx_t_12; - goto __pyx_L21_bool_binop_done; + goto __pyx_L22_bool_binop_done; } __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_ew, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 156, __pyx_L1_error) __pyx_t_14 = __pyx_t_12; - __pyx_L21_bool_binop_done:; + __pyx_L22_bool_binop_done:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_12 = __pyx_t_14; if (__pyx_t_12) { @@ -6698,17 +7060,17 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (!__pyx_t_12) { } else { __pyx_t_14 = __pyx_t_12; - goto __pyx_L25_bool_binop_done; + goto __pyx_L26_bool_binop_done; } __pyx_t_12 = PySet_Check(__pyx_v_value); if (!__pyx_t_12) { } else { __pyx_t_14 = __pyx_t_12; - goto __pyx_L25_bool_binop_done; + goto __pyx_L26_bool_binop_done; } __pyx_t_12 = PyTuple_Check(__pyx_v_value); __pyx_t_14 = __pyx_t_12; - __pyx_L25_bool_binop_done:; + __pyx_L26_bool_binop_done:; __pyx_t_12 = (!__pyx_t_14); if (unlikely(__pyx_t_12)) { @@ -6809,7 +7171,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, basestring): * if not isinstance(value, (list, set, tuple)): */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":162 @@ -6841,7 +7203,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_in * elif operator in ('contains', 'has'): */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":164 @@ -6858,11 +7220,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (!__pyx_t_14) { } else { __pyx_t_12 = __pyx_t_14; - goto __pyx_L28_bool_binop_done; + goto __pyx_L29_bool_binop_done; } __pyx_t_14 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_has, Py_EQ)); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 164, __pyx_L1_error) __pyx_t_12 = __pyx_t_14; - __pyx_L28_bool_binop_done:; + __pyx_L29_bool_binop_done:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_14 = __pyx_t_12; if (__pyx_t_14) { @@ -6885,7 +7247,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_contains * elif operator in ('regex', 'rx'): */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":166 @@ -6902,11 +7264,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (!__pyx_t_12) { } else { __pyx_t_14 = __pyx_t_12; - goto __pyx_L30_bool_binop_done; + goto __pyx_L31_bool_binop_done; } __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_rx, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 166, __pyx_L1_error) __pyx_t_14 = __pyx_t_12; - __pyx_L30_bool_binop_done:; + __pyx_L31_bool_binop_done:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_12 = __pyx_t_14; if (__pyx_t_12) { @@ -6923,7 +7285,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; __pyx_t_7 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -6933,6 +7296,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __pyx_t_7 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_value}; __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); @@ -6962,7 +7326,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * value = re_compile(value) * mapping = query_regex */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":169 @@ -6994,7 +7358,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_lt * elif operator == 'lte': */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":171 @@ -7026,7 +7390,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_lte * elif operator == 'gt': */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":173 @@ -7058,7 +7422,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_gt * elif operator == 'gte': */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":175 @@ -7090,7 +7454,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_gte * else: */ - goto __pyx_L13; + goto __pyx_L14; } /* "hunter/_predicates.pyx":178 @@ -7142,7 +7506,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __PYX_ERR(1, 178, __pyx_L1_error) } - __pyx_L13:; + __pyx_L14:; /* "hunter/_predicates.pyx":148 * f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS} with optional operators like: {ALLOWED_OPERATORS}' @@ -7151,7 +7515,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * prefix, operator = parts * if operator in ('startswith', 'sw'): */ - goto __pyx_L12; + goto __pyx_L13; } /* "hunter/_predicates.pyx":180 @@ -7177,7 +7541,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_INCREF(__pyx_v_key); __Pyx_XDECREF_SET(__pyx_v_prefix, __pyx_v_key); } - __pyx_L12:; + __pyx_L13:; /* "hunter/_predicates.pyx":183 * prefix = key @@ -7259,10 +7623,10 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_value); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_value)) __PYX_ERR(1, 186, __pyx_L1_error); __Pyx_INCREF(__pyx_v_prefix); __Pyx_GIVEREF(__pyx_v_prefix); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_prefix); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_prefix)) __PYX_ERR(1, 186, __pyx_L1_error); __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_QueryEntry), __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -7501,7 +7865,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_gt = tuple(sorted(query_gt.items())) * self.query_gte = tuple(sorted(query_gte.items())) # <<<<<<<<<<<<<< * - * + * def __str__(self): */ __Pyx_TraceLine(197,0,__PYX_ERR(1, 197, __pyx_L1_error)) __pyx_t_6 = __Pyx_PyDict_Items(__pyx_v_query_gte); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 197, __pyx_L1_error) @@ -7521,7 +7885,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __pyx_v_self->query_gte = ((PyObject*)__pyx_t_8); __pyx_t_8 = 0; - /* "hunter/_predicates.pyx":104 + /* "hunter/_predicates.pyx":106 * See :class:`hunter.event.Event` for fields that can be filtered on. * """ * def __init__(self, **query): # <<<<<<<<<<<<<< @@ -7563,8 +7927,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt return __pyx_r; } -/* "hunter/_predicates.pyx":200 - * +/* "hunter/_predicates.pyx":199 + * self.query_gte = tuple(sorted(query_gte.items())) * * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( @@ -7574,10 +7938,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_3__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_3__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_2__str__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -7586,7 +7951,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_3__str__(PyObject *__pyx_ } static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_predicates.pyx":203 +/* "hunter/_predicates.pyx":202 * return 'Query(%s)' % ( * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< @@ -7606,7 +7971,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexp if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 203, __pyx_L1_error) + __PYX_ERR(1, 202, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -7617,7 +7982,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexp __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2generator, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2generator, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -7653,7 +8018,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 203, 0, __PYX_ERR(1, 203, __pyx_L1_error)); + __Pyx_TraceCall("genexpr", __pyx_f[1], 202, 0, __PYX_ERR(1, 202, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L8_resume_from_yield; @@ -7663,32 +8028,45 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 203, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 203, __pyx_L1_error) } + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 202, __pyx_L1_error) + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 202, __pyx_L1_error) } if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_genexpr_arg_0)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_genexpr_arg_0)) { - __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; __pyx_t_3 = NULL; } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_genexpr_arg_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_genexpr_arg_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 202, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_3)) { if (likely(PyList_CheckExact(__pyx_t_1))) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 202, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 202, __pyx_L1_error) #else - __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif } else { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 202, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 202, __pyx_L1_error) #else - __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif } @@ -7698,7 +8076,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener PyObject* exc_type = PyErr_Occurred(); if (exc_type) { if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 203, __pyx_L1_error) + else __PYX_ERR(1, 202, __pyx_L1_error) } break; } @@ -7710,7 +8088,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 203, __pyx_L1_error) + __PYX_ERR(1, 202, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -7723,15 +8101,15 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_8 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_7); @@ -7739,7 +8117,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(1, 203, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(1, 202, __pyx_L1_error) __pyx_t_8 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L7_unpacking_done; @@ -7747,7 +8125,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 203, __pyx_L1_error) + __PYX_ERR(1, 202, __pyx_L1_error) __pyx_L7_unpacking_done:; } __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_key); @@ -7758,19 +8136,19 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_value, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_9 = 0; __pyx_t_10 = 127; - __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_key, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_key, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_10 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_10) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_10; __pyx_t_9 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind)) { __Pyx_RaiseClosureNameError("kind"); __PYX_ERR(1, 203, __pyx_L1_error) } - __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 203, __pyx_L1_error) + if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind)) { __Pyx_RaiseClosureNameError("kind"); __PYX_ERR(1, 202, __pyx_L1_error) } + __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_10 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_10) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_10; __pyx_t_9 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); @@ -7781,14 +8159,14 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __pyx_t_9 += 1; __Pyx_GIVEREF(__pyx_kp_u__7); PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_kp_u__7); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_cur_scope->__pyx_v_value), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_cur_scope->__pyx_v_value), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_10 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_10) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_10; __pyx_t_9 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_4, 4, __pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_4, 4, __pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_r = __pyx_t_6; @@ -7810,7 +8188,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_XGOTREF(__pyx_t_1); __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 203, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 202, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); @@ -7838,8 +8216,8 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener return __pyx_r; } -/* "hunter/_predicates.pyx":200 - * +/* "hunter/_predicates.pyx":199 + * self.query_gte = tuple(sorted(query_gte.items())) * * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( @@ -7875,234 +8253,234 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 200, __pyx_L1_error) + __PYX_ERR(1, 199, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } - __Pyx_TraceCall("__str__", __pyx_f[1], 200, 0, __PYX_ERR(1, 200, __pyx_L1_error)); + __Pyx_TraceCall("__str__", __pyx_f[1], 199, 0, __PYX_ERR(1, 199, __pyx_L1_error)); - /* "hunter/_predicates.pyx":201 + /* "hunter/_predicates.pyx":200 * * def __str__(self): * return 'Query(%s)' % ( # <<<<<<<<<<<<<< * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) */ - __Pyx_TraceLine(201,0,__PYX_ERR(1, 201, __pyx_L1_error)) + __Pyx_TraceLine(200,0,__PYX_ERR(1, 200, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":202 + /* "hunter/_predicates.pyx":201 * def __str__(self): * return 'Query(%s)' % ( * ', '.join([ # <<<<<<<<<<<<<< * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ */ - __Pyx_TraceLine(202,0,__PYX_ERR(1, 202, __pyx_L1_error)) + __Pyx_TraceLine(201,0,__PYX_ERR(1, 201, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 202, __pyx_L5_error) + __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 201, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_1); - /* "hunter/_predicates.pyx":205 + /* "hunter/_predicates.pyx":204 * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ * ('', self.query_eq), # <<<<<<<<<<<<<< * ('_in', self.query_in), * ('_contains', self.query_contains), */ - __Pyx_TraceLine(205,0,__PYX_ERR(1, 205, __pyx_L5_error)) - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 205, __pyx_L5_error) + __Pyx_TraceLine(204,0,__PYX_ERR(1, 204, __pyx_L5_error)) + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 204, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_kp_s__9); __Pyx_GIVEREF(__pyx_kp_s__9); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_s__9); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_s__9)) __PYX_ERR(1, 204, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_eq); __Pyx_GIVEREF(__pyx_v_self->query_eq); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq)) __PYX_ERR(1, 204, __pyx_L5_error); - /* "hunter/_predicates.pyx":206 + /* "hunter/_predicates.pyx":205 * for kind, mapping in [ * ('', self.query_eq), * ('_in', self.query_in), # <<<<<<<<<<<<<< * ('_contains', self.query_contains), * ('_startswith', self.query_startswith), */ - __Pyx_TraceLine(206,0,__PYX_ERR(1, 206, __pyx_L5_error)) - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 206, __pyx_L5_error) + __Pyx_TraceLine(205,0,__PYX_ERR(1, 205, __pyx_L5_error)) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 205, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_in_2); __Pyx_GIVEREF(__pyx_n_s_in_2); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_in_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_in_2)) __PYX_ERR(1, 205, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_in); __Pyx_GIVEREF(__pyx_v_self->query_in); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in)) __PYX_ERR(1, 205, __pyx_L5_error); - /* "hunter/_predicates.pyx":207 + /* "hunter/_predicates.pyx":206 * ('', self.query_eq), * ('_in', self.query_in), * ('_contains', self.query_contains), # <<<<<<<<<<<<<< * ('_startswith', self.query_startswith), * ('_endswith', self.query_endswith), */ - __Pyx_TraceLine(207,0,__PYX_ERR(1, 207, __pyx_L5_error)) - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 207, __pyx_L5_error) + __Pyx_TraceLine(206,0,__PYX_ERR(1, 206, __pyx_L5_error)) + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 206, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_n_s_contains_2); __Pyx_GIVEREF(__pyx_n_s_contains_2); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_n_s_contains_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_n_s_contains_2)) __PYX_ERR(1, 206, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_contains); __Pyx_GIVEREF(__pyx_v_self->query_contains); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains)) __PYX_ERR(1, 206, __pyx_L5_error); - /* "hunter/_predicates.pyx":208 + /* "hunter/_predicates.pyx":207 * ('_in', self.query_in), * ('_contains', self.query_contains), * ('_startswith', self.query_startswith), # <<<<<<<<<<<<<< * ('_endswith', self.query_endswith), * ('_regex', self.query_regex), */ - __Pyx_TraceLine(208,0,__PYX_ERR(1, 208, __pyx_L5_error)) - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 208, __pyx_L5_error) + __Pyx_TraceLine(207,0,__PYX_ERR(1, 207, __pyx_L5_error)) + __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 207, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_n_s_startswith_2); __Pyx_GIVEREF(__pyx_n_s_startswith_2); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_n_s_startswith_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_n_s_startswith_2)) __PYX_ERR(1, 207, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_startswith); __Pyx_GIVEREF(__pyx_v_self->query_startswith); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith)) __PYX_ERR(1, 207, __pyx_L5_error); - /* "hunter/_predicates.pyx":209 + /* "hunter/_predicates.pyx":208 * ('_contains', self.query_contains), * ('_startswith', self.query_startswith), * ('_endswith', self.query_endswith), # <<<<<<<<<<<<<< * ('_regex', self.query_regex), * ('_lt', self.query_lt), */ - __Pyx_TraceLine(209,0,__PYX_ERR(1, 209, __pyx_L5_error)) - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 209, __pyx_L5_error) + __Pyx_TraceLine(208,0,__PYX_ERR(1, 208, __pyx_L5_error)) + __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 208, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_INCREF(__pyx_n_s_endswith_2); __Pyx_GIVEREF(__pyx_n_s_endswith_2); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_n_s_endswith_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_n_s_endswith_2)) __PYX_ERR(1, 208, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_endswith); __Pyx_GIVEREF(__pyx_v_self->query_endswith); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith)) __PYX_ERR(1, 208, __pyx_L5_error); - /* "hunter/_predicates.pyx":210 + /* "hunter/_predicates.pyx":209 * ('_startswith', self.query_startswith), * ('_endswith', self.query_endswith), * ('_regex', self.query_regex), # <<<<<<<<<<<<<< * ('_lt', self.query_lt), * ('_lte', self.query_lte), */ - __Pyx_TraceLine(210,0,__PYX_ERR(1, 210, __pyx_L5_error)) - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 210, __pyx_L5_error) + __Pyx_TraceLine(209,0,__PYX_ERR(1, 209, __pyx_L5_error)) + __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 209, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_n_s_regex_2); __Pyx_GIVEREF(__pyx_n_s_regex_2); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_n_s_regex_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_n_s_regex_2)) __PYX_ERR(1, 209, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_regex); __Pyx_GIVEREF(__pyx_v_self->query_regex); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex)) __PYX_ERR(1, 209, __pyx_L5_error); - /* "hunter/_predicates.pyx":211 + /* "hunter/_predicates.pyx":210 * ('_endswith', self.query_endswith), * ('_regex', self.query_regex), * ('_lt', self.query_lt), # <<<<<<<<<<<<<< * ('_lte', self.query_lte), * ('_gt', self.query_gt), */ - __Pyx_TraceLine(211,0,__PYX_ERR(1, 211, __pyx_L5_error)) - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 211, __pyx_L5_error) + __Pyx_TraceLine(210,0,__PYX_ERR(1, 210, __pyx_L5_error)) + __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 210, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_n_s_lt_2); __Pyx_GIVEREF(__pyx_n_s_lt_2); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_lt_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_lt_2)) __PYX_ERR(1, 210, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lt); __Pyx_GIVEREF(__pyx_v_self->query_lt); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt)) __PYX_ERR(1, 210, __pyx_L5_error); - /* "hunter/_predicates.pyx":212 + /* "hunter/_predicates.pyx":211 * ('_regex', self.query_regex), * ('_lt', self.query_lt), * ('_lte', self.query_lte), # <<<<<<<<<<<<<< * ('_gt', self.query_gt), * ('_gte', self.query_gte), */ - __Pyx_TraceLine(212,0,__PYX_ERR(1, 212, __pyx_L5_error)) - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 212, __pyx_L5_error) + __Pyx_TraceLine(211,0,__PYX_ERR(1, 211, __pyx_L5_error)) + __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 211, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_INCREF(__pyx_n_s_lte_2); __Pyx_GIVEREF(__pyx_n_s_lte_2); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_n_s_lte_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_n_s_lte_2)) __PYX_ERR(1, 211, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lte); __Pyx_GIVEREF(__pyx_v_self->query_lte); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte)) __PYX_ERR(1, 211, __pyx_L5_error); - /* "hunter/_predicates.pyx":213 + /* "hunter/_predicates.pyx":212 * ('_lt', self.query_lt), * ('_lte', self.query_lte), * ('_gt', self.query_gt), # <<<<<<<<<<<<<< * ('_gte', self.query_gte), * ] */ - __Pyx_TraceLine(213,0,__PYX_ERR(1, 213, __pyx_L5_error)) - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 213, __pyx_L5_error) + __Pyx_TraceLine(212,0,__PYX_ERR(1, 212, __pyx_L5_error)) + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 212, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_INCREF(__pyx_n_s_gt_2); __Pyx_GIVEREF(__pyx_n_s_gt_2); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_n_s_gt_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_n_s_gt_2)) __PYX_ERR(1, 212, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gt); __Pyx_GIVEREF(__pyx_v_self->query_gt); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt)) __PYX_ERR(1, 212, __pyx_L5_error); - /* "hunter/_predicates.pyx":214 + /* "hunter/_predicates.pyx":213 * ('_lte', self.query_lte), * ('_gt', self.query_gt), * ('_gte', self.query_gte), # <<<<<<<<<<<<<< * ] * if mapping */ - __Pyx_TraceLine(214,0,__PYX_ERR(1, 214, __pyx_L5_error)) - __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 214, __pyx_L5_error) + __Pyx_TraceLine(213,0,__PYX_ERR(1, 213, __pyx_L5_error)) + __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 213, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_INCREF(__pyx_n_s_gte_2); __Pyx_GIVEREF(__pyx_n_s_gte_2); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_n_s_gte_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_n_s_gte_2)) __PYX_ERR(1, 213, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gte); __Pyx_GIVEREF(__pyx_v_self->query_gte); - PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte)) __PYX_ERR(1, 213, __pyx_L5_error); - /* "hunter/_predicates.pyx":204 + /* "hunter/_predicates.pyx":203 * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ # <<<<<<<<<<<<<< * ('', self.query_eq), * ('_in', self.query_in), */ - __Pyx_TraceLine(204,0,__PYX_ERR(1, 204, __pyx_L5_error)) - __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 204, __pyx_L5_error) + __Pyx_TraceLine(203,0,__PYX_ERR(1, 203, __pyx_L5_error)) + __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_9); - PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_10); - PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10)) __PYX_ERR(1, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_11); - PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11)) __PYX_ERR(1, 203, __pyx_L5_error); __pyx_t_2 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; @@ -8113,14 +8491,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; - __pyx_t_11 = __pyx_t_12; __Pyx_INCREF(__pyx_t_11); __pyx_t_13 = 0; + __pyx_t_11 = __pyx_t_12; __Pyx_INCREF(__pyx_t_11); + __pyx_t_13 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; for (;;) { if (__pyx_t_13 >= 10) break; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13); __Pyx_INCREF(__pyx_t_12); __pyx_t_13++; if (unlikely((0 < 0))) __PYX_ERR(1, 204, __pyx_L5_error) + __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13); __Pyx_INCREF(__pyx_t_12); __pyx_t_13++; if (unlikely((0 < 0))) __PYX_ERR(1, 203, __pyx_L5_error) #else - __pyx_t_12 = PySequence_ITEM(__pyx_t_11, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 204, __pyx_L5_error) + __pyx_t_12 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); #endif if (likely(__pyx_t_12 != Py_None)) { @@ -8129,7 +8508,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 204, __pyx_L5_error) + __PYX_ERR(1, 203, __pyx_L5_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); @@ -8137,14 +8516,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj __Pyx_INCREF(__pyx_t_10); __Pyx_INCREF(__pyx_t_9); #else - __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 204, __pyx_L5_error) + __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 204, __pyx_L5_error) + __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); #endif __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } else { - __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 204, __pyx_L5_error) + __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 203, __pyx_L5_error) } __Pyx_XGOTREF(__pyx_cur_scope->__pyx_8genexpr1__pyx_v_kind); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_8genexpr1__pyx_v_kind, __pyx_t_10); @@ -8153,34 +8532,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_mapping, __pyx_t_9); __pyx_t_9 = 0; - /* "hunter/_predicates.pyx":216 + /* "hunter/_predicates.pyx":215 * ('_gte', self.query_gte), * ] * if mapping # <<<<<<<<<<<<<< * ]) * ) */ - __Pyx_TraceLine(216,0,__PYX_ERR(1, 216, __pyx_L5_error)) - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr1__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 216, __pyx_L5_error) + __Pyx_TraceLine(215,0,__PYX_ERR(1, 215, __pyx_L5_error)) + __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr1__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 215, __pyx_L5_error) if (__pyx_t_14) { - /* "hunter/_predicates.pyx":203 + /* "hunter/_predicates.pyx":202 * return 'Query(%s)' % ( * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< * for kind, mapping in [ * ('', self.query_eq), */ - __Pyx_TraceLine(203,0,__PYX_ERR(1, 203, __pyx_L5_error)) - __pyx_t_12 = __pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexpr(((PyObject*)__pyx_cur_scope), __pyx_8genexpr1__pyx_v_mapping); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 203, __pyx_L5_error) + __Pyx_TraceLine(202,0,__PYX_ERR(1, 202, __pyx_L5_error)) + __pyx_t_12 = __pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexpr(((PyObject*)__pyx_cur_scope), __pyx_8genexpr1__pyx_v_mapping); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 202, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); - __pyx_t_9 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 203, __pyx_L5_error) + __pyx_t_9 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 202, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(1, 202, __pyx_L5_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(1, 201, __pyx_L5_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "hunter/_predicates.pyx":216 + /* "hunter/_predicates.pyx":215 * ('_gte', self.query_gte), * ] * if mapping # <<<<<<<<<<<<<< @@ -8189,53 +8568,53 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj */ } - /* "hunter/_predicates.pyx":204 + /* "hunter/_predicates.pyx":203 * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ # <<<<<<<<<<<<<< * ('', self.query_eq), * ('_in', self.query_in), */ - __Pyx_TraceLine(204,0,__PYX_ERR(1, 204, __pyx_L5_error)) + __Pyx_TraceLine(203,0,__PYX_ERR(1, 203, __pyx_L5_error)) } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_mapping); __pyx_8genexpr1__pyx_v_mapping = 0; - goto __pyx_L9_exit_scope; + goto __pyx_L10_exit_scope; __pyx_L5_error:; __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_mapping); __pyx_8genexpr1__pyx_v_mapping = 0; goto __pyx_L1_error; - __pyx_L9_exit_scope:; + __pyx_L10_exit_scope:; } /* exit inner scope */ - /* "hunter/_predicates.pyx":202 + /* "hunter/_predicates.pyx":201 * def __str__(self): * return 'Query(%s)' % ( * ', '.join([ # <<<<<<<<<<<<<< * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ */ - __Pyx_TraceLine(202,0,__PYX_ERR(1, 202, __pyx_L1_error)) - __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 202, __pyx_L1_error) + __Pyx_TraceLine(201,0,__PYX_ERR(1, 201, __pyx_L1_error)) + __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":201 + /* "hunter/_predicates.pyx":200 * * def __str__(self): * return 'Query(%s)' % ( # <<<<<<<<<<<<<< * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) */ - __Pyx_TraceLine(201,0,__PYX_ERR(1, 201, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 201, __pyx_L1_error) + __Pyx_TraceLine(200,0,__PYX_ERR(1, 200, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":200 - * + /* "hunter/_predicates.pyx":199 + * self.query_gte = tuple(sorted(query_gte.items())) * * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( @@ -8268,7 +8647,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj return __pyx_r; } -/* "hunter/_predicates.pyx":220 +/* "hunter/_predicates.pyx":219 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -8279,10 +8658,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_4__repr__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -8313,222 +8693,222 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 220, 0, __PYX_ERR(1, 220, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 219, 0, __PYX_ERR(1, 219, __pyx_L1_error)); - /* "hunter/_predicates.pyx":221 + /* "hunter/_predicates.pyx":220 * * def __repr__(self): * return '' % ' '.join([ # <<<<<<<<<<<<<< * fmt % (mapping,) * for fmt, mapping in [ */ - __Pyx_TraceLine(221,0,__PYX_ERR(1, 221, __pyx_L1_error)) + __Pyx_TraceLine(220,0,__PYX_ERR(1, 220, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); { /* enter inner scope */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 221, __pyx_L5_error) + __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 220, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_1); - /* "hunter/_predicates.pyx":224 + /* "hunter/_predicates.pyx":223 * fmt % (mapping,) * for fmt, mapping in [ * ('query_eq=%r', self.query_eq), # <<<<<<<<<<<<<< * ('query_in=%r', self.query_in), * ('query_contains=%r', self.query_contains), */ - __Pyx_TraceLine(224,0,__PYX_ERR(1, 224, __pyx_L5_error)) - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 224, __pyx_L5_error) + __Pyx_TraceLine(223,0,__PYX_ERR(1, 223, __pyx_L5_error)) + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 223, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_kp_s_query_eq_r); __Pyx_GIVEREF(__pyx_kp_s_query_eq_r); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_s_query_eq_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_s_query_eq_r)) __PYX_ERR(1, 223, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_eq); __Pyx_GIVEREF(__pyx_v_self->query_eq); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq)) __PYX_ERR(1, 223, __pyx_L5_error); - /* "hunter/_predicates.pyx":225 + /* "hunter/_predicates.pyx":224 * for fmt, mapping in [ * ('query_eq=%r', self.query_eq), * ('query_in=%r', self.query_in), # <<<<<<<<<<<<<< * ('query_contains=%r', self.query_contains), * ('query_startswith=%r', self.query_startswith), */ - __Pyx_TraceLine(225,0,__PYX_ERR(1, 225, __pyx_L5_error)) - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 225, __pyx_L5_error) + __Pyx_TraceLine(224,0,__PYX_ERR(1, 224, __pyx_L5_error)) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 224, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_kp_s_query_in_r); __Pyx_GIVEREF(__pyx_kp_s_query_in_r); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_kp_s_query_in_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_kp_s_query_in_r)) __PYX_ERR(1, 224, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_in); __Pyx_GIVEREF(__pyx_v_self->query_in); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in)) __PYX_ERR(1, 224, __pyx_L5_error); - /* "hunter/_predicates.pyx":226 + /* "hunter/_predicates.pyx":225 * ('query_eq=%r', self.query_eq), * ('query_in=%r', self.query_in), * ('query_contains=%r', self.query_contains), # <<<<<<<<<<<<<< * ('query_startswith=%r', self.query_startswith), * ('query_endswith=%r', self.query_endswith), */ - __Pyx_TraceLine(226,0,__PYX_ERR(1, 226, __pyx_L5_error)) - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 226, __pyx_L5_error) + __Pyx_TraceLine(225,0,__PYX_ERR(1, 225, __pyx_L5_error)) + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 225, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_kp_s_query_contains_r); __Pyx_GIVEREF(__pyx_kp_s_query_contains_r); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_kp_s_query_contains_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_kp_s_query_contains_r)) __PYX_ERR(1, 225, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_contains); __Pyx_GIVEREF(__pyx_v_self->query_contains); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains)) __PYX_ERR(1, 225, __pyx_L5_error); - /* "hunter/_predicates.pyx":227 + /* "hunter/_predicates.pyx":226 * ('query_in=%r', self.query_in), * ('query_contains=%r', self.query_contains), * ('query_startswith=%r', self.query_startswith), # <<<<<<<<<<<<<< * ('query_endswith=%r', self.query_endswith), * ('query_regex=%r', self.query_regex), */ - __Pyx_TraceLine(227,0,__PYX_ERR(1, 227, __pyx_L5_error)) - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 227, __pyx_L5_error) + __Pyx_TraceLine(226,0,__PYX_ERR(1, 226, __pyx_L5_error)) + __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 226, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_kp_s_query_startswith_r); __Pyx_GIVEREF(__pyx_kp_s_query_startswith_r); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_kp_s_query_startswith_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_kp_s_query_startswith_r)) __PYX_ERR(1, 226, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_startswith); __Pyx_GIVEREF(__pyx_v_self->query_startswith); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith)) __PYX_ERR(1, 226, __pyx_L5_error); - /* "hunter/_predicates.pyx":228 + /* "hunter/_predicates.pyx":227 * ('query_contains=%r', self.query_contains), * ('query_startswith=%r', self.query_startswith), * ('query_endswith=%r', self.query_endswith), # <<<<<<<<<<<<<< * ('query_regex=%r', self.query_regex), * ('query_lt=%r', self.query_lt), */ - __Pyx_TraceLine(228,0,__PYX_ERR(1, 228, __pyx_L5_error)) - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 228, __pyx_L5_error) + __Pyx_TraceLine(227,0,__PYX_ERR(1, 227, __pyx_L5_error)) + __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 227, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_INCREF(__pyx_kp_s_query_endswith_r); __Pyx_GIVEREF(__pyx_kp_s_query_endswith_r); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_kp_s_query_endswith_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_kp_s_query_endswith_r)) __PYX_ERR(1, 227, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_endswith); __Pyx_GIVEREF(__pyx_v_self->query_endswith); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith)) __PYX_ERR(1, 227, __pyx_L5_error); - /* "hunter/_predicates.pyx":229 + /* "hunter/_predicates.pyx":228 * ('query_startswith=%r', self.query_startswith), * ('query_endswith=%r', self.query_endswith), * ('query_regex=%r', self.query_regex), # <<<<<<<<<<<<<< * ('query_lt=%r', self.query_lt), * ('query_lte=%r', self.query_lte), */ - __Pyx_TraceLine(229,0,__PYX_ERR(1, 229, __pyx_L5_error)) - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 229, __pyx_L5_error) + __Pyx_TraceLine(228,0,__PYX_ERR(1, 228, __pyx_L5_error)) + __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 228, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_kp_s_query_regex_r); __Pyx_GIVEREF(__pyx_kp_s_query_regex_r); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_kp_s_query_regex_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_kp_s_query_regex_r)) __PYX_ERR(1, 228, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_regex); __Pyx_GIVEREF(__pyx_v_self->query_regex); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex)) __PYX_ERR(1, 228, __pyx_L5_error); - /* "hunter/_predicates.pyx":230 + /* "hunter/_predicates.pyx":229 * ('query_endswith=%r', self.query_endswith), * ('query_regex=%r', self.query_regex), * ('query_lt=%r', self.query_lt), # <<<<<<<<<<<<<< * ('query_lte=%r', self.query_lte), * ('query_gt=%r', self.query_gt), */ - __Pyx_TraceLine(230,0,__PYX_ERR(1, 230, __pyx_L5_error)) - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 230, __pyx_L5_error) + __Pyx_TraceLine(229,0,__PYX_ERR(1, 229, __pyx_L5_error)) + __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 229, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_kp_s_query_lt_r); __Pyx_GIVEREF(__pyx_kp_s_query_lt_r); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_s_query_lt_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_s_query_lt_r)) __PYX_ERR(1, 229, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lt); __Pyx_GIVEREF(__pyx_v_self->query_lt); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt)) __PYX_ERR(1, 229, __pyx_L5_error); - /* "hunter/_predicates.pyx":231 + /* "hunter/_predicates.pyx":230 * ('query_regex=%r', self.query_regex), * ('query_lt=%r', self.query_lt), * ('query_lte=%r', self.query_lte), # <<<<<<<<<<<<<< * ('query_gt=%r', self.query_gt), * ('query_gte=%r', self.query_gte), */ - __Pyx_TraceLine(231,0,__PYX_ERR(1, 231, __pyx_L5_error)) - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 231, __pyx_L5_error) + __Pyx_TraceLine(230,0,__PYX_ERR(1, 230, __pyx_L5_error)) + __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 230, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_INCREF(__pyx_kp_s_query_lte_r); __Pyx_GIVEREF(__pyx_kp_s_query_lte_r); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_kp_s_query_lte_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_kp_s_query_lte_r)) __PYX_ERR(1, 230, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lte); __Pyx_GIVEREF(__pyx_v_self->query_lte); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte)) __PYX_ERR(1, 230, __pyx_L5_error); - /* "hunter/_predicates.pyx":232 + /* "hunter/_predicates.pyx":231 * ('query_lt=%r', self.query_lt), * ('query_lte=%r', self.query_lte), * ('query_gt=%r', self.query_gt), # <<<<<<<<<<<<<< * ('query_gte=%r', self.query_gte), * ] */ - __Pyx_TraceLine(232,0,__PYX_ERR(1, 232, __pyx_L5_error)) - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 232, __pyx_L5_error) + __Pyx_TraceLine(231,0,__PYX_ERR(1, 231, __pyx_L5_error)) + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 231, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_INCREF(__pyx_kp_s_query_gt_r); __Pyx_GIVEREF(__pyx_kp_s_query_gt_r); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_kp_s_query_gt_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_kp_s_query_gt_r)) __PYX_ERR(1, 231, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gt); __Pyx_GIVEREF(__pyx_v_self->query_gt); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt)) __PYX_ERR(1, 231, __pyx_L5_error); - /* "hunter/_predicates.pyx":233 + /* "hunter/_predicates.pyx":232 * ('query_lte=%r', self.query_lte), * ('query_gt=%r', self.query_gt), * ('query_gte=%r', self.query_gte), # <<<<<<<<<<<<<< * ] * if mapping */ - __Pyx_TraceLine(233,0,__PYX_ERR(1, 233, __pyx_L5_error)) - __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 233, __pyx_L5_error) + __Pyx_TraceLine(232,0,__PYX_ERR(1, 232, __pyx_L5_error)) + __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 232, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_INCREF(__pyx_kp_s_query_gte_r); __Pyx_GIVEREF(__pyx_kp_s_query_gte_r); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_kp_s_query_gte_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_kp_s_query_gte_r)) __PYX_ERR(1, 232, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gte); __Pyx_GIVEREF(__pyx_v_self->query_gte); - PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte)) __PYX_ERR(1, 232, __pyx_L5_error); - /* "hunter/_predicates.pyx":223 + /* "hunter/_predicates.pyx":222 * return '' % ' '.join([ * fmt % (mapping,) * for fmt, mapping in [ # <<<<<<<<<<<<<< * ('query_eq=%r', self.query_eq), * ('query_in=%r', self.query_in), */ - __Pyx_TraceLine(223,0,__PYX_ERR(1, 223, __pyx_L5_error)) - __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 223, __pyx_L5_error) + __Pyx_TraceLine(222,0,__PYX_ERR(1, 222, __pyx_L5_error)) + __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_9); - PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_10); - PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10)) __PYX_ERR(1, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_11); - PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11)) __PYX_ERR(1, 222, __pyx_L5_error); __pyx_t_2 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; @@ -8539,14 +8919,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; - __pyx_t_11 = __pyx_t_12; __Pyx_INCREF(__pyx_t_11); __pyx_t_13 = 0; + __pyx_t_11 = __pyx_t_12; __Pyx_INCREF(__pyx_t_11); + __pyx_t_13 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; for (;;) { if (__pyx_t_13 >= 10) break; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13); __Pyx_INCREF(__pyx_t_12); __pyx_t_13++; if (unlikely((0 < 0))) __PYX_ERR(1, 223, __pyx_L5_error) + __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13); __Pyx_INCREF(__pyx_t_12); __pyx_t_13++; if (unlikely((0 < 0))) __PYX_ERR(1, 222, __pyx_L5_error) #else - __pyx_t_12 = PySequence_ITEM(__pyx_t_11, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 223, __pyx_L5_error) + __pyx_t_12 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); #endif if (likely(__pyx_t_12 != Py_None)) { @@ -8555,7 +8936,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 223, __pyx_L5_error) + __PYX_ERR(1, 222, __pyx_L5_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); @@ -8563,51 +8944,51 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob __Pyx_INCREF(__pyx_t_10); __Pyx_INCREF(__pyx_t_9); #else - __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 223, __pyx_L5_error) + __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 223, __pyx_L5_error) + __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); #endif __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } else { - __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 223, __pyx_L5_error) + __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 222, __pyx_L5_error) } __Pyx_XDECREF_SET(__pyx_8genexpr3__pyx_v_fmt, __pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF_SET(__pyx_8genexpr3__pyx_v_mapping, __pyx_t_9); __pyx_t_9 = 0; - /* "hunter/_predicates.pyx":235 + /* "hunter/_predicates.pyx":234 * ('query_gte=%r', self.query_gte), * ] * if mapping # <<<<<<<<<<<<<< * ]) * */ - __Pyx_TraceLine(235,0,__PYX_ERR(1, 235, __pyx_L5_error)) - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr3__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 235, __pyx_L5_error) + __Pyx_TraceLine(234,0,__PYX_ERR(1, 234, __pyx_L5_error)) + __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr3__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 234, __pyx_L5_error) if (__pyx_t_14) { - /* "hunter/_predicates.pyx":222 + /* "hunter/_predicates.pyx":221 * def __repr__(self): * return '' % ' '.join([ * fmt % (mapping,) # <<<<<<<<<<<<<< * for fmt, mapping in [ * ('query_eq=%r', self.query_eq), */ - __Pyx_TraceLine(222,0,__PYX_ERR(1, 222, __pyx_L5_error)) - __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 222, __pyx_L5_error) + __Pyx_TraceLine(221,0,__PYX_ERR(1, 221, __pyx_L5_error)) + __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 221, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_INCREF(__pyx_8genexpr3__pyx_v_mapping); __Pyx_GIVEREF(__pyx_8genexpr3__pyx_v_mapping); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_8genexpr3__pyx_v_mapping); - __pyx_t_9 = PyNumber_Remainder(__pyx_8genexpr3__pyx_v_fmt, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 222, __pyx_L5_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_8genexpr3__pyx_v_mapping)) __PYX_ERR(1, 221, __pyx_L5_error); + __pyx_t_9 = PyNumber_Remainder(__pyx_8genexpr3__pyx_v_fmt, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 221, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(1, 221, __pyx_L5_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(1, 220, __pyx_L5_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "hunter/_predicates.pyx":235 + /* "hunter/_predicates.pyx":234 * ('query_gte=%r', self.query_gte), * ] * if mapping # <<<<<<<<<<<<<< @@ -8616,45 +8997,45 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob */ } - /* "hunter/_predicates.pyx":223 + /* "hunter/_predicates.pyx":222 * return '' % ' '.join([ * fmt % (mapping,) * for fmt, mapping in [ # <<<<<<<<<<<<<< * ('query_eq=%r', self.query_eq), * ('query_in=%r', self.query_in), */ - __Pyx_TraceLine(223,0,__PYX_ERR(1, 223, __pyx_L5_error)) + __Pyx_TraceLine(222,0,__PYX_ERR(1, 222, __pyx_L5_error)) } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_fmt); __pyx_8genexpr3__pyx_v_fmt = 0; __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_mapping); __pyx_8genexpr3__pyx_v_mapping = 0; - goto __pyx_L9_exit_scope; + goto __pyx_L10_exit_scope; __pyx_L5_error:; __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_fmt); __pyx_8genexpr3__pyx_v_fmt = 0; __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_mapping); __pyx_8genexpr3__pyx_v_mapping = 0; goto __pyx_L1_error; - __pyx_L9_exit_scope:; + __pyx_L10_exit_scope:; } /* exit inner scope */ - /* "hunter/_predicates.pyx":221 + /* "hunter/_predicates.pyx":220 * * def __repr__(self): * return '' % ' '.join([ # <<<<<<<<<<<<<< * fmt % (mapping,) * for fmt, mapping in [ */ - __Pyx_TraceLine(221,0,__PYX_ERR(1, 221, __pyx_L1_error)) - __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 221, __pyx_L1_error) + __Pyx_TraceLine(220,0,__PYX_ERR(1, 220, __pyx_L1_error)) + __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_hunter_predicates_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 221, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_hunter_predicates_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":220 + /* "hunter/_predicates.pyx":219 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -8687,7 +9068,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob return __pyx_r; } -/* "hunter/_predicates.pyx":238 +/* "hunter/_predicates.pyx":237 * ]) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -8698,10 +9079,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_6__eq__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -8719,47 +9101,47 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 238, 0, __PYX_ERR(1, 238, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 237, 0, __PYX_ERR(1, 237, __pyx_L1_error)); - /* "hunter/_predicates.pyx":239 + /* "hunter/_predicates.pyx":238 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, Query) * and self.query_eq == ( other).query_eq */ - __Pyx_TraceLine(239,0,__PYX_ERR(1, 239, __pyx_L1_error)) + __Pyx_TraceLine(238,0,__PYX_ERR(1, 238, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":240 + /* "hunter/_predicates.pyx":239 * def __eq__(self, other): * return ( * isinstance(other, Query) # <<<<<<<<<<<<<< * and self.query_eq == ( other).query_eq * and self.query_startswith == ( other).query_startswith */ - __Pyx_TraceLine(240,0,__PYX_ERR(1, 240, __pyx_L1_error)) + __Pyx_TraceLine(239,0,__PYX_ERR(1, 239, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Query); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 240, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":241 + /* "hunter/_predicates.pyx":240 * return ( * isinstance(other, Query) * and self.query_eq == ( other).query_eq # <<<<<<<<<<<<<< * and self.query_startswith == ( other).query_startswith * and self.query_endswith == ( other).query_endswith */ - __Pyx_TraceLine(241,0,__PYX_ERR(1, 241, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_eq, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_eq, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 241, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 241, __pyx_L1_error) + __Pyx_TraceLine(240,0,__PYX_ERR(1, 240, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_eq, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_eq, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 240, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 240, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8769,16 +9151,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":242 + /* "hunter/_predicates.pyx":241 * isinstance(other, Query) * and self.query_eq == ( other).query_eq * and self.query_startswith == ( other).query_startswith # <<<<<<<<<<<<<< * and self.query_endswith == ( other).query_endswith * and self.query_in == ( other).query_in */ - __Pyx_TraceLine(242,0,__PYX_ERR(1, 242, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_startswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_startswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 242, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 242, __pyx_L1_error) + __Pyx_TraceLine(241,0,__PYX_ERR(1, 241, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_startswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_startswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 241, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 241, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8788,16 +9170,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":243 + /* "hunter/_predicates.pyx":242 * and self.query_eq == ( other).query_eq * and self.query_startswith == ( other).query_startswith * and self.query_endswith == ( other).query_endswith # <<<<<<<<<<<<<< * and self.query_in == ( other).query_in * and self.query_contains == ( other).query_contains */ - __Pyx_TraceLine(243,0,__PYX_ERR(1, 243, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_endswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_endswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 243, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 243, __pyx_L1_error) + __Pyx_TraceLine(242,0,__PYX_ERR(1, 242, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_endswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_endswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 242, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 242, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8807,16 +9189,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":244 + /* "hunter/_predicates.pyx":243 * and self.query_startswith == ( other).query_startswith * and self.query_endswith == ( other).query_endswith * and self.query_in == ( other).query_in # <<<<<<<<<<<<<< * and self.query_contains == ( other).query_contains * and self.query_regex == ( other).query_regex */ - __Pyx_TraceLine(244,0,__PYX_ERR(1, 244, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_in, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_in, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 244, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 244, __pyx_L1_error) + __Pyx_TraceLine(243,0,__PYX_ERR(1, 243, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_in, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_in, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 243, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 243, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8826,16 +9208,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":245 + /* "hunter/_predicates.pyx":244 * and self.query_endswith == ( other).query_endswith * and self.query_in == ( other).query_in * and self.query_contains == ( other).query_contains # <<<<<<<<<<<<<< * and self.query_regex == ( other).query_regex * and self.query_lt == ( other).query_lt */ - __Pyx_TraceLine(245,0,__PYX_ERR(1, 245, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_contains, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_contains, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 245, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 245, __pyx_L1_error) + __Pyx_TraceLine(244,0,__PYX_ERR(1, 244, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_contains, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_contains, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 244, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 244, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8845,16 +9227,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":246 + /* "hunter/_predicates.pyx":245 * and self.query_in == ( other).query_in * and self.query_contains == ( other).query_contains * and self.query_regex == ( other).query_regex # <<<<<<<<<<<<<< * and self.query_lt == ( other).query_lt * and self.query_lte == ( other).query_lte */ - __Pyx_TraceLine(246,0,__PYX_ERR(1, 246, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_regex, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_regex, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 246, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 246, __pyx_L1_error) + __Pyx_TraceLine(245,0,__PYX_ERR(1, 245, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_regex, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_regex, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 245, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 245, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8864,16 +9246,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":247 + /* "hunter/_predicates.pyx":246 * and self.query_contains == ( other).query_contains * and self.query_regex == ( other).query_regex * and self.query_lt == ( other).query_lt # <<<<<<<<<<<<<< * and self.query_lte == ( other).query_lte * and self.query_gt == ( other).query_gt */ - __Pyx_TraceLine(247,0,__PYX_ERR(1, 247, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 247, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 247, __pyx_L1_error) + __Pyx_TraceLine(246,0,__PYX_ERR(1, 246, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 246, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 246, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8883,16 +9265,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":248 + /* "hunter/_predicates.pyx":247 * and self.query_regex == ( other).query_regex * and self.query_lt == ( other).query_lt * and self.query_lte == ( other).query_lte # <<<<<<<<<<<<<< * and self.query_gt == ( other).query_gt * and self.query_gte == ( other).query_gte */ - __Pyx_TraceLine(248,0,__PYX_ERR(1, 248, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 248, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 248, __pyx_L1_error) + __Pyx_TraceLine(247,0,__PYX_ERR(1, 247, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 247, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 247, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8902,16 +9284,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":249 + /* "hunter/_predicates.pyx":248 * and self.query_lt == ( other).query_lt * and self.query_lte == ( other).query_lte * and self.query_gt == ( other).query_gt # <<<<<<<<<<<<<< * and self.query_gte == ( other).query_gte * ) */ - __Pyx_TraceLine(249,0,__PYX_ERR(1, 249, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 249, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 249, __pyx_L1_error) + __Pyx_TraceLine(248,0,__PYX_ERR(1, 248, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 248, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 248, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -8921,15 +9303,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":250 + /* "hunter/_predicates.pyx":249 * and self.query_lte == ( other).query_lte * and self.query_gt == ( other).query_gt * and self.query_gte == ( other).query_gte # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(250,0,__PYX_ERR(1, 250, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 250, __pyx_L1_error) + __Pyx_TraceLine(249,0,__PYX_ERR(1, 249, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 249, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -8938,7 +9320,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":238 + /* "hunter/_predicates.pyx":237 * ]) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -8959,7 +9341,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":253 +/* "hunter/_predicates.pyx":252 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -8971,17 +9353,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -8993,13 +9381,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 253, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 252, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 253, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 252, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -9008,15 +9399,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 253, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 252, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Query.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 253, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 252, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_8__call__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self), __pyx_v_event); /* function exit code */ @@ -9024,6 +9423,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9036,25 +9441,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 253, 0, __PYX_ERR(1, 253, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 252, 0, __PYX_ERR(1, 252, __pyx_L1_error)); - /* "hunter/_predicates.pyx":254 + /* "hunter/_predicates.pyx":253 * * def __call__(self, Event event): * return fast_Query_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): */ - __Pyx_TraceLine(254,0,__PYX_ERR(1, 254, __pyx_L1_error)) + __Pyx_TraceLine(253,0,__PYX_ERR(1, 253, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Query_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 254, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Query_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":253 + /* "hunter/_predicates.pyx":252 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -9074,7 +9479,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_ob return __pyx_r; } -/* "hunter/_predicates.pyx":256 +/* "hunter/_predicates.pyx":255 * return fast_Query_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -9085,10 +9490,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_ob /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -9105,34 +9511,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 256, 0, __PYX_ERR(1, 256, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 255, 0, __PYX_ERR(1, 255, __pyx_L1_error)); - /* "hunter/_predicates.pyx":257 + /* "hunter/_predicates.pyx":256 * * def __or__(self, other): * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(257,0,__PYX_ERR(1, 257, __pyx_L1_error)) + __Pyx_TraceLine(256,0,__PYX_ERR(1, 256, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 257, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 256, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 257, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 256, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":256 + /* "hunter/_predicates.pyx":255 * return fast_Query_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -9153,7 +9559,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_ return __pyx_r; } -/* "hunter/_predicates.pyx":259 +/* "hunter/_predicates.pyx":258 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -9164,10 +9570,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -9184,34 +9591,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 259, 0, __PYX_ERR(1, 259, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 258, 0, __PYX_ERR(1, 258, __pyx_L1_error)); - /* "hunter/_predicates.pyx":260 + /* "hunter/_predicates.pyx":259 * * def __and__(self, other): * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(260,0,__PYX_ERR(1, 260, __pyx_L1_error)) + __Pyx_TraceLine(259,0,__PYX_ERR(1, 259, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 260, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 259, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 260, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 259, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":259 + /* "hunter/_predicates.pyx":258 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -9232,7 +9639,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx return __pyx_r; } -/* "hunter/_predicates.pyx":262 +/* "hunter/_predicates.pyx":261 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -9243,10 +9650,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_14__invert__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9262,25 +9670,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14__invert__(struct __pyx int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 262, 0, __PYX_ERR(1, 262, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 261, 0, __PYX_ERR(1, 261, __pyx_L1_error)); - /* "hunter/_predicates.pyx":263 + /* "hunter/_predicates.pyx":262 * * def __invert__(self): * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_Query_call(Query self, Event event): */ - __Pyx_TraceLine(263,0,__PYX_ERR(1, 263, __pyx_L1_error)) + __Pyx_TraceLine(262,0,__PYX_ERR(1, 262, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 263, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":262 + /* "hunter/_predicates.pyx":261 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -9311,10 +9719,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14__invert__(struct __pyx /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_contains_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_contains_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_14query_contains___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9329,7 +9738,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_contains___get__( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 10, 0, __PYX_ERR(2, 10, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_contains); @@ -9358,10 +9767,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_contains___get__( /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_endswith_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_endswith_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_14query_endswith___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9376,7 +9786,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_endswith___get__( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 11, 0, __PYX_ERR(2, 11, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_endswith); @@ -9405,10 +9815,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_endswith___get__( /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_eq_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_eq_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_8query_eq___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9423,7 +9834,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_eq___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 12, 0, __PYX_ERR(2, 12, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_eq); @@ -9452,10 +9863,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_eq___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_gt_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_gt_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_8query_gt___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9470,7 +9882,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_gt___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 13, 0, __PYX_ERR(2, 13, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_gt); @@ -9499,10 +9911,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_gt___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_gte_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_gte_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_9query_gte___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9517,7 +9930,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_gte___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 14, 0, __PYX_ERR(2, 14, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_gte); @@ -9546,10 +9959,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_gte___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_in_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_in_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_8query_in___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9564,7 +9978,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_in___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 15, 0, __PYX_ERR(2, 15, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_in); @@ -9593,10 +10007,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_in___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_lt_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_lt_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_8query_lt___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9611,7 +10026,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_lt___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 16, 0, __PYX_ERR(2, 16, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_lt); @@ -9640,10 +10055,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_lt___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_lte_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_lte_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_9query_lte___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9658,7 +10074,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_lte___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 17, 0, __PYX_ERR(2, 17, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_lte); @@ -9687,10 +10103,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_lte___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11query_regex_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11query_regex_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_11query_regex___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9705,7 +10122,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_11query_regex___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 18, 0, __PYX_ERR(2, 18, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_regex); @@ -9728,16 +10145,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_11query_regex___get__(str * readonly tuple query_regex * readonly tuple query_startswith # <<<<<<<<<<<<<< * - * @cython.final + * */ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_16query_startswith___get__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -9752,7 +10170,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16query_startswith___get_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_TraceCall("__get__", __pyx_f[2], 19, 0, __PYX_ERR(2, 19, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_startswith); @@ -9793,12 +10211,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -9825,7 +10251,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__11) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -9840,34 +10266,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->query_contains); __Pyx_GIVEREF(__pyx_v_self->query_contains); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->query_contains); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->query_contains)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_endswith); __Pyx_GIVEREF(__pyx_v_self->query_endswith); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->query_endswith); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->query_endswith)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_eq); __Pyx_GIVEREF(__pyx_v_self->query_eq); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_self->query_eq); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_self->query_eq)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_gt); __Pyx_GIVEREF(__pyx_v_self->query_gt); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_self->query_gt); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_self->query_gt)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_gte); __Pyx_GIVEREF(__pyx_v_self->query_gte); - PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_v_self->query_gte); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_v_self->query_gte)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_in); __Pyx_GIVEREF(__pyx_v_self->query_in); - PyTuple_SET_ITEM(__pyx_t_1, 5, __pyx_v_self->query_in); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 5, __pyx_v_self->query_in)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_lt); __Pyx_GIVEREF(__pyx_v_self->query_lt); - PyTuple_SET_ITEM(__pyx_t_1, 6, __pyx_v_self->query_lt); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 6, __pyx_v_self->query_lt)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_lte); __Pyx_GIVEREF(__pyx_v_self->query_lte); - PyTuple_SET_ITEM(__pyx_t_1, 7, __pyx_v_self->query_lte); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 7, __pyx_v_self->query_lte)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_regex); __Pyx_GIVEREF(__pyx_v_self->query_regex); - PyTuple_SET_ITEM(__pyx_t_1, 8, __pyx_v_self->query_regex); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 8, __pyx_v_self->query_regex)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_startswith); __Pyx_GIVEREF(__pyx_v_self->query_startswith); - PyTuple_SET_ITEM(__pyx_t_1, 9, __pyx_v_self->query_startswith); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 9, __pyx_v_self->query_startswith)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -9907,7 +10333,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -10029,22 +10455,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_89143876); __Pyx_GIVEREF(__pyx_int_89143876); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_89143876); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_89143876)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_5; @@ -10076,19 +10502,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_89143876); __Pyx_GIVEREF(__pyx_int_89143876); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_89143876); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_89143876)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; @@ -10143,18 +10569,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -10166,7 +10600,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -10181,10 +10618,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Query.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -10192,6 +10637,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10205,7 +10656,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(str const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__12) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -10240,7 +10691,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(str return __pyx_r; } -/* "hunter/_predicates.pyx":265 +/* "hunter/_predicates.pyx":264 * return Not(self) * * cdef inline fast_Query_call(Query self, Event event): # <<<<<<<<<<<<<< @@ -10268,28 +10719,35 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Query_call", 0); - __Pyx_TraceCall("fast_Query_call", __pyx_f[1], 265, 0, __PYX_ERR(1, 265, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_Query_call", 1); + __Pyx_TraceCall("fast_Query_call", __pyx_f[1], 264, 0, __PYX_ERR(1, 264, __pyx_L1_error)); - /* "hunter/_predicates.pyx":266 + /* "hunter/_predicates.pyx":265 * * cdef inline fast_Query_call(Query self, Event event): * for key, entry in self.query_eq: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: */ - __Pyx_TraceLine(266,0,__PYX_ERR(1, 266, __pyx_L1_error)) + __Pyx_TraceLine(265,0,__PYX_ERR(1, 265, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_eq == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 266, __pyx_L1_error) + __PYX_ERR(1, 265, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_eq; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_eq; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 265, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 266, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 265, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 266, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -10298,7 +10756,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 266, __pyx_L1_error) + __PYX_ERR(1, 265, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -10311,15 +10769,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 266, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 266, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 266, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); @@ -10327,7 +10785,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L5_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 266, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 265, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L6_unpacking_done; @@ -10335,7 +10793,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 266, __pyx_L1_error) + __PYX_ERR(1, 265, __pyx_L1_error) __pyx_L6_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); @@ -10343,47 +10801,47 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_predicates.pyx":267 + /* "hunter/_predicates.pyx":266 * cdef inline fast_Query_call(Query self, Event event): * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if value_from_event != ( entry).value: * return False */ - __Pyx_TraceLine(267,0,__PYX_ERR(1, 267, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 267, __pyx_L1_error) + __Pyx_TraceLine(266,0,__PYX_ERR(1, 266, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":268 + /* "hunter/_predicates.pyx":267 * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_in: */ - __Pyx_TraceLine(268,0,__PYX_ERR(1, 268, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 268, __pyx_L1_error) - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 268, __pyx_L1_error) + __Pyx_TraceLine(267,0,__PYX_ERR(1, 267, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 267, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 267, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_8) { - /* "hunter/_predicates.pyx":269 + /* "hunter/_predicates.pyx":268 * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: * return False # <<<<<<<<<<<<<< * for key, entry in self.query_in: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(269,0,__PYX_ERR(1, 269, __pyx_L1_error)) + __Pyx_TraceLine(268,0,__PYX_ERR(1, 268, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":268 + /* "hunter/_predicates.pyx":267 * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: # <<<<<<<<<<<<<< @@ -10392,36 +10850,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":266 + /* "hunter/_predicates.pyx":265 * * cdef inline fast_Query_call(Query self, Event event): * for key, entry in self.query_eq: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: */ - __Pyx_TraceLine(266,0,__PYX_ERR(1, 266, __pyx_L1_error)) + __Pyx_TraceLine(265,0,__PYX_ERR(1, 265, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":270 + /* "hunter/_predicates.pyx":269 * if value_from_event != ( entry).value: * return False * for key, entry in self.query_in: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: */ - __Pyx_TraceLine(270,0,__PYX_ERR(1, 270, __pyx_L1_error)) + __Pyx_TraceLine(269,0,__PYX_ERR(1, 269, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_in == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 270, __pyx_L1_error) + __PYX_ERR(1, 269, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_in; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_in; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 269, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 270, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 269, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 270, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -10430,7 +10895,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 270, __pyx_L1_error) + __PYX_ERR(1, 269, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -10443,78 +10908,78 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 270, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 270, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 270, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L10_unpacking_failed; + index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L10_unpacking_failed; + index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 270, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 269, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L11_unpacking_done; - __pyx_L10_unpacking_failed:; + goto __pyx_L12_unpacking_done; + __pyx_L11_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 270, __pyx_L1_error) - __pyx_L11_unpacking_done:; + __PYX_ERR(1, 269, __pyx_L1_error) + __pyx_L12_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":271 + /* "hunter/_predicates.pyx":270 * return False * for key, entry in self.query_in: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if (value_from_event) not in ( entry).value: * return False */ - __Pyx_TraceLine(271,0,__PYX_ERR(1, 271, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 271, __pyx_L1_error) + __Pyx_TraceLine(270,0,__PYX_ERR(1, 270, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":272 + /* "hunter/_predicates.pyx":271 * for key, entry in self.query_in: * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_contains: */ - __Pyx_TraceLine(272,0,__PYX_ERR(1, 272, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 272, __pyx_L1_error) - __pyx_t_8 = (__Pyx_PySequence_ContainsTF(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 272, __pyx_L1_error) + __Pyx_TraceLine(271,0,__PYX_ERR(1, 271, __pyx_L1_error)) + if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 271, __pyx_L1_error) + __pyx_t_8 = (__Pyx_PySequence_ContainsTF(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 271, __pyx_L1_error) if (__pyx_t_8) { - /* "hunter/_predicates.pyx":273 + /* "hunter/_predicates.pyx":272 * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: * return False # <<<<<<<<<<<<<< * for key, entry in self.query_contains: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(273,0,__PYX_ERR(1, 273, __pyx_L1_error)) + __Pyx_TraceLine(272,0,__PYX_ERR(1, 272, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":272 + /* "hunter/_predicates.pyx":271 * for key, entry in self.query_in: * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: # <<<<<<<<<<<<<< @@ -10523,36 +10988,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":270 + /* "hunter/_predicates.pyx":269 * if value_from_event != ( entry).value: * return False * for key, entry in self.query_in: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: */ - __Pyx_TraceLine(270,0,__PYX_ERR(1, 270, __pyx_L1_error)) + __Pyx_TraceLine(269,0,__PYX_ERR(1, 269, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":274 + /* "hunter/_predicates.pyx":273 * if (value_from_event) not in ( entry).value: * return False * for key, entry in self.query_contains: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): */ - __Pyx_TraceLine(274,0,__PYX_ERR(1, 274, __pyx_L1_error)) + __Pyx_TraceLine(273,0,__PYX_ERR(1, 273, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_contains == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 274, __pyx_L1_error) + __PYX_ERR(1, 273, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_contains; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_contains; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 273, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 274, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 273, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 274, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -10561,7 +11033,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 274, __pyx_L1_error) + __PYX_ERR(1, 273, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -10574,78 +11046,78 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 274, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 274, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 274, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L15_unpacking_failed; + index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L15_unpacking_failed; + index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 274, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 273, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L16_unpacking_done; - __pyx_L15_unpacking_failed:; + goto __pyx_L18_unpacking_done; + __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 274, __pyx_L1_error) - __pyx_L16_unpacking_done:; + __PYX_ERR(1, 273, __pyx_L1_error) + __pyx_L18_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_predicates.pyx":275 + /* "hunter/_predicates.pyx":274 * return False * for key, entry in self.query_contains: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if ( entry).value not in (value_from_event): * return False */ - __Pyx_TraceLine(275,0,__PYX_ERR(1, 275, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 275, __pyx_L1_error) + __Pyx_TraceLine(274,0,__PYX_ERR(1, 274, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":276 + /* "hunter/_predicates.pyx":275 * for key, entry in self.query_contains: * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_startswith: */ - __Pyx_TraceLine(276,0,__PYX_ERR(1, 276, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 276, __pyx_L1_error) - __pyx_t_8 = (__Pyx_PySequence_ContainsTF(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, __pyx_v_value_from_event, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 276, __pyx_L1_error) + __Pyx_TraceLine(275,0,__PYX_ERR(1, 275, __pyx_L1_error)) + if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 275, __pyx_L1_error) + __pyx_t_8 = (__Pyx_PySequence_ContainsTF(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, __pyx_v_value_from_event, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 275, __pyx_L1_error) if (__pyx_t_8) { - /* "hunter/_predicates.pyx":277 + /* "hunter/_predicates.pyx":276 * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): * return False # <<<<<<<<<<<<<< * for key, entry in self.query_startswith: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(277,0,__PYX_ERR(1, 277, __pyx_L1_error)) + __Pyx_TraceLine(276,0,__PYX_ERR(1, 276, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":276 + /* "hunter/_predicates.pyx":275 * for key, entry in self.query_contains: * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): # <<<<<<<<<<<<<< @@ -10654,36 +11126,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":274 + /* "hunter/_predicates.pyx":273 * if (value_from_event) not in ( entry).value: * return False * for key, entry in self.query_contains: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): */ - __Pyx_TraceLine(274,0,__PYX_ERR(1, 274, __pyx_L1_error)) + __Pyx_TraceLine(273,0,__PYX_ERR(1, 273, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":278 + /* "hunter/_predicates.pyx":277 * if ( entry).value not in (value_from_event): * return False * for key, entry in self.query_startswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): */ - __Pyx_TraceLine(278,0,__PYX_ERR(1, 278, __pyx_L1_error)) + __Pyx_TraceLine(277,0,__PYX_ERR(1, 277, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_startswith == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 278, __pyx_L1_error) + __PYX_ERR(1, 277, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_startswith; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_startswith; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 277, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 278, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 277, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 278, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -10692,7 +11171,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 278, __pyx_L1_error) + __PYX_ERR(1, 277, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -10705,83 +11184,83 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 278, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 278, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 278, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L20_unpacking_failed; + index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L23_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L20_unpacking_failed; + index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L23_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 278, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 277, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L21_unpacking_done; - __pyx_L20_unpacking_failed:; + goto __pyx_L24_unpacking_done; + __pyx_L23_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 278, __pyx_L1_error) - __pyx_L21_unpacking_done:; + __PYX_ERR(1, 277, __pyx_L1_error) + __pyx_L24_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":279 + /* "hunter/_predicates.pyx":278 * return False * for key, entry in self.query_startswith: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not (value_from_event).startswith(( entry).value): * return False */ - __Pyx_TraceLine(279,0,__PYX_ERR(1, 279, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 279, __pyx_L1_error) + __Pyx_TraceLine(278,0,__PYX_ERR(1, 278, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":280 + /* "hunter/_predicates.pyx":279 * for key, entry in self.query_startswith: * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_endswith: */ - __Pyx_TraceLine(280,0,__PYX_ERR(1, 280, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 280, __pyx_L1_error) + __Pyx_TraceLine(279,0,__PYX_ERR(1, 279, __pyx_L1_error)) + if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 279, __pyx_L1_error) if (unlikely(__pyx_v_value_from_event == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "startswith"); - __PYX_ERR(1, 280, __pyx_L1_error) + __PYX_ERR(1, 279, __pyx_L1_error) } - __pyx_t_8 = __Pyx_PyStr_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, -1); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(1, 280, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyStr_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, -1); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(1, 279, __pyx_L1_error) __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { - /* "hunter/_predicates.pyx":281 + /* "hunter/_predicates.pyx":280 * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): * return False # <<<<<<<<<<<<<< * for key, entry in self.query_endswith: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(281,0,__PYX_ERR(1, 281, __pyx_L1_error)) + __Pyx_TraceLine(280,0,__PYX_ERR(1, 280, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":280 + /* "hunter/_predicates.pyx":279 * for key, entry in self.query_startswith: * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): # <<<<<<<<<<<<<< @@ -10790,36 +11269,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":278 + /* "hunter/_predicates.pyx":277 * if ( entry).value not in (value_from_event): * return False * for key, entry in self.query_startswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): */ - __Pyx_TraceLine(278,0,__PYX_ERR(1, 278, __pyx_L1_error)) + __Pyx_TraceLine(277,0,__PYX_ERR(1, 277, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":282 + /* "hunter/_predicates.pyx":281 * if not (value_from_event).startswith(( entry).value): * return False * for key, entry in self.query_endswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): */ - __Pyx_TraceLine(282,0,__PYX_ERR(1, 282, __pyx_L1_error)) + __Pyx_TraceLine(281,0,__PYX_ERR(1, 281, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_endswith == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 282, __pyx_L1_error) + __PYX_ERR(1, 281, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_endswith; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_endswith; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 281, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 282, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 281, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -10828,7 +11314,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 282, __pyx_L1_error) + __PYX_ERR(1, 281, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -10841,83 +11327,83 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 282, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 282, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 282, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L25_unpacking_failed; + index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L29_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L25_unpacking_failed; + index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L29_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 282, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 281, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L26_unpacking_done; - __pyx_L25_unpacking_failed:; + goto __pyx_L30_unpacking_done; + __pyx_L29_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 282, __pyx_L1_error) - __pyx_L26_unpacking_done:; + __PYX_ERR(1, 281, __pyx_L1_error) + __pyx_L30_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_predicates.pyx":283 + /* "hunter/_predicates.pyx":282 * return False * for key, entry in self.query_endswith: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not (value_from_event).endswith(( entry).value): * return False */ - __Pyx_TraceLine(283,0,__PYX_ERR(1, 283, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 283, __pyx_L1_error) + __Pyx_TraceLine(282,0,__PYX_ERR(1, 282, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":284 + /* "hunter/_predicates.pyx":283 * for key, entry in self.query_endswith: * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_regex: */ - __Pyx_TraceLine(284,0,__PYX_ERR(1, 284, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 284, __pyx_L1_error) + __Pyx_TraceLine(283,0,__PYX_ERR(1, 283, __pyx_L1_error)) + if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 283, __pyx_L1_error) if (unlikely(__pyx_v_value_from_event == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "endswith"); - __PYX_ERR(1, 284, __pyx_L1_error) + __PYX_ERR(1, 283, __pyx_L1_error) } - __pyx_t_9 = __Pyx_PyStr_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, 1); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 284, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyStr_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, 1); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 283, __pyx_L1_error) __pyx_t_8 = (!__pyx_t_9); if (__pyx_t_8) { - /* "hunter/_predicates.pyx":285 + /* "hunter/_predicates.pyx":284 * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): * return False # <<<<<<<<<<<<<< * for key, entry in self.query_regex: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(285,0,__PYX_ERR(1, 285, __pyx_L1_error)) + __Pyx_TraceLine(284,0,__PYX_ERR(1, 284, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":284 + /* "hunter/_predicates.pyx":283 * for key, entry in self.query_endswith: * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): # <<<<<<<<<<<<<< @@ -10926,36 +11412,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":282 + /* "hunter/_predicates.pyx":281 * if not (value_from_event).startswith(( entry).value): * return False * for key, entry in self.query_endswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): */ - __Pyx_TraceLine(282,0,__PYX_ERR(1, 282, __pyx_L1_error)) + __Pyx_TraceLine(281,0,__PYX_ERR(1, 281, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":286 + /* "hunter/_predicates.pyx":285 * if not (value_from_event).endswith(( entry).value): * return False * for key, entry in self.query_regex: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): */ - __Pyx_TraceLine(286,0,__PYX_ERR(1, 286, __pyx_L1_error)) + __Pyx_TraceLine(285,0,__PYX_ERR(1, 285, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_regex == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 286, __pyx_L1_error) + __PYX_ERR(1, 285, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_regex; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_regex; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 285, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 286, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 285, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 286, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -10964,7 +11457,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 286, __pyx_L1_error) + __PYX_ERR(1, 285, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -10977,64 +11470,65 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 286, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 286, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 286, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L30_unpacking_failed; + index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L35_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L30_unpacking_failed; + index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L35_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 286, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 285, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L31_unpacking_done; - __pyx_L30_unpacking_failed:; + goto __pyx_L36_unpacking_done; + __pyx_L35_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 286, __pyx_L1_error) - __pyx_L31_unpacking_done:; + __PYX_ERR(1, 285, __pyx_L1_error) + __pyx_L36_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":287 + /* "hunter/_predicates.pyx":286 * return False * for key, entry in self.query_regex: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not ( entry).value.match(value_from_event): * return False */ - __Pyx_TraceLine(287,0,__PYX_ERR(1, 287, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 287, __pyx_L1_error) + __Pyx_TraceLine(286,0,__PYX_ERR(1, 286, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":288 + /* "hunter/_predicates.pyx":287 * for key, entry in self.query_regex: * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_gt: */ - __Pyx_TraceLine(288,0,__PYX_ERR(1, 288, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, __pyx_n_s_match); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 288, __pyx_L1_error) + __Pyx_TraceLine(287,0,__PYX_ERR(1, 287, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, __pyx_n_s_match); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = NULL; __pyx_t_10 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -11044,34 +11538,35 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __pyx_t_10 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_value_from_event}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_10, 1+__pyx_t_10); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 288, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 288, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { - /* "hunter/_predicates.pyx":289 + /* "hunter/_predicates.pyx":288 * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): * return False # <<<<<<<<<<<<<< * for key, entry in self.query_gt: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(289,0,__PYX_ERR(1, 289, __pyx_L1_error)) + __Pyx_TraceLine(288,0,__PYX_ERR(1, 288, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":288 + /* "hunter/_predicates.pyx":287 * for key, entry in self.query_regex: * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): # <<<<<<<<<<<<<< @@ -11080,36 +11575,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":286 + /* "hunter/_predicates.pyx":285 * if not (value_from_event).endswith(( entry).value): * return False * for key, entry in self.query_regex: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): */ - __Pyx_TraceLine(286,0,__PYX_ERR(1, 286, __pyx_L1_error)) + __Pyx_TraceLine(285,0,__PYX_ERR(1, 285, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":290 + /* "hunter/_predicates.pyx":289 * if not ( entry).value.match(value_from_event): * return False * for key, entry in self.query_gt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: */ - __Pyx_TraceLine(290,0,__PYX_ERR(1, 290, __pyx_L1_error)) + __Pyx_TraceLine(289,0,__PYX_ERR(1, 289, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_gt == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 290, __pyx_L1_error) + __PYX_ERR(1, 289, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_gt; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_gt; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 289, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 290, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 289, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 290, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -11118,7 +11620,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 290, __pyx_L1_error) + __PYX_ERR(1, 289, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -11131,80 +11633,80 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 290, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 290, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 290, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L35_unpacking_failed; + index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L41_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L35_unpacking_failed; + index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L41_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 290, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 289, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L36_unpacking_done; - __pyx_L35_unpacking_failed:; + goto __pyx_L42_unpacking_done; + __pyx_L41_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 290, __pyx_L1_error) - __pyx_L36_unpacking_done:; + __PYX_ERR(1, 289, __pyx_L1_error) + __pyx_L42_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_predicates.pyx":291 + /* "hunter/_predicates.pyx":290 * return False * for key, entry in self.query_gt: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event > ( entry).value: * return False */ - __Pyx_TraceLine(291,0,__PYX_ERR(1, 291, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 291, __pyx_L1_error) + __Pyx_TraceLine(290,0,__PYX_ERR(1, 290, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":292 + /* "hunter/_predicates.pyx":291 * for key, entry in self.query_gt: * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_gte: */ - __Pyx_TraceLine(292,0,__PYX_ERR(1, 292, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 292, __pyx_L1_error) - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 292, __pyx_L1_error) + __Pyx_TraceLine(291,0,__PYX_ERR(1, 291, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 291, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 291, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_8 = (!__pyx_t_9); if (__pyx_t_8) { - /* "hunter/_predicates.pyx":293 + /* "hunter/_predicates.pyx":292 * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: * return False # <<<<<<<<<<<<<< * for key, entry in self.query_gte: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(293,0,__PYX_ERR(1, 293, __pyx_L1_error)) + __Pyx_TraceLine(292,0,__PYX_ERR(1, 292, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":292 + /* "hunter/_predicates.pyx":291 * for key, entry in self.query_gt: * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: # <<<<<<<<<<<<<< @@ -11213,36 +11715,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":290 + /* "hunter/_predicates.pyx":289 * if not ( entry).value.match(value_from_event): * return False * for key, entry in self.query_gt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: */ - __Pyx_TraceLine(290,0,__PYX_ERR(1, 290, __pyx_L1_error)) + __Pyx_TraceLine(289,0,__PYX_ERR(1, 289, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":294 + /* "hunter/_predicates.pyx":293 * if not value_from_event > ( entry).value: * return False * for key, entry in self.query_gte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: */ - __Pyx_TraceLine(294,0,__PYX_ERR(1, 294, __pyx_L1_error)) + __Pyx_TraceLine(293,0,__PYX_ERR(1, 293, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_gte == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 294, __pyx_L1_error) + __PYX_ERR(1, 293, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_gte; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_gte; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 293, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 294, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 293, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 294, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -11251,7 +11760,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 294, __pyx_L1_error) + __PYX_ERR(1, 293, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -11264,80 +11773,80 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 294, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 294, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 294, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L40_unpacking_failed; + index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L47_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L40_unpacking_failed; + index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L47_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 294, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 293, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L41_unpacking_done; - __pyx_L40_unpacking_failed:; + goto __pyx_L48_unpacking_done; + __pyx_L47_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 294, __pyx_L1_error) - __pyx_L41_unpacking_done:; + __PYX_ERR(1, 293, __pyx_L1_error) + __pyx_L48_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":295 + /* "hunter/_predicates.pyx":294 * return False * for key, entry in self.query_gte: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event >= ( entry).value: * return False */ - __Pyx_TraceLine(295,0,__PYX_ERR(1, 295, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 295, __pyx_L1_error) + __Pyx_TraceLine(294,0,__PYX_ERR(1, 294, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":296 + /* "hunter/_predicates.pyx":295 * for key, entry in self.query_gte: * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_lt: */ - __Pyx_TraceLine(296,0,__PYX_ERR(1, 296, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 296, __pyx_L1_error) - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 296, __pyx_L1_error) + __Pyx_TraceLine(295,0,__PYX_ERR(1, 295, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 295, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 295, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { - /* "hunter/_predicates.pyx":297 + /* "hunter/_predicates.pyx":296 * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: * return False # <<<<<<<<<<<<<< * for key, entry in self.query_lt: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(297,0,__PYX_ERR(1, 297, __pyx_L1_error)) + __Pyx_TraceLine(296,0,__PYX_ERR(1, 296, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":296 + /* "hunter/_predicates.pyx":295 * for key, entry in self.query_gte: * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: # <<<<<<<<<<<<<< @@ -11346,36 +11855,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":294 + /* "hunter/_predicates.pyx":293 * if not value_from_event > ( entry).value: * return False * for key, entry in self.query_gte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: */ - __Pyx_TraceLine(294,0,__PYX_ERR(1, 294, __pyx_L1_error)) + __Pyx_TraceLine(293,0,__PYX_ERR(1, 293, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":298 + /* "hunter/_predicates.pyx":297 * if not value_from_event >= ( entry).value: * return False * for key, entry in self.query_lt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: */ - __Pyx_TraceLine(298,0,__PYX_ERR(1, 298, __pyx_L1_error)) + __Pyx_TraceLine(297,0,__PYX_ERR(1, 297, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_lt == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 298, __pyx_L1_error) + __PYX_ERR(1, 297, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_lt; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_lt; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 297, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 298, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 297, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 298, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -11384,7 +11900,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 298, __pyx_L1_error) + __PYX_ERR(1, 297, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -11397,80 +11913,80 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 298, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 298, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 298, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L45_unpacking_failed; + index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L53_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L45_unpacking_failed; + index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L53_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 298, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 297, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L46_unpacking_done; - __pyx_L45_unpacking_failed:; + goto __pyx_L54_unpacking_done; + __pyx_L53_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 298, __pyx_L1_error) - __pyx_L46_unpacking_done:; + __PYX_ERR(1, 297, __pyx_L1_error) + __pyx_L54_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_predicates.pyx":299 + /* "hunter/_predicates.pyx":298 * return False * for key, entry in self.query_lt: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event < ( entry).value: * return False */ - __Pyx_TraceLine(299,0,__PYX_ERR(1, 299, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 299, __pyx_L1_error) + __Pyx_TraceLine(298,0,__PYX_ERR(1, 298, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":300 + /* "hunter/_predicates.pyx":299 * for key, entry in self.query_lt: * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_lte: */ - __Pyx_TraceLine(300,0,__PYX_ERR(1, 300, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 300, __pyx_L1_error) - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 300, __pyx_L1_error) + __Pyx_TraceLine(299,0,__PYX_ERR(1, 299, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 299, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 299, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_8 = (!__pyx_t_9); if (__pyx_t_8) { - /* "hunter/_predicates.pyx":301 + /* "hunter/_predicates.pyx":300 * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: * return False # <<<<<<<<<<<<<< * for key, entry in self.query_lte: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(301,0,__PYX_ERR(1, 301, __pyx_L1_error)) + __Pyx_TraceLine(300,0,__PYX_ERR(1, 300, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":300 + /* "hunter/_predicates.pyx":299 * for key, entry in self.query_lt: * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: # <<<<<<<<<<<<<< @@ -11479,36 +11995,43 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":298 + /* "hunter/_predicates.pyx":297 * if not value_from_event >= ( entry).value: * return False * for key, entry in self.query_lt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: */ - __Pyx_TraceLine(298,0,__PYX_ERR(1, 298, __pyx_L1_error)) + __Pyx_TraceLine(297,0,__PYX_ERR(1, 297, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":302 + /* "hunter/_predicates.pyx":301 * if not value_from_event < ( entry).value: * return False * for key, entry in self.query_lte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: */ - __Pyx_TraceLine(302,0,__PYX_ERR(1, 302, __pyx_L1_error)) + __Pyx_TraceLine(301,0,__PYX_ERR(1, 301, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_lte == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 302, __pyx_L1_error) + __PYX_ERR(1, 301, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->query_lte; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->query_lte; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 301, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 302, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 301, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 302, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { @@ -11517,7 +12040,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 302, __pyx_L1_error) + __PYX_ERR(1, 301, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -11530,80 +12053,80 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 302, __pyx_L1_error) + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 302, __pyx_L1_error) + __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 302, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); - index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L50_unpacking_failed; + index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L59_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L50_unpacking_failed; + index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L59_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 302, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 301, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L51_unpacking_done; - __pyx_L50_unpacking_failed:; + goto __pyx_L60_unpacking_done; + __pyx_L59_unpacking_failed:; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 302, __pyx_L1_error) - __pyx_L51_unpacking_done:; + __PYX_ERR(1, 301, __pyx_L1_error) + __pyx_L60_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":303 + /* "hunter/_predicates.pyx":302 * return False * for key, entry in self.query_lte: * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event <= ( entry).value: * return False */ - __Pyx_TraceLine(303,0,__PYX_ERR(1, 303, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 303, __pyx_L1_error) + __Pyx_TraceLine(302,0,__PYX_ERR(1, 302, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":304 + /* "hunter/_predicates.pyx":303 * for key, entry in self.query_lte: * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: # <<<<<<<<<<<<<< * return False * */ - __Pyx_TraceLine(304,0,__PYX_ERR(1, 304, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 304, __pyx_L1_error) - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 304, __pyx_L1_error) + __Pyx_TraceLine(303,0,__PYX_ERR(1, 303, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 303, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 303, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { - /* "hunter/_predicates.pyx":305 + /* "hunter/_predicates.pyx":304 * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: * return False # <<<<<<<<<<<<<< * * return True */ - __Pyx_TraceLine(305,0,__PYX_ERR(1, 305, __pyx_L1_error)) + __Pyx_TraceLine(304,0,__PYX_ERR(1, 304, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":304 + /* "hunter/_predicates.pyx":303 * for key, entry in self.query_lte: * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: # <<<<<<<<<<<<<< @@ -11612,31 +12135,31 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str */ } - /* "hunter/_predicates.pyx":302 + /* "hunter/_predicates.pyx":301 * if not value_from_event < ( entry).value: * return False * for key, entry in self.query_lte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: */ - __Pyx_TraceLine(302,0,__PYX_ERR(1, 302, __pyx_L1_error)) + __Pyx_TraceLine(301,0,__PYX_ERR(1, 301, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":307 + /* "hunter/_predicates.pyx":306 * return False * * return True # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(307,0,__PYX_ERR(1, 307, __pyx_L1_error)) + __Pyx_TraceLine(306,0,__PYX_ERR(1, 306, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; goto __pyx_L0; - /* "hunter/_predicates.pyx":265 + /* "hunter/_predicates.pyx":264 * return Not(self) * * cdef inline fast_Query_call(Query self, Event event): # <<<<<<<<<<<<<< @@ -11663,7 +12186,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str return __pyx_r; } -/* "hunter/_predicates.pyx":318 +/* "hunter/_predicates.pyx":317 * """ * * def __init__(self, condition, *actions): # <<<<<<<<<<<<<< @@ -11676,14 +12199,21 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_condition = 0; PyObject *__pyx_v_actions = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_v_actions = __Pyx_ArgsSlice_VARARGS(__pyx_args, 1, __pyx_nargs); if (unlikely(!__pyx_v_actions)) { __Pyx_RefNannyFinishContext(); @@ -11692,7 +12222,6 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self __Pyx_GOTREF(__pyx_v_actions); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_condition,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -11704,14 +12233,17 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 318, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 317, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; const Py_ssize_t used_pos_args = (kwd_pos_args < 1) ? kwd_pos_args : 1; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, used_pos_args, "__init__") < 0)) __PYX_ERR(1, 318, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, used_pos_args, "__init__") < 0)) __PYX_ERR(1, 317, __pyx_L3_error) } } else if (unlikely(__pyx_nargs < 1)) { goto __pyx_L5_argtuple_error; @@ -11720,10 +12252,18 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self } __pyx_v_condition = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 1, __pyx_nargs); __PYX_ERR(1, 318, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 1, __pyx_nargs); __PYX_ERR(1, 317, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_DECREF(__pyx_v_actions); __pyx_v_actions = 0; __Pyx_AddTraceback("hunter._predicates.When.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -11733,12 +12273,18 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self /* function exit code */ __Pyx_DECREF(__pyx_v_actions); + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_predicates.pyx":323 +/* "hunter/_predicates.pyx":322 * self.condition = condition * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< @@ -11758,7 +12304,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(CYTHON_U if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 323, __pyx_L1_error) + __PYX_ERR(1, 322, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -11766,7 +12312,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(CYTHON_U __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_8__init___2generator1, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_init___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 323, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_8__init___2generator1, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_init___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -11801,7 +12347,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 323, 0, __PYX_ERR(1, 323, __pyx_L1_error)); + __Pyx_TraceCall("genexpr", __pyx_f[1], 322, 0, __PYX_ERR(1, 322, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L8_resume_from_yield; @@ -11811,24 +12357,31 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 323, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 322, __pyx_L1_error) - /* "hunter/_predicates.pyx":324 + /* "hunter/_predicates.pyx":323 * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action * for action in actions) # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(324,0,__PYX_ERR(1, 324, __pyx_L1_error)) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 324, __pyx_L1_error) } - __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __Pyx_TraceLine(323,0,__PYX_ERR(1, 323, __pyx_L1_error)) + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 323, __pyx_L1_error) } + __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 323, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 324, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 323, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 324, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_action); @@ -11836,19 +12389,20 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":323 + /* "hunter/_predicates.pyx":322 * self.condition = condition * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * */ - __Pyx_TraceLine(323,0,__PYX_ERR(1, 323, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_isclass); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 323, __pyx_L1_error) + __Pyx_TraceLine(322,0,__PYX_ERR(1, 322, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_isclass); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -11858,24 +12412,25 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py __pyx_t_8 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_cur_scope->__pyx_v_action}; __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 323, __pyx_L1_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 323, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (__pyx_t_9) { } else { __pyx_t_4 = __pyx_t_9; goto __pyx_L6_bool_binop_done; } - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_Action); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 323, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_Action); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = PyObject_IsSubclass(__pyx_cur_scope->__pyx_v_action, __pyx_t_5); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 323, __pyx_L1_error) + __pyx_t_9 = PyObject_IsSubclass(__pyx_cur_scope->__pyx_v_action, __pyx_t_5); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_4 = __pyx_t_9; __pyx_L6_bool_binop_done:; @@ -11883,7 +12438,8 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py __Pyx_INCREF(__pyx_cur_scope->__pyx_v_action); __pyx_t_6 = __pyx_cur_scope->__pyx_v_action; __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -11893,11 +12449,12 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py __pyx_t_8 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_7, }; + PyObject *__pyx_callargs[2] = {__pyx_t_7, NULL}; __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 0+__pyx_t_8); __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 323, __pyx_L1_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } @@ -11924,21 +12481,21 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_1); __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 323, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 322, __pyx_L1_error) - /* "hunter/_predicates.pyx":324 + /* "hunter/_predicates.pyx":323 * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action * for action in actions) # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(324,0,__PYX_ERR(1, 324, __pyx_L1_error)) + __Pyx_TraceLine(323,0,__PYX_ERR(1, 323, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "hunter/_predicates.pyx":323 + /* "hunter/_predicates.pyx":322 * self.condition = condition * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< @@ -11969,7 +12526,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py return __pyx_r; } -/* "hunter/_predicates.pyx":318 +/* "hunter/_predicates.pyx":317 * """ * * def __init__(self, condition, *actions): # <<<<<<<<<<<<<< @@ -11989,36 +12546,36 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 318, 0, __PYX_ERR(1, 318, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 317, 0, __PYX_ERR(1, 317, __pyx_L1_error)); - /* "hunter/_predicates.pyx":319 + /* "hunter/_predicates.pyx":318 * * def __init__(self, condition, *actions): * if not actions: # <<<<<<<<<<<<<< * raise TypeError('Must give at least one action.') * self.condition = condition */ - __Pyx_TraceLine(319,0,__PYX_ERR(1, 319, __pyx_L1_error)) + __Pyx_TraceLine(318,0,__PYX_ERR(1, 318, __pyx_L1_error)) __pyx_t_1 = (PyTuple_GET_SIZE(__pyx_v_actions) != 0); __pyx_t_2 = (!__pyx_t_1); if (unlikely(__pyx_t_2)) { - /* "hunter/_predicates.pyx":320 + /* "hunter/_predicates.pyx":319 * def __init__(self, condition, *actions): * if not actions: * raise TypeError('Must give at least one action.') # <<<<<<<<<<<<<< * self.condition = condition * self.actions = tuple( */ - __Pyx_TraceLine(320,0,__PYX_ERR(1, 320, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 320, __pyx_L1_error) + __Pyx_TraceLine(319,0,__PYX_ERR(1, 319, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(1, 320, __pyx_L1_error) + __PYX_ERR(1, 319, __pyx_L1_error) - /* "hunter/_predicates.pyx":319 + /* "hunter/_predicates.pyx":318 * * def __init__(self, condition, *actions): * if not actions: # <<<<<<<<<<<<<< @@ -12027,40 +12584,40 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte */ } - /* "hunter/_predicates.pyx":321 + /* "hunter/_predicates.pyx":320 * if not actions: * raise TypeError('Must give at least one action.') * self.condition = condition # <<<<<<<<<<<<<< * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action */ - __Pyx_TraceLine(321,0,__PYX_ERR(1, 321, __pyx_L1_error)) + __Pyx_TraceLine(320,0,__PYX_ERR(1, 320, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_condition); __Pyx_GIVEREF(__pyx_v_condition); __Pyx_GOTREF(__pyx_v_self->condition); __Pyx_DECREF(__pyx_v_self->condition); __pyx_v_self->condition = __pyx_v_condition; - /* "hunter/_predicates.pyx":323 + /* "hunter/_predicates.pyx":322 * self.condition = condition * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * */ - __Pyx_TraceLine(323,0,__PYX_ERR(1, 323, __pyx_L1_error)) - __pyx_t_3 = __pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(NULL, __pyx_v_actions); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 323, __pyx_L1_error) + __Pyx_TraceLine(322,0,__PYX_ERR(1, 322, __pyx_L1_error)) + __pyx_t_3 = __pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(NULL, __pyx_v_actions); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - /* "hunter/_predicates.pyx":322 + /* "hunter/_predicates.pyx":321 * raise TypeError('Must give at least one action.') * self.condition = condition * self.actions = tuple( # <<<<<<<<<<<<<< * action() if isclass(action) and issubclass(action, Action) else action * for action in actions) */ - __Pyx_TraceLine(322,0,__PYX_ERR(1, 322, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 322, __pyx_L1_error) + __Pyx_TraceLine(321,0,__PYX_ERR(1, 321, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_4); @@ -12069,7 +12626,7 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte __pyx_v_self->actions = ((PyObject*)__pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":318 + /* "hunter/_predicates.pyx":317 * """ * * def __init__(self, condition, *actions): # <<<<<<<<<<<<<< @@ -12092,7 +12649,7 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte return __pyx_r; } -/* "hunter/_predicates.pyx":326 +/* "hunter/_predicates.pyx":325 * for action in actions) * * def __str__(self): # <<<<<<<<<<<<<< @@ -12103,10 +12660,11 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_3__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_3__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_2__str__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self)); /* function exit code */ @@ -12115,7 +12673,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_3__str__(PyObject *__pyx_v } static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_predicates.pyx":329 +/* "hunter/_predicates.pyx":328 * return 'When(%s, %s)' % ( * self.condition, * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< @@ -12135,7 +12693,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(CYTHON_UN if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 329, __pyx_L1_error) + __PYX_ERR(1, 328, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -12143,7 +12701,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(CYTHON_UN __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_7__str___2generator2, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 329, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_7__str___2generator2, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 328, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -12172,7 +12730,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 329, 0, __PYX_ERR(1, 329, __pyx_L1_error)); + __Pyx_TraceCall("genexpr", __pyx_f[1], 328, 0, __PYX_ERR(1, 328, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L6_resume_from_yield; @@ -12182,26 +12740,33 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 329, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 329, __pyx_L1_error) } + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 328, __pyx_L1_error) + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 328, __pyx_L1_error) } if (unlikely(__pyx_cur_scope->__pyx_genexpr_arg_0 == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 329, __pyx_L1_error) + __PYX_ERR(1, 328, __pyx_L1_error) } - __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 328, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 329, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 328, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 329, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_p); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_p, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Repr(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 329, __pyx_L1_error) + __pyx_t_3 = PyObject_Repr(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; @@ -12220,7 +12785,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_1); __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 329, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 328, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); @@ -12245,7 +12810,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx return __pyx_r; } -/* "hunter/_predicates.pyx":326 +/* "hunter/_predicates.pyx":325 * for action in actions) * * def __str__(self): # <<<<<<<<<<<<<< @@ -12263,66 +12828,66 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - __Pyx_TraceCall("__str__", __pyx_f[1], 326, 0, __PYX_ERR(1, 326, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__str__", 1); + __Pyx_TraceCall("__str__", __pyx_f[1], 325, 0, __PYX_ERR(1, 325, __pyx_L1_error)); - /* "hunter/_predicates.pyx":327 + /* "hunter/_predicates.pyx":326 * * def __str__(self): * return 'When(%s, %s)' % ( # <<<<<<<<<<<<<< * self.condition, * ', '.join(repr(p) for p in self.actions) */ - __Pyx_TraceLine(327,0,__PYX_ERR(1, 327, __pyx_L1_error)) + __Pyx_TraceLine(326,0,__PYX_ERR(1, 326, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":329 + /* "hunter/_predicates.pyx":328 * return 'When(%s, %s)' % ( * self.condition, * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(329,0,__PYX_ERR(1, 329, __pyx_L1_error)) - __pyx_t_1 = __pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(NULL, __pyx_v_self->actions); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 329, __pyx_L1_error) + __Pyx_TraceLine(328,0,__PYX_ERR(1, 328, __pyx_L1_error)) + __pyx_t_1 = __pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(NULL, __pyx_v_self->actions); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 329, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":328 + /* "hunter/_predicates.pyx":327 * def __str__(self): * return 'When(%s, %s)' % ( * self.condition, # <<<<<<<<<<<<<< * ', '.join(repr(p) for p in self.actions) * ) */ - __Pyx_TraceLine(328,0,__PYX_ERR(1, 328, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 328, __pyx_L1_error) + __Pyx_TraceLine(327,0,__PYX_ERR(1, 327, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->condition)) __PYX_ERR(1, 327, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2)) __PYX_ERR(1, 327, __pyx_L1_error); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":327 + /* "hunter/_predicates.pyx":326 * * def __str__(self): * return 'When(%s, %s)' % ( # <<<<<<<<<<<<<< * self.condition, * ', '.join(repr(p) for p in self.actions) */ - __Pyx_TraceLine(327,0,__PYX_ERR(1, 327, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_When_s_s, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 327, __pyx_L1_error) + __Pyx_TraceLine(326,0,__PYX_ERR(1, 326, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_When_s_s, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":326 + /* "hunter/_predicates.pyx":325 * for action in actions) * * def __str__(self): # <<<<<<<<<<<<<< @@ -12344,7 +12909,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":332 +/* "hunter/_predicates.pyx":331 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -12355,10 +12920,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_4__repr__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self)); /* function exit code */ @@ -12375,34 +12941,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 332, 0, __PYX_ERR(1, 332, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 331, 0, __PYX_ERR(1, 331, __pyx_L1_error)); - /* "hunter/_predicates.pyx":333 + /* "hunter/_predicates.pyx":332 * * def __repr__(self): * return '' % (self.condition, self.actions) # <<<<<<<<<<<<<< * * def __eq__(self, other): */ - __Pyx_TraceLine(333,0,__PYX_ERR(1, 333, __pyx_L1_error)) + __Pyx_TraceLine(332,0,__PYX_ERR(1, 332, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 333, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 332, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->condition)) __PYX_ERR(1, 332, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->actions); __Pyx_GIVEREF(__pyx_v_self->actions); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->actions); - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_When_conditi, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 333, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->actions)) __PYX_ERR(1, 332, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_When_conditi, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 332, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":332 + /* "hunter/_predicates.pyx":331 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -12423,7 +12989,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj return __pyx_r; } -/* "hunter/_predicates.pyx":335 +/* "hunter/_predicates.pyx":334 * return '' % (self.condition, self.actions) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -12434,10 +13000,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_6__eq__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -12455,47 +13022,47 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 335, 0, __PYX_ERR(1, 335, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 334, 0, __PYX_ERR(1, 334, __pyx_L1_error)); - /* "hunter/_predicates.pyx":336 + /* "hunter/_predicates.pyx":335 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, When) * and self.condition == ( other).condition */ - __Pyx_TraceLine(336,0,__PYX_ERR(1, 336, __pyx_L1_error)) + __Pyx_TraceLine(335,0,__PYX_ERR(1, 335, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":337 + /* "hunter/_predicates.pyx":336 * def __eq__(self, other): * return ( * isinstance(other, When) # <<<<<<<<<<<<<< * and self.condition == ( other).condition * and self.actions == ( other).actions */ - __Pyx_TraceLine(337,0,__PYX_ERR(1, 337, __pyx_L1_error)) + __Pyx_TraceLine(336,0,__PYX_ERR(1, 336, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_When); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 337, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 336, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":338 + /* "hunter/_predicates.pyx":337 * return ( * isinstance(other, When) * and self.condition == ( other).condition # <<<<<<<<<<<<<< * and self.actions == ( other).actions * ) */ - __Pyx_TraceLine(338,0,__PYX_ERR(1, 338, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 338, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 338, __pyx_L1_error) + __Pyx_TraceLine(337,0,__PYX_ERR(1, 337, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 337, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 337, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -12505,15 +13072,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":339 + /* "hunter/_predicates.pyx":338 * isinstance(other, When) * and self.condition == ( other).condition * and self.actions == ( other).actions # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(339,0,__PYX_ERR(1, 339, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->actions, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->actions, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 339, __pyx_L1_error) + __Pyx_TraceLine(338,0,__PYX_ERR(1, 338, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->actions, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->actions, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 338, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -12522,7 +13089,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":335 + /* "hunter/_predicates.pyx":334 * return '' % (self.condition, self.actions) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -12543,7 +13110,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_predicates.pyx":342 +/* "hunter/_predicates.pyx":341 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -12555,17 +13122,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -12577,13 +13150,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_ kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 342, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 341, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 342, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 341, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -12592,15 +13168,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_ } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 342, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 341, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.When.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 342, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 341, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_4When_8__call__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self), __pyx_v_event); /* function exit code */ @@ -12608,6 +13192,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_ __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12620,25 +13210,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 342, 0, __PYX_ERR(1, 342, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 341, 0, __PYX_ERR(1, 341, __pyx_L1_error)); - /* "hunter/_predicates.pyx":343 + /* "hunter/_predicates.pyx":342 * * def __call__(self, Event event): * return fast_When_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): */ - __Pyx_TraceLine(343,0,__PYX_ERR(1, 343, __pyx_L1_error)) + __Pyx_TraceLine(342,0,__PYX_ERR(1, 342, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_When_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 343, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_When_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":342 + /* "hunter/_predicates.pyx":341 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -12658,7 +13248,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj return __pyx_r; } -/* "hunter/_predicates.pyx":345 +/* "hunter/_predicates.pyx":344 * return fast_When_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -12669,10 +13259,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -12689,34 +13280,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 345, 0, __PYX_ERR(1, 345, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 344, 0, __PYX_ERR(1, 344, __pyx_L1_error)); - /* "hunter/_predicates.pyx":346 + /* "hunter/_predicates.pyx":345 * * def __or__(self, other): * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(346,0,__PYX_ERR(1, 346, __pyx_L1_error)) + __Pyx_TraceLine(345,0,__PYX_ERR(1, 345, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 346, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 345, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 346, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 345, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":345 + /* "hunter/_predicates.pyx":344 * return fast_When_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -12737,7 +13328,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v return __pyx_r; } -/* "hunter/_predicates.pyx":348 +/* "hunter/_predicates.pyx":347 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -12748,10 +13339,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -12768,34 +13360,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 348, 0, __PYX_ERR(1, 348, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 347, 0, __PYX_ERR(1, 347, __pyx_L1_error)); - /* "hunter/_predicates.pyx":349 + /* "hunter/_predicates.pyx":348 * * def __and__(self, other): * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(349,0,__PYX_ERR(1, 349, __pyx_L1_error)) + __Pyx_TraceLine(348,0,__PYX_ERR(1, 348, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 349, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 348, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 349, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 348, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":348 + /* "hunter/_predicates.pyx":347 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -12816,7 +13408,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_ return __pyx_r; } -/* "hunter/_predicates.pyx":351 +/* "hunter/_predicates.pyx":350 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -12827,10 +13419,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_14__invert__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self)); /* function exit code */ @@ -12846,25 +13439,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 351, 0, __PYX_ERR(1, 351, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 350, 0, __PYX_ERR(1, 350, __pyx_L1_error)); - /* "hunter/_predicates.pyx":352 + /* "hunter/_predicates.pyx":351 * * def __invert__(self): * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_When_call(When self, Event event): */ - __Pyx_TraceLine(352,0,__PYX_ERR(1, 352, __pyx_L1_error)) + __Pyx_TraceLine(351,0,__PYX_ERR(1, 351, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 352, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":351 + /* "hunter/_predicates.pyx":350 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -12884,7 +13477,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_ return __pyx_r; } -/* "hunter/_predicates.pxd":39 +/* "hunter/_predicates.pxd":43 * cdef class When: * cdef: * readonly object condition # <<<<<<<<<<<<<< @@ -12895,10 +13488,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9condition_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9condition_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_9condition___get__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self)); /* function exit code */ @@ -12913,8 +13507,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_9condition___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 39, 0, __PYX_ERR(2, 39, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 43, 0, __PYX_ERR(2, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->condition); __pyx_r = __pyx_v_self->condition; @@ -12931,21 +13525,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_9condition___get__(struct return __pyx_r; } -/* "hunter/_predicates.pxd":40 +/* "hunter/_predicates.pxd":44 * cdef: * readonly object condition * readonly tuple actions # <<<<<<<<<<<<<< * - * @cython.final + * */ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4When_7actions___get__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self)); /* function exit code */ @@ -12960,8 +13555,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7actions___get__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 40, 0, __PYX_ERR(2, 40, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 44, 0, __PYX_ERR(2, 44, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->actions); __pyx_r = __pyx_v_self->actions; @@ -13001,12 +13596,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -13033,7 +13636,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__14) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -13048,10 +13651,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->actions); __Pyx_GIVEREF(__pyx_v_self->actions); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->actions); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->actions)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->condition)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -13091,7 +13694,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -13165,22 +13768,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_242287462); __Pyx_GIVEREF(__pyx_int_242287462); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_242287462); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_242287462)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_5; @@ -13212,19 +13815,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_242287462); __Pyx_GIVEREF(__pyx_int_242287462); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_242287462); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_242287462)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; @@ -13279,18 +13882,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -13302,7 +13913,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -13317,10 +13931,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.When.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -13328,6 +13950,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13341,7 +13969,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(stru const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__15) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -13376,7 +14004,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(stru return __pyx_r; } -/* "hunter/_predicates.pyx":354 +/* "hunter/_predicates.pyx":353 * return Not(self) * * cdef inline fast_When_call(When self, Event event): # <<<<<<<<<<<<<< @@ -13400,72 +14028,80 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_When_call", 0); - __Pyx_TraceCall("fast_When_call", __pyx_f[1], 354, 0, __PYX_ERR(1, 354, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_When_call", 1); + __Pyx_TraceCall("fast_When_call", __pyx_f[1], 353, 0, __PYX_ERR(1, 353, __pyx_L1_error)); - /* "hunter/_predicates.pyx":357 + /* "hunter/_predicates.pyx":356 * cdef object result * * result = fast_call(self.condition, event) # <<<<<<<<<<<<<< * * if result: */ - __Pyx_TraceLine(357,0,__PYX_ERR(1, 357, __pyx_L1_error)) + __Pyx_TraceLine(356,0,__PYX_ERR(1, 356, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->condition; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 357, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_result = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":359 + /* "hunter/_predicates.pyx":358 * result = fast_call(self.condition, event) * * if result: # <<<<<<<<<<<<<< * for action in self.actions: * action(event) */ - __Pyx_TraceLine(359,0,__PYX_ERR(1, 359, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 359, __pyx_L1_error) + __Pyx_TraceLine(358,0,__PYX_ERR(1, 358, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 358, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_predicates.pyx":360 + /* "hunter/_predicates.pyx":359 * * if result: * for action in self.actions: # <<<<<<<<<<<<<< * action(event) * */ - __Pyx_TraceLine(360,0,__PYX_ERR(1, 360, __pyx_L1_error)) + __Pyx_TraceLine(359,0,__PYX_ERR(1, 359, __pyx_L1_error)) if (unlikely(__pyx_v_self->actions == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 360, __pyx_L1_error) + __PYX_ERR(1, 359, __pyx_L1_error) } - __pyx_t_2 = __pyx_v_self->actions; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; + __pyx_t_2 = __pyx_v_self->actions; __Pyx_INCREF(__pyx_t_2); + __pyx_t_4 = 0; for (;;) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 359, __pyx_L1_error) + #endif + if (__pyx_t_4 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely((0 < 0))) __PYX_ERR(1, 360, __pyx_L1_error) + __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely((0 < 0))) __PYX_ERR(1, 359, __pyx_L1_error) #else - __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 360, __pyx_L1_error) + __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 359, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_XDECREF_SET(__pyx_v_action, __pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":361 + /* "hunter/_predicates.pyx":360 * if result: * for action in self.actions: * action(event) # <<<<<<<<<<<<<< * * return result */ - __Pyx_TraceLine(361,0,__PYX_ERR(1, 361, __pyx_L1_error)) + __Pyx_TraceLine(360,0,__PYX_ERR(1, 360, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_action); __pyx_t_5 = __pyx_v_action; __pyx_t_6 = NULL; __pyx_t_7 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -13475,28 +14111,29 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru __pyx_t_7 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_6, ((PyObject *)__pyx_v_event)}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 361, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 360, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":360 + /* "hunter/_predicates.pyx":359 * * if result: * for action in self.actions: # <<<<<<<<<<<<<< * action(event) * */ - __Pyx_TraceLine(360,0,__PYX_ERR(1, 360, __pyx_L1_error)) + __Pyx_TraceLine(359,0,__PYX_ERR(1, 359, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":359 + /* "hunter/_predicates.pyx":358 * result = fast_call(self.condition, event) * * if result: # <<<<<<<<<<<<<< @@ -13505,20 +14142,20 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru */ } - /* "hunter/_predicates.pyx":363 + /* "hunter/_predicates.pyx":362 * action(event) * * return result # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(363,0,__PYX_ERR(1, 363, __pyx_L1_error)) + __Pyx_TraceLine(362,0,__PYX_ERR(1, 362, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_result); __pyx_r = __pyx_v_result; goto __pyx_L0; - /* "hunter/_predicates.pyx":354 + /* "hunter/_predicates.pyx":353 * return Not(self) * * cdef inline fast_When_call(When self, Event event): # <<<<<<<<<<<<<< @@ -13543,7 +14180,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru return __pyx_r; } -/* "hunter/_predicates.pyx":372 +/* "hunter/_predicates.pyx":371 * """ * * def __init__(self, condition, predicate=None, watermark=0): # <<<<<<<<<<<<<< @@ -13557,19 +14194,25 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self PyObject *__pyx_v_condition = 0; PyObject *__pyx_v_predicate = 0; PyObject *__pyx_v_watermark = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_condition,&__pyx_n_s_predicate,&__pyx_n_s_watermark,0}; - PyObject* values[3] = {0,0,0}; - values[1] = ((PyObject *)Py_None); - values[2] = ((PyObject *)__pyx_int_0); + values[1] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); + values[2] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)__pyx_int_0)); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -13585,27 +14228,30 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 372, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate); - if (value) { values[1] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 372, __pyx_L3_error) + if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_watermark); - if (value) { values[2] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 372, __pyx_L3_error) + if (value) { values[2] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 372, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 371, __pyx_L3_error) } } else { switch (__pyx_nargs) { @@ -13622,10 +14268,18 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self __pyx_v_predicate = values[1]; __pyx_v_watermark = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 3, __pyx_nargs); __PYX_ERR(1, 372, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 3, __pyx_nargs); __PYX_ERR(1, 371, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.From.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -13633,6 +14287,12 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self __pyx_r = __pyx_pf_6hunter_11_predicates_4From___init__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), __pyx_v_condition, __pyx_v_predicate, __pyx_v_watermark); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13645,69 +14305,69 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 372, 0, __PYX_ERR(1, 372, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 371, 0, __PYX_ERR(1, 371, __pyx_L1_error)); - /* "hunter/_predicates.pyx":373 + /* "hunter/_predicates.pyx":372 * * def __init__(self, condition, predicate=None, watermark=0): * self.condition = condition # <<<<<<<<<<<<<< * self.predicate = predicate * self.watermark = watermark */ - __Pyx_TraceLine(373,0,__PYX_ERR(1, 373, __pyx_L1_error)) + __Pyx_TraceLine(372,0,__PYX_ERR(1, 372, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_condition); __Pyx_GIVEREF(__pyx_v_condition); __Pyx_GOTREF(__pyx_v_self->condition); __Pyx_DECREF(__pyx_v_self->condition); __pyx_v_self->condition = __pyx_v_condition; - /* "hunter/_predicates.pyx":374 + /* "hunter/_predicates.pyx":373 * def __init__(self, condition, predicate=None, watermark=0): * self.condition = condition * self.predicate = predicate # <<<<<<<<<<<<<< * self.watermark = watermark * self.origin_depth = -1 */ - __Pyx_TraceLine(374,0,__PYX_ERR(1, 374, __pyx_L1_error)) + __Pyx_TraceLine(373,0,__PYX_ERR(1, 373, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->predicate); __Pyx_DECREF(__pyx_v_self->predicate); __pyx_v_self->predicate = __pyx_v_predicate; - /* "hunter/_predicates.pyx":375 + /* "hunter/_predicates.pyx":374 * self.condition = condition * self.predicate = predicate * self.watermark = watermark # <<<<<<<<<<<<<< * self.origin_depth = -1 * self.origin_calls = -1 */ - __Pyx_TraceLine(375,0,__PYX_ERR(1, 375, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_watermark); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 375, __pyx_L1_error) + __Pyx_TraceLine(374,0,__PYX_ERR(1, 374, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_watermark); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 374, __pyx_L1_error) __pyx_v_self->watermark = __pyx_t_1; - /* "hunter/_predicates.pyx":376 + /* "hunter/_predicates.pyx":375 * self.predicate = predicate * self.watermark = watermark * self.origin_depth = -1 # <<<<<<<<<<<<<< * self.origin_calls = -1 * */ - __Pyx_TraceLine(376,0,__PYX_ERR(1, 376, __pyx_L1_error)) + __Pyx_TraceLine(375,0,__PYX_ERR(1, 375, __pyx_L1_error)) __pyx_v_self->origin_depth = -1; - /* "hunter/_predicates.pyx":377 + /* "hunter/_predicates.pyx":376 * self.watermark = watermark * self.origin_depth = -1 * self.origin_calls = -1 # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(377,0,__PYX_ERR(1, 377, __pyx_L1_error)) + __Pyx_TraceLine(376,0,__PYX_ERR(1, 376, __pyx_L1_error)) __pyx_v_self->origin_calls = -1; - /* "hunter/_predicates.pyx":372 + /* "hunter/_predicates.pyx":371 * """ * * def __init__(self, condition, predicate=None, watermark=0): # <<<<<<<<<<<<<< @@ -13727,7 +14387,7 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte return __pyx_r; } -/* "hunter/_predicates.pyx":379 +/* "hunter/_predicates.pyx":378 * self.origin_calls = -1 * * def __str__(self): # <<<<<<<<<<<<<< @@ -13738,10 +14398,11 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_3__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_3__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_2__str__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -13758,57 +14419,57 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - __Pyx_TraceCall("__str__", __pyx_f[1], 379, 0, __PYX_ERR(1, 379, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__str__", 1); + __Pyx_TraceCall("__str__", __pyx_f[1], 378, 0, __PYX_ERR(1, 378, __pyx_L1_error)); - /* "hunter/_predicates.pyx":380 + /* "hunter/_predicates.pyx":379 * * def __str__(self): * return 'From(%s, %s, watermark=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) */ - __Pyx_TraceLine(380,0,__PYX_ERR(1, 380, __pyx_L1_error)) + __Pyx_TraceLine(379,0,__PYX_ERR(1, 379, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":381 + /* "hunter/_predicates.pyx":380 * def __str__(self): * return 'From(%s, %s, watermark=%s)' % ( * self.condition, self.predicate, self.watermark # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(381,0,__PYX_ERR(1, 381, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 381, __pyx_L1_error) + __Pyx_TraceLine(380,0,__PYX_ERR(1, 380, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 381, __pyx_L1_error) + __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition)) __PYX_ERR(1, 380, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->predicate); __Pyx_GIVEREF(__pyx_v_self->predicate); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->predicate); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->predicate)) __PYX_ERR(1, 380, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1)) __PYX_ERR(1, 380, __pyx_L1_error); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":380 + /* "hunter/_predicates.pyx":379 * * def __str__(self): * return 'From(%s, %s, watermark=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) */ - __Pyx_TraceLine(380,0,__PYX_ERR(1, 380, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_From_s_s_watermark_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 380, __pyx_L1_error) + __Pyx_TraceLine(379,0,__PYX_ERR(1, 379, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_From_s_s_watermark_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 379, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":379 + /* "hunter/_predicates.pyx":378 * self.origin_calls = -1 * * def __str__(self): # <<<<<<<<<<<<<< @@ -13829,7 +14490,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":384 +/* "hunter/_predicates.pyx":383 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -13840,10 +14501,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_4__repr__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -13860,57 +14522,57 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 384, 0, __PYX_ERR(1, 384, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 383, 0, __PYX_ERR(1, 383, __pyx_L1_error)); - /* "hunter/_predicates.pyx":385 + /* "hunter/_predicates.pyx":384 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) */ - __Pyx_TraceLine(385,0,__PYX_ERR(1, 385, __pyx_L1_error)) + __Pyx_TraceLine(384,0,__PYX_ERR(1, 384, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":386 + /* "hunter/_predicates.pyx":385 * def __repr__(self): * return '' % ( * self.condition, self.predicate, self.watermark # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(386,0,__PYX_ERR(1, 386, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 386, __pyx_L1_error) + __Pyx_TraceLine(385,0,__PYX_ERR(1, 385, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 386, __pyx_L1_error) + __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition)) __PYX_ERR(1, 385, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->predicate); __Pyx_GIVEREF(__pyx_v_self->predicate); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->predicate); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->predicate)) __PYX_ERR(1, 385, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1)) __PYX_ERR(1, 385, __pyx_L1_error); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":385 + /* "hunter/_predicates.pyx":384 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) */ - __Pyx_TraceLine(385,0,__PYX_ERR(1, 385, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_From_conditi, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 385, __pyx_L1_error) + __Pyx_TraceLine(384,0,__PYX_ERR(1, 384, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_From_conditi, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 384, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":384 + /* "hunter/_predicates.pyx":383 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -13931,7 +14593,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj return __pyx_r; } -/* "hunter/_predicates.pyx":389 +/* "hunter/_predicates.pyx":388 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -13942,10 +14604,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_6__eq__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -13963,47 +14626,47 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 389, 0, __PYX_ERR(1, 389, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 388, 0, __PYX_ERR(1, 388, __pyx_L1_error)); - /* "hunter/_predicates.pyx":390 + /* "hunter/_predicates.pyx":389 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, From) * and self.condition == ( other).condition */ - __Pyx_TraceLine(390,0,__PYX_ERR(1, 390, __pyx_L1_error)) + __Pyx_TraceLine(389,0,__PYX_ERR(1, 389, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":391 + /* "hunter/_predicates.pyx":390 * def __eq__(self, other): * return ( * isinstance(other, From) # <<<<<<<<<<<<<< * and self.condition == ( other).condition * and self.predicate == ( other).predicate */ - __Pyx_TraceLine(391,0,__PYX_ERR(1, 391, __pyx_L1_error)) + __Pyx_TraceLine(390,0,__PYX_ERR(1, 390, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_From); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 391, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 390, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":392 + /* "hunter/_predicates.pyx":391 * return ( * isinstance(other, From) * and self.condition == ( other).condition # <<<<<<<<<<<<<< * and self.predicate == ( other).predicate * ) */ - __Pyx_TraceLine(392,0,__PYX_ERR(1, 392, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 392, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 392, __pyx_L1_error) + __Pyx_TraceLine(391,0,__PYX_ERR(1, 391, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 391, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 391, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -14013,15 +14676,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":393 + /* "hunter/_predicates.pyx":392 * isinstance(other, From) * and self.condition == ( other).condition * and self.predicate == ( other).predicate # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(393,0,__PYX_ERR(1, 393, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 393, __pyx_L1_error) + __Pyx_TraceLine(392,0,__PYX_ERR(1, 392, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 392, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -14030,7 +14693,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":389 + /* "hunter/_predicates.pyx":388 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -14051,7 +14714,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_predicates.pyx":396 +/* "hunter/_predicates.pyx":395 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -14063,17 +14726,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -14085,13 +14754,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_ kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 396, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 395, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 396, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 395, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -14100,15 +14772,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_ } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 396, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 395, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.From.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 396, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 395, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_4From_8__call__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), __pyx_v_event); /* function exit code */ @@ -14116,6 +14796,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_ __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14128,25 +14814,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 396, 0, __PYX_ERR(1, 396, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 395, 0, __PYX_ERR(1, 395, __pyx_L1_error)); - /* "hunter/_predicates.pyx":397 + /* "hunter/_predicates.pyx":396 * * def __call__(self, Event event): * return fast_From_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): */ - __Pyx_TraceLine(397,0,__PYX_ERR(1, 397, __pyx_L1_error)) + __Pyx_TraceLine(396,0,__PYX_ERR(1, 396, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_From_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 397, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_From_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 396, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":396 + /* "hunter/_predicates.pyx":395 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -14166,7 +14852,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj return __pyx_r; } -/* "hunter/_predicates.pyx":399 +/* "hunter/_predicates.pyx":398 * return fast_From_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -14177,10 +14863,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -14197,34 +14884,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 399, 0, __PYX_ERR(1, 399, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 398, 0, __PYX_ERR(1, 398, __pyx_L1_error)); - /* "hunter/_predicates.pyx":400 + /* "hunter/_predicates.pyx":399 * * def __or__(self, other): * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(400,0,__PYX_ERR(1, 400, __pyx_L1_error)) + __Pyx_TraceLine(399,0,__PYX_ERR(1, 399, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 400, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 399, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 400, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 399, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":399 + /* "hunter/_predicates.pyx":398 * return fast_From_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -14245,7 +14932,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v return __pyx_r; } -/* "hunter/_predicates.pyx":402 +/* "hunter/_predicates.pyx":401 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -14256,10 +14943,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -14276,34 +14964,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 402, 0, __PYX_ERR(1, 402, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 401, 0, __PYX_ERR(1, 401, __pyx_L1_error)); - /* "hunter/_predicates.pyx":403 + /* "hunter/_predicates.pyx":402 * * def __and__(self, other): * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(403,0,__PYX_ERR(1, 403, __pyx_L1_error)) + __Pyx_TraceLine(402,0,__PYX_ERR(1, 402, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 403, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 402, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 402, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 403, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 402, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 402, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":402 + /* "hunter/_predicates.pyx":401 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -14324,7 +15012,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_ return __pyx_r; } -/* "hunter/_predicates.pyx":405 +/* "hunter/_predicates.pyx":404 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -14335,10 +15023,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_14__invert__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -14354,25 +15043,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 405, 0, __PYX_ERR(1, 405, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 404, 0, __PYX_ERR(1, 404, __pyx_L1_error)); - /* "hunter/_predicates.pyx":406 + /* "hunter/_predicates.pyx":405 * * def __invert__(self): * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_From_call(From self, Event event): */ - __Pyx_TraceLine(406,0,__PYX_ERR(1, 406, __pyx_L1_error)) + __Pyx_TraceLine(405,0,__PYX_ERR(1, 405, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 406, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 405, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":405 + /* "hunter/_predicates.pyx":404 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -14392,7 +15081,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_ return __pyx_r; } -/* "hunter/_predicates.pxd":45 +/* "hunter/_predicates.pxd":50 * cdef class From: * cdef: * readonly object condition # <<<<<<<<<<<<<< @@ -14403,10 +15092,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9condition_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9condition_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_9condition___get__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -14421,8 +15111,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9condition___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 45, 0, __PYX_ERR(2, 45, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 50, 0, __PYX_ERR(2, 50, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->condition); __pyx_r = __pyx_v_self->condition; @@ -14439,7 +15129,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9condition___get__(struct return __pyx_r; } -/* "hunter/_predicates.pxd":46 +/* "hunter/_predicates.pxd":51 * cdef: * readonly object condition * readonly object predicate # <<<<<<<<<<<<<< @@ -14450,10 +15140,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9condition___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9predicate_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9predicate_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_9predicate___get__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -14468,8 +15159,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9predicate___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 46, 0, __PYX_ERR(2, 46, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 51, 0, __PYX_ERR(2, 51, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicate); __pyx_r = __pyx_v_self->predicate; @@ -14486,7 +15177,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9predicate___get__(struct return __pyx_r; } -/* "hunter/_predicates.pxd":47 +/* "hunter/_predicates.pxd":52 * readonly object condition * readonly object predicate * readonly int watermark # <<<<<<<<<<<<<< @@ -14497,10 +15188,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9predicate___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9watermark_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9watermark_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_9watermark___get__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -14516,10 +15208,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9watermark___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 47, 0, __PYX_ERR(2, 47, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 52, 0, __PYX_ERR(2, 52, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 47, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -14537,7 +15229,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9watermark___get__(struct return __pyx_r; } -/* "hunter/_predicates.pxd":48 +/* "hunter/_predicates.pxd":53 * readonly object predicate * readonly int watermark * readonly int origin_depth # <<<<<<<<<<<<<< @@ -14548,10 +15240,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9watermark___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_depth_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_depth_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_12origin_depth___get__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -14567,10 +15260,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_depth___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 48, 0, __PYX_ERR(2, 48, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 53, 0, __PYX_ERR(2, 53, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 48, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -14588,21 +15281,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_depth___get__(str return __pyx_r; } -/* "hunter/_predicates.pxd":49 +/* "hunter/_predicates.pxd":54 * readonly int watermark * readonly int origin_depth * readonly int origin_calls # <<<<<<<<<<<<<< * - * @cython.final + * */ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_4From_12origin_calls___get__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -14618,10 +15312,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_calls___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 49, 0, __PYX_ERR(2, 49, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 54, 0, __PYX_ERR(2, 54, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 49, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 54, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -14662,12 +15356,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -14695,7 +15397,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__16) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -14716,16 +15418,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->predicate); __Pyx_GIVEREF(__pyx_v_self->predicate); - PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_v_self->predicate); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_v_self->predicate)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; @@ -14768,7 +15470,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -14842,22 +15544,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_217908684); __Pyx_GIVEREF(__pyx_int_217908684); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_217908684); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_217908684)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_4, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_4 = 0; __pyx_r = __pyx_t_2; @@ -14889,19 +15591,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_217908684); __Pyx_GIVEREF(__pyx_int_217908684); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_217908684); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_217908684)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_r = __pyx_t_3; @@ -14957,18 +15659,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -14980,7 +15690,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -14995,10 +15708,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.From.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -15006,6 +15727,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15019,7 +15746,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(stru const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__17) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -15054,7 +15781,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(stru return __pyx_r; } -/* "hunter/_predicates.pyx":408 +/* "hunter/_predicates.pyx":407 * return Not(self) * * cdef inline fast_From_call(From self, Event event): # <<<<<<<<<<<<<< @@ -15077,81 +15804,81 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_From_call", 0); - __Pyx_TraceCall("fast_From_call", __pyx_f[1], 408, 0, __PYX_ERR(1, 408, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_From_call", 1); + __Pyx_TraceCall("fast_From_call", __pyx_f[1], 407, 0, __PYX_ERR(1, 407, __pyx_L1_error)); - /* "hunter/_predicates.pyx":413 + /* "hunter/_predicates.pyx":412 * cdef int delta_calls * * if self.origin_depth == -1: # <<<<<<<<<<<<<< * result = fast_call(self.condition, event) * */ - __Pyx_TraceLine(413,0,__PYX_ERR(1, 413, __pyx_L1_error)) + __Pyx_TraceLine(412,0,__PYX_ERR(1, 412, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->origin_depth == -1L); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":414 + /* "hunter/_predicates.pyx":413 * * if self.origin_depth == -1: * result = fast_call(self.condition, event) # <<<<<<<<<<<<<< * * if result: */ - __Pyx_TraceLine(414,0,__PYX_ERR(1, 414, __pyx_L1_error)) + __Pyx_TraceLine(413,0,__PYX_ERR(1, 413, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->condition; __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_2, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 414, __pyx_L1_error) + __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_2, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 413, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_result = __pyx_t_3; __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":416 + /* "hunter/_predicates.pyx":415 * result = fast_call(self.condition, event) * * if result: # <<<<<<<<<<<<<< * self.origin_depth = event.depth * self.origin_calls = event.calls */ - __Pyx_TraceLine(416,0,__PYX_ERR(1, 416, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(1, 416, __pyx_L1_error) + __Pyx_TraceLine(415,0,__PYX_ERR(1, 415, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(1, 415, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_predicates.pyx":417 + /* "hunter/_predicates.pyx":416 * * if result: * self.origin_depth = event.depth # <<<<<<<<<<<<<< * self.origin_calls = event.calls * delta_depth = delta_calls = 0 */ - __Pyx_TraceLine(417,0,__PYX_ERR(1, 417, __pyx_L1_error)) + __Pyx_TraceLine(416,0,__PYX_ERR(1, 416, __pyx_L1_error)) __pyx_t_4 = __pyx_v_event->depth; __pyx_v_self->origin_depth = __pyx_t_4; - /* "hunter/_predicates.pyx":418 + /* "hunter/_predicates.pyx":417 * if result: * self.origin_depth = event.depth * self.origin_calls = event.calls # <<<<<<<<<<<<<< * delta_depth = delta_calls = 0 * else: */ - __Pyx_TraceLine(418,0,__PYX_ERR(1, 418, __pyx_L1_error)) + __Pyx_TraceLine(417,0,__PYX_ERR(1, 417, __pyx_L1_error)) __pyx_t_4 = __pyx_v_event->calls; __pyx_v_self->origin_calls = __pyx_t_4; - /* "hunter/_predicates.pyx":419 + /* "hunter/_predicates.pyx":418 * self.origin_depth = event.depth * self.origin_calls = event.calls * delta_depth = delta_calls = 0 # <<<<<<<<<<<<<< * else: * return False */ - __Pyx_TraceLine(419,0,__PYX_ERR(1, 419, __pyx_L1_error)) + __Pyx_TraceLine(418,0,__PYX_ERR(1, 418, __pyx_L1_error)) __pyx_v_delta_depth = 0; __pyx_v_delta_calls = 0; - /* "hunter/_predicates.pyx":416 + /* "hunter/_predicates.pyx":415 * result = fast_call(self.condition, event) * * if result: # <<<<<<<<<<<<<< @@ -15161,14 +15888,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru goto __pyx_L4; } - /* "hunter/_predicates.pyx":421 + /* "hunter/_predicates.pyx":420 * delta_depth = delta_calls = 0 * else: * return False # <<<<<<<<<<<<<< * else: * delta_depth = event.depth - self.origin_depth */ - __Pyx_TraceLine(421,0,__PYX_ERR(1, 421, __pyx_L1_error)) + __Pyx_TraceLine(420,0,__PYX_ERR(1, 420, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); @@ -15177,7 +15904,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru } __pyx_L4:; - /* "hunter/_predicates.pyx":413 + /* "hunter/_predicates.pyx":412 * cdef int delta_calls * * if self.origin_depth == -1: # <<<<<<<<<<<<<< @@ -15187,62 +15914,62 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru goto __pyx_L3; } - /* "hunter/_predicates.pyx":423 + /* "hunter/_predicates.pyx":422 * return False * else: * delta_depth = event.depth - self.origin_depth # <<<<<<<<<<<<<< * delta_calls = event.calls - self.origin_calls * if delta_depth < self.watermark: */ - __Pyx_TraceLine(423,0,__PYX_ERR(1, 423, __pyx_L1_error)) + __Pyx_TraceLine(422,0,__PYX_ERR(1, 422, __pyx_L1_error)) /*else*/ { __pyx_v_delta_depth = (__pyx_v_event->depth - __pyx_v_self->origin_depth); - /* "hunter/_predicates.pyx":424 + /* "hunter/_predicates.pyx":423 * else: * delta_depth = event.depth - self.origin_depth * delta_calls = event.calls - self.origin_calls # <<<<<<<<<<<<<< * if delta_depth < self.watermark: * self.origin_depth = -1 */ - __Pyx_TraceLine(424,0,__PYX_ERR(1, 424, __pyx_L1_error)) + __Pyx_TraceLine(423,0,__PYX_ERR(1, 423, __pyx_L1_error)) __pyx_v_delta_calls = (__pyx_v_event->calls - __pyx_v_self->origin_calls); - /* "hunter/_predicates.pyx":425 + /* "hunter/_predicates.pyx":424 * delta_depth = event.depth - self.origin_depth * delta_calls = event.calls - self.origin_calls * if delta_depth < self.watermark: # <<<<<<<<<<<<<< * self.origin_depth = -1 * return False */ - __Pyx_TraceLine(425,0,__PYX_ERR(1, 425, __pyx_L1_error)) + __Pyx_TraceLine(424,0,__PYX_ERR(1, 424, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_delta_depth < __pyx_v_self->watermark); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":426 + /* "hunter/_predicates.pyx":425 * delta_calls = event.calls - self.origin_calls * if delta_depth < self.watermark: * self.origin_depth = -1 # <<<<<<<<<<<<<< * return False * */ - __Pyx_TraceLine(426,0,__PYX_ERR(1, 426, __pyx_L1_error)) + __Pyx_TraceLine(425,0,__PYX_ERR(1, 425, __pyx_L1_error)) __pyx_v_self->origin_depth = -1; - /* "hunter/_predicates.pyx":427 + /* "hunter/_predicates.pyx":426 * if delta_depth < self.watermark: * self.origin_depth = -1 * return False # <<<<<<<<<<<<<< * * if self.predicate is None: */ - __Pyx_TraceLine(427,0,__PYX_ERR(1, 427, __pyx_L1_error)) + __Pyx_TraceLine(426,0,__PYX_ERR(1, 426, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; goto __pyx_L0; - /* "hunter/_predicates.pyx":425 + /* "hunter/_predicates.pyx":424 * delta_depth = event.depth - self.origin_depth * delta_calls = event.calls - self.origin_calls * if delta_depth < self.watermark: # <<<<<<<<<<<<<< @@ -15253,31 +15980,31 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru } __pyx_L3:; - /* "hunter/_predicates.pyx":429 + /* "hunter/_predicates.pyx":428 * return False * * if self.predicate is None: # <<<<<<<<<<<<<< * return True * else: */ - __Pyx_TraceLine(429,0,__PYX_ERR(1, 429, __pyx_L1_error)) + __Pyx_TraceLine(428,0,__PYX_ERR(1, 428, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->predicate == Py_None); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":430 + /* "hunter/_predicates.pyx":429 * * if self.predicate is None: * return True # <<<<<<<<<<<<<< * else: * relative_event = fast_clone(event) */ - __Pyx_TraceLine(430,0,__PYX_ERR(1, 430, __pyx_L1_error)) + __Pyx_TraceLine(429,0,__PYX_ERR(1, 429, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; goto __pyx_L0; - /* "hunter/_predicates.pyx":429 + /* "hunter/_predicates.pyx":428 * return False * * if self.predicate is None: # <<<<<<<<<<<<<< @@ -15286,52 +16013,52 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru */ } - /* "hunter/_predicates.pyx":432 + /* "hunter/_predicates.pyx":431 * return True * else: * relative_event = fast_clone(event) # <<<<<<<<<<<<<< * relative_event.depth = delta_depth * relative_event.calls = delta_calls */ - __Pyx_TraceLine(432,0,__PYX_ERR(1, 432, __pyx_L1_error)) + __Pyx_TraceLine(431,0,__PYX_ERR(1, 431, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_event)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 432, __pyx_L1_error) + __pyx_t_3 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_event)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_v_relative_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":433 + /* "hunter/_predicates.pyx":432 * else: * relative_event = fast_clone(event) * relative_event.depth = delta_depth # <<<<<<<<<<<<<< * relative_event.calls = delta_calls * return fast_call(self.predicate, relative_event) */ - __Pyx_TraceLine(433,0,__PYX_ERR(1, 433, __pyx_L1_error)) + __Pyx_TraceLine(432,0,__PYX_ERR(1, 432, __pyx_L1_error)) __pyx_v_relative_event->depth = __pyx_v_delta_depth; - /* "hunter/_predicates.pyx":434 + /* "hunter/_predicates.pyx":433 * relative_event = fast_clone(event) * relative_event.depth = delta_depth * relative_event.calls = delta_calls # <<<<<<<<<<<<<< * return fast_call(self.predicate, relative_event) * */ - __Pyx_TraceLine(434,0,__PYX_ERR(1, 434, __pyx_L1_error)) + __Pyx_TraceLine(433,0,__PYX_ERR(1, 433, __pyx_L1_error)) __pyx_v_relative_event->calls = __pyx_v_delta_calls; - /* "hunter/_predicates.pyx":435 + /* "hunter/_predicates.pyx":434 * relative_event.depth = delta_depth * relative_event.calls = delta_calls * return fast_call(self.predicate, relative_event) # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(435,0,__PYX_ERR(1, 435, __pyx_L1_error)) + __Pyx_TraceLine(434,0,__PYX_ERR(1, 434, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_3 = __pyx_v_self->predicate; __Pyx_INCREF(__pyx_t_3); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_3, __pyx_v_relative_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 435, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_3, __pyx_v_relative_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_r = __pyx_t_2; @@ -15339,7 +16066,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru goto __pyx_L0; } - /* "hunter/_predicates.pyx":408 + /* "hunter/_predicates.pyx":407 * return Not(self) * * cdef inline fast_From_call(From self, Event event): # <<<<<<<<<<<<<< @@ -15362,7 +16089,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru return __pyx_r; } -/* "hunter/_predicates.pyx":443 +/* "hunter/_predicates.pyx":442 * `And` predicate. Exits at the first sub-predicate that returns ``False``. * """ * def __init__(self, *predicates): # <<<<<<<<<<<<<< @@ -15374,11 +16101,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru static int __pyx_pw_6hunter_11_predicates_3And_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static int __pyx_pw_6hunter_11_predicates_3And_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_predicates = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_VARARGS(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; __Pyx_INCREF(__pyx_args); __pyx_v_predicates = __pyx_args; @@ -15397,24 +16130,24 @@ static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 443, 0, __PYX_ERR(1, 443, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 442, 0, __PYX_ERR(1, 442, __pyx_L1_error)); - /* "hunter/_predicates.pyx":444 + /* "hunter/_predicates.pyx":443 * """ * def __init__(self, *predicates): * self.predicates = predicates # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(444,0,__PYX_ERR(1, 444, __pyx_L1_error)) + __Pyx_TraceLine(443,0,__PYX_ERR(1, 443, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicates); __Pyx_GIVEREF(__pyx_v_predicates); __Pyx_GOTREF(__pyx_v_self->predicates); __Pyx_DECREF(__pyx_v_self->predicates); __pyx_v_self->predicates = __pyx_v_predicates; - /* "hunter/_predicates.pyx":443 + /* "hunter/_predicates.pyx":442 * `And` predicate. Exits at the first sub-predicate that returns ``False``. * """ * def __init__(self, *predicates): # <<<<<<<<<<<<<< @@ -15434,7 +16167,7 @@ static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter return __pyx_r; } -/* "hunter/_predicates.pyx":446 +/* "hunter/_predicates.pyx":445 * self.predicates = predicates * * def __str__(self): # <<<<<<<<<<<<<< @@ -15445,10 +16178,11 @@ static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_3__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_3__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_2__str__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)); /* function exit code */ @@ -15457,7 +16191,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_3__str__(PyObject *__pyx_v_ } static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_predicates.pyx":447 +/* "hunter/_predicates.pyx":446 * * def __str__(self): * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< @@ -15477,7 +16211,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(CYTHON_UNU if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 447, __pyx_L1_error) + __PYX_ERR(1, 446, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -15485,7 +16219,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(CYTHON_UNU __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_3And_7__str___2generator3, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_3And_7__str___2generator3, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -15514,7 +16248,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 447, 0, __PYX_ERR(1, 447, __pyx_L1_error)); + __Pyx_TraceCall("genexpr", __pyx_f[1], 446, 0, __PYX_ERR(1, 446, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L6_resume_from_yield; @@ -15524,26 +16258,33 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 447, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 447, __pyx_L1_error) } + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 446, __pyx_L1_error) + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 446, __pyx_L1_error) } if (unlikely(__pyx_cur_scope->__pyx_genexpr_arg_0 == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 447, __pyx_L1_error) + __PYX_ERR(1, 446, __pyx_L1_error) } - __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 446, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 446, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_p); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_p, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Str(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Str(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; @@ -15562,7 +16303,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_1); __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 447, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 446, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); @@ -15587,7 +16328,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ return __pyx_r; } -/* "hunter/_predicates.pyx":446 +/* "hunter/_predicates.pyx":445 * self.predicates = predicates * * def __str__(self): # <<<<<<<<<<<<<< @@ -15605,31 +16346,31 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - __Pyx_TraceCall("__str__", __pyx_f[1], 446, 0, __PYX_ERR(1, 446, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__str__", 1); + __Pyx_TraceCall("__str__", __pyx_f[1], 445, 0, __PYX_ERR(1, 445, __pyx_L1_error)); - /* "hunter/_predicates.pyx":447 + /* "hunter/_predicates.pyx":446 * * def __str__(self): * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(447,0,__PYX_ERR(1, 447, __pyx_L1_error)) + __Pyx_TraceLine(446,0,__PYX_ERR(1, 446, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_t_1 = __pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_And_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 447, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_And_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":446 + /* "hunter/_predicates.pyx":445 * self.predicates = predicates * * def __str__(self): # <<<<<<<<<<<<<< @@ -15651,7 +16392,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_predicates.pyx":449 +/* "hunter/_predicates.pyx":448 * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -15662,10 +16403,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_4__repr__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)); /* function exit code */ @@ -15682,31 +16424,31 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 449, 0, __PYX_ERR(1, 449, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 448, 0, __PYX_ERR(1, 448, __pyx_L1_error)); - /* "hunter/_predicates.pyx":450 + /* "hunter/_predicates.pyx":449 * * def __repr__(self): * return '' % (self.predicates,) # <<<<<<<<<<<<<< * * def __eq__(self, other): */ - __Pyx_TraceLine(450,0,__PYX_ERR(1, 450, __pyx_L1_error)) + __Pyx_TraceLine(449,0,__PYX_ERR(1, 449, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 450, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 449, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicates); __Pyx_GIVEREF(__pyx_v_self->predicates); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates); - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_And_predicat, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 450, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(1, 449, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_And_predicat, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 449, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":449 + /* "hunter/_predicates.pyx":448 * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -15727,7 +16469,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":452 +/* "hunter/_predicates.pyx":451 * return '' % (self.predicates,) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -15738,10 +16480,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_6__eq__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -15759,46 +16502,46 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 452, 0, __PYX_ERR(1, 452, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 451, 0, __PYX_ERR(1, 451, __pyx_L1_error)); - /* "hunter/_predicates.pyx":453 + /* "hunter/_predicates.pyx":452 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, And) * and self.predicates == ( other).predicates */ - __Pyx_TraceLine(453,0,__PYX_ERR(1, 453, __pyx_L1_error)) + __Pyx_TraceLine(452,0,__PYX_ERR(1, 452, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":454 + /* "hunter/_predicates.pyx":453 * def __eq__(self, other): * return ( * isinstance(other, And) # <<<<<<<<<<<<<< * and self.predicates == ( other).predicates * ) */ - __Pyx_TraceLine(454,0,__PYX_ERR(1, 454, __pyx_L1_error)) + __Pyx_TraceLine(453,0,__PYX_ERR(1, 453, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_And); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 454, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 453, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":455 + /* "hunter/_predicates.pyx":454 * return ( * isinstance(other, And) * and self.predicates == ( other).predicates # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(455,0,__PYX_ERR(1, 455, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 455, __pyx_L1_error) + __Pyx_TraceLine(454,0,__PYX_ERR(1, 454, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 454, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -15807,7 +16550,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":452 + /* "hunter/_predicates.pyx":451 * return '' % (self.predicates,) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -15828,7 +16571,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_predicates.pyx":458 +/* "hunter/_predicates.pyx":457 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -15840,17 +16583,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -15862,13 +16611,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 458, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 457, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 458, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 457, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -15877,15 +16629,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 458, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 457, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.And.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 458, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 457, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_3And_8__call__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self), __pyx_v_event); /* function exit code */ @@ -15893,6 +16653,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15905,25 +16671,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 458, 0, __PYX_ERR(1, 458, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 457, 0, __PYX_ERR(1, 457, __pyx_L1_error)); - /* "hunter/_predicates.pyx":459 + /* "hunter/_predicates.pyx":458 * * def __call__(self, Event event): * return fast_And_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): */ - __Pyx_TraceLine(459,0,__PYX_ERR(1, 459, __pyx_L1_error)) + __Pyx_TraceLine(458,0,__PYX_ERR(1, 458, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_And_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 459, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_And_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 458, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":458 + /* "hunter/_predicates.pyx":457 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -15943,7 +16709,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":461 +/* "hunter/_predicates.pyx":460 * return fast_And_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -15954,10 +16720,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -15974,34 +16741,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 461, 0, __PYX_ERR(1, 461, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 460, 0, __PYX_ERR(1, 460, __pyx_L1_error)); - /* "hunter/_predicates.pyx":462 + /* "hunter/_predicates.pyx":461 * * def __or__(self, other): * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(462,0,__PYX_ERR(1, 462, __pyx_L1_error)) + __Pyx_TraceLine(461,0,__PYX_ERR(1, 461, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 462, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 461, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 461, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 462, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 461, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 461, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":461 + /* "hunter/_predicates.pyx":460 * return fast_And_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -16022,7 +16789,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_ return __pyx_r; } -/* "hunter/_predicates.pyx":464 +/* "hunter/_predicates.pyx":463 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -16033,10 +16800,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -16056,34 +16824,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 464, 0, __PYX_ERR(1, 464, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 463, 0, __PYX_ERR(1, 463, __pyx_L1_error)); - /* "hunter/_predicates.pyx":466 + /* "hunter/_predicates.pyx":465 * def __and__(self, other): * cdef list predicates * if type(self) is And: # <<<<<<<<<<<<<< * predicates = list(( self).predicates) * else: */ - __Pyx_TraceLine(466,0,__PYX_ERR(1, 466, __pyx_L1_error)) + __Pyx_TraceLine(465,0,__PYX_ERR(1, 465, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_And)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":467 + /* "hunter/_predicates.pyx":466 * cdef list predicates * if type(self) is And: * predicates = list(( self).predicates) # <<<<<<<<<<<<<< * else: * predicates = [self] */ - __Pyx_TraceLine(467,0,__PYX_ERR(1, 467, __pyx_L1_error)) - __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 467, __pyx_L1_error) + __Pyx_TraceLine(466,0,__PYX_ERR(1, 466, __pyx_L1_error)) + __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 466, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":466 + /* "hunter/_predicates.pyx":465 * def __and__(self, other): * cdef list predicates * if type(self) is And: # <<<<<<<<<<<<<< @@ -16093,50 +16861,50 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v goto __pyx_L3; } - /* "hunter/_predicates.pyx":469 + /* "hunter/_predicates.pyx":468 * predicates = list(( self).predicates) * else: * predicates = [self] # <<<<<<<<<<<<<< * if isinstance(other, And): * predicates.extend(( other).predicates) */ - __Pyx_TraceLine(469,0,__PYX_ERR(1, 469, __pyx_L1_error)) + __Pyx_TraceLine(468,0,__PYX_ERR(1, 468, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 469, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 468, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self)) __PYX_ERR(1, 468, __pyx_L1_error); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; } __pyx_L3:; - /* "hunter/_predicates.pyx":470 + /* "hunter/_predicates.pyx":469 * else: * predicates = [self] * if isinstance(other, And): # <<<<<<<<<<<<<< * predicates.extend(( other).predicates) * else: */ - __Pyx_TraceLine(470,0,__PYX_ERR(1, 470, __pyx_L1_error)) + __Pyx_TraceLine(469,0,__PYX_ERR(1, 469, __pyx_L1_error)) __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_And); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":471 + /* "hunter/_predicates.pyx":470 * predicates = [self] * if isinstance(other, And): * predicates.extend(( other).predicates) # <<<<<<<<<<<<<< * else: * predicates.append(other) */ - __Pyx_TraceLine(471,0,__PYX_ERR(1, 471, __pyx_L1_error)) + __Pyx_TraceLine(470,0,__PYX_ERR(1, 470, __pyx_L1_error)) __pyx_t_2 = ((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_other)->predicates; __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 471, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 470, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":470 + /* "hunter/_predicates.pyx":469 * else: * predicates = [self] * if isinstance(other, And): # <<<<<<<<<<<<<< @@ -16146,38 +16914,38 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v goto __pyx_L4; } - /* "hunter/_predicates.pyx":473 + /* "hunter/_predicates.pyx":472 * predicates.extend(( other).predicates) * else: * predicates.append(other) # <<<<<<<<<<<<<< * return And(*predicates) * */ - __Pyx_TraceLine(473,0,__PYX_ERR(1, 473, __pyx_L1_error)) + __Pyx_TraceLine(472,0,__PYX_ERR(1, 472, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 473, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 472, __pyx_L1_error) } __pyx_L4:; - /* "hunter/_predicates.pyx":474 + /* "hunter/_predicates.pyx":473 * else: * predicates.append(other) * return And(*predicates) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(474,0,__PYX_ERR(1, 474, __pyx_L1_error)) + __Pyx_TraceLine(473,0,__PYX_ERR(1, 473, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 474, __pyx_L1_error) + __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 474, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":464 + /* "hunter/_predicates.pyx":463 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -16199,7 +16967,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v return __pyx_r; } -/* "hunter/_predicates.pyx":476 +/* "hunter/_predicates.pyx":475 * return And(*predicates) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -16210,10 +16978,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_14__invert__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)); /* function exit code */ @@ -16229,25 +16998,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_14__invert__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 476, 0, __PYX_ERR(1, 476, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 475, 0, __PYX_ERR(1, 475, __pyx_L1_error)); - /* "hunter/_predicates.pyx":477 + /* "hunter/_predicates.pyx":476 * * def __invert__(self): * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_And_call(And self, Event event): */ - __Pyx_TraceLine(477,0,__PYX_ERR(1, 477, __pyx_L1_error)) + __Pyx_TraceLine(476,0,__PYX_ERR(1, 476, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 477, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":476 + /* "hunter/_predicates.pyx":475 * return And(*predicates) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -16267,21 +17036,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_14__invert__(struct __pyx_o return __pyx_r; } -/* "hunter/_predicates.pxd":24 +/* "hunter/_predicates.pxd":25 * cdef class And: * cdef: * readonly tuple predicates # <<<<<<<<<<<<<< * - * @cython.final + * */ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3And_10predicates___get__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)); /* function exit code */ @@ -16296,8 +17066,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10predicates___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 24, 0, __PYX_ERR(2, 24, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 25, 0, __PYX_ERR(2, 25, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicates); __pyx_r = __pyx_v_self->predicates; @@ -16337,12 +17107,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -16368,7 +17146,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__18) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -16383,7 +17161,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicates); __Pyx_GIVEREF(__pyx_v_self->predicates); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -16423,7 +17201,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -16489,22 +17267,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_149034610); __Pyx_GIVEREF(__pyx_int_149034610); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_4; @@ -16536,19 +17314,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_149034610); __Pyx_GIVEREF(__pyx_int_149034610); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; @@ -16603,18 +17381,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -16626,7 +17412,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -16641,10 +17430,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.And.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -16652,6 +17449,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16665,7 +17468,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(struc const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__19) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -16700,7 +17503,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(struc return __pyx_r; } -/* "hunter/_predicates.pyx":479 +/* "hunter/_predicates.pyx":478 * return Not(self) * * cdef inline fast_And_call(And self, Event event): # <<<<<<<<<<<<<< @@ -16721,63 +17524,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_And_call", 0); - __Pyx_TraceCall("fast_And_call", __pyx_f[1], 479, 0, __PYX_ERR(1, 479, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_And_call", 1); + __Pyx_TraceCall("fast_And_call", __pyx_f[1], 478, 0, __PYX_ERR(1, 478, __pyx_L1_error)); - /* "hunter/_predicates.pyx":480 + /* "hunter/_predicates.pyx":479 * * cdef inline fast_And_call(And self, Event event): * for predicate in self.predicates: # <<<<<<<<<<<<<< * if not fast_call(predicate, event): * return False */ - __Pyx_TraceLine(480,0,__PYX_ERR(1, 480, __pyx_L1_error)) + __Pyx_TraceLine(479,0,__PYX_ERR(1, 479, __pyx_L1_error)) if (unlikely(__pyx_v_self->predicates == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 480, __pyx_L1_error) + __PYX_ERR(1, 479, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->predicates; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->predicates; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 479, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 480, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 479, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 480, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif __Pyx_XDECREF_SET(__pyx_v_predicate, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":481 + /* "hunter/_predicates.pyx":480 * cdef inline fast_And_call(And self, Event event): * for predicate in self.predicates: * if not fast_call(predicate, event): # <<<<<<<<<<<<<< * return False * else: */ - __Pyx_TraceLine(481,0,__PYX_ERR(1, 481, __pyx_L1_error)) - __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 481, __pyx_L1_error) + __Pyx_TraceLine(480,0,__PYX_ERR(1, 480, __pyx_L1_error)) + __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(1, 481, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(1, 480, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_5 = (!__pyx_t_4); if (__pyx_t_5) { - /* "hunter/_predicates.pyx":482 + /* "hunter/_predicates.pyx":481 * for predicate in self.predicates: * if not fast_call(predicate, event): * return False # <<<<<<<<<<<<<< * else: * return True */ - __Pyx_TraceLine(482,0,__PYX_ERR(1, 482, __pyx_L1_error)) + __Pyx_TraceLine(481,0,__PYX_ERR(1, 481, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":481 + /* "hunter/_predicates.pyx":480 * cdef inline fast_And_call(And self, Event event): * for predicate in self.predicates: * if not fast_call(predicate, event): # <<<<<<<<<<<<<< @@ -16786,43 +17596,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc */ } - /* "hunter/_predicates.pyx":480 + /* "hunter/_predicates.pyx":479 * * cdef inline fast_And_call(And self, Event event): * for predicate in self.predicates: # <<<<<<<<<<<<<< * if not fast_call(predicate, event): * return False */ - __Pyx_TraceLine(480,0,__PYX_ERR(1, 480, __pyx_L1_error)) + __Pyx_TraceLine(479,0,__PYX_ERR(1, 479, __pyx_L1_error)) } + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /*else*/ { - /* "hunter/_predicates.pyx":484 + /* "hunter/_predicates.pyx":483 * return False * else: * return True # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(484,0,__PYX_ERR(1, 484, __pyx_L1_error)) + __Pyx_TraceLine(483,0,__PYX_ERR(1, 483, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; } - /* "hunter/_predicates.pyx":480 - * - * cdef inline fast_And_call(And self, Event event): - * for predicate in self.predicates: # <<<<<<<<<<<<<< - * if not fast_call(predicate, event): - * return False - */ - __Pyx_TraceLine(480,0,__PYX_ERR(1, 480, __pyx_L1_error)) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "hunter/_predicates.pyx":479 + /* "hunter/_predicates.pyx":478 * return Not(self) * * cdef inline fast_And_call(And self, Event event): # <<<<<<<<<<<<<< @@ -16844,7 +17644,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc return __pyx_r; } -/* "hunter/_predicates.pyx":493 +/* "hunter/_predicates.pyx":492 * """ * * def __init__(self, *predicates): # <<<<<<<<<<<<<< @@ -16856,11 +17656,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc static int __pyx_pw_6hunter_11_predicates_2Or_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static int __pyx_pw_6hunter_11_predicates_2Or_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_predicates = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_VARARGS(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; __Pyx_INCREF(__pyx_args); __pyx_v_predicates = __pyx_args; @@ -16879,24 +17685,24 @@ static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 493, 0, __PYX_ERR(1, 493, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 492, 0, __PYX_ERR(1, 492, __pyx_L1_error)); - /* "hunter/_predicates.pyx":494 + /* "hunter/_predicates.pyx":493 * * def __init__(self, *predicates): * self.predicates = predicates # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(494,0,__PYX_ERR(1, 494, __pyx_L1_error)) + __Pyx_TraceLine(493,0,__PYX_ERR(1, 493, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicates); __Pyx_GIVEREF(__pyx_v_predicates); __Pyx_GOTREF(__pyx_v_self->predicates); __Pyx_DECREF(__pyx_v_self->predicates); __pyx_v_self->predicates = __pyx_v_predicates; - /* "hunter/_predicates.pyx":493 + /* "hunter/_predicates.pyx":492 * """ * * def __init__(self, *predicates): # <<<<<<<<<<<<<< @@ -16916,7 +17722,7 @@ static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_ return __pyx_r; } -/* "hunter/_predicates.pyx":496 +/* "hunter/_predicates.pyx":495 * self.predicates = predicates * * def __str__(self): # <<<<<<<<<<<<<< @@ -16927,10 +17733,11 @@ static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_3__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_3__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_2__str__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)); /* function exit code */ @@ -16939,7 +17746,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_3__str__(PyObject *__pyx_v_s } static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_predicates.pyx":497 +/* "hunter/_predicates.pyx":496 * * def __str__(self): * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< @@ -16959,7 +17766,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(CYTHON_UNUS if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 497, __pyx_L1_error) + __PYX_ERR(1, 496, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -16967,7 +17774,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(CYTHON_UNUS __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -16996,7 +17803,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 497, 0, __PYX_ERR(1, 497, __pyx_L1_error)); + __Pyx_TraceCall("genexpr", __pyx_f[1], 496, 0, __PYX_ERR(1, 496, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L6_resume_from_yield; @@ -17006,26 +17813,33 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 497, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 497, __pyx_L1_error) } + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 496, __pyx_L1_error) + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 496, __pyx_L1_error) } if (unlikely(__pyx_cur_scope->__pyx_genexpr_arg_0 == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 497, __pyx_L1_error) + __PYX_ERR(1, 496, __pyx_L1_error) } - __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 496, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 496, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_p); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_p, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Str(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Str(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; @@ -17044,7 +17858,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_1); __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 497, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 496, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); @@ -17069,7 +17883,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C return __pyx_r; } -/* "hunter/_predicates.pyx":496 +/* "hunter/_predicates.pyx":495 * self.predicates = predicates * * def __str__(self): # <<<<<<<<<<<<<< @@ -17087,31 +17901,31 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - __Pyx_TraceCall("__str__", __pyx_f[1], 496, 0, __PYX_ERR(1, 496, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__str__", 1); + __Pyx_TraceCall("__str__", __pyx_f[1], 495, 0, __PYX_ERR(1, 495, __pyx_L1_error)); - /* "hunter/_predicates.pyx":497 + /* "hunter/_predicates.pyx":496 * * def __str__(self): * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(497,0,__PYX_ERR(1, 497, __pyx_L1_error)) + __Pyx_TraceLine(496,0,__PYX_ERR(1, 496, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_t_1 = __pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Or_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 497, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Or_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":496 + /* "hunter/_predicates.pyx":495 * self.predicates = predicates * * def __str__(self): # <<<<<<<<<<<<<< @@ -17133,7 +17947,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_predicates.pyx":499 +/* "hunter/_predicates.pyx":498 * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -17144,10 +17958,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6h /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_4__repr__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)); /* function exit code */ @@ -17164,31 +17979,31 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 499, 0, __PYX_ERR(1, 499, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 498, 0, __PYX_ERR(1, 498, __pyx_L1_error)); - /* "hunter/_predicates.pyx":500 + /* "hunter/_predicates.pyx":499 * * def __repr__(self): * return '' % (self.predicates,) # <<<<<<<<<<<<<< * * def __eq__(self, other): */ - __Pyx_TraceLine(500,0,__PYX_ERR(1, 500, __pyx_L1_error)) + __Pyx_TraceLine(499,0,__PYX_ERR(1, 499, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 500, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicates); __Pyx_GIVEREF(__pyx_v_self->predicates); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates); - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_Or_predicate, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 500, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(1, 499, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_Or_predicate, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":499 + /* "hunter/_predicates.pyx":498 * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -17209,7 +18024,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_predicates.pyx":502 +/* "hunter/_predicates.pyx":501 * return '' % (self.predicates,) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -17220,10 +18035,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_6__eq__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -17241,46 +18057,46 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 502, 0, __PYX_ERR(1, 502, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 501, 0, __PYX_ERR(1, 501, __pyx_L1_error)); - /* "hunter/_predicates.pyx":503 + /* "hunter/_predicates.pyx":502 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, Or) * and self.predicates == ( other).predicates */ - __Pyx_TraceLine(503,0,__PYX_ERR(1, 503, __pyx_L1_error)) + __Pyx_TraceLine(502,0,__PYX_ERR(1, 502, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":504 + /* "hunter/_predicates.pyx":503 * def __eq__(self, other): * return ( * isinstance(other, Or) # <<<<<<<<<<<<<< * and self.predicates == ( other).predicates * ) */ - __Pyx_TraceLine(504,0,__PYX_ERR(1, 504, __pyx_L1_error)) + __Pyx_TraceLine(503,0,__PYX_ERR(1, 503, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Or); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 504, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":505 + /* "hunter/_predicates.pyx":504 * return ( * isinstance(other, Or) * and self.predicates == ( other).predicates # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(505,0,__PYX_ERR(1, 505, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 505, __pyx_L1_error) + __Pyx_TraceLine(504,0,__PYX_ERR(1, 504, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 504, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -17289,7 +18105,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":502 + /* "hunter/_predicates.pyx":501 * return '' % (self.predicates,) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -17310,7 +18126,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu return __pyx_r; } -/* "hunter/_predicates.pyx":508 +/* "hunter/_predicates.pyx":507 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -17322,17 +18138,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -17344,13 +18166,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_ kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 508, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 507, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 508, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 507, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -17359,15 +18184,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_ } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 508, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 507, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Or.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 508, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 507, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_8__call__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self), __pyx_v_event); /* function exit code */ @@ -17375,6 +18208,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_ __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17387,25 +18226,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 508, 0, __PYX_ERR(1, 508, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 507, 0, __PYX_ERR(1, 507, __pyx_L1_error)); - /* "hunter/_predicates.pyx":509 + /* "hunter/_predicates.pyx":508 * * def __call__(self, Event event): * return fast_Or_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): */ - __Pyx_TraceLine(509,0,__PYX_ERR(1, 509, __pyx_L1_error)) + __Pyx_TraceLine(508,0,__PYX_ERR(1, 508, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Or_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 509, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Or_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 508, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":508 + /* "hunter/_predicates.pyx":507 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -17425,7 +18264,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_predicates.pyx":511 +/* "hunter/_predicates.pyx":510 * return fast_Or_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -17436,10 +18275,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -17459,34 +18299,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 511, 0, __PYX_ERR(1, 511, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 510, 0, __PYX_ERR(1, 510, __pyx_L1_error)); - /* "hunter/_predicates.pyx":513 + /* "hunter/_predicates.pyx":512 * def __or__(self, other): * cdef list predicates * if type(self) is Or: # <<<<<<<<<<<<<< * predicates = list(( self).predicates) * else: */ - __Pyx_TraceLine(513,0,__PYX_ERR(1, 513, __pyx_L1_error)) + __Pyx_TraceLine(512,0,__PYX_ERR(1, 512, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Or)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":514 + /* "hunter/_predicates.pyx":513 * cdef list predicates * if type(self) is Or: * predicates = list(( self).predicates) # <<<<<<<<<<<<<< * else: * predicates = [self] */ - __Pyx_TraceLine(514,0,__PYX_ERR(1, 514, __pyx_L1_error)) - __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 514, __pyx_L1_error) + __Pyx_TraceLine(513,0,__PYX_ERR(1, 513, __pyx_L1_error)) + __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":513 + /* "hunter/_predicates.pyx":512 * def __or__(self, other): * cdef list predicates * if type(self) is Or: # <<<<<<<<<<<<<< @@ -17496,50 +18336,50 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s goto __pyx_L3; } - /* "hunter/_predicates.pyx":516 + /* "hunter/_predicates.pyx":515 * predicates = list(( self).predicates) * else: * predicates = [self] # <<<<<<<<<<<<<< * if type(other) is Or: * predicates.extend(( other).predicates) */ - __Pyx_TraceLine(516,0,__PYX_ERR(1, 516, __pyx_L1_error)) + __Pyx_TraceLine(515,0,__PYX_ERR(1, 515, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 516, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self)) __PYX_ERR(1, 515, __pyx_L1_error); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; } __pyx_L3:; - /* "hunter/_predicates.pyx":517 + /* "hunter/_predicates.pyx":516 * else: * predicates = [self] * if type(other) is Or: # <<<<<<<<<<<<<< * predicates.extend(( other).predicates) * else: */ - __Pyx_TraceLine(517,0,__PYX_ERR(1, 517, __pyx_L1_error)) + __Pyx_TraceLine(516,0,__PYX_ERR(1, 516, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Or)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":518 + /* "hunter/_predicates.pyx":517 * predicates = [self] * if type(other) is Or: * predicates.extend(( other).predicates) # <<<<<<<<<<<<<< * else: * predicates.append(other) */ - __Pyx_TraceLine(518,0,__PYX_ERR(1, 518, __pyx_L1_error)) + __Pyx_TraceLine(517,0,__PYX_ERR(1, 517, __pyx_L1_error)) __pyx_t_2 = ((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_other)->predicates; __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 518, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 517, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":517 + /* "hunter/_predicates.pyx":516 * else: * predicates = [self] * if type(other) is Or: # <<<<<<<<<<<<<< @@ -17549,38 +18389,38 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s goto __pyx_L4; } - /* "hunter/_predicates.pyx":520 + /* "hunter/_predicates.pyx":519 * predicates.extend(( other).predicates) * else: * predicates.append(other) # <<<<<<<<<<<<<< * return Or(*predicates) * */ - __Pyx_TraceLine(520,0,__PYX_ERR(1, 520, __pyx_L1_error)) + __Pyx_TraceLine(519,0,__PYX_ERR(1, 519, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 520, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 519, __pyx_L1_error) } __pyx_L4:; - /* "hunter/_predicates.pyx":521 + /* "hunter/_predicates.pyx":520 * else: * predicates.append(other) * return Or(*predicates) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(521,0,__PYX_ERR(1, 521, __pyx_L1_error)) + __Pyx_TraceLine(520,0,__PYX_ERR(1, 520, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 521, __pyx_L1_error) + __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 521, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":511 + /* "hunter/_predicates.pyx":510 * return fast_Or_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -17602,7 +18442,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s return __pyx_r; } -/* "hunter/_predicates.pyx":523 +/* "hunter/_predicates.pyx":522 * return Or(*predicates) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -17613,10 +18453,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -17633,34 +18474,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 523, 0, __PYX_ERR(1, 523, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 522, 0, __PYX_ERR(1, 522, __pyx_L1_error)); - /* "hunter/_predicates.pyx":524 + /* "hunter/_predicates.pyx":523 * * def __and__(self, other): * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(524,0,__PYX_ERR(1, 524, __pyx_L1_error)) + __Pyx_TraceLine(523,0,__PYX_ERR(1, 523, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 524, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 523, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 524, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 523, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":523 + /* "hunter/_predicates.pyx":522 * return Or(*predicates) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -17681,7 +18522,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_ return __pyx_r; } -/* "hunter/_predicates.pyx":526 +/* "hunter/_predicates.pyx":525 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -17692,10 +18533,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_14__invert__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)); /* function exit code */ @@ -17711,25 +18553,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_14__invert__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 526, 0, __PYX_ERR(1, 526, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 525, 0, __PYX_ERR(1, 525, __pyx_L1_error)); - /* "hunter/_predicates.pyx":527 + /* "hunter/_predicates.pyx":526 * * def __invert__(self): * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_Or_call(Or self, Event event): */ - __Pyx_TraceLine(527,0,__PYX_ERR(1, 527, __pyx_L1_error)) + __Pyx_TraceLine(526,0,__PYX_ERR(1, 526, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 527, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":526 + /* "hunter/_predicates.pyx":525 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -17749,21 +18591,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_14__invert__(struct __pyx_ob return __pyx_r; } -/* "hunter/_predicates.pxd":29 +/* "hunter/_predicates.pxd":31 * cdef class Or: * cdef: * readonly tuple predicates # <<<<<<<<<<<<<< * - * @cython.final + * */ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_10predicates___get__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)); /* function exit code */ @@ -17778,8 +18621,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10predicates___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 29, 0, __PYX_ERR(2, 29, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 31, 0, __PYX_ERR(2, 31, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicates); __pyx_r = __pyx_v_self->predicates; @@ -17819,12 +18662,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -17850,7 +18701,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__20) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -17865,7 +18716,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicates); __Pyx_GIVEREF(__pyx_v_self->predicates); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -17905,7 +18756,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -17971,22 +18822,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_149034610); __Pyx_GIVEREF(__pyx_int_149034610); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_4; @@ -18018,19 +18869,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_149034610); __Pyx_GIVEREF(__pyx_int_149034610); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; @@ -18085,18 +18936,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -18108,7 +18967,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -18123,10 +18985,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Or.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -18134,6 +19004,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18147,7 +19023,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(struct const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__21) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -18182,7 +19058,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(struct return __pyx_r; } -/* "hunter/_predicates.pyx":529 +/* "hunter/_predicates.pyx":528 * return Not(self) * * cdef inline fast_Or_call(Or self, Event event): # <<<<<<<<<<<<<< @@ -18202,62 +19078,69 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Or_call", 0); - __Pyx_TraceCall("fast_Or_call", __pyx_f[1], 529, 0, __PYX_ERR(1, 529, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_Or_call", 1); + __Pyx_TraceCall("fast_Or_call", __pyx_f[1], 528, 0, __PYX_ERR(1, 528, __pyx_L1_error)); - /* "hunter/_predicates.pyx":530 + /* "hunter/_predicates.pyx":529 * * cdef inline fast_Or_call(Or self, Event event): * for predicate in self.predicates: # <<<<<<<<<<<<<< * if fast_call(predicate, event): * return True */ - __Pyx_TraceLine(530,0,__PYX_ERR(1, 530, __pyx_L1_error)) + __Pyx_TraceLine(529,0,__PYX_ERR(1, 529, __pyx_L1_error)) if (unlikely(__pyx_v_self->predicates == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 530, __pyx_L1_error) + __PYX_ERR(1, 529, __pyx_L1_error) } - __pyx_t_1 = __pyx_v_self->predicates; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; + __pyx_t_1 = __pyx_v_self->predicates; __Pyx_INCREF(__pyx_t_1); + __pyx_t_2 = 0; for (;;) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 529, __pyx_L1_error) + #endif + if (__pyx_t_2 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 530, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 529, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 530, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif __Pyx_XDECREF_SET(__pyx_v_predicate, __pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":531 + /* "hunter/_predicates.pyx":530 * cdef inline fast_Or_call(Or self, Event event): * for predicate in self.predicates: * if fast_call(predicate, event): # <<<<<<<<<<<<<< * return True * else: */ - __Pyx_TraceLine(531,0,__PYX_ERR(1, 531, __pyx_L1_error)) - __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 531, __pyx_L1_error) + __Pyx_TraceLine(530,0,__PYX_ERR(1, 530, __pyx_L1_error)) + __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(1, 531, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(1, 530, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_4) { - /* "hunter/_predicates.pyx":532 + /* "hunter/_predicates.pyx":531 * for predicate in self.predicates: * if fast_call(predicate, event): * return True # <<<<<<<<<<<<<< * else: * return False */ - __Pyx_TraceLine(532,0,__PYX_ERR(1, 532, __pyx_L1_error)) + __Pyx_TraceLine(531,0,__PYX_ERR(1, 531, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":531 + /* "hunter/_predicates.pyx":530 * cdef inline fast_Or_call(Or self, Event event): * for predicate in self.predicates: * if fast_call(predicate, event): # <<<<<<<<<<<<<< @@ -18266,43 +19149,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct */ } - /* "hunter/_predicates.pyx":530 + /* "hunter/_predicates.pyx":529 * * cdef inline fast_Or_call(Or self, Event event): * for predicate in self.predicates: # <<<<<<<<<<<<<< * if fast_call(predicate, event): * return True */ - __Pyx_TraceLine(530,0,__PYX_ERR(1, 530, __pyx_L1_error)) + __Pyx_TraceLine(529,0,__PYX_ERR(1, 529, __pyx_L1_error)) } + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /*else*/ { - /* "hunter/_predicates.pyx":534 + /* "hunter/_predicates.pyx":533 * return True * else: * return False # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(534,0,__PYX_ERR(1, 534, __pyx_L1_error)) + __Pyx_TraceLine(533,0,__PYX_ERR(1, 533, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; } - /* "hunter/_predicates.pyx":530 - * - * cdef inline fast_Or_call(Or self, Event event): - * for predicate in self.predicates: # <<<<<<<<<<<<<< - * if fast_call(predicate, event): - * return True - */ - __Pyx_TraceLine(530,0,__PYX_ERR(1, 530, __pyx_L1_error)) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "hunter/_predicates.pyx":529 + /* "hunter/_predicates.pyx":528 * return Not(self) * * cdef inline fast_Or_call(Or self, Event event): # <<<<<<<<<<<<<< @@ -18324,7 +19197,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct return __pyx_r; } -/* "hunter/_predicates.pyx":541 +/* "hunter/_predicates.pyx":540 * `Not` predicate. * """ * def __init__(self, predicate): # <<<<<<<<<<<<<< @@ -18336,17 +19209,23 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_predicate = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_predicate,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -18358,13 +19237,16 @@ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 541, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 540, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 541, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 540, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -18373,10 +19255,18 @@ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, } __pyx_v_predicate = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 541, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 540, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Not.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -18384,6 +19274,12 @@ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, __pyx_r = __pyx_pf_6hunter_11_predicates_3Not___init__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), __pyx_v_predicate); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18395,24 +19291,24 @@ static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 541, 0, __PYX_ERR(1, 541, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 540, 0, __PYX_ERR(1, 540, __pyx_L1_error)); - /* "hunter/_predicates.pyx":542 + /* "hunter/_predicates.pyx":541 * """ * def __init__(self, predicate): * self.predicate = predicate # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(542,0,__PYX_ERR(1, 542, __pyx_L1_error)) + __Pyx_TraceLine(541,0,__PYX_ERR(1, 541, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->predicate); __Pyx_DECREF(__pyx_v_self->predicate); __pyx_v_self->predicate = __pyx_v_predicate; - /* "hunter/_predicates.pyx":541 + /* "hunter/_predicates.pyx":540 * `Not` predicate. * """ * def __init__(self, predicate): # <<<<<<<<<<<<<< @@ -18432,7 +19328,7 @@ static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter return __pyx_r; } -/* "hunter/_predicates.pyx":544 +/* "hunter/_predicates.pyx":543 * self.predicate = predicate * * def __str__(self): # <<<<<<<<<<<<<< @@ -18443,10 +19339,11 @@ static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_3__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_3__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_2__str__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)); /* function exit code */ @@ -18462,25 +19359,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - __Pyx_TraceCall("__str__", __pyx_f[1], 544, 0, __PYX_ERR(1, 544, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__str__", 1); + __Pyx_TraceCall("__str__", __pyx_f[1], 543, 0, __PYX_ERR(1, 543, __pyx_L1_error)); - /* "hunter/_predicates.pyx":545 + /* "hunter/_predicates.pyx":544 * * def __str__(self): * return 'Not(%s)' % self.predicate # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(545,0,__PYX_ERR(1, 545, __pyx_L1_error)) + __Pyx_TraceLine(544,0,__PYX_ERR(1, 544, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Not_s, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 545, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Not_s, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 544, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":544 + /* "hunter/_predicates.pyx":543 * self.predicate = predicate * * def __str__(self): # <<<<<<<<<<<<<< @@ -18500,7 +19397,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_predicates.pyx":547 +/* "hunter/_predicates.pyx":546 * return 'Not(%s)' % self.predicate * * def __repr__(self): # <<<<<<<<<<<<<< @@ -18511,10 +19408,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_4__repr__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)); /* function exit code */ @@ -18530,25 +19428,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 547, 0, __PYX_ERR(1, 547, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 546, 0, __PYX_ERR(1, 546, __pyx_L1_error)); - /* "hunter/_predicates.pyx":548 + /* "hunter/_predicates.pyx":547 * * def __repr__(self): * return '' % self.predicate # <<<<<<<<<<<<<< * * def __eq__(self, other): */ - __Pyx_TraceLine(548,0,__PYX_ERR(1, 548, __pyx_L1_error)) + __Pyx_TraceLine(547,0,__PYX_ERR(1, 547, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyString_FormatSafe(__pyx_kp_s_hunter__predicates_Not_predicat, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 548, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyString_FormatSafe(__pyx_kp_s_hunter__predicates_Not_predicat, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":547 + /* "hunter/_predicates.pyx":546 * return 'Not(%s)' % self.predicate * * def __repr__(self): # <<<<<<<<<<<<<< @@ -18568,7 +19466,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":550 +/* "hunter/_predicates.pyx":549 * return '' % self.predicate * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -18579,10 +19477,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_6__eq__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -18600,46 +19499,46 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 550, 0, __PYX_ERR(1, 550, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 549, 0, __PYX_ERR(1, 549, __pyx_L1_error)); - /* "hunter/_predicates.pyx":551 + /* "hunter/_predicates.pyx":550 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, Not) * and self.predicate == ( other).predicate */ - __Pyx_TraceLine(551,0,__PYX_ERR(1, 551, __pyx_L1_error)) + __Pyx_TraceLine(550,0,__PYX_ERR(1, 550, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":552 + /* "hunter/_predicates.pyx":551 * def __eq__(self, other): * return ( * isinstance(other, Not) # <<<<<<<<<<<<<< * and self.predicate == ( other).predicate * ) */ - __Pyx_TraceLine(552,0,__PYX_ERR(1, 552, __pyx_L1_error)) + __Pyx_TraceLine(551,0,__PYX_ERR(1, 551, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Not); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 552, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 551, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":553 + /* "hunter/_predicates.pyx":552 * return ( * isinstance(other, Not) * and self.predicate == ( other).predicate # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(553,0,__PYX_ERR(1, 553, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 553, __pyx_L1_error) + __Pyx_TraceLine(552,0,__PYX_ERR(1, 552, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 552, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -18648,7 +19547,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":550 + /* "hunter/_predicates.pyx":549 * return '' % self.predicate * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -18669,7 +19568,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_predicates.pyx":556 +/* "hunter/_predicates.pyx":555 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -18681,17 +19580,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -18703,13 +19608,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 556, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 555, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 556, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 555, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -18718,15 +19626,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 556, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 555, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Not.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 556, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 555, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_8__call__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), __pyx_v_event); /* function exit code */ @@ -18734,6 +19650,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18746,25 +19668,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 556, 0, __PYX_ERR(1, 556, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 555, 0, __PYX_ERR(1, 555, __pyx_L1_error)); - /* "hunter/_predicates.pyx":557 + /* "hunter/_predicates.pyx":556 * * def __call__(self, Event event): * return fast_Not_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): */ - __Pyx_TraceLine(557,0,__PYX_ERR(1, 557, __pyx_L1_error)) + __Pyx_TraceLine(556,0,__PYX_ERR(1, 556, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Not_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 557, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Not_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 556, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":556 + /* "hunter/_predicates.pyx":555 * ) * * def __call__(self, Event event): # <<<<<<<<<<<<<< @@ -18784,7 +19706,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_predicates.pyx":559 +/* "hunter/_predicates.pyx":558 * return fast_Not_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -18795,10 +19717,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -18817,17 +19740,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 559, 0, __PYX_ERR(1, 559, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 558, 0, __PYX_ERR(1, 558, __pyx_L1_error)); - /* "hunter/_predicates.pyx":560 + /* "hunter/_predicates.pyx":559 * * def __or__(self, other): * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< * return Not(And(( self).predicate, ( other).predicate)) * else: */ - __Pyx_TraceLine(560,0,__PYX_ERR(1, 560, __pyx_L1_error)) + __Pyx_TraceLine(559,0,__PYX_ERR(1, 559, __pyx_L1_error)) __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); if (__pyx_t_2) { } else { @@ -18839,34 +19762,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ __pyx_L4_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_predicates.pyx":561 + /* "hunter/_predicates.pyx":560 * def __or__(self, other): * if type(self) is Not and type(other) is Not: * return Not(And(( self).predicate, ( other).predicate)) # <<<<<<<<<<<<<< * else: * return Or(self, other) */ - __Pyx_TraceLine(561,0,__PYX_ERR(1, 561, __pyx_L1_error)) + __Pyx_TraceLine(560,0,__PYX_ERR(1, 560, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 561, __pyx_L1_error) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 560, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate)) __PYX_ERR(1, 560, __pyx_L1_error); __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 561, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate)) __PYX_ERR(1, 560, __pyx_L1_error); + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 560, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 561, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 560, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":560 + /* "hunter/_predicates.pyx":559 * * def __or__(self, other): * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< @@ -18875,25 +19798,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ */ } - /* "hunter/_predicates.pyx":563 + /* "hunter/_predicates.pyx":562 * return Not(And(( self).predicate, ( other).predicate)) * else: * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(563,0,__PYX_ERR(1, 563, __pyx_L1_error)) + __Pyx_TraceLine(562,0,__PYX_ERR(1, 562, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 563, __pyx_L1_error) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 562, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self)) __PYX_ERR(1, 562, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_other); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 563, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_other)) __PYX_ERR(1, 562, __pyx_L1_error); + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 562, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_r = __pyx_t_4; @@ -18901,7 +19824,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ goto __pyx_L0; } - /* "hunter/_predicates.pyx":559 + /* "hunter/_predicates.pyx":558 * return fast_Not_call(self, event) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -18922,7 +19845,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ return __pyx_r; } -/* "hunter/_predicates.pyx":565 +/* "hunter/_predicates.pyx":564 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -18933,10 +19856,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -18955,17 +19879,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 565, 0, __PYX_ERR(1, 565, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 564, 0, __PYX_ERR(1, 564, __pyx_L1_error)); - /* "hunter/_predicates.pyx":566 + /* "hunter/_predicates.pyx":565 * * def __and__(self, other): * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< * return Not(Or(( self).predicate, ( other).predicate)) * else: */ - __Pyx_TraceLine(566,0,__PYX_ERR(1, 566, __pyx_L1_error)) + __Pyx_TraceLine(565,0,__PYX_ERR(1, 565, __pyx_L1_error)) __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); if (__pyx_t_2) { } else { @@ -18977,34 +19901,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v __pyx_L4_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_predicates.pyx":567 + /* "hunter/_predicates.pyx":566 * def __and__(self, other): * if type(self) is Not and type(other) is Not: * return Not(Or(( self).predicate, ( other).predicate)) # <<<<<<<<<<<<<< * else: * return And(self, other) */ - __Pyx_TraceLine(567,0,__PYX_ERR(1, 567, __pyx_L1_error)) + __Pyx_TraceLine(566,0,__PYX_ERR(1, 566, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 567, __pyx_L1_error) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate)) __PYX_ERR(1, 566, __pyx_L1_error); __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 567, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate)) __PYX_ERR(1, 566, __pyx_L1_error); + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 567, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":566 + /* "hunter/_predicates.pyx":565 * * def __and__(self, other): * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< @@ -19013,25 +19937,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v */ } - /* "hunter/_predicates.pyx":569 + /* "hunter/_predicates.pyx":568 * return Not(Or(( self).predicate, ( other).predicate)) * else: * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(569,0,__PYX_ERR(1, 569, __pyx_L1_error)) + __Pyx_TraceLine(568,0,__PYX_ERR(1, 568, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 569, __pyx_L1_error) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 568, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self)) __PYX_ERR(1, 568, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_other); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 569, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_other)) __PYX_ERR(1, 568, __pyx_L1_error); + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 568, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_r = __pyx_t_4; @@ -19039,7 +19963,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v goto __pyx_L0; } - /* "hunter/_predicates.pyx":565 + /* "hunter/_predicates.pyx":564 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -19060,7 +19984,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v return __pyx_r; } -/* "hunter/_predicates.pyx":571 +/* "hunter/_predicates.pyx":570 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -19071,10 +19995,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_14__invert__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)); /* function exit code */ @@ -19089,23 +20014,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_14__invert__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 571, 0, __PYX_ERR(1, 571, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 570, 0, __PYX_ERR(1, 570, __pyx_L1_error)); - /* "hunter/_predicates.pyx":572 + /* "hunter/_predicates.pyx":571 * * def __invert__(self): * return self.predicate # <<<<<<<<<<<<<< * * cdef inline fast_Not_call(Not self, Event event): */ - __Pyx_TraceLine(572,0,__PYX_ERR(1, 572, __pyx_L1_error)) + __Pyx_TraceLine(571,0,__PYX_ERR(1, 571, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicate); __pyx_r = __pyx_v_self->predicate; goto __pyx_L0; - /* "hunter/_predicates.pyx":571 + /* "hunter/_predicates.pyx":570 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -19124,21 +20049,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_14__invert__(struct __pyx_o return __pyx_r; } -/* "hunter/_predicates.pxd":34 +/* "hunter/_predicates.pxd":37 * cdef class Not: * cdef: * readonly object predicate # <<<<<<<<<<<<<< * - * @cython.final + * */ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_9predicate___get__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)); /* function exit code */ @@ -19153,8 +20079,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_9predicate___get__(struct _ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 34, 0, __PYX_ERR(2, 34, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 37, 0, __PYX_ERR(2, 37, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicate); __pyx_r = __pyx_v_self->predicate; @@ -19194,12 +20120,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -19225,7 +20159,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__22) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -19240,7 +20174,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicate); __Pyx_GIVEREF(__pyx_v_self->predicate); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicate); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicate)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -19280,7 +20214,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -19346,22 +20280,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_37183945); __Pyx_GIVEREF(__pyx_int_37183945); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_37183945); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_37183945)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_4; @@ -19393,19 +20327,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_37183945); __Pyx_GIVEREF(__pyx_int_37183945); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_37183945); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_37183945)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; @@ -19460,18 +20394,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -19483,7 +20425,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -19498,10 +20443,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Not.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -19509,6 +20462,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19522,7 +20481,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(struc const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__23) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -19557,7 +20516,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(struc return __pyx_r; } -/* "hunter/_predicates.pyx":574 +/* "hunter/_predicates.pyx":573 * return self.predicate * * cdef inline fast_Not_call(Not self, Event event): # <<<<<<<<<<<<<< @@ -19575,32 +20534,32 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Not_call", 0); - __Pyx_TraceCall("fast_Not_call", __pyx_f[1], 574, 0, __PYX_ERR(1, 574, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_Not_call", 1); + __Pyx_TraceCall("fast_Not_call", __pyx_f[1], 573, 0, __PYX_ERR(1, 573, __pyx_L1_error)); - /* "hunter/_predicates.pyx":575 + /* "hunter/_predicates.pyx":574 * * cdef inline fast_Not_call(Not self, Event event): * return not fast_call(self.predicate, event) # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(575,0,__PYX_ERR(1, 575, __pyx_L1_error)) + __Pyx_TraceLine(574,0,__PYX_ERR(1, 574, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_v_self->predicate; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 575, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 575, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 574, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyBool_FromLong((!__pyx_t_3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 575, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBool_FromLong((!__pyx_t_3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":574 + /* "hunter/_predicates.pyx":573 * return self.predicate * * cdef inline fast_Not_call(Not self, Event event): # <<<<<<<<<<<<<< @@ -19621,7 +20580,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struc return __pyx_r; } -/* "hunter/_predicates.pyx":578 +/* "hunter/_predicates.pyx":577 * * * cdef inline fast_call(callable, Event event): # <<<<<<<<<<<<<< @@ -19641,36 +20600,36 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_call", 0); - __Pyx_TraceCall("fast_call", __pyx_f[1], 578, 0, __PYX_ERR(1, 578, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_call", 1); + __Pyx_TraceCall("fast_call", __pyx_f[1], 577, 0, __PYX_ERR(1, 577, __pyx_L1_error)); - /* "hunter/_predicates.pyx":579 + /* "hunter/_predicates.pyx":578 * * cdef inline fast_call(callable, Event event): * if type(callable) is Query: # <<<<<<<<<<<<<< * return fast_Query_call( callable, event) * elif type(callable) is Or: */ - __Pyx_TraceLine(579,0,__PYX_ERR(1, 579, __pyx_L1_error)) + __Pyx_TraceLine(578,0,__PYX_ERR(1, 578, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Query)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":580 + /* "hunter/_predicates.pyx":579 * cdef inline fast_call(callable, Event event): * if type(callable) is Query: * return fast_Query_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is Or: * return fast_Or_call( callable, event) */ - __Pyx_TraceLine(580,0,__PYX_ERR(1, 580, __pyx_L1_error)) + __Pyx_TraceLine(579,0,__PYX_ERR(1, 579, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Query_call(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 580, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Query_call(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":579 + /* "hunter/_predicates.pyx":578 * * cdef inline fast_call(callable, Event event): * if type(callable) is Query: # <<<<<<<<<<<<<< @@ -19679,33 +20638,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":581 + /* "hunter/_predicates.pyx":580 * if type(callable) is Query: * return fast_Query_call( callable, event) * elif type(callable) is Or: # <<<<<<<<<<<<<< * return fast_Or_call( callable, event) * elif type(callable) is And: */ - __Pyx_TraceLine(581,0,__PYX_ERR(1, 581, __pyx_L1_error)) + __Pyx_TraceLine(580,0,__PYX_ERR(1, 580, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Or)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":582 + /* "hunter/_predicates.pyx":581 * return fast_Query_call( callable, event) * elif type(callable) is Or: * return fast_Or_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is And: * return fast_And_call( callable, event) */ - __Pyx_TraceLine(582,0,__PYX_ERR(1, 582, __pyx_L1_error)) + __Pyx_TraceLine(581,0,__PYX_ERR(1, 581, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Or_call(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 582, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Or_call(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":581 + /* "hunter/_predicates.pyx":580 * if type(callable) is Query: * return fast_Query_call( callable, event) * elif type(callable) is Or: # <<<<<<<<<<<<<< @@ -19714,33 +20673,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":583 + /* "hunter/_predicates.pyx":582 * elif type(callable) is Or: * return fast_Or_call( callable, event) * elif type(callable) is And: # <<<<<<<<<<<<<< * return fast_And_call( callable, event) * elif type(callable) is Not: */ - __Pyx_TraceLine(583,0,__PYX_ERR(1, 583, __pyx_L1_error)) + __Pyx_TraceLine(582,0,__PYX_ERR(1, 582, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_And)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":584 + /* "hunter/_predicates.pyx":583 * return fast_Or_call( callable, event) * elif type(callable) is And: * return fast_And_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is Not: * return fast_Not_call( callable, event) */ - __Pyx_TraceLine(584,0,__PYX_ERR(1, 584, __pyx_L1_error)) + __Pyx_TraceLine(583,0,__PYX_ERR(1, 583, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_And_call(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 584, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_And_call(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":583 + /* "hunter/_predicates.pyx":582 * elif type(callable) is Or: * return fast_Or_call( callable, event) * elif type(callable) is And: # <<<<<<<<<<<<<< @@ -19749,33 +20708,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":585 + /* "hunter/_predicates.pyx":584 * elif type(callable) is And: * return fast_And_call( callable, event) * elif type(callable) is Not: # <<<<<<<<<<<<<< * return fast_Not_call( callable, event) * elif type(callable) is When: */ - __Pyx_TraceLine(585,0,__PYX_ERR(1, 585, __pyx_L1_error)) + __Pyx_TraceLine(584,0,__PYX_ERR(1, 584, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":586 + /* "hunter/_predicates.pyx":585 * return fast_And_call( callable, event) * elif type(callable) is Not: * return fast_Not_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is When: * return fast_When_call( callable, event) */ - __Pyx_TraceLine(586,0,__PYX_ERR(1, 586, __pyx_L1_error)) + __Pyx_TraceLine(585,0,__PYX_ERR(1, 585, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Not_call(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 586, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Not_call(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":585 + /* "hunter/_predicates.pyx":584 * elif type(callable) is And: * return fast_And_call( callable, event) * elif type(callable) is Not: # <<<<<<<<<<<<<< @@ -19784,33 +20743,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":587 + /* "hunter/_predicates.pyx":586 * elif type(callable) is Not: * return fast_Not_call( callable, event) * elif type(callable) is When: # <<<<<<<<<<<<<< * return fast_When_call( callable, event) * elif type(callable) is From: */ - __Pyx_TraceLine(587,0,__PYX_ERR(1, 587, __pyx_L1_error)) + __Pyx_TraceLine(586,0,__PYX_ERR(1, 586, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_When)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":588 + /* "hunter/_predicates.pyx":587 * return fast_Not_call( callable, event) * elif type(callable) is When: * return fast_When_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is From: * return fast_From_call( callable, event) */ - __Pyx_TraceLine(588,0,__PYX_ERR(1, 588, __pyx_L1_error)) + __Pyx_TraceLine(587,0,__PYX_ERR(1, 587, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_When_call(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 588, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_When_call(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":587 + /* "hunter/_predicates.pyx":586 * elif type(callable) is Not: * return fast_Not_call( callable, event) * elif type(callable) is When: # <<<<<<<<<<<<<< @@ -19819,33 +20778,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":589 + /* "hunter/_predicates.pyx":588 * elif type(callable) is When: * return fast_When_call( callable, event) * elif type(callable) is From: # <<<<<<<<<<<<<< * return fast_From_call( callable, event) * elif type(callable) is Backlog: */ - __Pyx_TraceLine(589,0,__PYX_ERR(1, 589, __pyx_L1_error)) + __Pyx_TraceLine(588,0,__PYX_ERR(1, 588, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_From)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":590 + /* "hunter/_predicates.pyx":589 * return fast_When_call( callable, event) * elif type(callable) is From: * return fast_From_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is Backlog: * return fast_Backlog_call( callable, event) */ - __Pyx_TraceLine(590,0,__PYX_ERR(1, 590, __pyx_L1_error)) + __Pyx_TraceLine(589,0,__PYX_ERR(1, 589, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_From_call(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 590, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_From_call(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":589 + /* "hunter/_predicates.pyx":588 * elif type(callable) is When: * return fast_When_call( callable, event) * elif type(callable) is From: # <<<<<<<<<<<<<< @@ -19854,33 +20813,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":591 + /* "hunter/_predicates.pyx":590 * elif type(callable) is From: * return fast_From_call( callable, event) * elif type(callable) is Backlog: # <<<<<<<<<<<<<< * return fast_Backlog_call( callable, event) * else: */ - __Pyx_TraceLine(591,0,__PYX_ERR(1, 591, __pyx_L1_error)) + __Pyx_TraceLine(590,0,__PYX_ERR(1, 590, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog)); if (__pyx_t_1) { - /* "hunter/_predicates.pyx":592 + /* "hunter/_predicates.pyx":591 * return fast_From_call( callable, event) * elif type(callable) is Backlog: * return fast_Backlog_call( callable, event) # <<<<<<<<<<<<<< * else: * return callable(event) */ - __Pyx_TraceLine(592,0,__PYX_ERR(1, 592, __pyx_L1_error)) + __Pyx_TraceLine(591,0,__PYX_ERR(1, 591, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 592, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":591 + /* "hunter/_predicates.pyx":590 * elif type(callable) is From: * return fast_From_call( callable, event) * elif type(callable) is Backlog: # <<<<<<<<<<<<<< @@ -19889,20 +20848,21 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject */ } - /* "hunter/_predicates.pyx":594 + /* "hunter/_predicates.pyx":593 * return fast_Backlog_call( callable, event) * else: * return callable(event) # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(594,0,__PYX_ERR(1, 594, __pyx_L1_error)) + __Pyx_TraceLine(593,0,__PYX_ERR(1, 593, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_callable); __pyx_t_3 = __pyx_v_callable; __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -19912,11 +20872,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_v_event)}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 594, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -19925,7 +20886,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject goto __pyx_L0; } - /* "hunter/_predicates.pyx":578 + /* "hunter/_predicates.pyx":577 * * * cdef inline fast_call(callable, Event event): # <<<<<<<<<<<<<< @@ -19947,7 +20908,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject return __pyx_r; } -/* "hunter/_predicates.pyx":599 +/* "hunter/_predicates.pyx":598 * @cython.final * cdef class Backlog: * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): # <<<<<<<<<<<<<< @@ -19965,23 +20926,29 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s PyObject *__pyx_v_strip = 0; PyObject *__pyx_v_action = 0; PyObject *__pyx_v_filter = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[7] = {0,0,0,0,0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_condition,&__pyx_n_s_size,&__pyx_n_s_stack,&__pyx_n_s_vars,&__pyx_n_s_strip,&__pyx_n_s_action,&__pyx_n_s_filter,0}; - PyObject* values[7] = {0,0,0,0,0,0,0}; - values[1] = ((PyObject *)__pyx_int_100); - values[2] = ((PyObject *)__pyx_int_10); - values[3] = ((PyObject *)Py_False); - values[4] = ((PyObject *)Py_True); - values[5] = ((PyObject *)Py_None); - values[6] = ((PyObject *)Py_None); + values[1] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)__pyx_int_100)); + values[2] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)__pyx_int_10)); + values[3] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_False)); + values[4] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_True)); + values[5] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); + values[6] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -20005,55 +20972,58 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_size); - if (value) { values[1] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_stack); - if (value) { values[2] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (value) { values[2] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 3: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_vars); - if (value) { values[3] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (value) { values[3] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 4: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_strip); - if (value) { values[4] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (value) { values[4] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 5: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_action); - if (value) { values[5] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (value) { values[5] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 6: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_filter); - if (value) { values[6] = value; kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 599, __pyx_L3_error) + if (value) { values[6] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 599, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 598, __pyx_L3_error) } } else { switch (__pyx_nargs) { @@ -20082,10 +21052,18 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s __pyx_v_action = values[5]; __pyx_v_filter = values[6]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 7, __pyx_nargs); __PYX_ERR(1, 599, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 7, __pyx_nargs); __PYX_ERR(1, 598, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Backlog.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -20093,6 +21071,12 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog___init__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), __pyx_v_condition, __pyx_v_size, __pyx_v_stack, __pyx_v_vars, __pyx_v_strip, __pyx_v_action, __pyx_v_filter); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20111,22 +21095,23 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[1], 599, 0, __PYX_ERR(1, 599, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_TraceCall("__init__", __pyx_f[1], 598, 0, __PYX_ERR(1, 598, __pyx_L1_error)); - /* "hunter/_predicates.pyx":600 + /* "hunter/_predicates.pyx":599 * cdef class Backlog: * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): * self.action = action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * if not isinstance(self.action, ColorStreamAction): * raise TypeError("Action %r must be a ColorStreamAction." % self.action) */ - __Pyx_TraceLine(600,0,__PYX_ERR(1, 600, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_isclass); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 600, __pyx_L1_error) + __Pyx_TraceLine(599,0,__PYX_ERR(1, 599, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_isclass); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 599, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -20136,24 +21121,25 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_action}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 600, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 599, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(1, 600, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(1, 599, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_7) { } else { __pyx_t_2 = __pyx_t_7; goto __pyx_L3_bool_binop_done; } - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 600, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 599, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyObject_IsSubclass(__pyx_v_action, __pyx_t_3); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(1, 600, __pyx_L1_error) + __pyx_t_7 = PyObject_IsSubclass(__pyx_v_action, __pyx_t_3); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(1, 599, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_2 = __pyx_t_7; __pyx_L3_bool_binop_done:; @@ -20161,7 +21147,8 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu __Pyx_INCREF(__pyx_v_action); __pyx_t_4 = __pyx_v_action; __pyx_t_5 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -20171,11 +21158,12 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu __pyx_t_6 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_5, }; + PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 0+__pyx_t_6); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 600, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 599, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } @@ -20191,42 +21179,42 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu __pyx_v_self->action = __pyx_t_1; __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":601 + /* "hunter/_predicates.pyx":600 * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): * self.action = action() if isclass(action) and issubclass(action, Action) else action * if not isinstance(self.action, ColorStreamAction): # <<<<<<<<<<<<<< * raise TypeError("Action %r must be a ColorStreamAction." % self.action) * self.condition = condition */ - __Pyx_TraceLine(601,0,__PYX_ERR(1, 601, __pyx_L1_error)) + __Pyx_TraceLine(600,0,__PYX_ERR(1, 600, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->action; __Pyx_INCREF(__pyx_t_1); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ColorStreamAction); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 601, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ColorStreamAction); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_IsInstance(__pyx_t_1, __pyx_t_3); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(1, 601, __pyx_L1_error) + __pyx_t_2 = PyObject_IsInstance(__pyx_t_1, __pyx_t_3); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(1, 600, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = (!__pyx_t_2); if (unlikely(__pyx_t_7)) { - /* "hunter/_predicates.pyx":602 + /* "hunter/_predicates.pyx":601 * self.action = action() if isclass(action) and issubclass(action, Action) else action * if not isinstance(self.action, ColorStreamAction): * raise TypeError("Action %r must be a ColorStreamAction." % self.action) # <<<<<<<<<<<<<< * self.condition = condition * self.queue = deque(maxlen=size) */ - __Pyx_TraceLine(602,0,__PYX_ERR(1, 602, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Action_r_must_be_a_ColorStreamAc, __pyx_v_self->action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 602, __pyx_L1_error) + __Pyx_TraceLine(601,0,__PYX_ERR(1, 601, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Action_r_must_be_a_ColorStreamAc, __pyx_v_self->action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 602, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_t_1, 0, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(1, 602, __pyx_L1_error) + __PYX_ERR(1, 601, __pyx_L1_error) - /* "hunter/_predicates.pyx":601 + /* "hunter/_predicates.pyx":600 * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): * self.action = action() if isclass(action) and issubclass(action, Action) else action * if not isinstance(self.action, ColorStreamAction): # <<<<<<<<<<<<<< @@ -20235,34 +21223,34 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu */ } - /* "hunter/_predicates.pyx":603 + /* "hunter/_predicates.pyx":602 * if not isinstance(self.action, ColorStreamAction): * raise TypeError("Action %r must be a ColorStreamAction." % self.action) * self.condition = condition # <<<<<<<<<<<<<< * self.queue = deque(maxlen=size) * self.size = size */ - __Pyx_TraceLine(603,0,__PYX_ERR(1, 603, __pyx_L1_error)) + __Pyx_TraceLine(602,0,__PYX_ERR(1, 602, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_condition); __Pyx_GIVEREF(__pyx_v_condition); __Pyx_GOTREF(__pyx_v_self->condition); __Pyx_DECREF(__pyx_v_self->condition); __pyx_v_self->condition = __pyx_v_condition; - /* "hunter/_predicates.pyx":604 + /* "hunter/_predicates.pyx":603 * raise TypeError("Action %r must be a ColorStreamAction." % self.action) * self.condition = condition * self.queue = deque(maxlen=size) # <<<<<<<<<<<<<< * self.size = size * self.stack = stack */ - __Pyx_TraceLine(604,0,__PYX_ERR(1, 604, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_deque); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 604, __pyx_L1_error) + __Pyx_TraceLine(603,0,__PYX_ERR(1, 603, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_deque); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 604, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maxlen, __pyx_v_size) < 0) __PYX_ERR(1, 604, __pyx_L1_error) - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 604, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maxlen, __pyx_v_size) < 0) __PYX_ERR(1, 603, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -20272,60 +21260,60 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu __pyx_v_self->queue = __pyx_t_4; __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":605 + /* "hunter/_predicates.pyx":604 * self.condition = condition * self.queue = deque(maxlen=size) * self.size = size # <<<<<<<<<<<<<< * self.stack = stack * self.strip = strip */ - __Pyx_TraceLine(605,0,__PYX_ERR(1, 605, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 605, __pyx_L1_error) + __Pyx_TraceLine(604,0,__PYX_ERR(1, 604, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 604, __pyx_L1_error) __pyx_v_self->size = __pyx_t_6; - /* "hunter/_predicates.pyx":606 + /* "hunter/_predicates.pyx":605 * self.queue = deque(maxlen=size) * self.size = size * self.stack = stack # <<<<<<<<<<<<<< * self.strip = strip * self.vars = vars */ - __Pyx_TraceLine(606,0,__PYX_ERR(1, 606, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_v_stack); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 606, __pyx_L1_error) + __Pyx_TraceLine(605,0,__PYX_ERR(1, 605, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_v_stack); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 605, __pyx_L1_error) __pyx_v_self->stack = __pyx_t_6; - /* "hunter/_predicates.pyx":607 + /* "hunter/_predicates.pyx":606 * self.size = size * self.stack = stack * self.strip = strip # <<<<<<<<<<<<<< * self.vars = vars * self._try_repr = self.action.try_repr if self.vars else None */ - __Pyx_TraceLine(607,0,__PYX_ERR(1, 607, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_strip); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 607, __pyx_L1_error) + __Pyx_TraceLine(606,0,__PYX_ERR(1, 606, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_strip); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 606, __pyx_L1_error) __pyx_v_self->strip = __pyx_t_7; - /* "hunter/_predicates.pyx":608 + /* "hunter/_predicates.pyx":607 * self.stack = stack * self.strip = strip * self.vars = vars # <<<<<<<<<<<<<< * self._try_repr = self.action.try_repr if self.vars else None * self._filter = filter */ - __Pyx_TraceLine(608,0,__PYX_ERR(1, 608, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_vars); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 608, __pyx_L1_error) + __Pyx_TraceLine(607,0,__PYX_ERR(1, 607, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_vars); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 607, __pyx_L1_error) __pyx_v_self->vars = __pyx_t_7; - /* "hunter/_predicates.pyx":609 + /* "hunter/_predicates.pyx":608 * self.strip = strip * self.vars = vars * self._try_repr = self.action.try_repr if self.vars else None # <<<<<<<<<<<<<< * self._filter = filter * */ - __Pyx_TraceLine(609,0,__PYX_ERR(1, 609, __pyx_L1_error)) + __Pyx_TraceLine(608,0,__PYX_ERR(1, 608, __pyx_L1_error)) if (__pyx_v_self->vars) { - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_n_s_try_repr); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 609, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_n_s_try_repr); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __pyx_t_3; __pyx_t_3 = 0; @@ -20339,21 +21327,21 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu __pyx_v_self->_try_repr = __pyx_t_4; __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":610 + /* "hunter/_predicates.pyx":609 * self.vars = vars * self._try_repr = self.action.try_repr if self.vars else None * self._filter = filter # <<<<<<<<<<<<<< * * def __call__(self, event): */ - __Pyx_TraceLine(610,0,__PYX_ERR(1, 610, __pyx_L1_error)) + __Pyx_TraceLine(609,0,__PYX_ERR(1, 609, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_filter); __Pyx_GIVEREF(__pyx_v_filter); __Pyx_GOTREF(__pyx_v_self->_filter); __Pyx_DECREF(__pyx_v_self->_filter); __pyx_v_self->_filter = __pyx_v_filter; - /* "hunter/_predicates.pyx":599 + /* "hunter/_predicates.pyx":598 * @cython.final * cdef class Backlog: * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): # <<<<<<<<<<<<<< @@ -20377,7 +21365,7 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu return __pyx_r; } -/* "hunter/_predicates.pyx":612 +/* "hunter/_predicates.pyx":611 * self._filter = filter * * def __call__(self, event): # <<<<<<<<<<<<<< @@ -20389,17 +21377,23 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_event = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -20411,13 +21405,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__p kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) kw_args--; - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 612, __pyx_L3_error) + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 611, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 612, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 611, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -20426,10 +21423,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__p } __pyx_v_event = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 612, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 611, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Backlog.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -20437,6 +21442,12 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__p __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_2__call__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), __pyx_v_event); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20449,26 +21460,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceCall("__call__", __pyx_f[1], 612, 0, __PYX_ERR(1, 612, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__call__", 1); + __Pyx_TraceCall("__call__", __pyx_f[1], 611, 0, __PYX_ERR(1, 611, __pyx_L1_error)); - /* "hunter/_predicates.pyx":613 + /* "hunter/_predicates.pyx":612 * * def __call__(self, event): * return fast_Backlog_call(self, event) # <<<<<<<<<<<<<< * * def __str__(self): */ - __Pyx_TraceLine(613,0,__PYX_ERR(1, 613, __pyx_L1_error)) + __Pyx_TraceLine(612,0,__PYX_ERR(1, 612, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - if (!(likely(((__pyx_v_event) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_event, __pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(1, 613, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(__pyx_v_self, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_event)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 613, __pyx_L1_error) + if (!(likely(((__pyx_v_event) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_event, __pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(1, 612, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(__pyx_v_self, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_event)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":612 + /* "hunter/_predicates.pyx":611 * self._filter = filter * * def __call__(self, event): # <<<<<<<<<<<<<< @@ -20488,7 +21499,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_ return __pyx_r; } -/* "hunter/_predicates.pyx":615 +/* "hunter/_predicates.pyx":614 * return fast_Backlog_call(self, event) * * def __str__(self): # <<<<<<<<<<<<<< @@ -20499,10 +21510,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5__str__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5__str__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_4__str__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -20521,70 +21533,70 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - __Pyx_TraceCall("__str__", __pyx_f[1], 615, 0, __PYX_ERR(1, 615, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__str__", 1); + __Pyx_TraceCall("__str__", __pyx_f[1], 614, 0, __PYX_ERR(1, 614, __pyx_L1_error)); - /* "hunter/_predicates.pyx":616 + /* "hunter/_predicates.pyx":615 * * def __str__(self): * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) */ - __Pyx_TraceLine(616,0,__PYX_ERR(1, 616, __pyx_L1_error)) + __Pyx_TraceLine(615,0,__PYX_ERR(1, 615, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":617 + /* "hunter/_predicates.pyx":616 * def __str__(self): * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( * self.condition, self.size, self.stack, self.vars, self.action, self._filter # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(617,0,__PYX_ERR(1, 617, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 617, __pyx_L1_error) + __Pyx_TraceLine(616,0,__PYX_ERR(1, 616, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 617, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 617, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 617, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition)) __PYX_ERR(1, 616, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(1, 616, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2)) __PYX_ERR(1, 616, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_3)) __PYX_ERR(1, 616, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->action); __Pyx_GIVEREF(__pyx_v_self->action); - PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_v_self->action); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_v_self->action)) __PYX_ERR(1, 616, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->_filter); __Pyx_GIVEREF(__pyx_v_self->_filter); - PyTuple_SET_ITEM(__pyx_t_4, 5, __pyx_v_self->_filter); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 5, __pyx_v_self->_filter)) __PYX_ERR(1, 616, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":616 + /* "hunter/_predicates.pyx":615 * * def __str__(self): * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) */ - __Pyx_TraceLine(616,0,__PYX_ERR(1, 616, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 616, __pyx_L1_error) + __Pyx_TraceLine(615,0,__PYX_ERR(1, 615, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":615 + /* "hunter/_predicates.pyx":614 * return fast_Backlog_call(self, event) * * def __str__(self): # <<<<<<<<<<<<<< @@ -20607,7 +21619,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o return __pyx_r; } -/* "hunter/_predicates.pyx":620 +/* "hunter/_predicates.pyx":619 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -20618,10 +21630,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -20640,70 +21653,70 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceCall("__repr__", __pyx_f[1], 620, 0, __PYX_ERR(1, 620, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__repr__", 1); + __Pyx_TraceCall("__repr__", __pyx_f[1], 619, 0, __PYX_ERR(1, 619, __pyx_L1_error)); - /* "hunter/_predicates.pyx":621 + /* "hunter/_predicates.pyx":620 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) */ - __Pyx_TraceLine(621,0,__PYX_ERR(1, 621, __pyx_L1_error)) + __Pyx_TraceLine(620,0,__PYX_ERR(1, 620, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":622 + /* "hunter/_predicates.pyx":621 * def __repr__(self): * return '' % ( * self.condition, self.size, self.stack, self.vars, self.action, self._filter # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(622,0,__PYX_ERR(1, 622, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 622, __pyx_L1_error) + __Pyx_TraceLine(621,0,__PYX_ERR(1, 621, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 622, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 622, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 622, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition)) __PYX_ERR(1, 621, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(1, 621, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2)) __PYX_ERR(1, 621, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_3)) __PYX_ERR(1, 621, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->action); __Pyx_GIVEREF(__pyx_v_self->action); - PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_v_self->action); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_v_self->action)) __PYX_ERR(1, 621, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->_filter); __Pyx_GIVEREF(__pyx_v_self->_filter); - PyTuple_SET_ITEM(__pyx_t_4, 5, __pyx_v_self->_filter); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 5, __pyx_v_self->_filter)) __PYX_ERR(1, 621, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; - /* "hunter/_predicates.pyx":621 + /* "hunter/_predicates.pyx":620 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) */ - __Pyx_TraceLine(621,0,__PYX_ERR(1, 621, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_hunter_predicates_Backlog_condi, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 621, __pyx_L1_error) + __Pyx_TraceLine(620,0,__PYX_ERR(1, 620, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_hunter_predicates_Backlog_condi, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":620 + /* "hunter/_predicates.pyx":619 * ) * * def __repr__(self): # <<<<<<<<<<<<<< @@ -20726,7 +21739,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ return __pyx_r; } -/* "hunter/_predicates.pyx":625 +/* "hunter/_predicates.pyx":624 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -20737,10 +21750,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__eq__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -20758,47 +21772,47 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceCall("__eq__", __pyx_f[1], 625, 0, __PYX_ERR(1, 625, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__eq__", 1); + __Pyx_TraceCall("__eq__", __pyx_f[1], 624, 0, __PYX_ERR(1, 624, __pyx_L1_error)); - /* "hunter/_predicates.pyx":626 + /* "hunter/_predicates.pyx":625 * * def __eq__(self, other): * return ( # <<<<<<<<<<<<<< * isinstance(other, Backlog) and * self.condition == ( other).condition and */ - __Pyx_TraceLine(626,0,__PYX_ERR(1, 626, __pyx_L1_error)) + __Pyx_TraceLine(625,0,__PYX_ERR(1, 625, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":627 + /* "hunter/_predicates.pyx":626 * def __eq__(self, other): * return ( * isinstance(other, Backlog) and # <<<<<<<<<<<<<< * self.condition == ( other).condition and * self.size == ( other).size and */ - __Pyx_TraceLine(627,0,__PYX_ERR(1, 627, __pyx_L1_error)) + __Pyx_TraceLine(626,0,__PYX_ERR(1, 626, __pyx_L1_error)) __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Backlog); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 627, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 626, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":628 + /* "hunter/_predicates.pyx":627 * return ( * isinstance(other, Backlog) and * self.condition == ( other).condition and # <<<<<<<<<<<<<< * self.size == ( other).size and * self.stack == ( other).stack and */ - __Pyx_TraceLine(628,0,__PYX_ERR(1, 628, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 628, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 628, __pyx_L1_error) + __Pyx_TraceLine(627,0,__PYX_ERR(1, 627, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 627, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 627, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -20808,69 +21822,69 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":629 + /* "hunter/_predicates.pyx":628 * isinstance(other, Backlog) and * self.condition == ( other).condition and * self.size == ( other).size and # <<<<<<<<<<<<<< * self.stack == ( other).stack and * self.vars == ( other).vars and */ - __Pyx_TraceLine(629,0,__PYX_ERR(1, 629, __pyx_L1_error)) + __Pyx_TraceLine(628,0,__PYX_ERR(1, 628, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->size == ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->size); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 629, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":630 + /* "hunter/_predicates.pyx":629 * self.condition == ( other).condition and * self.size == ( other).size and * self.stack == ( other).stack and # <<<<<<<<<<<<<< * self.vars == ( other).vars and * self.action == ( other).action */ - __Pyx_TraceLine(630,0,__PYX_ERR(1, 630, __pyx_L1_error)) + __Pyx_TraceLine(629,0,__PYX_ERR(1, 629, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->stack == ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->stack); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 630, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":631 + /* "hunter/_predicates.pyx":630 * self.size == ( other).size and * self.stack == ( other).stack and * self.vars == ( other).vars and # <<<<<<<<<<<<<< * self.action == ( other).action * ) */ - __Pyx_TraceLine(631,0,__PYX_ERR(1, 631, __pyx_L1_error)) + __Pyx_TraceLine(630,0,__PYX_ERR(1, 630, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->vars == ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->vars); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 631, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 630, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L3_bool_binop_done; } - /* "hunter/_predicates.pyx":632 + /* "hunter/_predicates.pyx":631 * self.stack == ( other).stack and * self.vars == ( other).vars and * self.action == ( other).action # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(632,0,__PYX_ERR(1, 632, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->action, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->action, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 632, __pyx_L1_error) + __Pyx_TraceLine(631,0,__PYX_ERR(1, 631, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->action, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->action, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 631, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -20879,7 +21893,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob __pyx_t_1 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":625 + /* "hunter/_predicates.pyx":624 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -20900,7 +21914,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob return __pyx_r; } -/* "hunter/_predicates.pyx":635 +/* "hunter/_predicates.pyx":634 * ) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -20911,10 +21925,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__or__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_10__or__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -20931,34 +21946,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__py int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 0); - __Pyx_TraceCall("__or__", __pyx_f[1], 635, 0, __PYX_ERR(1, 635, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__or__", 1); + __Pyx_TraceCall("__or__", __pyx_f[1], 634, 0, __PYX_ERR(1, 634, __pyx_L1_error)); - /* "hunter/_predicates.pyx":636 + /* "hunter/_predicates.pyx":635 * * def __or__(self, other): * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): */ - __Pyx_TraceLine(636,0,__PYX_ERR(1, 636, __pyx_L1_error)) + __Pyx_TraceLine(635,0,__PYX_ERR(1, 635, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 636, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 635, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 636, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 635, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":635 + /* "hunter/_predicates.pyx":634 * ) * * def __or__(self, other): # <<<<<<<<<<<<<< @@ -20979,7 +21994,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__py return __pyx_r; } -/* "hunter/_predicates.pyx":638 +/* "hunter/_predicates.pyx":637 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -20990,10 +22005,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__py /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__and__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_12__and__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); /* function exit code */ @@ -21010,34 +22026,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__p int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 0); - __Pyx_TraceCall("__and__", __pyx_f[1], 638, 0, __PYX_ERR(1, 638, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__and__", 1); + __Pyx_TraceCall("__and__", __pyx_f[1], 637, 0, __PYX_ERR(1, 637, __pyx_L1_error)); - /* "hunter/_predicates.pyx":639 + /* "hunter/_predicates.pyx":638 * * def __and__(self, other): * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): */ - __Pyx_TraceLine(639,0,__PYX_ERR(1, 639, __pyx_L1_error)) + __Pyx_TraceLine(638,0,__PYX_ERR(1, 638, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 639, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 638, __pyx_L1_error); __Pyx_INCREF(__pyx_v_other); __Pyx_GIVEREF(__pyx_v_other); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 639, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 638, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":638 + /* "hunter/_predicates.pyx":637 * return Or(self, other) * * def __and__(self, other): # <<<<<<<<<<<<<< @@ -21058,7 +22074,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__p return __pyx_r; } -/* "hunter/_predicates.pyx":641 +/* "hunter/_predicates.pyx":640 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -21069,10 +22085,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__p /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_15__invert__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_15__invert__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__invert__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21090,42 +22107,42 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __p int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 0); - __Pyx_TraceCall("__invert__", __pyx_f[1], 641, 0, __PYX_ERR(1, 641, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__invert__", 1); + __Pyx_TraceCall("__invert__", __pyx_f[1], 640, 0, __PYX_ERR(1, 640, __pyx_L1_error)); - /* "hunter/_predicates.pyx":642 + /* "hunter/_predicates.pyx":641 * * def __invert__(self): * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) # <<<<<<<<<<<<<< * * def filter(self, *predicates, **kwargs): */ - __Pyx_TraceLine(642,0,__PYX_ERR(1, 642, __pyx_L1_error)) + __Pyx_TraceLine(641,0,__PYX_ERR(1, 641, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_v_self->condition); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 642, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_v_self->condition); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 642, __pyx_L1_error) + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1)) __PYX_ERR(1, 641, __pyx_L1_error); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 642, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 642, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_size, __pyx_t_3) < 0) __PYX_ERR(1, 642, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_size, __pyx_t_3) < 0) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 642, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_stack, __pyx_t_3) < 0) __PYX_ERR(1, 642, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_stack, __pyx_t_3) < 0) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 642, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_vars, __pyx_t_3) < 0) __PYX_ERR(1, 642, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_vars, __pyx_t_3) < 0) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_action, __pyx_v_self->action) < 0) __PYX_ERR(1, 642, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_v_self->_filter) < 0) __PYX_ERR(1, 642, __pyx_L1_error) - __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 642, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_action, __pyx_v_self->action) < 0) __PYX_ERR(1, 641, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_v_self->_filter) < 0) __PYX_ERR(1, 641, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -21133,7 +22150,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __p __pyx_t_3 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":641 + /* "hunter/_predicates.pyx":640 * return And(self, other) * * def __invert__(self): # <<<<<<<<<<<<<< @@ -21155,7 +22172,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __p return __pyx_r; } -/* "hunter/_predicates.pyx":644 +/* "hunter/_predicates.pyx":643 * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) * * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< @@ -21169,11 +22186,17 @@ static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_17filter = {"filter static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_17filter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_predicates = 0; PyObject *__pyx_v_kwargs = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("filter (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); if (unlikely(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "filter", 1))) return NULL; if (unlikely(__pyx_kwds)) { __pyx_v_kwargs = __Pyx_KwargsAsDict_VARARGS(__pyx_kwds, __pyx_kwvalues); @@ -21210,69 +22233,69 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__24) __Pyx_RefNannySetupContext("filter", 0); - __Pyx_TraceCall("filter", __pyx_f[1], 644, 0, __PYX_ERR(1, 644, __pyx_L1_error)); + __Pyx_TraceCall("filter", __pyx_f[1], 643, 0, __PYX_ERR(1, 643, __pyx_L1_error)); __Pyx_INCREF(__pyx_v_predicates); - /* "hunter/_predicates.pyx":645 + /* "hunter/_predicates.pyx":644 * * def filter(self, *predicates, **kwargs): * from hunter import _merge # <<<<<<<<<<<<<< * * if self._filter is not None: */ - __Pyx_TraceLine(645,0,__PYX_ERR(1, 645, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 645, __pyx_L1_error) + __Pyx_TraceLine(644,0,__PYX_ERR(1, 644, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_merge); __Pyx_GIVEREF(__pyx_n_s_merge); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_merge); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_hunter, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 645, __pyx_L1_error) + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_merge)) __PYX_ERR(1, 644, __pyx_L1_error); + __pyx_t_2 = __Pyx_Import(__pyx_n_s_hunter, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_merge); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 645, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_merge); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v__merge = __pyx_t_1; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":647 + /* "hunter/_predicates.pyx":646 * from hunter import _merge * * if self._filter is not None: # <<<<<<<<<<<<<< * predicates = (self._filter, *predicates) * */ - __Pyx_TraceLine(647,0,__PYX_ERR(1, 647, __pyx_L1_error)) + __Pyx_TraceLine(646,0,__PYX_ERR(1, 646, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_self->_filter != Py_None); if (__pyx_t_3) { - /* "hunter/_predicates.pyx":648 + /* "hunter/_predicates.pyx":647 * * if self._filter is not None: * predicates = (self._filter, *predicates) # <<<<<<<<<<<<<< * * return Backlog( */ - __Pyx_TraceLine(648,0,__PYX_ERR(1, 648, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 648, __pyx_L1_error) + __Pyx_TraceLine(647,0,__PYX_ERR(1, 647, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->_filter); __Pyx_GIVEREF(__pyx_v_self->_filter); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->_filter); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->_filter)) __PYX_ERR(1, 647, __pyx_L1_error); __pyx_t_2 = __pyx_t_1; __pyx_t_1 = 0; - if (__Pyx_PyList_Extend(__pyx_t_2, __pyx_v_predicates) < 0) __PYX_ERR(1, 648, __pyx_L1_error) + if (__Pyx_PyList_Extend(__pyx_t_2, __pyx_v_predicates) < 0) __PYX_ERR(1, 647, __pyx_L1_error) { PyObject *__pyx_temp = PyList_AsTuple(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); - __pyx_t_2 = __pyx_temp; if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 648, __pyx_L1_error) + __pyx_t_2 = __pyx_temp; if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_predicates, ((PyObject*)__pyx_t_2)); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":647 + /* "hunter/_predicates.pyx":646 * from hunter import _merge * * if self._filter is not None: # <<<<<<<<<<<<<< @@ -21281,79 +22304,79 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o */ } - /* "hunter/_predicates.pyx":650 + /* "hunter/_predicates.pyx":649 * predicates = (self._filter, *predicates) * * return Backlog( # <<<<<<<<<<<<<< * self.condition, * size=self.size, stack=self.stack, vars=self.vars, action=self.action, */ - __Pyx_TraceLine(650,0,__PYX_ERR(1, 650, __pyx_L1_error)) + __Pyx_TraceLine(649,0,__PYX_ERR(1, 649, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":651 + /* "hunter/_predicates.pyx":650 * * return Backlog( * self.condition, # <<<<<<<<<<<<<< * size=self.size, stack=self.stack, vars=self.vars, action=self.action, * filter=_merge(*predicates, **kwargs) */ - __Pyx_TraceLine(651,0,__PYX_ERR(1, 651, __pyx_L1_error)) - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 650, __pyx_L1_error) + __Pyx_TraceLine(650,0,__PYX_ERR(1, 650, __pyx_L1_error)) + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 649, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition)) __PYX_ERR(1, 649, __pyx_L1_error); - /* "hunter/_predicates.pyx":652 + /* "hunter/_predicates.pyx":651 * return Backlog( * self.condition, * size=self.size, stack=self.stack, vars=self.vars, action=self.action, # <<<<<<<<<<<<<< * filter=_merge(*predicates, **kwargs) * ) */ - __Pyx_TraceLine(652,0,__PYX_ERR(1, 652, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 652, __pyx_L1_error) + __Pyx_TraceLine(651,0,__PYX_ERR(1, 651, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 652, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_size, __pyx_t_4) < 0) __PYX_ERR(1, 652, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_size, __pyx_t_4) < 0) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 652, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_stack, __pyx_t_4) < 0) __PYX_ERR(1, 652, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_stack, __pyx_t_4) < 0) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 652, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_vars, __pyx_t_4) < 0) __PYX_ERR(1, 652, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_vars, __pyx_t_4) < 0) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_action, __pyx_v_self->action) < 0) __PYX_ERR(1, 652, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_action, __pyx_v_self->action) < 0) __PYX_ERR(1, 651, __pyx_L1_error) - /* "hunter/_predicates.pyx":653 + /* "hunter/_predicates.pyx":652 * self.condition, * size=self.size, stack=self.stack, vars=self.vars, action=self.action, * filter=_merge(*predicates, **kwargs) # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(653,0,__PYX_ERR(1, 653, __pyx_L1_error)) - __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 653, __pyx_L1_error) + __Pyx_TraceLine(652,0,__PYX_ERR(1, 652, __pyx_L1_error)) + __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 652, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v__merge, __pyx_v_predicates, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 653, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v__merge, __pyx_v_predicates, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 652, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_t_5) < 0) __PYX_ERR(1, 652, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_t_5) < 0) __PYX_ERR(1, 651, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_predicates.pyx":650 + /* "hunter/_predicates.pyx":649 * predicates = (self._filter, *predicates) * * return Backlog( # <<<<<<<<<<<<<< * self.condition, * size=self.size, stack=self.stack, vars=self.vars, action=self.action, */ - __Pyx_TraceLine(650,0,__PYX_ERR(1, 650, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 650, __pyx_L1_error) + __Pyx_TraceLine(649,0,__PYX_ERR(1, 649, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 649, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -21361,7 +22384,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o __pyx_t_5 = 0; goto __pyx_L0; - /* "hunter/_predicates.pyx":644 + /* "hunter/_predicates.pyx":643 * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) * * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< @@ -21386,7 +22409,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o return __pyx_r; } -/* "hunter/_predicates.pxd":54 +/* "hunter/_predicates.pxd":60 * cdef class Backlog: * cdef: * readonly object condition # <<<<<<<<<<<<<< @@ -21397,10 +22420,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9condition_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9condition_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_9condition___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21415,8 +22439,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9condition___get__(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 54, 0, __PYX_ERR(2, 54, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 60, 0, __PYX_ERR(2, 60, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->condition); __pyx_r = __pyx_v_self->condition; @@ -21433,7 +22457,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9condition___get__(stru return __pyx_r; } -/* "hunter/_predicates.pxd":55 +/* "hunter/_predicates.pxd":61 * cdef: * readonly object condition * readonly int size # <<<<<<<<<<<<<< @@ -21444,10 +22468,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9condition___get__(stru /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4size_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4size_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_4size___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21463,10 +22488,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4size___get__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 55, 0, __PYX_ERR(2, 55, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 61, 0, __PYX_ERR(2, 61, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 55, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -21484,7 +22509,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4size___get__(struct __ return __pyx_r; } -/* "hunter/_predicates.pxd":56 +/* "hunter/_predicates.pxd":62 * readonly object condition * readonly int size * readonly int stack # <<<<<<<<<<<<<< @@ -21495,10 +22520,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4size___get__(struct __ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5stack_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5stack_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_5stack___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21514,10 +22540,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5stack___get__(struct _ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 56, 0, __PYX_ERR(2, 56, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 62, 0, __PYX_ERR(2, 62, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 56, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -21535,7 +22561,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5stack___get__(struct _ return __pyx_r; } -/* "hunter/_predicates.pxd":57 +/* "hunter/_predicates.pxd":63 * readonly int size * readonly int stack * readonly bint vars # <<<<<<<<<<<<<< @@ -21546,10 +22572,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5stack___get__(struct _ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4vars_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4vars_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_4vars___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21565,10 +22592,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4vars___get__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 57, 0, __PYX_ERR(2, 57, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 63, 0, __PYX_ERR(2, 63, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 57, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -21586,7 +22613,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4vars___get__(struct __ return __pyx_r; } -/* "hunter/_predicates.pxd":58 +/* "hunter/_predicates.pxd":64 * readonly int stack * readonly bint vars * readonly bint strip # <<<<<<<<<<<<<< @@ -21597,10 +22624,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4vars___get__(struct __ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5strip_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5strip_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_5strip___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21616,10 +22644,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5strip___get__(struct _ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 58, 0, __PYX_ERR(2, 58, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 64, 0, __PYX_ERR(2, 64, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->strip); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 58, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->strip); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 64, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -21637,7 +22665,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5strip___get__(struct _ return __pyx_r; } -/* "hunter/_predicates.pxd":59 +/* "hunter/_predicates.pxd":65 * readonly bint vars * readonly bint strip * readonly object action # <<<<<<<<<<<<<< @@ -21648,10 +22676,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5strip___get__(struct _ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_6action_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_6action_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_6action___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21666,8 +22695,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6action___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 59, 0, __PYX_ERR(2, 59, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 65, 0, __PYX_ERR(2, 65, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->action); __pyx_r = __pyx_v_self->action; @@ -21684,7 +22713,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6action___get__(struct return __pyx_r; } -/* "hunter/_predicates.pxd":60 +/* "hunter/_predicates.pxd":66 * readonly bint strip * readonly object action * readonly object _try_repr # <<<<<<<<<<<<<< @@ -21695,10 +22724,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6action___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9_try_repr_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9_try_repr_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_9_try_repr___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21713,8 +22743,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9_try_repr___get__(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 60, 0, __PYX_ERR(2, 60, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 66, 0, __PYX_ERR(2, 66, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_try_repr); __pyx_r = __pyx_v_self->_try_repr; @@ -21731,7 +22761,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9_try_repr___get__(stru return __pyx_r; } -/* "hunter/_predicates.pxd":61 +/* "hunter/_predicates.pxd":67 * readonly object action * readonly object _try_repr * readonly object _filter # <<<<<<<<<<<<<< @@ -21742,10 +22772,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9_try_repr___get__(stru /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7_filter_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7_filter_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_7_filter___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21760,8 +22791,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_7_filter___get__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 61, 0, __PYX_ERR(2, 61, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 67, 0, __PYX_ERR(2, 67, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_filter); __pyx_r = __pyx_v_self->_filter; @@ -21778,7 +22809,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_7_filter___get__(struct return __pyx_r; } -/* "hunter/_predicates.pxd":62 +/* "hunter/_predicates.pxd":68 * readonly object _try_repr * readonly object _filter * readonly object queue # <<<<<<<<<<<<<< @@ -21789,10 +22820,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_7_filter___get__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5queue_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5queue_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_5queue___get__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -21807,8 +22839,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5queue___get__(struct _ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[2], 62, 0, __PYX_ERR(2, 62, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[2], 68, 0, __PYX_ERR(2, 68, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->queue); __pyx_r = __pyx_v_self->queue; @@ -21848,12 +22880,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -21882,7 +22922,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__25) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":5 @@ -21905,27 +22945,27 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_self->_filter); __Pyx_GIVEREF(__pyx_v_self->_filter); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->_filter); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->_filter)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->_try_repr); __Pyx_GIVEREF(__pyx_v_self->_try_repr); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->_try_repr); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->_try_repr)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->action); __Pyx_GIVEREF(__pyx_v_self->action); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_self->action); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_self->action)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_v_self->condition); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_v_self->condition)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->queue); __Pyx_GIVEREF(__pyx_v_self->queue); - PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_v_self->queue); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_v_self->queue)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_5, 6, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 6, __pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 7, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 7, __pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_5, 8, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 8, __pyx_t_4)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; @@ -21969,7 +23009,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -22061,22 +23101,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_int_21139105); __Pyx_GIVEREF(__pyx_int_21139105); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_21139105); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_21139105)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_5, 2, Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_r = __pyx_t_3; @@ -22108,19 +23148,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_int_21139105); __Pyx_GIVEREF(__pyx_int_21139105); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_21139105); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_21139105)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_5 = 0; __pyx_r = __pyx_t_4; @@ -22177,18 +23217,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -22200,7 +23248,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -22215,10 +23266,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.Backlog.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -22226,6 +23285,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22239,7 +23304,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(s const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__26) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); /* "(tree fragment)":17 @@ -22274,7 +23339,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(s return __pyx_r; } -/* "hunter/_predicates.pyx":656 +/* "hunter/_predicates.pyx":655 * ) * * cdef inline fast_Backlog_call(Backlog self, Event event): # <<<<<<<<<<<<<< @@ -22314,60 +23379,61 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Backlog_call", 0); - __Pyx_TraceCall("fast_Backlog_call", __pyx_f[1], 656, 0, __PYX_ERR(1, 656, __pyx_L1_error)); + __Pyx_RefNannySetupContext("fast_Backlog_call", 1); + __Pyx_TraceCall("fast_Backlog_call", __pyx_f[1], 655, 0, __PYX_ERR(1, 655, __pyx_L1_error)); - /* "hunter/_predicates.pyx":670 + /* "hunter/_predicates.pyx":669 * cdef object stack_events * * result = fast_call(self.condition, event) # <<<<<<<<<<<<<< * if result: * if self.queue: */ - __Pyx_TraceLine(670,0,__PYX_ERR(1, 670, __pyx_L1_error)) + __Pyx_TraceLine(669,0,__PYX_ERR(1, 669, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->condition; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 670, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 669, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_result = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":671 + /* "hunter/_predicates.pyx":670 * * result = fast_call(self.condition, event) * if result: # <<<<<<<<<<<<<< * if self.queue: * self.action.cleanup() */ - __Pyx_TraceLine(671,0,__PYX_ERR(1, 671, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 671, __pyx_L1_error) + __Pyx_TraceLine(670,0,__PYX_ERR(1, 670, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 670, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_predicates.pyx":672 + /* "hunter/_predicates.pyx":671 * result = fast_call(self.condition, event) * if result: * if self.queue: # <<<<<<<<<<<<<< * self.action.cleanup() * */ - __Pyx_TraceLine(672,0,__PYX_ERR(1, 672, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_self->queue); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 672, __pyx_L1_error) + __Pyx_TraceLine(671,0,__PYX_ERR(1, 671, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_self->queue); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 671, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_predicates.pyx":673 + /* "hunter/_predicates.pyx":672 * if result: * if self.queue: * self.action.cleanup() # <<<<<<<<<<<<<< * * first_event = self.queue[0] */ - __Pyx_TraceLine(673,0,__PYX_ERR(1, 673, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_n_s_cleanup); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 673, __pyx_L1_error) + __Pyx_TraceLine(672,0,__PYX_ERR(1, 672, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_n_s_cleanup); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); @@ -22377,25 +23443,26 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_4, }; + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 673, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":675 + /* "hunter/_predicates.pyx":674 * self.action.cleanup() * * first_event = self.queue[0] # <<<<<<<<<<<<<< * first_depth = first_event.depth * backlog_call_depth = event.depth - first_depth */ - __Pyx_TraceLine(675,0,__PYX_ERR(1, 675, __pyx_L1_error)) - __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_self->queue, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 675, __pyx_L1_error) + __Pyx_TraceLine(674,0,__PYX_ERR(1, 674, __pyx_L1_error)) + __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_self->queue, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 674, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); @@ -22403,81 +23470,83 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_v_first_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":676 + /* "hunter/_predicates.pyx":675 * * first_event = self.queue[0] * first_depth = first_event.depth # <<<<<<<<<<<<<< * backlog_call_depth = event.depth - first_depth * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid */ - __Pyx_TraceLine(676,0,__PYX_ERR(1, 676, __pyx_L1_error)) + __Pyx_TraceLine(675,0,__PYX_ERR(1, 675, __pyx_L1_error)) __pyx_t_5 = __pyx_v_first_event->depth; __pyx_v_first_depth = __pyx_t_5; - /* "hunter/_predicates.pyx":677 + /* "hunter/_predicates.pyx":676 * first_event = self.queue[0] * first_depth = first_event.depth * backlog_call_depth = event.depth - first_depth # <<<<<<<<<<<<<< * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) */ - __Pyx_TraceLine(677,0,__PYX_ERR(1, 677, __pyx_L1_error)) + __Pyx_TraceLine(676,0,__PYX_ERR(1, 676, __pyx_L1_error)) __pyx_v_backlog_call_depth = (__pyx_v_event->depth - __pyx_v_first_depth); - /* "hunter/_predicates.pyx":678 + /* "hunter/_predicates.pyx":677 * first_depth = first_event.depth * backlog_call_depth = event.depth - first_depth * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid # <<<<<<<<<<<<<< * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) * if missing_depth: */ - __Pyx_TraceLine(678,0,__PYX_ERR(1, 678, __pyx_L1_error)) - __pyx_t_3 = (__Pyx_PyString_Equals(__pyx_v_first_event->kind, __pyx_n_s_call, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 678, __pyx_L1_error) + __Pyx_TraceLine(677,0,__PYX_ERR(1, 677, __pyx_L1_error)) + __pyx_t_3 = (__Pyx_PyString_Equals(__pyx_v_first_event->kind, __pyx_n_s_call, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 677, __pyx_L1_error) __pyx_v_first_is_call = __pyx_t_3; - /* "hunter/_predicates.pyx":679 + /* "hunter/_predicates.pyx":678 * backlog_call_depth = event.depth - first_depth * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) # <<<<<<<<<<<<<< * if missing_depth: * if first_is_call and first_event.frame is not None: */ - __Pyx_TraceLine(679,0,__PYX_ERR(1, 679, __pyx_L1_error)) + __Pyx_TraceLine(678,0,__PYX_ERR(1, 678, __pyx_L1_error)) __pyx_t_5 = ((__pyx_v_self->stack - __pyx_v_backlog_call_depth) + __pyx_v_first_is_call); __pyx_t_6 = 0; - if ((__pyx_t_5 > __pyx_t_6)) { + __pyx_t_3 = (__pyx_t_5 > __pyx_t_6); + if (__pyx_t_3) { __pyx_t_7 = __pyx_t_5; } else { __pyx_t_7 = __pyx_t_6; } __pyx_t_6 = __pyx_t_7; __pyx_t_5 = __pyx_v_first_depth; - if ((__pyx_t_6 < __pyx_t_5)) { + __pyx_t_3 = (__pyx_t_6 < __pyx_t_5); + if (__pyx_t_3) { __pyx_t_7 = __pyx_t_6; } else { __pyx_t_7 = __pyx_t_5; } __pyx_v_missing_depth = __pyx_t_7; - /* "hunter/_predicates.pyx":680 + /* "hunter/_predicates.pyx":679 * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) * if missing_depth: # <<<<<<<<<<<<<< * if first_is_call and first_event.frame is not None: * first_frame = first_event.frame.f_back */ - __Pyx_TraceLine(680,0,__PYX_ERR(1, 680, __pyx_L1_error)) + __Pyx_TraceLine(679,0,__PYX_ERR(1, 679, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_missing_depth != 0); if (__pyx_t_3) { - /* "hunter/_predicates.pyx":681 + /* "hunter/_predicates.pyx":680 * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) * if missing_depth: * if first_is_call and first_event.frame is not None: # <<<<<<<<<<<<<< * first_frame = first_event.frame.f_back * else: */ - __Pyx_TraceLine(681,0,__PYX_ERR(1, 681, __pyx_L1_error)) + __Pyx_TraceLine(680,0,__PYX_ERR(1, 680, __pyx_L1_error)) if (__pyx_v_first_is_call) { } else { __pyx_t_3 = __pyx_v_first_is_call; @@ -22488,21 +23557,21 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_L7_bool_binop_done:; if (__pyx_t_3) { - /* "hunter/_predicates.pyx":682 + /* "hunter/_predicates.pyx":681 * if missing_depth: * if first_is_call and first_event.frame is not None: * first_frame = first_event.frame.f_back # <<<<<<<<<<<<<< * else: * first_frame = first_event.frame */ - __Pyx_TraceLine(682,0,__PYX_ERR(1, 682, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_first_event->frame), __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 682, __pyx_L1_error) + __Pyx_TraceLine(681,0,__PYX_ERR(1, 681, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_first_event->frame), __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(1, 682, __pyx_L1_error) + if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(1, 681, __pyx_L1_error) __pyx_v_first_frame = ((PyFrameObject *)__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":681 + /* "hunter/_predicates.pyx":680 * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) * if missing_depth: * if first_is_call and first_event.frame is not None: # <<<<<<<<<<<<<< @@ -22512,14 +23581,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s goto __pyx_L6; } - /* "hunter/_predicates.pyx":684 + /* "hunter/_predicates.pyx":683 * first_frame = first_event.frame.f_back * else: * first_frame = first_event.frame # <<<<<<<<<<<<<< * if first_frame is not None: * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full */ - __Pyx_TraceLine(684,0,__PYX_ERR(1, 684, __pyx_L1_error)) + __Pyx_TraceLine(683,0,__PYX_ERR(1, 683, __pyx_L1_error)) /*else*/ { __pyx_t_1 = ((PyObject *)__pyx_v_first_event->frame); __Pyx_INCREF(__pyx_t_1); @@ -22528,30 +23597,31 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s } __pyx_L6:; - /* "hunter/_predicates.pyx":685 + /* "hunter/_predicates.pyx":684 * else: * first_frame = first_event.frame * if first_frame is not None: # <<<<<<<<<<<<<< * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full * frame = first_frame */ - __Pyx_TraceLine(685,0,__PYX_ERR(1, 685, __pyx_L1_error)) + __Pyx_TraceLine(684,0,__PYX_ERR(1, 684, __pyx_L1_error)) __pyx_t_3 = (((PyObject *)__pyx_v_first_frame) != Py_None); if (__pyx_t_3) { - /* "hunter/_predicates.pyx":686 + /* "hunter/_predicates.pyx":685 * first_frame = first_event.frame * if first_frame is not None: * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full # <<<<<<<<<<<<<< * frame = first_frame * depth_delta = 0 */ - __Pyx_TraceLine(686,0,__PYX_ERR(1, 686, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_deque); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 686, __pyx_L1_error) + __Pyx_TraceLine(685,0,__PYX_ERR(1, 685, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_deque); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); @@ -22561,48 +23631,49 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_4, }; + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 686, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } __pyx_v_stack_events = __pyx_t_1; __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":687 + /* "hunter/_predicates.pyx":686 * if first_frame is not None: * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full * frame = first_frame # <<<<<<<<<<<<<< * depth_delta = 0 * while frame and depth_delta < missing_depth: */ - __Pyx_TraceLine(687,0,__PYX_ERR(1, 687, __pyx_L1_error)) + __Pyx_TraceLine(686,0,__PYX_ERR(1, 686, __pyx_L1_error)) __Pyx_INCREF((PyObject *)__pyx_v_first_frame); __pyx_v_frame = __pyx_v_first_frame; - /* "hunter/_predicates.pyx":688 + /* "hunter/_predicates.pyx":687 * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full * frame = first_frame * depth_delta = 0 # <<<<<<<<<<<<<< * while frame and depth_delta < missing_depth: * stack_event = Event( */ - __Pyx_TraceLine(688,0,__PYX_ERR(1, 688, __pyx_L1_error)) + __Pyx_TraceLine(687,0,__PYX_ERR(1, 687, __pyx_L1_error)) __pyx_v_depth_delta = 0; - /* "hunter/_predicates.pyx":689 + /* "hunter/_predicates.pyx":688 * frame = first_frame * depth_delta = 0 * while frame and depth_delta < missing_depth: # <<<<<<<<<<<<<< * stack_event = Event( * frame=frame, kind=0, arg=None, */ - __Pyx_TraceLine(689,0,__PYX_ERR(1, 689, __pyx_L1_error)) + __Pyx_TraceLine(688,0,__PYX_ERR(1, 688, __pyx_L1_error)) while (1) { - __pyx_t_8 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_frame)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 689, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_frame)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 688, __pyx_L1_error) if (__pyx_t_8) { } else { __pyx_t_3 = __pyx_t_8; @@ -22613,81 +23684,81 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_L12_bool_binop_done:; if (!__pyx_t_3) break; - /* "hunter/_predicates.pyx":691 + /* "hunter/_predicates.pyx":690 * while frame and depth_delta < missing_depth: * stack_event = Event( * frame=frame, kind=0, arg=None, # <<<<<<<<<<<<<< * threading_support=event.threading_support, * depth=first_depth - depth_delta - 1, calls=-1 */ - __Pyx_TraceLine(691,0,__PYX_ERR(1, 691, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 691, __pyx_L1_error) + __Pyx_TraceLine(690,0,__PYX_ERR(1, 690, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 690, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_frame, ((PyObject *)__pyx_v_frame)) < 0) __PYX_ERR(1, 691, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_kind, __pyx_int_0) < 0) __PYX_ERR(1, 691, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_arg, Py_None) < 0) __PYX_ERR(1, 691, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_frame, ((PyObject *)__pyx_v_frame)) < 0) __PYX_ERR(1, 690, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_kind, __pyx_int_0) < 0) __PYX_ERR(1, 690, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_arg, Py_None) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - /* "hunter/_predicates.pyx":692 + /* "hunter/_predicates.pyx":691 * stack_event = Event( * frame=frame, kind=0, arg=None, * threading_support=event.threading_support, # <<<<<<<<<<<<<< * depth=first_depth - depth_delta - 1, calls=-1 * ) */ - __Pyx_TraceLine(692,0,__PYX_ERR(1, 692, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_event->threading_support); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 692, __pyx_L1_error) + __Pyx_TraceLine(691,0,__PYX_ERR(1, 691, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_event->threading_support); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_threading_support, __pyx_t_2) < 0) __PYX_ERR(1, 691, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_threading_support, __pyx_t_2) < 0) __PYX_ERR(1, 690, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":693 + /* "hunter/_predicates.pyx":692 * frame=frame, kind=0, arg=None, * threading_support=event.threading_support, * depth=first_depth - depth_delta - 1, calls=-1 # <<<<<<<<<<<<<< * ) * if not self.vars: */ - __Pyx_TraceLine(693,0,__PYX_ERR(1, 693, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyInt_From_long(((__pyx_v_first_depth - __pyx_v_depth_delta) - 1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 693, __pyx_L1_error) + __Pyx_TraceLine(692,0,__PYX_ERR(1, 692, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyInt_From_long(((__pyx_v_first_depth - __pyx_v_depth_delta) - 1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 692, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_depth, __pyx_t_2) < 0) __PYX_ERR(1, 691, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_depth, __pyx_t_2) < 0) __PYX_ERR(1, 690, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_calls, __pyx_int_neg_1) < 0) __PYX_ERR(1, 691, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_calls, __pyx_int_neg_1) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - /* "hunter/_predicates.pyx":690 + /* "hunter/_predicates.pyx":689 * depth_delta = 0 * while frame and depth_delta < missing_depth: * stack_event = Event( # <<<<<<<<<<<<<< * frame=frame, kind=0, arg=None, * threading_support=event.threading_support, */ - __Pyx_TraceLine(690,0,__PYX_ERR(1, 690, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 690, __pyx_L1_error) + __Pyx_TraceLine(689,0,__PYX_ERR(1, 689, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF_SET(__pyx_v_stack_event, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2)); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":695 + /* "hunter/_predicates.pyx":694 * depth=first_depth - depth_delta - 1, calls=-1 * ) * if not self.vars: # <<<<<<<<<<<<<< * # noinspection PyPropertyAccess * stack_event._locals = {} */ - __Pyx_TraceLine(695,0,__PYX_ERR(1, 695, __pyx_L1_error)) + __Pyx_TraceLine(694,0,__PYX_ERR(1, 694, __pyx_L1_error)) __pyx_t_3 = (!__pyx_v_self->vars); if (__pyx_t_3) { - /* "hunter/_predicates.pyx":697 + /* "hunter/_predicates.pyx":696 * if not self.vars: * # noinspection PyPropertyAccess * stack_event._locals = {} # <<<<<<<<<<<<<< * stack_event._globals = {} * stack_event.detached = True */ - __Pyx_TraceLine(697,0,__PYX_ERR(1, 697, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 697, __pyx_L1_error) + __Pyx_TraceLine(696,0,__PYX_ERR(1, 696, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_stack_event->_locals); @@ -22695,15 +23766,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_v_stack_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":698 + /* "hunter/_predicates.pyx":697 * # noinspection PyPropertyAccess * stack_event._locals = {} * stack_event._globals = {} # <<<<<<<<<<<<<< * stack_event.detached = True * stack_events.appendleft(stack_event) */ - __Pyx_TraceLine(698,0,__PYX_ERR(1, 698, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 698, __pyx_L1_error) + __Pyx_TraceLine(697,0,__PYX_ERR(1, 697, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_stack_event->_globals); @@ -22711,17 +23782,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_v_stack_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":699 + /* "hunter/_predicates.pyx":698 * stack_event._locals = {} * stack_event._globals = {} * stack_event.detached = True # <<<<<<<<<<<<<< * stack_events.appendleft(stack_event) * frame = frame.f_back */ - __Pyx_TraceLine(699,0,__PYX_ERR(1, 699, __pyx_L1_error)) + __Pyx_TraceLine(698,0,__PYX_ERR(1, 698, __pyx_L1_error)) __pyx_v_stack_event->detached = 1; - /* "hunter/_predicates.pyx":695 + /* "hunter/_predicates.pyx":694 * depth=first_depth - depth_delta - 1, calls=-1 * ) * if not self.vars: # <<<<<<<<<<<<<< @@ -22730,19 +23801,20 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s */ } - /* "hunter/_predicates.pyx":700 + /* "hunter/_predicates.pyx":699 * stack_event._globals = {} * stack_event.detached = True * stack_events.appendleft(stack_event) # <<<<<<<<<<<<<< * frame = frame.f_back * depth_delta += 1 */ - __Pyx_TraceLine(700,0,__PYX_ERR(1, 700, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_stack_events, __pyx_n_s_appendleft); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 700, __pyx_L1_error) + __Pyx_TraceLine(699,0,__PYX_ERR(1, 699, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_stack_events, __pyx_n_s_appendleft); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 699, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); @@ -22752,73 +23824,87 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_v_stack_event)}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 700, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 699, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":701 + /* "hunter/_predicates.pyx":700 * stack_event.detached = True * stack_events.appendleft(stack_event) * frame = frame.f_back # <<<<<<<<<<<<<< * depth_delta += 1 * for stack_event in stack_events: */ - __Pyx_TraceLine(701,0,__PYX_ERR(1, 701, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 701, __pyx_L1_error) + __Pyx_TraceLine(700,0,__PYX_ERR(1, 700, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 700, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(1, 701, __pyx_L1_error) + if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(1, 700, __pyx_L1_error) __Pyx_DECREF_SET(__pyx_v_frame, ((PyFrameObject *)__pyx_t_2)); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":702 + /* "hunter/_predicates.pyx":701 * stack_events.appendleft(stack_event) * frame = frame.f_back * depth_delta += 1 # <<<<<<<<<<<<<< * for stack_event in stack_events: * if self._filter is None or self._filter(stack_event): */ - __Pyx_TraceLine(702,0,__PYX_ERR(1, 702, __pyx_L1_error)) + __Pyx_TraceLine(701,0,__PYX_ERR(1, 701, __pyx_L1_error)) __pyx_v_depth_delta = (__pyx_v_depth_delta + 1); } - /* "hunter/_predicates.pyx":703 + /* "hunter/_predicates.pyx":702 * frame = frame.f_back * depth_delta += 1 * for stack_event in stack_events: # <<<<<<<<<<<<<< * if self._filter is None or self._filter(stack_event): * self.action(stack_event) */ - __Pyx_TraceLine(703,0,__PYX_ERR(1, 703, __pyx_L1_error)) + __Pyx_TraceLine(702,0,__PYX_ERR(1, 702, __pyx_L1_error)) if (likely(PyList_CheckExact(__pyx_v_stack_events)) || PyTuple_CheckExact(__pyx_v_stack_events)) { - __pyx_t_2 = __pyx_v_stack_events; __Pyx_INCREF(__pyx_t_2); __pyx_t_9 = 0; + __pyx_t_2 = __pyx_v_stack_events; __Pyx_INCREF(__pyx_t_2); + __pyx_t_9 = 0; __pyx_t_10 = NULL; } else { - __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_stack_events); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 703, __pyx_L1_error) + __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_stack_events); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 702, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_10 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 703, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 702, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_10)) { if (likely(PyList_CheckExact(__pyx_t_2))) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 702, __pyx_L1_error) + #endif + if (__pyx_t_9 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 703, __pyx_L1_error) + __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 702, __pyx_L1_error) #else - __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 703, __pyx_L1_error) + __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 702, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif } else { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 702, __pyx_L1_error) + #endif + if (__pyx_t_9 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 703, __pyx_L1_error) + __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 702, __pyx_L1_error) #else - __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 703, __pyx_L1_error) + __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 702, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif } @@ -22828,24 +23914,24 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s PyObject* exc_type = PyErr_Occurred(); if (exc_type) { if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 703, __pyx_L1_error) + else __PYX_ERR(1, 702, __pyx_L1_error) } break; } __Pyx_GOTREF(__pyx_t_1); } - if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(1, 703, __pyx_L1_error) + if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(1, 702, __pyx_L1_error) __Pyx_XDECREF_SET(__pyx_v_stack_event, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1)); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":704 + /* "hunter/_predicates.pyx":703 * depth_delta += 1 * for stack_event in stack_events: * if self._filter is None or self._filter(stack_event): # <<<<<<<<<<<<<< * self.action(stack_event) * for backlog_event in self.queue: */ - __Pyx_TraceLine(704,0,__PYX_ERR(1, 704, __pyx_L1_error)) + __Pyx_TraceLine(703,0,__PYX_ERR(1, 703, __pyx_L1_error)) __pyx_t_8 = (__pyx_v_self->_filter == Py_None); if (!__pyx_t_8) { } else { @@ -22855,7 +23941,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __Pyx_INCREF(__pyx_v_self->_filter); __pyx_t_4 = __pyx_v_self->_filter; __pyx_t_11 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -22865,32 +23952,34 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, ((PyObject *)__pyx_v_stack_event)}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 704, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 703, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 704, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 703, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_t_8; __pyx_L18_bool_binop_done:; if (__pyx_t_3) { - /* "hunter/_predicates.pyx":705 + /* "hunter/_predicates.pyx":704 * for stack_event in stack_events: * if self._filter is None or self._filter(stack_event): * self.action(stack_event) # <<<<<<<<<<<<<< * for backlog_event in self.queue: * if self._filter is None: */ - __Pyx_TraceLine(705,0,__PYX_ERR(1, 705, __pyx_L1_error)) + __Pyx_TraceLine(704,0,__PYX_ERR(1, 704, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_self->action); __pyx_t_4 = __pyx_v_self->action; __pyx_t_11 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -22900,17 +23989,18 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, ((PyObject *)__pyx_v_stack_event)}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 705, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":704 + /* "hunter/_predicates.pyx":703 * depth_delta += 1 * for stack_event in stack_events: * if self._filter is None or self._filter(stack_event): # <<<<<<<<<<<<<< @@ -22919,18 +24009,18 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s */ } - /* "hunter/_predicates.pyx":703 + /* "hunter/_predicates.pyx":702 * frame = frame.f_back * depth_delta += 1 * for stack_event in stack_events: # <<<<<<<<<<<<<< * if self._filter is None or self._filter(stack_event): * self.action(stack_event) */ - __Pyx_TraceLine(703,0,__PYX_ERR(1, 703, __pyx_L1_error)) + __Pyx_TraceLine(702,0,__PYX_ERR(1, 702, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":685 + /* "hunter/_predicates.pyx":684 * else: * first_frame = first_event.frame * if first_frame is not None: # <<<<<<<<<<<<<< @@ -22939,7 +24029,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s */ } - /* "hunter/_predicates.pyx":680 + /* "hunter/_predicates.pyx":679 * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) * if missing_depth: # <<<<<<<<<<<<<< @@ -22948,38 +24038,51 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s */ } - /* "hunter/_predicates.pyx":706 + /* "hunter/_predicates.pyx":705 * if self._filter is None or self._filter(stack_event): * self.action(stack_event) * for backlog_event in self.queue: # <<<<<<<<<<<<<< * if self._filter is None: * self.action(backlog_event) */ - __Pyx_TraceLine(706,0,__PYX_ERR(1, 706, __pyx_L1_error)) + __Pyx_TraceLine(705,0,__PYX_ERR(1, 705, __pyx_L1_error)) if (likely(PyList_CheckExact(__pyx_v_self->queue)) || PyTuple_CheckExact(__pyx_v_self->queue)) { - __pyx_t_2 = __pyx_v_self->queue; __Pyx_INCREF(__pyx_t_2); __pyx_t_9 = 0; + __pyx_t_2 = __pyx_v_self->queue; __Pyx_INCREF(__pyx_t_2); + __pyx_t_9 = 0; __pyx_t_10 = NULL; } else { - __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_self->queue); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 706, __pyx_L1_error) + __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_self->queue); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 705, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_10 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 706, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 705, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_10)) { if (likely(PyList_CheckExact(__pyx_t_2))) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 705, __pyx_L1_error) + #endif + if (__pyx_t_9 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 706, __pyx_L1_error) + __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 705, __pyx_L1_error) #else - __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 706, __pyx_L1_error) + __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 705, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif } else { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_2)) break; + { + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 705, __pyx_L1_error) + #endif + if (__pyx_t_9 >= __pyx_temp) break; + } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 706, __pyx_L1_error) + __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 705, __pyx_L1_error) #else - __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 706, __pyx_L1_error) + __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 705, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif } @@ -22989,7 +24092,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s PyObject* exc_type = PyErr_Occurred(); if (exc_type) { if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 706, __pyx_L1_error) + else __PYX_ERR(1, 705, __pyx_L1_error) } break; } @@ -22998,29 +24101,30 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __Pyx_XDECREF_SET(__pyx_v_backlog_event, __pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":707 + /* "hunter/_predicates.pyx":706 * self.action(stack_event) * for backlog_event in self.queue: * if self._filter is None: # <<<<<<<<<<<<<< * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): */ - __Pyx_TraceLine(707,0,__PYX_ERR(1, 707, __pyx_L1_error)) + __Pyx_TraceLine(706,0,__PYX_ERR(1, 706, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_self->_filter == Py_None); if (__pyx_t_3) { - /* "hunter/_predicates.pyx":708 + /* "hunter/_predicates.pyx":707 * for backlog_event in self.queue: * if self._filter is None: * self.action(backlog_event) # <<<<<<<<<<<<<< * elif fast_call(self._filter, backlog_event): * self.action(backlog_event) */ - __Pyx_TraceLine(708,0,__PYX_ERR(1, 708, __pyx_L1_error)) + __Pyx_TraceLine(707,0,__PYX_ERR(1, 707, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_self->action); __pyx_t_4 = __pyx_v_self->action; __pyx_t_11 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -23030,55 +24134,57 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_v_backlog_event}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 708, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 707, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":707 + /* "hunter/_predicates.pyx":706 * self.action(stack_event) * for backlog_event in self.queue: * if self._filter is None: # <<<<<<<<<<<<<< * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): */ - goto __pyx_L22; + goto __pyx_L23; } - /* "hunter/_predicates.pyx":709 + /* "hunter/_predicates.pyx":708 * if self._filter is None: * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): # <<<<<<<<<<<<<< * self.action(backlog_event) * self.queue.clear() */ - __Pyx_TraceLine(709,0,__PYX_ERR(1, 709, __pyx_L1_error)) + __Pyx_TraceLine(708,0,__PYX_ERR(1, 708, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->_filter; __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_backlog_event)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 709, __pyx_L1_error) + __pyx_t_4 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_backlog_event)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 708, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 709, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 708, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_3) { - /* "hunter/_predicates.pyx":710 + /* "hunter/_predicates.pyx":709 * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): * self.action(backlog_event) # <<<<<<<<<<<<<< * self.queue.clear() * else: */ - __Pyx_TraceLine(710,0,__PYX_ERR(1, 710, __pyx_L1_error)) + __Pyx_TraceLine(709,0,__PYX_ERR(1, 709, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_self->action); __pyx_t_1 = __pyx_v_self->action; __pyx_t_11 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); @@ -23088,17 +24194,18 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_v_backlog_event}; __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 710, __pyx_L1_error) + if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":709 + /* "hunter/_predicates.pyx":708 * if self._filter is None: * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): # <<<<<<<<<<<<<< @@ -23106,32 +24213,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.queue.clear() */ } - __pyx_L22:; + __pyx_L23:; - /* "hunter/_predicates.pyx":706 + /* "hunter/_predicates.pyx":705 * if self._filter is None or self._filter(stack_event): * self.action(stack_event) * for backlog_event in self.queue: # <<<<<<<<<<<<<< * if self._filter is None: * self.action(backlog_event) */ - __Pyx_TraceLine(706,0,__PYX_ERR(1, 706, __pyx_L1_error)) + __Pyx_TraceLine(705,0,__PYX_ERR(1, 705, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":711 + /* "hunter/_predicates.pyx":710 * elif fast_call(self._filter, backlog_event): * self.action(backlog_event) * self.queue.clear() # <<<<<<<<<<<<<< * else: * if self.strip and event.depth < 1: */ - __Pyx_TraceLine(711,0,__PYX_ERR(1, 711, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->queue, __pyx_n_s_clear); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 711, __pyx_L1_error) + __Pyx_TraceLine(710,0,__PYX_ERR(1, 710, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->queue, __pyx_n_s_clear); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -23141,17 +24249,18 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_1, }; + PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 711, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":672 + /* "hunter/_predicates.pyx":671 * result = fast_call(self.condition, event) * if result: * if self.queue: # <<<<<<<<<<<<<< @@ -23160,7 +24269,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s */ } - /* "hunter/_predicates.pyx":671 + /* "hunter/_predicates.pyx":670 * * result = fast_call(self.condition, event) * if result: # <<<<<<<<<<<<<< @@ -23170,38 +24279,39 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s goto __pyx_L3; } - /* "hunter/_predicates.pyx":713 + /* "hunter/_predicates.pyx":712 * self.queue.clear() * else: * if self.strip and event.depth < 1: # <<<<<<<<<<<<<< * # Looks like we're back to depth 0 for some reason. * # Delete everything because we don't want to see what is likely just a long stream of useless returns. */ - __Pyx_TraceLine(713,0,__PYX_ERR(1, 713, __pyx_L1_error)) + __Pyx_TraceLine(712,0,__PYX_ERR(1, 712, __pyx_L1_error)) /*else*/ { if (__pyx_v_self->strip) { } else { __pyx_t_3 = __pyx_v_self->strip; - goto __pyx_L24_bool_binop_done; + goto __pyx_L26_bool_binop_done; } __pyx_t_8 = (__pyx_v_event->depth < 1); __pyx_t_3 = __pyx_t_8; - __pyx_L24_bool_binop_done:; + __pyx_L26_bool_binop_done:; if (__pyx_t_3) { - /* "hunter/_predicates.pyx":716 + /* "hunter/_predicates.pyx":715 * # Looks like we're back to depth 0 for some reason. * # Delete everything because we don't want to see what is likely just a long stream of useless returns. * self.queue.clear() # <<<<<<<<<<<<<< * if self._filter is None or self._filter(event): * detached_event = fast_detach(event, self._try_repr) */ - __Pyx_TraceLine(716,0,__PYX_ERR(1, 716, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->queue, __pyx_n_s_clear); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 716, __pyx_L1_error) + __Pyx_TraceLine(715,0,__PYX_ERR(1, 715, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->queue, __pyx_n_s_clear); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -23211,17 +24321,18 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_1, }; + PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 716, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_predicates.pyx":713 + /* "hunter/_predicates.pyx":712 * self.queue.clear() * else: * if self.strip and event.depth < 1: # <<<<<<<<<<<<<< @@ -23230,24 +24341,25 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s */ } - /* "hunter/_predicates.pyx":717 + /* "hunter/_predicates.pyx":716 * # Delete everything because we don't want to see what is likely just a long stream of useless returns. * self.queue.clear() * if self._filter is None or self._filter(event): # <<<<<<<<<<<<<< * detached_event = fast_detach(event, self._try_repr) * detached_event.frame = event.frame */ - __Pyx_TraceLine(717,0,__PYX_ERR(1, 717, __pyx_L1_error)) + __Pyx_TraceLine(716,0,__PYX_ERR(1, 716, __pyx_L1_error)) __pyx_t_8 = (__pyx_v_self->_filter == Py_None); if (!__pyx_t_8) { } else { __pyx_t_3 = __pyx_t_8; - goto __pyx_L27_bool_binop_done; + goto __pyx_L29_bool_binop_done; } __Pyx_INCREF(__pyx_v_self->_filter); __pyx_t_4 = __pyx_v_self->_filter; __pyx_t_1 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -23257,44 +24369,45 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_1, ((PyObject *)__pyx_v_event)}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 717, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 717, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 716, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_3 = __pyx_t_8; - __pyx_L27_bool_binop_done:; + __pyx_L29_bool_binop_done:; if (__pyx_t_3) { - /* "hunter/_predicates.pyx":718 + /* "hunter/_predicates.pyx":717 * self.queue.clear() * if self._filter is None or self._filter(event): * detached_event = fast_detach(event, self._try_repr) # <<<<<<<<<<<<<< * detached_event.frame = event.frame * self.queue.append(detached_event) */ - __Pyx_TraceLine(718,0,__PYX_ERR(1, 718, __pyx_L1_error)) + __Pyx_TraceLine(717,0,__PYX_ERR(1, 717, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_try_repr; __Pyx_INCREF(__pyx_t_2); - __pyx_t_4 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_event, __pyx_t_2)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 718, __pyx_L1_error) + __pyx_t_4 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_event, __pyx_t_2)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_detached_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":719 + /* "hunter/_predicates.pyx":718 * if self._filter is None or self._filter(event): * detached_event = fast_detach(event, self._try_repr) * detached_event.frame = event.frame # <<<<<<<<<<<<<< * self.queue.append(detached_event) * */ - __Pyx_TraceLine(719,0,__PYX_ERR(1, 719, __pyx_L1_error)) + __Pyx_TraceLine(718,0,__PYX_ERR(1, 718, __pyx_L1_error)) __pyx_t_4 = ((PyObject *)__pyx_v_event->frame); __Pyx_INCREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_4); @@ -23303,17 +24416,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_v_detached_event->frame = ((PyFrameObject *)__pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_predicates.pyx":720 + /* "hunter/_predicates.pyx":719 * detached_event = fast_detach(event, self._try_repr) * detached_event.frame = event.frame * self.queue.append(detached_event) # <<<<<<<<<<<<<< * * return result */ - __Pyx_TraceLine(720,0,__PYX_ERR(1, 720, __pyx_L1_error)) - __pyx_t_12 = __Pyx_PyObject_Append(__pyx_v_self->queue, ((PyObject *)__pyx_v_detached_event)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(1, 720, __pyx_L1_error) + __Pyx_TraceLine(719,0,__PYX_ERR(1, 719, __pyx_L1_error)) + __pyx_t_12 = __Pyx_PyObject_Append(__pyx_v_self->queue, ((PyObject *)__pyx_v_detached_event)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(1, 719, __pyx_L1_error) - /* "hunter/_predicates.pyx":717 + /* "hunter/_predicates.pyx":716 * # Delete everything because we don't want to see what is likely just a long stream of useless returns. * self.queue.clear() * if self._filter is None or self._filter(event): # <<<<<<<<<<<<<< @@ -23324,18 +24437,18 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s } __pyx_L3:; - /* "hunter/_predicates.pyx":722 + /* "hunter/_predicates.pyx":721 * self.queue.append(detached_event) * * return result # <<<<<<<<<<<<<< */ - __Pyx_TraceLine(722,0,__PYX_ERR(1, 722, __pyx_L1_error)) + __Pyx_TraceLine(721,0,__PYX_ERR(1, 721, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_result); __pyx_r = __pyx_v_result; goto __pyx_L0; - /* "hunter/_predicates.pyx":656 + /* "hunter/_predicates.pyx":655 * ) * * cdef inline fast_Backlog_call(Backlog self, Event event): # <<<<<<<<<<<<<< @@ -23392,18 +24505,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Query (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -23419,19 +24540,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -23452,10 +24582,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Query", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -23463,6 +24601,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -23482,7 +24626,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__27) - __Pyx_RefNannySetupContext("__pyx_unpickle_Query", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Query", 1); __Pyx_TraceCall("__pyx_unpickle_Query", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -23511,7 +24655,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -23560,7 +24704,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -23570,6 +24715,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -23672,7 +24818,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Query__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Query__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_Query__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -23815,7 +24961,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_3 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 10); if (__pyx_t_4) { } else { @@ -23846,7 +24992,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -23856,6 +25003,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_8 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); @@ -23926,18 +25074,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_When (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -23953,19 +25109,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -23986,10 +25151,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_When", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -23997,6 +25170,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -24016,7 +25195,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__29) - __Pyx_RefNannySetupContext("__pyx_unpickle_When", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_When", 1); __Pyx_TraceCall("__pyx_unpickle_When", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -24045,7 +25224,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -24094,7 +25273,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -24104,6 +25284,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -24206,7 +25387,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_When__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_When__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_When__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -24252,7 +25433,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_3 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 2); if (__pyx_t_4) { } else { @@ -24283,7 +25464,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -24293,6 +25475,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st __pyx_t_8 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); @@ -24363,18 +25546,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_From (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -24390,19 +25581,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -24423,10 +25623,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_From", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -24434,6 +25642,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -24453,7 +25667,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__31) - __Pyx_RefNannySetupContext("__pyx_unpickle_From", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_From", 1); __Pyx_TraceCall("__pyx_unpickle_From", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -24482,7 +25696,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -24531,7 +25745,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -24541,6 +25756,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -24643,7 +25859,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_From__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_From__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_From__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -24715,7 +25931,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_4 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_5 = (__pyx_t_4 > 5); if (__pyx_t_5) { } else { @@ -24746,7 +25962,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = NULL; __pyx_t_2 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); @@ -24756,6 +25973,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st __pyx_t_2 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_6}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_2, 1+__pyx_t_2); @@ -24826,18 +26044,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_And (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -24853,19 +26079,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -24886,10 +26121,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_And", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -24897,6 +26140,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -24916,7 +26165,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__33) - __Pyx_RefNannySetupContext("__pyx_unpickle_And", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_And", 1); __Pyx_TraceCall("__pyx_unpickle_And", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -24945,7 +26194,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -24994,7 +26243,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -25004,6 +26254,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -25106,7 +26357,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_And__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_And__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_And__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -25141,7 +26392,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_3 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 1); if (__pyx_t_4) { } else { @@ -25172,7 +26423,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -25182,6 +26434,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str __pyx_t_8 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); @@ -25252,18 +26505,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Or (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -25279,19 +26540,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -25312,10 +26582,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Or", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -25323,6 +26601,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -25342,7 +26626,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__35) - __Pyx_RefNannySetupContext("__pyx_unpickle_Or", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Or", 1); __Pyx_TraceCall("__pyx_unpickle_Or", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -25371,7 +26655,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25420,7 +26704,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -25430,6 +26715,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -25532,7 +26818,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Or__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Or__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_Or__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -25567,7 +26853,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_3 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 1); if (__pyx_t_4) { } else { @@ -25598,7 +26884,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -25608,6 +26895,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru __pyx_t_8 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); @@ -25678,18 +26966,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Not (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -25705,19 +27001,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -25738,10 +27043,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Not", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -25749,6 +27062,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -25768,7 +27087,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__36) - __Pyx_RefNannySetupContext("__pyx_unpickle_Not", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Not", 1); __Pyx_TraceCall("__pyx_unpickle_Not", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -25797,7 +27116,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25846,7 +27165,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -25856,6 +27176,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -25958,7 +27279,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Not__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Not__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_Not__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -25992,7 +27313,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_3 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 1); if (__pyx_t_4) { } else { @@ -26023,7 +27344,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -26033,6 +27355,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str __pyx_t_8 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); @@ -26103,18 +27426,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds long __pyx_v___pyx_checksum; PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -26130,19 +27461,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) @@ -26163,10 +27503,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Backlog", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -26174,6 +27522,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -26193,7 +27547,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__38) - __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog", 1); __Pyx_TraceCall("__pyx_unpickle_Backlog", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "(tree fragment)":4 @@ -26222,7 +27576,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_PickleError); __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -26271,7 +27625,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -26281,6 +27636,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ __pyx_t_5 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); @@ -26383,7 +27739,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog__set_state", 0); + __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog__set_state", 1); __Pyx_TraceCall("__pyx_unpickle_Backlog__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); /* "(tree fragment)":12 @@ -26497,7 +27853,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 13, __pyx_L1_error) } - __pyx_t_4 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) __pyx_t_5 = (__pyx_t_4 > 9); if (__pyx_t_5) { } else { @@ -26528,7 +27884,8 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = NULL; __pyx_t_2 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); @@ -26538,6 +27895,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __pyx_t_2 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_6}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_2, 1+__pyx_t_2); @@ -26582,62 +27940,310 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state return __pyx_r; } -static struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *__pyx_freelist___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event[8]; -static int __pyx_freecount___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event = 0; - -static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_6hunter_11_predicates_Query(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_Query *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event)))) { - o = (PyObject*)__pyx_freelist___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event[--__pyx_freecount___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event]; - memset(o, 0, sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event)); - (void) PyObject_INIT(o, t); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; #endif + p = ((struct __pyx_obj_6hunter_11_predicates_Query *)o); + p->query_contains = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_endswith = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_eq = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_gt = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_gte = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_in = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_lt = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_lte = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_regex = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->query_startswith = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(PyObject *o) { - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } +static void __pyx_tp_dealloc_6hunter_11_predicates_Query(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; + PyObject_GC_UnTrack(o); + Py_CLEAR(p->query_contains); + Py_CLEAR(p->query_endswith); + Py_CLEAR(p->query_eq); + Py_CLEAR(p->query_gt); + Py_CLEAR(p->query_gte); + Py_CLEAR(p->query_in); + Py_CLEAR(p->query_lt); + Py_CLEAR(p->query_lte); + Py_CLEAR(p->query_regex); + Py_CLEAR(p->query_startswith); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } #endif - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event)))) { - __pyx_freelist___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event[__pyx_freecount___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event++] = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); +} + +static int __pyx_tp_traverse_6hunter_11_predicates_Query(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; + if (p->query_contains) { + e = (*v)(p->query_contains, a); if (e) return e; + } + if (p->query_endswith) { + e = (*v)(p->query_endswith, a); if (e) return e; } + if (p->query_eq) { + e = (*v)(p->query_eq, a); if (e) return e; + } + if (p->query_gt) { + e = (*v)(p->query_gt, a); if (e) return e; + } + if (p->query_gte) { + e = (*v)(p->query_gte, a); if (e) return e; + } + if (p->query_in) { + e = (*v)(p->query_in, a); if (e) return e; + } + if (p->query_lt) { + e = (*v)(p->query_lt, a); if (e) return e; + } + if (p->query_lte) { + e = (*v)(p->query_lte, a); if (e) return e; + } + if (p->query_regex) { + e = (*v)(p->query_regex, a); if (e) return e; + } + if (p->query_startswith) { + e = (*v)(p->query_startswith, a); if (e) return e; + } + return 0; +} + +static int __pyx_tp_clear_6hunter_11_predicates_Query(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; + tmp = ((PyObject*)p->query_contains); + p->query_contains = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_endswith); + p->query_endswith = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_eq); + p->query_eq = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_gt); + p->query_gt = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_gte); + p->query_gte = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_in); + p->query_in = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_lt); + p->query_lt = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_lte); + p->query_lte = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_regex); + p->query_regex = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->query_startswith); + p->query_startswith = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; } + +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_Query(PyObject *o1, PyObject *o2, int op) { + switch (op) { + case Py_EQ: { + return __pyx_pw_6hunter_11_predicates_5Query_7__eq__(o1, o2); + } + case Py_NE: { + PyObject *ret; + ret = __pyx_pw_6hunter_11_predicates_5Query_7__eq__(o1, o2); + if (likely(ret && ret != Py_NotImplemented)) { + int b = __Pyx_PyObject_IsTrue(ret); + Py_DECREF(ret); + if (unlikely(b < 0)) return NULL; + ret = (b) ? Py_False : Py_True; + Py_INCREF(ret); + } + return ret; + } + default: { + return __Pyx_NewRef(Py_NotImplemented); + } + } +} +#define __pyx_nb_and_6hunter_11_predicates_Query __pyx_pw_6hunter_11_predicates_5Query_13__and__ +#define __pyx_nb_or_6hunter_11_predicates_Query __pyx_pw_6hunter_11_predicates_5Query_11__or__ + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_contains(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_14query_contains_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_endswith(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_14query_endswith_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_eq(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_8query_eq_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_gt(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_8query_gt_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_gte(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_9query_gte_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_in(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_8query_in_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_lt(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_8query_lt_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_lte(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_9query_lte_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_regex(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_11query_regex_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_startswith(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get__(o); +} + +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_5Query_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_5Query_5__repr__(self); +} + +static PyMethodDef __pyx_methods_6hunter_11_predicates_Query[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_5Query_5__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {0, 0, 0, 0} +}; + +static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Query[] = { + {(char *)"query_contains", __pyx_getprop_6hunter_11_predicates_5Query_query_contains, 0, (char *)0, 0}, + {(char *)"query_endswith", __pyx_getprop_6hunter_11_predicates_5Query_query_endswith, 0, (char *)0, 0}, + {(char *)"query_eq", __pyx_getprop_6hunter_11_predicates_5Query_query_eq, 0, (char *)0, 0}, + {(char *)"query_gt", __pyx_getprop_6hunter_11_predicates_5Query_query_gt, 0, (char *)0, 0}, + {(char *)"query_gte", __pyx_getprop_6hunter_11_predicates_5Query_query_gte, 0, (char *)0, 0}, + {(char *)"query_in", __pyx_getprop_6hunter_11_predicates_5Query_query_in, 0, (char *)0, 0}, + {(char *)"query_lt", __pyx_getprop_6hunter_11_predicates_5Query_query_lt, 0, (char *)0, 0}, + {(char *)"query_lte", __pyx_getprop_6hunter_11_predicates_5Query_query_lte, 0, (char *)0, 0}, + {(char *)"query_regex", __pyx_getprop_6hunter_11_predicates_5Query_query_regex, 0, (char *)0, 0}, + {(char *)"query_startswith", __pyx_getprop_6hunter_11_predicates_5Query_query_startswith, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event}, - {Py_tp_new, (void *)__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event}, +static PyType_Slot __pyx_type_6hunter_11_predicates_Query_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_Query}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_5Query_5__repr__}, + {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_5Query_15__invert__}, + {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_Query}, + {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_Query}, + {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_5Query_9__call__}, + {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_5Query_3__str__}, + {Py_tp_doc, (void *)PyDoc_STR("\n A query class.\n\n See :class:`hunter.event.Event` for fields that can be filtered on.\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_Query}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_Query}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_Query}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_Query}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_Query}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_5Query_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_Query}, {0, 0}, }; -static PyType_Spec __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_spec = { - "hunter._predicates.__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event", - sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event), +static PyType_Spec __pyx_type_6hunter_11_predicates_Query_spec = { + "hunter._predicates.Query", + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, + __pyx_type_6hunter_11_predicates_Query_slots, }; #else -static PyTypeObject __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event = { +static PyNumberMethods __pyx_tp_as_number_Query = { + 0, /*nb_add*/ + 0, /*nb_subtract*/ + 0, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_divide*/ + #endif + 0, /*nb_remainder*/ + 0, /*nb_divmod*/ + 0, /*nb_power*/ + 0, /*nb_negative*/ + 0, /*nb_positive*/ + 0, /*nb_absolute*/ + 0, /*nb_bool*/ + __pyx_pw_6hunter_11_predicates_5Query_15__invert__, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + __pyx_nb_and_6hunter_11_predicates_Query, /*nb_and*/ + 0, /*nb_xor*/ + __pyx_nb_or_6hunter_11_predicates_Query, /*nb_or*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_coerce*/ + #endif + 0, /*nb_int*/ + #if PY_MAJOR_VERSION < 3 + 0, /*nb_long*/ + #else + 0, /*reserved*/ + #endif + 0, /*nb_float*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_oct*/ + #endif + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_hex*/ + #endif + 0, /*nb_inplace_add*/ + 0, /*nb_inplace_subtract*/ + 0, /*nb_inplace_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_inplace_divide*/ + #endif + 0, /*nb_inplace_remainder*/ + 0, /*nb_inplace_power*/ + 0, /*nb_inplace_lshift*/ + 0, /*nb_inplace_rshift*/ + 0, /*nb_inplace_and*/ + 0, /*nb_inplace_xor*/ + 0, /*nb_inplace_or*/ + 0, /*nb_floor_divide*/ + 0, /*nb_true_divide*/ + 0, /*nb_inplace_floor_divide*/ + 0, /*nb_inplace_true_divide*/ + 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ + #endif +}; + +static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event", /*tp_name*/ - sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event), /*tp_basicsize*/ + "hunter._predicates.""Query", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_Query, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -26652,27 +28258,27 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_ #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_5Query_5__repr__, /*tp_repr*/ + &__pyx_tp_as_number_Query, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_6hunter_11_predicates_5Query_9__call__, /*tp_call*/ + __pyx_pw_6hunter_11_predicates_5Query_3__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + PyDoc_STR("\n A query class.\n\n See :class:`hunter.event.Event` for fields that can be filtered on.\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_Query, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_Query, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_Query, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - 0, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_Query, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_11_predicates_Query, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -26680,9 +28286,9 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_ #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - 0, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_5Query_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_Query, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -26702,96 +28308,205 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_ #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr = 0; - -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_6hunter_11_predicates_And(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_And *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; #endif + p = ((struct __pyx_obj_6hunter_11_predicates_And *)o); + p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif +static void __pyx_tp_dealloc_6hunter_11_predicates_And(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_genexpr_arg_0); - Py_CLEAR(p->__pyx_v_p); - Py_CLEAR(p->__pyx_t_0); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->predicates); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } + #endif } -static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates_And(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o; - if (p->__pyx_genexpr_arg_0) { - e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; - } - if (p->__pyx_v_p) { - e = (*v)(p->__pyx_v_p, a); if (e) return e; - } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; + if (p->predicates) { + e = (*v)(p->predicates, a); if (e) return e; } return 0; } + +static int __pyx_tp_clear_6hunter_11_predicates_And(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; + tmp = ((PyObject*)p->predicates); + p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_And(PyObject *o1, PyObject *o2, int op) { + switch (op) { + case Py_EQ: { + return __pyx_pw_6hunter_11_predicates_3And_7__eq__(o1, o2); + } + case Py_NE: { + PyObject *ret; + ret = __pyx_pw_6hunter_11_predicates_3And_7__eq__(o1, o2); + if (likely(ret && ret != Py_NotImplemented)) { + int b = __Pyx_PyObject_IsTrue(ret); + Py_DECREF(ret); + if (unlikely(b < 0)) return NULL; + ret = (b) ? Py_False : Py_True; + Py_INCREF(ret); + } + return ret; + } + default: { + return __Pyx_NewRef(Py_NotImplemented); + } + } +} +#define __pyx_nb_and_6hunter_11_predicates_And __pyx_pw_6hunter_11_predicates_3And_13__and__ +#define __pyx_nb_or_6hunter_11_predicates_And __pyx_pw_6hunter_11_predicates_3And_11__or__ + +static PyObject *__pyx_getprop_6hunter_11_predicates_3And_predicates(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(o); +} + +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_3And_5__repr__(self); +} + +static PyMethodDef __pyx_methods_6hunter_11_predicates_And[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3And_5__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {0, 0, 0, 0} +}; + +static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_And[] = { + {(char *)"predicates", __pyx_getprop_6hunter_11_predicates_3And_predicates, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr}, +static PyType_Slot __pyx_type_6hunter_11_predicates_And_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_And}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_3And_5__repr__}, + {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_3And_15__invert__}, + {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_And}, + {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_And}, + {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_3And_9__call__}, + {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_3And_3__str__}, + {Py_tp_doc, (void *)PyDoc_STR("\n `And` predicate. Exits at the first sub-predicate that returns ``False``.\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_And}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_And}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_And}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_And}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_And}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_3And_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_And}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec = { - "hunter._predicates.__pyx_scope_struct_5_genexpr", - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr), +static PyType_Spec __pyx_type_6hunter_11_predicates_And_spec = { + "hunter._predicates.And", + sizeof(struct __pyx_obj_6hunter_11_predicates_And), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, + __pyx_type_6hunter_11_predicates_And_slots, }; #else -static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr = { +static PyNumberMethods __pyx_tp_as_number_And = { + 0, /*nb_add*/ + 0, /*nb_subtract*/ + 0, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_divide*/ + #endif + 0, /*nb_remainder*/ + 0, /*nb_divmod*/ + 0, /*nb_power*/ + 0, /*nb_negative*/ + 0, /*nb_positive*/ + 0, /*nb_absolute*/ + 0, /*nb_bool*/ + __pyx_pw_6hunter_11_predicates_3And_15__invert__, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + __pyx_nb_and_6hunter_11_predicates_And, /*nb_and*/ + 0, /*nb_xor*/ + __pyx_nb_or_6hunter_11_predicates_And, /*nb_or*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_coerce*/ + #endif + 0, /*nb_int*/ + #if PY_MAJOR_VERSION < 3 + 0, /*nb_long*/ + #else + 0, /*reserved*/ + #endif + 0, /*nb_float*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_oct*/ + #endif + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_hex*/ + #endif + 0, /*nb_inplace_add*/ + 0, /*nb_inplace_subtract*/ + 0, /*nb_inplace_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_inplace_divide*/ + #endif + 0, /*nb_inplace_remainder*/ + 0, /*nb_inplace_power*/ + 0, /*nb_inplace_lshift*/ + 0, /*nb_inplace_rshift*/ + 0, /*nb_inplace_and*/ + 0, /*nb_inplace_xor*/ + 0, /*nb_inplace_or*/ + 0, /*nb_floor_divide*/ + 0, /*nb_true_divide*/ + 0, /*nb_inplace_floor_divide*/ + 0, /*nb_inplace_true_divide*/ + 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ + #endif +}; + +static PyTypeObject __pyx_type_6hunter_11_predicates_And = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct_5_genexpr", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr), /*tp_basicsize*/ + "hunter._predicates.""And", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_And), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_And, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -26806,27 +28521,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexp #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_3And_5__repr__, /*tp_repr*/ + &__pyx_tp_as_number_And, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_6hunter_11_predicates_3And_9__call__, /*tp_call*/ + __pyx_pw_6hunter_11_predicates_3And_3__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + PyDoc_STR("\n `And` predicate. Exits at the first sub-predicate that returns ``False``.\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_And, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_And, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_And, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - 0, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_And, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_11_predicates_And, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -26834,9 +28549,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexp #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - 0, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_3And_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_And, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -26856,96 +28571,205 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexp #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr = 0; - -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_6hunter_11_predicates_Or(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_Or *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; #endif + p = ((struct __pyx_obj_6hunter_11_predicates_Or *)o); + p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif +static void __pyx_tp_dealloc_6hunter_11_predicates_Or(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_genexpr_arg_0); - Py_CLEAR(p->__pyx_v_p); - Py_CLEAR(p->__pyx_t_0); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->predicates); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } + #endif } -static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates_Or(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o; - if (p->__pyx_genexpr_arg_0) { - e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; - } - if (p->__pyx_v_p) { - e = (*v)(p->__pyx_v_p, a); if (e) return e; - } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; + if (p->predicates) { + e = (*v)(p->predicates, a); if (e) return e; } return 0; } + +static int __pyx_tp_clear_6hunter_11_predicates_Or(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; + tmp = ((PyObject*)p->predicates); + p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_Or(PyObject *o1, PyObject *o2, int op) { + switch (op) { + case Py_EQ: { + return __pyx_pw_6hunter_11_predicates_2Or_7__eq__(o1, o2); + } + case Py_NE: { + PyObject *ret; + ret = __pyx_pw_6hunter_11_predicates_2Or_7__eq__(o1, o2); + if (likely(ret && ret != Py_NotImplemented)) { + int b = __Pyx_PyObject_IsTrue(ret); + Py_DECREF(ret); + if (unlikely(b < 0)) return NULL; + ret = (b) ? Py_False : Py_True; + Py_INCREF(ret); + } + return ret; + } + default: { + return __Pyx_NewRef(Py_NotImplemented); + } + } +} +#define __pyx_nb_and_6hunter_11_predicates_Or __pyx_pw_6hunter_11_predicates_2Or_13__and__ +#define __pyx_nb_or_6hunter_11_predicates_Or __pyx_pw_6hunter_11_predicates_2Or_11__or__ + +static PyObject *__pyx_getprop_6hunter_11_predicates_2Or_predicates(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(o); +} + +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_2Or_5__repr__(self); +} + +static PyMethodDef __pyx_methods_6hunter_11_predicates_Or[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_2Or_5__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {0, 0, 0, 0} +}; + +static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Or[] = { + {(char *)"predicates", __pyx_getprop_6hunter_11_predicates_2Or_predicates, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr}, +static PyType_Slot __pyx_type_6hunter_11_predicates_Or_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_Or}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_2Or_5__repr__}, + {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_2Or_15__invert__}, + {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_Or}, + {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_Or}, + {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_2Or_9__call__}, + {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_2Or_3__str__}, + {Py_tp_doc, (void *)PyDoc_STR("\n `Or` predicate. Exits at first sub-predicate that returns ``True``.\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_Or}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_Or}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_Or}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_Or}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_Or}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_2Or_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_Or}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec = { - "hunter._predicates.__pyx_scope_struct_4_genexpr", - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr), +static PyType_Spec __pyx_type_6hunter_11_predicates_Or_spec = { + "hunter._predicates.Or", + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, + __pyx_type_6hunter_11_predicates_Or_slots, }; #else -static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr = { +static PyNumberMethods __pyx_tp_as_number_Or = { + 0, /*nb_add*/ + 0, /*nb_subtract*/ + 0, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_divide*/ + #endif + 0, /*nb_remainder*/ + 0, /*nb_divmod*/ + 0, /*nb_power*/ + 0, /*nb_negative*/ + 0, /*nb_positive*/ + 0, /*nb_absolute*/ + 0, /*nb_bool*/ + __pyx_pw_6hunter_11_predicates_2Or_15__invert__, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + __pyx_nb_and_6hunter_11_predicates_Or, /*nb_and*/ + 0, /*nb_xor*/ + __pyx_nb_or_6hunter_11_predicates_Or, /*nb_or*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_coerce*/ + #endif + 0, /*nb_int*/ + #if PY_MAJOR_VERSION < 3 + 0, /*nb_long*/ + #else + 0, /*reserved*/ + #endif + 0, /*nb_float*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_oct*/ + #endif + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_hex*/ + #endif + 0, /*nb_inplace_add*/ + 0, /*nb_inplace_subtract*/ + 0, /*nb_inplace_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_inplace_divide*/ + #endif + 0, /*nb_inplace_remainder*/ + 0, /*nb_inplace_power*/ + 0, /*nb_inplace_lshift*/ + 0, /*nb_inplace_rshift*/ + 0, /*nb_inplace_and*/ + 0, /*nb_inplace_xor*/ + 0, /*nb_inplace_or*/ + 0, /*nb_floor_divide*/ + 0, /*nb_true_divide*/ + 0, /*nb_inplace_floor_divide*/ + 0, /*nb_inplace_true_divide*/ + 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ + #endif +}; + +static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct_4_genexpr", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr), /*tp_basicsize*/ + "hunter._predicates.""Or", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_Or, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -26960,27 +28784,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexp #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_2Or_5__repr__, /*tp_repr*/ + &__pyx_tp_as_number_Or, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_6hunter_11_predicates_2Or_9__call__, /*tp_call*/ + __pyx_pw_6hunter_11_predicates_2Or_3__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + PyDoc_STR("\n `Or` predicate. Exits at first sub-predicate that returns ``True``.\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_Or, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_Or, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_Or, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - 0, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_Or, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_11_predicates_Or, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -26988,9 +28812,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexp #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - 0, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_2Or_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_Or, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27010,96 +28834,205 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexp #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr = 0; - -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_6hunter_11_predicates_Not(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_Not *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; #endif + p = ((struct __pyx_obj_6hunter_11_predicates_Not *)o); + p->predicate = Py_None; Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif +static void __pyx_tp_dealloc_6hunter_11_predicates_Not(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_genexpr_arg_0); - Py_CLEAR(p->__pyx_v_p); - Py_CLEAR(p->__pyx_t_0); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->predicate); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } + #endif } -static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates_Not(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o; - if (p->__pyx_genexpr_arg_0) { - e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; - } - if (p->__pyx_v_p) { - e = (*v)(p->__pyx_v_p, a); if (e) return e; - } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; + if (p->predicate) { + e = (*v)(p->predicate, a); if (e) return e; } return 0; } + +static int __pyx_tp_clear_6hunter_11_predicates_Not(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; + tmp = ((PyObject*)p->predicate); + p->predicate = Py_None; Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_Not(PyObject *o1, PyObject *o2, int op) { + switch (op) { + case Py_EQ: { + return __pyx_pw_6hunter_11_predicates_3Not_7__eq__(o1, o2); + } + case Py_NE: { + PyObject *ret; + ret = __pyx_pw_6hunter_11_predicates_3Not_7__eq__(o1, o2); + if (likely(ret && ret != Py_NotImplemented)) { + int b = __Pyx_PyObject_IsTrue(ret); + Py_DECREF(ret); + if (unlikely(b < 0)) return NULL; + ret = (b) ? Py_False : Py_True; + Py_INCREF(ret); + } + return ret; + } + default: { + return __Pyx_NewRef(Py_NotImplemented); + } + } +} +#define __pyx_nb_and_6hunter_11_predicates_Not __pyx_pw_6hunter_11_predicates_3Not_13__and__ +#define __pyx_nb_or_6hunter_11_predicates_Not __pyx_pw_6hunter_11_predicates_3Not_11__or__ + +static PyObject *__pyx_getprop_6hunter_11_predicates_3Not_predicate(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(o); +} + +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_3Not_5__repr__(self); +} + +static PyMethodDef __pyx_methods_6hunter_11_predicates_Not[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3Not_5__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {0, 0, 0, 0} +}; + +static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Not[] = { + {(char *)"predicate", __pyx_getprop_6hunter_11_predicates_3Not_predicate, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr}, +static PyType_Slot __pyx_type_6hunter_11_predicates_Not_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_Not}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_3Not_5__repr__}, + {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_3Not_15__invert__}, + {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_Not}, + {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_Not}, + {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_3Not_9__call__}, + {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_3Not_3__str__}, + {Py_tp_doc, (void *)PyDoc_STR("\n `Not` predicate.\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_Not}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_Not}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_Not}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_Not}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_Not}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_3Not_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_Not}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec = { - "hunter._predicates.__pyx_scope_struct_3_genexpr", - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr), +static PyType_Spec __pyx_type_6hunter_11_predicates_Not_spec = { + "hunter._predicates.Not", + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, + __pyx_type_6hunter_11_predicates_Not_slots, }; #else -static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr = { +static PyNumberMethods __pyx_tp_as_number_Not = { + 0, /*nb_add*/ + 0, /*nb_subtract*/ + 0, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_divide*/ + #endif + 0, /*nb_remainder*/ + 0, /*nb_divmod*/ + 0, /*nb_power*/ + 0, /*nb_negative*/ + 0, /*nb_positive*/ + 0, /*nb_absolute*/ + 0, /*nb_bool*/ + __pyx_pw_6hunter_11_predicates_3Not_15__invert__, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + __pyx_nb_and_6hunter_11_predicates_Not, /*nb_and*/ + 0, /*nb_xor*/ + __pyx_nb_or_6hunter_11_predicates_Not, /*nb_or*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_coerce*/ + #endif + 0, /*nb_int*/ + #if PY_MAJOR_VERSION < 3 + 0, /*nb_long*/ + #else + 0, /*reserved*/ + #endif + 0, /*nb_float*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_oct*/ + #endif + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_hex*/ + #endif + 0, /*nb_inplace_add*/ + 0, /*nb_inplace_subtract*/ + 0, /*nb_inplace_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_inplace_divide*/ + #endif + 0, /*nb_inplace_remainder*/ + 0, /*nb_inplace_power*/ + 0, /*nb_inplace_lshift*/ + 0, /*nb_inplace_rshift*/ + 0, /*nb_inplace_and*/ + 0, /*nb_inplace_xor*/ + 0, /*nb_inplace_or*/ + 0, /*nb_floor_divide*/ + 0, /*nb_true_divide*/ + 0, /*nb_inplace_floor_divide*/ + 0, /*nb_inplace_true_divide*/ + 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ + #endif +}; + +static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct_3_genexpr", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr), /*tp_basicsize*/ + "hunter._predicates.""Not", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_Not, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -27114,27 +29047,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexp #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_3Not_5__repr__, /*tp_repr*/ + &__pyx_tp_as_number_Not, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_6hunter_11_predicates_3Not_9__call__, /*tp_call*/ + __pyx_pw_6hunter_11_predicates_3Not_3__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + PyDoc_STR("\n `Not` predicate.\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_Not, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_Not, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_Not, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - 0, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_Not, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_11_predicates_Not, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -27142,9 +29075,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexp #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - 0, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_3Not_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_Not, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27164,96 +29097,218 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexp #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr = 0; - -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_6hunter_11_predicates_When(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_When *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; #endif + p = ((struct __pyx_obj_6hunter_11_predicates_When *)o); + p->condition = Py_None; Py_INCREF(Py_None); + p->actions = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif +static void __pyx_tp_dealloc_6hunter_11_predicates_When(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_genexpr_arg_0); - Py_CLEAR(p->__pyx_v_action); - Py_CLEAR(p->__pyx_t_0); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->condition); + Py_CLEAR(p->actions); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } + #endif } -static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates_When(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o; - if (p->__pyx_genexpr_arg_0) { - e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; - } - if (p->__pyx_v_action) { - e = (*v)(p->__pyx_v_action, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; + if (p->condition) { + e = (*v)(p->condition, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; + if (p->actions) { + e = (*v)(p->actions, a); if (e) return e; } return 0; } + +static int __pyx_tp_clear_6hunter_11_predicates_When(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; + tmp = ((PyObject*)p->condition); + p->condition = Py_None; Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->actions); + p->actions = ((PyObject*)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_When(PyObject *o1, PyObject *o2, int op) { + switch (op) { + case Py_EQ: { + return __pyx_pw_6hunter_11_predicates_4When_7__eq__(o1, o2); + } + case Py_NE: { + PyObject *ret; + ret = __pyx_pw_6hunter_11_predicates_4When_7__eq__(o1, o2); + if (likely(ret && ret != Py_NotImplemented)) { + int b = __Pyx_PyObject_IsTrue(ret); + Py_DECREF(ret); + if (unlikely(b < 0)) return NULL; + ret = (b) ? Py_False : Py_True; + Py_INCREF(ret); + } + return ret; + } + default: { + return __Pyx_NewRef(Py_NotImplemented); + } + } +} +#define __pyx_nb_and_6hunter_11_predicates_When __pyx_pw_6hunter_11_predicates_4When_13__and__ +#define __pyx_nb_or_6hunter_11_predicates_When __pyx_pw_6hunter_11_predicates_4When_11__or__ + +static PyObject *__pyx_getprop_6hunter_11_predicates_4When_condition(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4When_9condition_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_4When_actions(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(o); +} + +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_4When_5__repr__(self); +} + +static PyMethodDef __pyx_methods_6hunter_11_predicates_When[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4When_5__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {0, 0, 0, 0} +}; + +static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_When[] = { + {(char *)"condition", __pyx_getprop_6hunter_11_predicates_4When_condition, 0, (char *)0, 0}, + {(char *)"actions", __pyx_getprop_6hunter_11_predicates_4When_actions, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr}, +static PyType_Slot __pyx_type_6hunter_11_predicates_When_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_When}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_4When_5__repr__}, + {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_4When_15__invert__}, + {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_When}, + {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_When}, + {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_4When_9__call__}, + {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_4When_3__str__}, + {Py_tp_doc, (void *)PyDoc_STR("\n Runs ``actions`` when ``condition(event)`` is ``True``.\n\n Actions take a single ``event`` argument.\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_When}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_When}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_When}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_When}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_When}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_4When_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_When}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec = { - "hunter._predicates.__pyx_scope_struct_2_genexpr", - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr), +static PyType_Spec __pyx_type_6hunter_11_predicates_When_spec = { + "hunter._predicates.When", + sizeof(struct __pyx_obj_6hunter_11_predicates_When), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, + __pyx_type_6hunter_11_predicates_When_slots, }; #else -static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr = { +static PyNumberMethods __pyx_tp_as_number_When = { + 0, /*nb_add*/ + 0, /*nb_subtract*/ + 0, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_divide*/ + #endif + 0, /*nb_remainder*/ + 0, /*nb_divmod*/ + 0, /*nb_power*/ + 0, /*nb_negative*/ + 0, /*nb_positive*/ + 0, /*nb_absolute*/ + 0, /*nb_bool*/ + __pyx_pw_6hunter_11_predicates_4When_15__invert__, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + __pyx_nb_and_6hunter_11_predicates_When, /*nb_and*/ + 0, /*nb_xor*/ + __pyx_nb_or_6hunter_11_predicates_When, /*nb_or*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_coerce*/ + #endif + 0, /*nb_int*/ + #if PY_MAJOR_VERSION < 3 + 0, /*nb_long*/ + #else + 0, /*reserved*/ + #endif + 0, /*nb_float*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_oct*/ + #endif + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_hex*/ + #endif + 0, /*nb_inplace_add*/ + 0, /*nb_inplace_subtract*/ + 0, /*nb_inplace_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_inplace_divide*/ + #endif + 0, /*nb_inplace_remainder*/ + 0, /*nb_inplace_power*/ + 0, /*nb_inplace_lshift*/ + 0, /*nb_inplace_rshift*/ + 0, /*nb_inplace_and*/ + 0, /*nb_inplace_xor*/ + 0, /*nb_inplace_or*/ + 0, /*nb_floor_divide*/ + 0, /*nb_true_divide*/ + 0, /*nb_inplace_floor_divide*/ + 0, /*nb_inplace_true_divide*/ + 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ + #endif +}; + +static PyTypeObject __pyx_type_6hunter_11_predicates_When = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct_2_genexpr", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr), /*tp_basicsize*/ + "hunter._predicates.""When", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_When), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_When, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -27268,27 +29323,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexp #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_4When_5__repr__, /*tp_repr*/ + &__pyx_tp_as_number_When, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_6hunter_11_predicates_4When_9__call__, /*tp_call*/ + __pyx_pw_6hunter_11_predicates_4When_3__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + PyDoc_STR("\n Runs ``actions`` when ``condition(event)`` is ``True``.\n\n Actions take a single ``event`` argument.\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_When, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_When, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_When, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - 0, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_When, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_11_predicates_When, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -27296,9 +29351,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexp #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - 0, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_4When_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_When, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27318,384 +29373,81 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexp #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr = 0; - -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_6hunter_11_predicates_From(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_From *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; #endif + p = ((struct __pyx_obj_6hunter_11_predicates_From *)o); + p->condition = Py_None; Py_INCREF(Py_None); + p->predicate = Py_None; Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif +static void __pyx_tp_dealloc_6hunter_11_predicates_From(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_outer_scope); - Py_CLEAR(p->__pyx_genexpr_arg_0); - Py_CLEAR(p->__pyx_v_key); - Py_CLEAR(p->__pyx_v_value); - Py_CLEAR(p->__pyx_t_0); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->condition); + Py_CLEAR(p->predicate); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } + #endif } -static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates_From(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o; - if (p->__pyx_outer_scope) { - e = (*v)(((PyObject *)p->__pyx_outer_scope), a); if (e) return e; - } - if (p->__pyx_genexpr_arg_0) { - e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; - } - if (p->__pyx_v_key) { - e = (*v)(p->__pyx_v_key, a); if (e) return e; - } - if (p->__pyx_v_value) { - e = (*v)(p->__pyx_v_value, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; + if (p->condition) { + e = (*v)(p->condition, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; + if (p->predicate) { + e = (*v)(p->predicate, a); if (e) return e; } return 0; } -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec = { - "hunter._predicates.__pyx_scope_struct_1_genexpr", - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_slots, -}; -#else -static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr = { - PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct_1_genexpr", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - 0, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif - -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ = 0; - -static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (CYTHON_COMPILING_IN_CPYTHON && likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__]; - memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)); - (void) PyObject_INIT(o, t); - PyObject_GC_Track(o); - } else { - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - } - #endif - return o; -} - -static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif - PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_8genexpr1__pyx_v_kind); - if (CYTHON_COMPILING_IN_CPYTHON && ((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o); - } else { - (*Py_TYPE(o)->tp_free)(o); - } -} - -static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; - if (p->__pyx_8genexpr1__pyx_v_kind) { - e = (*v)(p->__pyx_8genexpr1__pyx_v_kind, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o) { +static int __pyx_tp_clear_6hunter_11_predicates_From(PyObject *o) { PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; - tmp = ((PyObject*)p->__pyx_8genexpr1__pyx_v_kind); - p->__pyx_8genexpr1__pyx_v_kind = Py_None; Py_INCREF(Py_None); + struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; + tmp = ((PyObject*)p->condition); + p->condition = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); - return 0; -} -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct____str___slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates___pyx_scope_struct____str__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec = { - "hunter._predicates.__pyx_scope_struct____str__", - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_6hunter_11_predicates___pyx_scope_struct____str___slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ = { - PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""__pyx_scope_struct____str__", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - 0, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif - -static PyObject *__pyx_tp_new_6hunter_11_predicates_QueryEntry(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_QueryEntry *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - #endif - p = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o); - p->value = Py_None; Py_INCREF(Py_None); - return o; -} - -static void __pyx_tp_dealloc_6hunter_11_predicates_QueryEntry(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; - PyObject_GC_UnTrack(o); - Py_CLEAR(p->value); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6hunter_11_predicates_QueryEntry(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; - if (p->value) { - e = (*v)(p->value, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6hunter_11_predicates_QueryEntry(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; - tmp = ((PyObject*)p->value); - p->value = Py_None; Py_INCREF(Py_None); + tmp = ((PyObject*)p->predicate); + p->predicate = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); return 0; } -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_QueryEntry(PyObject *o1, PyObject *o2, int op) { +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_From(PyObject *o1, PyObject *o2, int op) { switch (op) { case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(o1, o2); + return __pyx_pw_6hunter_11_predicates_4From_7__eq__(o1, o2); } case Py_NE: { PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(o1, o2); + ret = __pyx_pw_6hunter_11_predicates_4From_7__eq__(o1, o2); if (likely(ret && ret != Py_NotImplemented)) { int b = __Pyx_PyObject_IsTrue(ret); Py_DECREF(ret); @@ -27710,44 +29462,144 @@ static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_QueryEntry(PyObject } } } +#define __pyx_nb_and_6hunter_11_predicates_From __pyx_pw_6hunter_11_predicates_4From_13__and__ +#define __pyx_nb_or_6hunter_11_predicates_From __pyx_pw_6hunter_11_predicates_4From_11__or__ -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(self); +static PyObject *__pyx_getprop_6hunter_11_predicates_4From_condition(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4From_9condition_1__get__(o); } -static PyMethodDef __pyx_methods_6hunter_11_predicates_QueryEntry[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, +static PyObject *__pyx_getprop_6hunter_11_predicates_4From_predicate(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4From_9predicate_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_4From_watermark(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4From_9watermark_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_4From_origin_depth(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4From_12origin_depth_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_11_predicates_4From_origin_calls(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(o); +} + +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_4From_5__repr__(self); +} + +static PyMethodDef __pyx_methods_6hunter_11_predicates_From[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4From_5__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; + +static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_From[] = { + {(char *)"condition", __pyx_getprop_6hunter_11_predicates_4From_condition, 0, (char *)0, 0}, + {(char *)"predicate", __pyx_getprop_6hunter_11_predicates_4From_predicate, 0, (char *)0, 0}, + {(char *)"watermark", __pyx_getprop_6hunter_11_predicates_4From_watermark, 0, (char *)0, 0}, + {(char *)"origin_depth", __pyx_getprop_6hunter_11_predicates_4From_origin_depth, 0, (char *)0, 0}, + {(char *)"origin_calls", __pyx_getprop_6hunter_11_predicates_4From_origin_calls, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_QueryEntry_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_QueryEntry}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_QueryEntry}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_QueryEntry}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_QueryEntry}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_QueryEntry}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_QueryEntry}, +static PyType_Slot __pyx_type_6hunter_11_predicates_From_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_From}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_4From_5__repr__}, + {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_4From_15__invert__}, + {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_From}, + {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_From}, + {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_4From_9__call__}, + {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_4From_3__str__}, + {Py_tp_doc, (void *)PyDoc_STR("\n Keep running ``predicates`` after ``condition(event)`` is ``True``.\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_From}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_From}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_From}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_From}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_From}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_4From_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_From}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates_QueryEntry_spec = { - "hunter._predicates.QueryEntry", - sizeof(struct __pyx_obj_6hunter_11_predicates_QueryEntry), +static PyType_Spec __pyx_type_6hunter_11_predicates_From_spec = { + "hunter._predicates.From", + sizeof(struct __pyx_obj_6hunter_11_predicates_From), 0, Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_QueryEntry_slots, + __pyx_type_6hunter_11_predicates_From_slots, }; #else -static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { +static PyNumberMethods __pyx_tp_as_number_From = { + 0, /*nb_add*/ + 0, /*nb_subtract*/ + 0, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_divide*/ + #endif + 0, /*nb_remainder*/ + 0, /*nb_divmod*/ + 0, /*nb_power*/ + 0, /*nb_negative*/ + 0, /*nb_positive*/ + 0, /*nb_absolute*/ + 0, /*nb_bool*/ + __pyx_pw_6hunter_11_predicates_4From_15__invert__, /*nb_invert*/ + 0, /*nb_lshift*/ + 0, /*nb_rshift*/ + __pyx_nb_and_6hunter_11_predicates_From, /*nb_and*/ + 0, /*nb_xor*/ + __pyx_nb_or_6hunter_11_predicates_From, /*nb_or*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_coerce*/ + #endif + 0, /*nb_int*/ + #if PY_MAJOR_VERSION < 3 + 0, /*nb_long*/ + #else + 0, /*reserved*/ + #endif + 0, /*nb_float*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_oct*/ + #endif + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_hex*/ + #endif + 0, /*nb_inplace_add*/ + 0, /*nb_inplace_subtract*/ + 0, /*nb_inplace_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) + 0, /*nb_inplace_divide*/ + #endif + 0, /*nb_inplace_remainder*/ + 0, /*nb_inplace_power*/ + 0, /*nb_inplace_lshift*/ + 0, /*nb_inplace_rshift*/ + 0, /*nb_inplace_and*/ + 0, /*nb_inplace_xor*/ + 0, /*nb_inplace_or*/ + 0, /*nb_floor_divide*/ + 0, /*nb_true_divide*/ + 0, /*nb_inplace_floor_divide*/ + 0, /*nb_inplace_true_divide*/ + 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ + #endif +}; + +static PyTypeObject __pyx_type_6hunter_11_predicates_From = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""QueryEntry", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_QueryEntry), /*tp_basicsize*/ + "hunter._predicates.""From", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_From), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_QueryEntry, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_From, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -27762,27 +29614,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__, /*tp_repr*/ - 0, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_4From_5__repr__, /*tp_repr*/ + &__pyx_tp_as_number_From, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_6hunter_11_predicates_4From_9__call__, /*tp_call*/ + __pyx_pw_6hunter_11_predicates_4From_3__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_QueryEntry, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_QueryEntry, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_QueryEntry, /*tp_richcompare*/ + PyDoc_STR("\n Keep running ``predicates`` after ``condition(event)`` is ``True``.\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_From, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_From, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_From, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_QueryEntry, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_From, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_11_predicates_From, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -27790,9 +29642,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_4From_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_QueryEntry, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_From, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27812,13 +29664,13 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; @@ -27851,7 +29703,14 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Backlog(PyObject *o) { Py_CLEAR(p->_try_repr); Py_CLEAR(p->_filter); Py_CLEAR(p->queue); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif } static int __pyx_tp_traverse_6hunter_11_predicates_Backlog(PyObject *o, visitproc v, void *a) { @@ -28140,20 +29999,20 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Backlog = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static PyObject *__pyx_tp_new_6hunter_11_predicates_From(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_From *p; +static PyObject *__pyx_tp_new_6hunter_11_predicates_QueryEntry(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_11_predicates_QueryEntry *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); @@ -28162,52 +30021,51 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates_From(PyTypeObject *t, CYTHON o = (*t->tp_alloc)(t, 0); if (unlikely(!o)) return 0; #endif - p = ((struct __pyx_obj_6hunter_11_predicates_From *)o); - p->condition = Py_None; Py_INCREF(Py_None); - p->predicate = Py_None; Py_INCREF(Py_None); + p = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o); + p->value = Py_None; Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates_From(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; +static void __pyx_tp_dealloc_6hunter_11_predicates_QueryEntry(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; PyObject_GC_UnTrack(o); - Py_CLEAR(p->condition); - Py_CLEAR(p->predicate); + Py_CLEAR(p->value); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif } -static int __pyx_tp_traverse_6hunter_11_predicates_From(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates_QueryEntry(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; - if (p->condition) { - e = (*v)(p->condition, a); if (e) return e; - } - if (p->predicate) { - e = (*v)(p->predicate, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; + if (p->value) { + e = (*v)(p->value, a); if (e) return e; } return 0; } -static int __pyx_tp_clear_6hunter_11_predicates_From(PyObject *o) { +static int __pyx_tp_clear_6hunter_11_predicates_QueryEntry(PyObject *o) { PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; - tmp = ((PyObject*)p->condition); - p->condition = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->predicate); - p->predicate = Py_None; Py_INCREF(Py_None); + struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; + tmp = ((PyObject*)p->value); + p->value = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); return 0; } -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_From(PyObject *o1, PyObject *o2, int op) { +static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_QueryEntry(PyObject *o1, PyObject *o2, int op) { switch (op) { case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_4From_7__eq__(o1, o2); + return __pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(o1, o2); } case Py_NE: { PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_4From_7__eq__(o1, o2); + ret = __pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(o1, o2); if (likely(ret && ret != Py_NotImplemented)) { int b = __Pyx_PyObject_IsTrue(ret); Py_DECREF(ret); @@ -28222,144 +30080,44 @@ static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_From(PyObject *o1, P } } } -#define __pyx_nb_and_6hunter_11_predicates_From __pyx_pw_6hunter_11_predicates_4From_13__and__ -#define __pyx_nb_or_6hunter_11_predicates_From __pyx_pw_6hunter_11_predicates_4From_11__or__ - -static PyObject *__pyx_getprop_6hunter_11_predicates_4From_condition(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4From_9condition_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_4From_predicate(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4From_9predicate_1__get__(o); -} -static PyObject *__pyx_getprop_6hunter_11_predicates_4From_watermark(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4From_9watermark_1__get__(o); +static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { + return __pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(self); } -static PyObject *__pyx_getprop_6hunter_11_predicates_4From_origin_depth(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4From_12origin_depth_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_4From_origin_calls(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(o); -} - -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_4From_5__repr__(self); -} - -static PyMethodDef __pyx_methods_6hunter_11_predicates_From[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4From_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, +static PyMethodDef __pyx_methods_6hunter_11_predicates_QueryEntry[] = { + {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__, METH_NOARGS|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; - -static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_From[] = { - {(char *)"condition", __pyx_getprop_6hunter_11_predicates_4From_condition, 0, (char *)0, 0}, - {(char *)"predicate", __pyx_getprop_6hunter_11_predicates_4From_predicate, 0, (char *)0, 0}, - {(char *)"watermark", __pyx_getprop_6hunter_11_predicates_4From_watermark, 0, (char *)0, 0}, - {(char *)"origin_depth", __pyx_getprop_6hunter_11_predicates_4From_origin_depth, 0, (char *)0, 0}, - {(char *)"origin_calls", __pyx_getprop_6hunter_11_predicates_4From_origin_calls, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_From_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_From}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_4From_5__repr__}, - {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_4From_15__invert__}, - {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_From}, - {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_From}, - {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_4From_9__call__}, - {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_4From_3__str__}, - {Py_tp_doc, (void *)PyDoc_STR("\n Keep running ``predicates`` after ``condition(event)`` is ``True``.\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_From}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_From}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_From}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_From}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_From}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_4From_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_From}, +static PyType_Slot __pyx_type_6hunter_11_predicates_QueryEntry_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_QueryEntry}, + {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_QueryEntry}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_QueryEntry}, + {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_QueryEntry}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_QueryEntry}, + {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_QueryEntry}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates_From_spec = { - "hunter._predicates.From", - sizeof(struct __pyx_obj_6hunter_11_predicates_From), +static PyType_Spec __pyx_type_6hunter_11_predicates_QueryEntry_spec = { + "hunter._predicates.QueryEntry", + sizeof(struct __pyx_obj_6hunter_11_predicates_QueryEntry), 0, Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_From_slots, + __pyx_type_6hunter_11_predicates_QueryEntry_slots, }; #else -static PyNumberMethods __pyx_tp_as_number_From = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_bool*/ - __pyx_pw_6hunter_11_predicates_4From_15__invert__, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - __pyx_nb_and_6hunter_11_predicates_From, /*nb_and*/ - 0, /*nb_xor*/ - __pyx_nb_or_6hunter_11_predicates_From, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_inplace_matrix_multiply*/ - #endif -}; - -static PyTypeObject __pyx_type_6hunter_11_predicates_From = { +static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""From", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_From), /*tp_basicsize*/ + "hunter._predicates.""QueryEntry", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates_QueryEntry), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_From, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates_QueryEntry, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -28374,27 +30132,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_From = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_4From_5__repr__, /*tp_repr*/ - &__pyx_tp_as_number_From, /*tp_as_number*/ + __pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__, /*tp_repr*/ + 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - __pyx_pw_6hunter_11_predicates_4From_9__call__, /*tp_call*/ - __pyx_pw_6hunter_11_predicates_4From_3__str__, /*tp_str*/ + 0, /*tp_call*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n Keep running ``predicates`` after ``condition(event)`` is ``True``.\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_From, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_From, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_From, /*tp_richcompare*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates_QueryEntry, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates_QueryEntry, /*tp_clear*/ + __pyx_tp_richcompare_6hunter_11_predicates_QueryEntry, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_From, /*tp_methods*/ + __pyx_methods_6hunter_11_predicates_QueryEntry, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_11_predicates_From, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -28402,9 +30160,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_From = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_4From_1__init__, /*tp_init*/ + __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_From, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates_QueryEntry, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28424,211 +30182,113 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_From = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static PyObject *__pyx_tp_new_6hunter_11_predicates_When(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_When *p; +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[8]; +static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { + o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } #endif - p = ((struct __pyx_obj_6hunter_11_predicates_When *)o); - p->condition = Py_None; Py_INCREF(Py_None); - p->actions = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates_When(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; +static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif PyObject_GC_UnTrack(o); - Py_CLEAR(p->condition); - Py_CLEAR(p->actions); - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->__pyx_8genexpr1__pyx_v_kind); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { + __pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } } -static int __pyx_tp_traverse_6hunter_11_predicates_When(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; - if (p->condition) { - e = (*v)(p->condition, a); if (e) return e; - } - if (p->actions) { - e = (*v)(p->actions, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; + if (p->__pyx_8genexpr1__pyx_v_kind) { + e = (*v)(p->__pyx_8genexpr1__pyx_v_kind, a); if (e) return e; } return 0; } -static int __pyx_tp_clear_6hunter_11_predicates_When(PyObject *o) { +static int __pyx_tp_clear_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o) { PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; - tmp = ((PyObject*)p->condition); - p->condition = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->actions); - p->actions = ((PyObject*)Py_None); Py_INCREF(Py_None); + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; + tmp = ((PyObject*)p->__pyx_8genexpr1__pyx_v_kind); + p->__pyx_8genexpr1__pyx_v_kind = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); return 0; } - -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_When(PyObject *o1, PyObject *o2, int op) { - switch (op) { - case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_4When_7__eq__(o1, o2); - } - case Py_NE: { - PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_4When_7__eq__(o1, o2); - if (likely(ret && ret != Py_NotImplemented)) { - int b = __Pyx_PyObject_IsTrue(ret); - Py_DECREF(ret); - if (unlikely(b < 0)) return NULL; - ret = (b) ? Py_False : Py_True; - Py_INCREF(ret); - } - return ret; - } - default: { - return __Pyx_NewRef(Py_NotImplemented); - } - } -} -#define __pyx_nb_and_6hunter_11_predicates_When __pyx_pw_6hunter_11_predicates_4When_13__and__ -#define __pyx_nb_or_6hunter_11_predicates_When __pyx_pw_6hunter_11_predicates_4When_11__or__ - -static PyObject *__pyx_getprop_6hunter_11_predicates_4When_condition(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4When_9condition_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_4When_actions(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(o); -} - -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_4When_5__repr__(self); -} - -static PyMethodDef __pyx_methods_6hunter_11_predicates_When[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4When_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_When[] = { - {(char *)"condition", __pyx_getprop_6hunter_11_predicates_4When_condition, 0, (char *)0, 0}, - {(char *)"actions", __pyx_getprop_6hunter_11_predicates_4When_actions, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_When_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_When}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_4When_5__repr__}, - {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_4When_15__invert__}, - {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_When}, - {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_When}, - {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_4When_9__call__}, - {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_4When_3__str__}, - {Py_tp_doc, (void *)PyDoc_STR("\n Runs ``actions`` when ``condition(event)`` is ``True``.\n\n Actions take a single ``event`` argument.\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_When}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_When}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_When}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_When}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_When}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_4When_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_When}, +static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct____str___slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates___pyx_scope_struct____str__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates_When_spec = { - "hunter._predicates.When", - sizeof(struct __pyx_obj_6hunter_11_predicates_When), +static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec = { + "hunter._predicates.__pyx_scope_struct____str__", + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_When_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_11_predicates___pyx_scope_struct____str___slots, }; #else -static PyNumberMethods __pyx_tp_as_number_When = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_bool*/ - __pyx_pw_6hunter_11_predicates_4When_15__invert__, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - __pyx_nb_and_6hunter_11_predicates_When, /*nb_and*/ - 0, /*nb_xor*/ - __pyx_nb_or_6hunter_11_predicates_When, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_inplace_matrix_multiply*/ - #endif -}; - -static PyTypeObject __pyx_type_6hunter_11_predicates_When = { +static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""When", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_When), /*tp_basicsize*/ + "hunter._predicates.""__pyx_scope_struct____str__", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_When, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -28643,27 +30303,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_When = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_4When_5__repr__, /*tp_repr*/ - &__pyx_tp_as_number_When, /*tp_as_number*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - __pyx_pw_6hunter_11_predicates_4When_9__call__, /*tp_call*/ - __pyx_pw_6hunter_11_predicates_4When_3__str__, /*tp_str*/ + 0, /*tp_call*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n Runs ``actions`` when ``condition(event)`` is ``True``.\n\n Actions take a single ``event`` argument.\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_When, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_When, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_When, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_traverse*/ + __pyx_tp_clear_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_clear*/ + 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_When, /*tp_methods*/ + 0, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_11_predicates_When, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -28671,9 +30331,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_When = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_4When_1__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_When, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28693,198 +30353,119 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_When = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static PyObject *__pyx_tp_new_6hunter_11_predicates_Not(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_Not *p; +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[8]; +static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { + o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } #endif - p = ((struct __pyx_obj_6hunter_11_predicates_Not *)o); - p->predicate = Py_None; Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates_Not(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; +static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif PyObject_GC_UnTrack(o); - Py_CLEAR(p->predicate); - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->__pyx_outer_scope); + Py_CLEAR(p->__pyx_genexpr_arg_0); + Py_CLEAR(p->__pyx_v_key); + Py_CLEAR(p->__pyx_v_value); + Py_CLEAR(p->__pyx_t_0); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { + __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } } -static int __pyx_tp_traverse_6hunter_11_predicates_Not(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; - if (p->predicate) { - e = (*v)(p->predicate, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o; + if (p->__pyx_outer_scope) { + e = (*v)(((PyObject *)p->__pyx_outer_scope), a); if (e) return e; + } + if (p->__pyx_genexpr_arg_0) { + e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; + } + if (p->__pyx_v_key) { + e = (*v)(p->__pyx_v_key, a); if (e) return e; + } + if (p->__pyx_v_value) { + e = (*v)(p->__pyx_v_value, a); if (e) return e; + } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; } return 0; } +#if CYTHON_USE_TYPE_SPECS +static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr}, + {0, 0}, +}; +static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec = { + "hunter._predicates.__pyx_scope_struct_1_genexpr", + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr), + 0, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_slots, +}; +#else -static int __pyx_tp_clear_6hunter_11_predicates_Not(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; - tmp = ((PyObject*)p->predicate); - p->predicate = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_Not(PyObject *o1, PyObject *o2, int op) { - switch (op) { - case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_3Not_7__eq__(o1, o2); - } - case Py_NE: { - PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_3Not_7__eq__(o1, o2); - if (likely(ret && ret != Py_NotImplemented)) { - int b = __Pyx_PyObject_IsTrue(ret); - Py_DECREF(ret); - if (unlikely(b < 0)) return NULL; - ret = (b) ? Py_False : Py_True; - Py_INCREF(ret); - } - return ret; - } - default: { - return __Pyx_NewRef(Py_NotImplemented); - } - } -} -#define __pyx_nb_and_6hunter_11_predicates_Not __pyx_pw_6hunter_11_predicates_3Not_13__and__ -#define __pyx_nb_or_6hunter_11_predicates_Not __pyx_pw_6hunter_11_predicates_3Not_11__or__ - -static PyObject *__pyx_getprop_6hunter_11_predicates_3Not_predicate(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(o); -} - -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_3Not_5__repr__(self); -} - -static PyMethodDef __pyx_methods_6hunter_11_predicates_Not[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3Not_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Not[] = { - {(char *)"predicate", __pyx_getprop_6hunter_11_predicates_3Not_predicate, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_Not_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_Not}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_3Not_5__repr__}, - {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_3Not_15__invert__}, - {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_Not}, - {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_Not}, - {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_3Not_9__call__}, - {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_3Not_3__str__}, - {Py_tp_doc, (void *)PyDoc_STR("\n `Not` predicate.\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_Not}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_Not}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_Not}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_Not}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_Not}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_3Not_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_Not}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_11_predicates_Not_spec = { - "hunter._predicates.Not", - sizeof(struct __pyx_obj_6hunter_11_predicates_Not), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_Not_slots, -}; -#else - -static PyNumberMethods __pyx_tp_as_number_Not = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_bool*/ - __pyx_pw_6hunter_11_predicates_3Not_15__invert__, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - __pyx_nb_and_6hunter_11_predicates_Not, /*nb_and*/ - 0, /*nb_xor*/ - __pyx_nb_or_6hunter_11_predicates_Not, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_inplace_matrix_multiply*/ - #endif -}; - -static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { +static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""Not", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_Not), /*tp_basicsize*/ + "hunter._predicates.""__pyx_scope_struct_1_genexpr", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_Not, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -28899,27 +30480,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_3Not_5__repr__, /*tp_repr*/ - &__pyx_tp_as_number_Not, /*tp_as_number*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - __pyx_pw_6hunter_11_predicates_3Not_9__call__, /*tp_call*/ - __pyx_pw_6hunter_11_predicates_3Not_3__str__, /*tp_str*/ + 0, /*tp_call*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n `Not` predicate.\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_Not, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_Not, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_Not, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_Not, /*tp_methods*/ + 0, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_11_predicates_Not, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -28927,9 +30508,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_3Not_1__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_Not, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28949,198 +30530,280 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static PyObject *__pyx_tp_new_6hunter_11_predicates_Or(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_Or *p; +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[8]; +static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { + o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } #endif - p = ((struct __pyx_obj_6hunter_11_predicates_Or *)o); - p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates_Or(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; +static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif PyObject_GC_UnTrack(o); - Py_CLEAR(p->predicates); - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->__pyx_genexpr_arg_0); + Py_CLEAR(p->__pyx_v_action); + Py_CLEAR(p->__pyx_t_0); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { + __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } } -static int __pyx_tp_traverse_6hunter_11_predicates_Or(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; - if (p->predicates) { - e = (*v)(p->predicates, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o; + if (p->__pyx_genexpr_arg_0) { + e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; } - return 0; -} - -static int __pyx_tp_clear_6hunter_11_predicates_Or(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; - tmp = ((PyObject*)p->predicates); - p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_Or(PyObject *o1, PyObject *o2, int op) { - switch (op) { - case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_2Or_7__eq__(o1, o2); - } - case Py_NE: { - PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_2Or_7__eq__(o1, o2); - if (likely(ret && ret != Py_NotImplemented)) { - int b = __Pyx_PyObject_IsTrue(ret); - Py_DECREF(ret); - if (unlikely(b < 0)) return NULL; - ret = (b) ? Py_False : Py_True; - Py_INCREF(ret); - } - return ret; - } - default: { - return __Pyx_NewRef(Py_NotImplemented); - } + if (p->__pyx_v_action) { + e = (*v)(p->__pyx_v_action, a); if (e) return e; } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; + } + return 0; } -#define __pyx_nb_and_6hunter_11_predicates_Or __pyx_pw_6hunter_11_predicates_2Or_13__and__ -#define __pyx_nb_or_6hunter_11_predicates_Or __pyx_pw_6hunter_11_predicates_2Or_11__or__ - -static PyObject *__pyx_getprop_6hunter_11_predicates_2Or_predicates(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(o); -} - -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_2Or_5__repr__(self); -} - -static PyMethodDef __pyx_methods_6hunter_11_predicates_Or[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_2Or_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Or[] = { - {(char *)"predicates", __pyx_getprop_6hunter_11_predicates_2Or_predicates, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_Or_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_Or}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_2Or_5__repr__}, - {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_2Or_15__invert__}, - {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_Or}, - {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_Or}, - {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_2Or_9__call__}, - {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_2Or_3__str__}, - {Py_tp_doc, (void *)PyDoc_STR("\n `Or` predicate. Exits at first sub-predicate that returns ``True``.\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_Or}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_Or}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_Or}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_Or}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_Or}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_2Or_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_Or}, +static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates_Or_spec = { - "hunter._predicates.Or", - sizeof(struct __pyx_obj_6hunter_11_predicates_Or), +static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec = { + "hunter._predicates.__pyx_scope_struct_2_genexpr", + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_Or_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_slots, }; #else -static PyNumberMethods __pyx_tp_as_number_Or = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ +static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr = { + PyVarObject_HEAD_INIT(0, 0) + "hunter._predicates.""__pyx_scope_struct_2_genexpr", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 + 0, /*tp_print*/ #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_bool*/ - __pyx_pw_6hunter_11_predicates_2Or_15__invert__, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - __pyx_nb_and_6hunter_11_predicates_Or, /*nb_and*/ - 0, /*nb_xor*/ - __pyx_nb_or_6hunter_11_predicates_Or, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ #endif - 0, /*nb_int*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ + 0, /*tp_compare*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + 0, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + #if !CYTHON_USE_TYPE_SPECS + 0, /*tp_dictoffset*/ + #endif + 0, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + #if CYTHON_USE_TP_FINALIZE + 0, /*tp_finalize*/ #else - 0, /*reserved*/ + NULL, /*tp_finalize*/ #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ + #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) + 0, /*tp_vectorcall*/ #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ + #if __PYX_NEED_TP_PRINT_SLOT == 1 + 0, /*tp_print*/ #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_matrix_multiply*/ + #if PY_VERSION_HEX >= 0x030C0000 + 0, /*tp_watched*/ #endif - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_inplace_matrix_multiply*/ + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 + 0, /*tp_pypy_flags*/ #endif }; +#endif -static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[8]; +static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + #if CYTHON_COMPILING_IN_LIMITED_API + allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); + o = alloc_func(t, 0); + #else + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { + o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } + #endif + return o; +} + +static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif + PyObject_GC_UnTrack(o); + Py_CLEAR(p->__pyx_genexpr_arg_0); + Py_CLEAR(p->__pyx_v_p); + Py_CLEAR(p->__pyx_t_0); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { + __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } +} + +static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o; + if (p->__pyx_genexpr_arg_0) { + e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; + } + if (p->__pyx_v_p) { + e = (*v)(p->__pyx_v_p, a); if (e) return e; + } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; + } + return 0; +} +#if CYTHON_USE_TYPE_SPECS +static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr}, + {0, 0}, +}; +static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec = { + "hunter._predicates.__pyx_scope_struct_3_genexpr", + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr), + 0, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_slots, +}; +#else + +static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""Or", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_Or), /*tp_basicsize*/ + "hunter._predicates.""__pyx_scope_struct_3_genexpr", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_Or, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -29155,27 +30818,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_2Or_5__repr__, /*tp_repr*/ - &__pyx_tp_as_number_Or, /*tp_as_number*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - __pyx_pw_6hunter_11_predicates_2Or_9__call__, /*tp_call*/ - __pyx_pw_6hunter_11_predicates_2Or_3__str__, /*tp_str*/ + 0, /*tp_call*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n `Or` predicate. Exits at first sub-predicate that returns ``True``.\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_Or, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_Or, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_Or, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_Or, /*tp_methods*/ + 0, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_11_predicates_Or, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -29183,9 +30846,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_2Or_1__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_Or, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29205,198 +30868,280 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static PyObject *__pyx_tp_new_6hunter_11_predicates_And(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_And *p; +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[8]; +static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { + o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } #endif - p = ((struct __pyx_obj_6hunter_11_predicates_And *)o); - p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); return o; } -static void __pyx_tp_dealloc_6hunter_11_predicates_And(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; +static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif PyObject_GC_UnTrack(o); - Py_CLEAR(p->predicates); - (*Py_TYPE(o)->tp_free)(o); + Py_CLEAR(p->__pyx_genexpr_arg_0); + Py_CLEAR(p->__pyx_v_p); + Py_CLEAR(p->__pyx_t_0); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { + __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } } -static int __pyx_tp_traverse_6hunter_11_predicates_And(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; - if (p->predicates) { - e = (*v)(p->predicates, a); if (e) return e; + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o; + if (p->__pyx_genexpr_arg_0) { + e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; } - return 0; -} - -static int __pyx_tp_clear_6hunter_11_predicates_And(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; - tmp = ((PyObject*)p->predicates); - p->predicates = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_And(PyObject *o1, PyObject *o2, int op) { - switch (op) { - case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_3And_7__eq__(o1, o2); - } - case Py_NE: { - PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_3And_7__eq__(o1, o2); - if (likely(ret && ret != Py_NotImplemented)) { - int b = __Pyx_PyObject_IsTrue(ret); - Py_DECREF(ret); - if (unlikely(b < 0)) return NULL; - ret = (b) ? Py_False : Py_True; - Py_INCREF(ret); - } - return ret; - } - default: { - return __Pyx_NewRef(Py_NotImplemented); - } + if (p->__pyx_v_p) { + e = (*v)(p->__pyx_v_p, a); if (e) return e; } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; + } + return 0; } -#define __pyx_nb_and_6hunter_11_predicates_And __pyx_pw_6hunter_11_predicates_3And_13__and__ -#define __pyx_nb_or_6hunter_11_predicates_And __pyx_pw_6hunter_11_predicates_3And_11__or__ - -static PyObject *__pyx_getprop_6hunter_11_predicates_3And_predicates(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(o); -} - -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_3And_5__repr__(self); -} - -static PyMethodDef __pyx_methods_6hunter_11_predicates_And[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3And_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_And[] = { - {(char *)"predicates", __pyx_getprop_6hunter_11_predicates_3And_predicates, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_And_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_And}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_3And_5__repr__}, - {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_3And_15__invert__}, - {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_And}, - {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_And}, - {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_3And_9__call__}, - {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_3And_3__str__}, - {Py_tp_doc, (void *)PyDoc_STR("\n `And` predicate. Exits at the first sub-predicate that returns ``False``.\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_And}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_And}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_And}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_And}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_And}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_3And_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_And}, +static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates_And_spec = { - "hunter._predicates.And", - sizeof(struct __pyx_obj_6hunter_11_predicates_And), +static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec = { + "hunter._predicates.__pyx_scope_struct_4_genexpr", + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_And_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_slots, }; #else -static PyNumberMethods __pyx_tp_as_number_And = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ +static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr = { + PyVarObject_HEAD_INIT(0, 0) + "hunter._predicates.""__pyx_scope_struct_4_genexpr", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 + 0, /*tp_print*/ #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_bool*/ - __pyx_pw_6hunter_11_predicates_3And_15__invert__, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - __pyx_nb_and_6hunter_11_predicates_And, /*nb_and*/ - 0, /*nb_xor*/ - __pyx_nb_or_6hunter_11_predicates_And, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ #endif - 0, /*nb_int*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ + 0, /*tp_compare*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + 0, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + #if !CYTHON_USE_TYPE_SPECS + 0, /*tp_dictoffset*/ + #endif + 0, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + #if CYTHON_USE_TP_FINALIZE + 0, /*tp_finalize*/ #else - 0, /*reserved*/ + NULL, /*tp_finalize*/ #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ + #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) + 0, /*tp_vectorcall*/ #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ + #if __PYX_NEED_TP_PRINT_SLOT == 1 + 0, /*tp_print*/ #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_matrix_multiply*/ + #if PY_VERSION_HEX >= 0x030C0000 + 0, /*tp_watched*/ + #endif + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 + 0, /*tp_pypy_flags*/ + #endif +}; +#endif + +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[8]; +static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr = 0; +#endif + +static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + #if CYTHON_COMPILING_IN_LIMITED_API + allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); + o = alloc_func(t, 0); + #else + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { + o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr]; + memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } #endif - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_inplace_matrix_multiply*/ + return o; +} + +static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyObject *o) { + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif + PyObject_GC_UnTrack(o); + Py_CLEAR(p->__pyx_genexpr_arg_0); + Py_CLEAR(p->__pyx_v_p); + Py_CLEAR(p->__pyx_t_0); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { + __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o); + } else #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } +} + +static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o; + if (p->__pyx_genexpr_arg_0) { + e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; + } + if (p->__pyx_v_p) { + e = (*v)(p->__pyx_v_p, a); if (e) return e; + } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; + } + return 0; +} +#if CYTHON_USE_TYPE_SPECS +static PyType_Slot __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr}, + {0, 0}, +}; +static PyType_Spec __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec = { + "hunter._predicates.__pyx_scope_struct_5_genexpr", + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr), + 0, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_slots, }; +#else -static PyTypeObject __pyx_type_6hunter_11_predicates_And = { +static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""And", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_And), /*tp_basicsize*/ + "hunter._predicates.""__pyx_scope_struct_5_genexpr", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_And, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -29411,27 +31156,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_And = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_3And_5__repr__, /*tp_repr*/ - &__pyx_tp_as_number_And, /*tp_as_number*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - __pyx_pw_6hunter_11_predicates_3And_9__call__, /*tp_call*/ - __pyx_pw_6hunter_11_predicates_3And_3__str__, /*tp_str*/ + 0, /*tp_call*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n `And` predicate. Exits at the first sub-predicate that returns ``False``.\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_And, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_And, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_And, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_And, /*tp_methods*/ + 0, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_11_predicates_And, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -29439,9 +31184,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_And = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_3And_1__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_And, /*tp_new*/ + __pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29461,315 +31206,89 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_And = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static PyObject *__pyx_tp_new_6hunter_11_predicates_Query(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_11_predicates_Query *p; +#if CYTHON_USE_FREELISTS +static struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[8]; +static int __pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = 0; +#endif + +static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)))) { + o = (PyObject*)__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[--__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event]; + memset(o, 0, sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)); + (void) PyObject_INIT(o, t); + } else #endif - p = ((struct __pyx_obj_6hunter_11_predicates_Query *)o); - p->query_contains = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_endswith = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_eq = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_gt = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_gte = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_in = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_lt = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_lte = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_regex = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->query_startswith = ((PyObject*)Py_None); Py_INCREF(Py_None); - return o; -} - -static void __pyx_tp_dealloc_6hunter_11_predicates_Query(PyObject *o) { - struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; - PyObject_GC_UnTrack(o); - Py_CLEAR(p->query_contains); - Py_CLEAR(p->query_endswith); - Py_CLEAR(p->query_eq); - Py_CLEAR(p->query_gt); - Py_CLEAR(p->query_gte); - Py_CLEAR(p->query_in); - Py_CLEAR(p->query_lt); - Py_CLEAR(p->query_lte); - Py_CLEAR(p->query_regex); - Py_CLEAR(p->query_startswith); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6hunter_11_predicates_Query(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; - if (p->query_contains) { - e = (*v)(p->query_contains, a); if (e) return e; - } - if (p->query_endswith) { - e = (*v)(p->query_endswith, a); if (e) return e; - } - if (p->query_eq) { - e = (*v)(p->query_eq, a); if (e) return e; - } - if (p->query_gt) { - e = (*v)(p->query_gt, a); if (e) return e; - } - if (p->query_gte) { - e = (*v)(p->query_gte, a); if (e) return e; - } - if (p->query_in) { - e = (*v)(p->query_in, a); if (e) return e; - } - if (p->query_lt) { - e = (*v)(p->query_lt, a); if (e) return e; - } - if (p->query_lte) { - e = (*v)(p->query_lte, a); if (e) return e; - } - if (p->query_regex) { - e = (*v)(p->query_regex, a); if (e) return e; - } - if (p->query_startswith) { - e = (*v)(p->query_startswith, a); if (e) return e; + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; } - return 0; -} - -static int __pyx_tp_clear_6hunter_11_predicates_Query(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; - tmp = ((PyObject*)p->query_contains); - p->query_contains = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_endswith); - p->query_endswith = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_eq); - p->query_eq = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_gt); - p->query_gt = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_gte); - p->query_gte = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_in); - p->query_in = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_lt); - p->query_lt = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_lte); - p->query_lte = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_regex); - p->query_regex = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->query_startswith); - p->query_startswith = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; + #endif + return o; } -static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_Query(PyObject *o1, PyObject *o2, int op) { - switch (op) { - case Py_EQ: { - return __pyx_pw_6hunter_11_predicates_5Query_7__eq__(o1, o2); - } - case Py_NE: { - PyObject *ret; - ret = __pyx_pw_6hunter_11_predicates_5Query_7__eq__(o1, o2); - if (likely(ret && ret != Py_NotImplemented)) { - int b = __Pyx_PyObject_IsTrue(ret); - Py_DECREF(ret); - if (unlikely(b < 0)) return NULL; - ret = (b) ? Py_False : Py_True; - Py_INCREF(ret); - } - return ret; +static void __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !__Pyx_PyObject_GC_IsFinalized(o))) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) { + if (PyObject_CallFinalizerFromDealloc(o)) return; } - default: { - return __Pyx_NewRef(Py_NotImplemented); + } + #endif + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)))) { + __pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event++] = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } + #endif } } -#define __pyx_nb_and_6hunter_11_predicates_Query __pyx_pw_6hunter_11_predicates_5Query_13__and__ -#define __pyx_nb_or_6hunter_11_predicates_Query __pyx_pw_6hunter_11_predicates_5Query_11__or__ - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_contains(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_14query_contains_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_endswith(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_14query_endswith_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_eq(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_8query_eq_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_gt(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_8query_gt_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_gte(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_9query_gte_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_in(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_8query_in_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_lt(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_8query_lt_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_lte(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_9query_lte_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_regex(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_11query_regex_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_startswith(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get__(o); -} - -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_5Query_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_5Query_5__repr__(self); -} - -static PyMethodDef __pyx_methods_6hunter_11_predicates_Query[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_5Query_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Query[] = { - {(char *)"query_contains", __pyx_getprop_6hunter_11_predicates_5Query_query_contains, 0, (char *)0, 0}, - {(char *)"query_endswith", __pyx_getprop_6hunter_11_predicates_5Query_query_endswith, 0, (char *)0, 0}, - {(char *)"query_eq", __pyx_getprop_6hunter_11_predicates_5Query_query_eq, 0, (char *)0, 0}, - {(char *)"query_gt", __pyx_getprop_6hunter_11_predicates_5Query_query_gt, 0, (char *)0, 0}, - {(char *)"query_gte", __pyx_getprop_6hunter_11_predicates_5Query_query_gte, 0, (char *)0, 0}, - {(char *)"query_in", __pyx_getprop_6hunter_11_predicates_5Query_query_in, 0, (char *)0, 0}, - {(char *)"query_lt", __pyx_getprop_6hunter_11_predicates_5Query_query_lt, 0, (char *)0, 0}, - {(char *)"query_lte", __pyx_getprop_6hunter_11_predicates_5Query_query_lte, 0, (char *)0, 0}, - {(char *)"query_regex", __pyx_getprop_6hunter_11_predicates_5Query_query_regex, 0, (char *)0, 0}, - {(char *)"query_startswith", __pyx_getprop_6hunter_11_predicates_5Query_query_startswith, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_11_predicates_Query_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_11_predicates_Query}, - {Py_tp_repr, (void *)__pyx_pw_6hunter_11_predicates_5Query_5__repr__}, - {Py_nb_invert, (void *)__pyx_pw_6hunter_11_predicates_5Query_15__invert__}, - {Py_nb_and, (void *)__pyx_nb_and_6hunter_11_predicates_Query}, - {Py_nb_or, (void *)__pyx_nb_or_6hunter_11_predicates_Query}, - {Py_tp_call, (void *)__pyx_pw_6hunter_11_predicates_5Query_9__call__}, - {Py_tp_str, (void *)__pyx_pw_6hunter_11_predicates_5Query_3__str__}, - {Py_tp_doc, (void *)PyDoc_STR("\n A query class.\n\n See :class:`hunter.event.Event` for fields that can be filtered on.\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_11_predicates_Query}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_11_predicates_Query}, - {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_11_predicates_Query}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_11_predicates_Query}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_11_predicates_Query}, - {Py_tp_init, (void *)__pyx_pw_6hunter_11_predicates_5Query_1__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_11_predicates_Query}, +static PyType_Slot __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event}, + {Py_tp_new, (void *)__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_11_predicates_Query_spec = { - "hunter._predicates.Query", - sizeof(struct __pyx_obj_6hunter_11_predicates_Query), +static PyType_Spec __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec = { + "hunter._predicates.__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", + sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_11_predicates_Query_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_slots, }; #else -static PyNumberMethods __pyx_tp_as_number_Query = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_bool*/ - __pyx_pw_6hunter_11_predicates_5Query_15__invert__, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - __pyx_nb_and_6hunter_11_predicates_Query, /*nb_and*/ - 0, /*nb_xor*/ - __pyx_nb_or_6hunter_11_predicates_Query, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 - 0, /*nb_inplace_matrix_multiply*/ - #endif -}; - -static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { +static PyTypeObject __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = { PyVarObject_HEAD_INIT(0, 0) - "hunter._predicates.""Query", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_11_predicates_Query), /*tp_basicsize*/ + "hunter._predicates.""__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", /*tp_name*/ + sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_11_predicates_Query, /*tp_dealloc*/ + __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -29784,27 +31303,27 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ #endif - __pyx_pw_6hunter_11_predicates_5Query_5__repr__, /*tp_repr*/ - &__pyx_tp_as_number_Query, /*tp_as_number*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash*/ - __pyx_pw_6hunter_11_predicates_5Query_9__call__, /*tp_call*/ - __pyx_pw_6hunter_11_predicates_5Query_3__str__, /*tp_str*/ + 0, /*tp_call*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n A query class.\n\n See :class:`hunter.event.Event` for fields that can be filtered on.\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_11_predicates_Query, /*tp_traverse*/ - __pyx_tp_clear_6hunter_11_predicates_Query, /*tp_clear*/ - __pyx_tp_richcompare_6hunter_11_predicates_Query, /*tp_richcompare*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + 0, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_11_predicates_Query, /*tp_methods*/ + 0, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_11_predicates_Query, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -29812,9 +31331,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_11_predicates_5Query_1__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_11_predicates_Query, /*tp_new*/ + __pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29834,13 +31353,13 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; @@ -29895,7 +31414,7 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_Or___setstate_cython, __pyx_k_Or___setstate_cython, sizeof(__pyx_k_Or___setstate_cython), 0, 0, 1, 1}, {&__pyx_kp_s_Or_s, __pyx_k_Or_s, sizeof(__pyx_k_Or_s), 0, 0, 1, 0}, {&__pyx_n_s_PickleError, __pyx_k_PickleError, sizeof(__pyx_k_PickleError), 0, 0, 1, 1}, - {&__pyx_n_s_Pyx_CFunc_object__lParenEvent, __pyx_k_Pyx_CFunc_object__lParenEvent, sizeof(__pyx_k_Pyx_CFunc_object__lParenEvent), 0, 0, 1, 1}, + {&__pyx_n_s_Pyx_CFunc_6hunter_11_predicate, __pyx_k_Pyx_CFunc_6hunter_11_predicate, sizeof(__pyx_k_Pyx_CFunc_6hunter_11_predicate), 0, 0, 1, 1}, {&__pyx_n_s_Query, __pyx_k_Query, sizeof(__pyx_k_Query), 0, 0, 1, 1}, {&__pyx_n_s_QueryEntry, __pyx_k_QueryEntry, sizeof(__pyx_k_QueryEntry), 0, 0, 1, 1}, {&__pyx_n_s_QueryEntry___reduce_cython, __pyx_k_QueryEntry___reduce_cython, sizeof(__pyx_k_QueryEntry___reduce_cython), 0, 0, 1, 1}, @@ -30088,8 +31607,8 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); /* "cfunc.to_py":67 - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) @@ -30099,14 +31618,14 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple_); __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple_, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_wrap, 67, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 67, __pyx_L1_error) - /* "hunter/_predicates.pyx":320 + /* "hunter/_predicates.pyx":319 * def __init__(self, condition, *actions): * if not actions: * raise TypeError('Must give at least one action.') # <<<<<<<<<<<<<< * self.condition = condition * self.actions = tuple( */ - __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_Must_give_at_least_one_action); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 320, __pyx_L1_error) + __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_Must_give_at_least_one_action); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 319, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__13); __Pyx_GIVEREF(__pyx_tuple__13); @@ -30283,17 +31802,17 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { */ __pyx_codeobj__23 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__23)) __PYX_ERR(0, 16, __pyx_L1_error) - /* "hunter/_predicates.pyx":644 + /* "hunter/_predicates.pyx":643 * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) * * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< * from hunter import _merge * */ - __pyx_tuple__46 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_predicates, __pyx_n_s_kwargs, __pyx_n_s_merge); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(1, 644, __pyx_L1_error) + __pyx_tuple__46 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_predicates, __pyx_n_s_kwargs, __pyx_n_s_merge); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(1, 643, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__46); __Pyx_GIVEREF(__pyx_tuple__46); - __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__46, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__predicates_pyx, __pyx_n_s_filter, 644, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(1, 644, __pyx_L1_error) + __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__46, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__predicates_pyx, __pyx_n_s_filter, 643, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(1, 643, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< @@ -30427,194 +31946,140 @@ static int __Pyx_modinit_type_init_code(void) { __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ #if CYTHON_USE_TYPE_SPECS - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_spec, NULL); if (unlikely(!__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event)) __PYX_ERR(0, 66, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event_spec, __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(0, 66, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Query = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Query_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Query)) __PYX_ERR(1, 100, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Query_spec, __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) #else - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event = &__pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event; + __pyx_ptype_6hunter_11_predicates_Query = &__pyx_type_6hunter_11_predicates_Query; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(0, 66, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_Query->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event->tp_dictoffset && __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_object__lParenEvent__rParen_to_py_5event->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Query->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Query->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_Query->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr)) __PYX_ERR(1, 497, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(1, 497, __pyx_L1_error) - #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(1, 497, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_print = 0; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + #if CYTHON_UPDATE_DESCRIPTOR_DOC + { + PyObject *wrapper = PyObject_GetAttrString((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, "__init__"); if (unlikely(!wrapper)) __PYX_ERR(1, 100, __pyx_L1_error) + if (__Pyx_IS_TYPE(wrapper, &PyWrapperDescr_Type)) { + __pyx_wrapperbase_6hunter_11_predicates_5Query___init__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_6hunter_11_predicates_5Query___init__.doc = __pyx_doc_6hunter_11_predicates_5Query___init__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_6hunter_11_predicates_5Query___init__; + } } #endif - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr)) __PYX_ERR(1, 447, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(1, 447, __pyx_L1_error) - #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(1, 447, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_print = 0; - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Query, (PyObject *) __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - } + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr)) __PYX_ERR(1, 329, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(1, 329, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_And = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_And_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_And)) __PYX_ERR(1, 438, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_And_spec, __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr; + __pyx_ptype_6hunter_11_predicates_And = &__pyx_type_6hunter_11_predicates_And; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(1, 329, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_And->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_And->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_And->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_And->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr)) __PYX_ERR(1, 323, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(1, 323, __pyx_L1_error) - #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr; - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_And, (PyObject *) __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(1, 323, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_print = 0; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - } + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr)) __PYX_ERR(1, 203, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(1, 203, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Or = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Or_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Or)) __PYX_ERR(1, 487, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Or_spec, __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr; + __pyx_ptype_6hunter_11_predicates_Or = &__pyx_type_6hunter_11_predicates_Or; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(1, 203, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_Or->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Or->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Or->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_Or->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__)) __PYX_ERR(1, 200, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(1, 200, __pyx_L1_error) - #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(1, 200, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_print = 0; - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Or, (PyObject *) __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - } + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_QueryEntry = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_QueryEntry_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_QueryEntry)) __PYX_ERR(1, 77, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_QueryEntry_spec, __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 77, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Not = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Not_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Not)) __PYX_ERR(1, 536, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Not_spec, __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_QueryEntry = &__pyx_type_6hunter_11_predicates_QueryEntry; + __pyx_ptype_6hunter_11_predicates_Not = &__pyx_type_6hunter_11_predicates_Not; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 77, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_Not->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_QueryEntry->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Not->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Not->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_Not->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_QueryEntry, (PyObject *) __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 77, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Not, (PyObject *) __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 77, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Backlog = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Backlog_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Backlog)) __PYX_ERR(1, 598, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Backlog_spec, __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 598, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_When = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_When_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_When)) __PYX_ERR(1, 310, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_When_spec, __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Backlog = &__pyx_type_6hunter_11_predicates_Backlog; + __pyx_ptype_6hunter_11_predicates_When = &__pyx_type_6hunter_11_predicates_When; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 598, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Backlog->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_When->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Backlog->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_When->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_When->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_When->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Backlog, (PyObject *) __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 598, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_When, (PyObject *) __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 598, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_From = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_From_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_From)) __PYX_ERR(1, 367, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_From_spec, __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 367, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_From = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_From_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_From)) __PYX_ERR(1, 366, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_From_spec, __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) #else __pyx_ptype_6hunter_11_predicates_From = &__pyx_type_6hunter_11_predicates_From; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 367, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 __pyx_ptype_6hunter_11_predicates_From->tp_print = 0; @@ -30624,134 +32089,188 @@ static int __Pyx_modinit_type_init_code(void) { __pyx_ptype_6hunter_11_predicates_From->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_From, (PyObject *) __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 367, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_From, (PyObject *) __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 367, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_When = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_When_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_When)) __PYX_ERR(1, 311, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_When_spec, __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 311, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Backlog = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Backlog_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Backlog)) __PYX_ERR(1, 597, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Backlog_spec, __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_When = &__pyx_type_6hunter_11_predicates_When; + __pyx_ptype_6hunter_11_predicates_Backlog = &__pyx_type_6hunter_11_predicates_Backlog; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 311, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_When->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_Backlog->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_When->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_When->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_When->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Backlog->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_When, (PyObject *) __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 311, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Backlog, (PyObject *) __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 311, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Not = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Not_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Not)) __PYX_ERR(1, 537, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Not_spec, __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 537, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_QueryEntry = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_QueryEntry_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_QueryEntry)) __PYX_ERR(1, 78, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_QueryEntry_spec, __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Not = &__pyx_type_6hunter_11_predicates_Not; + __pyx_ptype_6hunter_11_predicates_QueryEntry = &__pyx_type_6hunter_11_predicates_QueryEntry; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 537, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Not->tp_print = 0; + __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Not->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Not->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Not->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_QueryEntry->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Not, (PyObject *) __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 537, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_QueryEntry, (PyObject *) __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 537, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Or = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Or_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Or)) __PYX_ERR(1, 488, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Or_spec, __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 488, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__)) __PYX_ERR(1, 199, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(1, 199, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Or = &__pyx_type_6hunter_11_predicates_Or; + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 488, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(1, 199, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Or->tp_print = 0; + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Or->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Or->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Or->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Or, (PyObject *) __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 488, __pyx_L1_error) + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr)) __PYX_ERR(1, 202, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(1, 202, __pyx_L1_error) + #else + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr; + #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 488, __pyx_L1_error) + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(1, 202, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_And = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_And_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_And)) __PYX_ERR(1, 439, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_And_spec, __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 439, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr)) __PYX_ERR(1, 322, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(1, 322, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_And = &__pyx_type_6hunter_11_predicates_And; + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 439, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(1, 322, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_And->tp_print = 0; + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_And->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_And->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_And->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_And, (PyObject *) __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 439, __pyx_L1_error) + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr)) __PYX_ERR(1, 328, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(1, 328, __pyx_L1_error) + #else + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr; + #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 439, __pyx_L1_error) + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(1, 328, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Query = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Query_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Query)) __PYX_ERR(1, 98, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Query_spec, __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 98, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr)) __PYX_ERR(1, 446, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(1, 446, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Query = &__pyx_type_6hunter_11_predicates_Query; + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 98, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(1, 446, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Query->tp_print = 0; + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Query->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Query->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Query->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - #if CYTHON_UPDATE_DESCRIPTOR_DOC - { - PyObject *wrapper = PyObject_GetAttrString((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, "__init__"); if (unlikely(!wrapper)) __PYX_ERR(1, 98, __pyx_L1_error) - if (__Pyx_IS_TYPE(wrapper, &PyWrapperDescr_Type)) { - __pyx_wrapperbase_6hunter_11_predicates_5Query___init__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_6hunter_11_predicates_5Query___init__.doc = __pyx_doc_6hunter_11_predicates_5Query___init__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_6hunter_11_predicates_5Query___init__; - } + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr)) __PYX_ERR(1, 496, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(1, 496, __pyx_L1_error) + #else + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(1, 496, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Query, (PyObject *) __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 98, __pyx_L1_error) + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec, NULL); if (unlikely(!__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)) __PYX_ERR(0, 66, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec, __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(0, 66, __pyx_L1_error) + #else + __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = &__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; + #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 98, __pyx_L1_error) + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(0, 66, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_dictoffset && __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + } #endif __Pyx_RefNannyFinishContext(); return 0; @@ -30771,38 +32290,29 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT(PyFrameObject), - __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(4, 19, __pyx_L1_error) - __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT(PyCodeObject), - __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(4, 22, __pyx_L1_error) - __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 35, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyFrameObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(4, 19, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyCodeObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(4, 22, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 36, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType(__pyx_t_2, "hunter._tracer", "Tracer", sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_7_tracer_Tracer), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(4, 35, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter._tracer", "Tracer", sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_7_tracer_Tracer),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(4, 36, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 12, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType(__pyx_t_2, "hunter._event", "Event", sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_6_event_Event), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(5, 12, __pyx_L1_error) - __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(5, 12, __pyx_L1_error) + __pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter._event", "Event", sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6_event_Event),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(5, 13, __pyx_L1_error) + __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(5, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -30831,8 +32341,8 @@ static int __Pyx_modinit_function_import_code(void) { /*--- Function import code ---*/ __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (!__pyx_t_1) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_ImportFunction(__pyx_t_1, "fast_clone", (void (**)(void))&__pyx_f_6hunter_6_event_fast_clone, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ImportFunction(__pyx_t_1, "fast_detach", (void (**)(void))&__pyx_f_6hunter_6_event_fast_detach, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *, PyObject *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_0_10(__pyx_t_1, "fast_clone", (void (**)(void))&__pyx_f_6hunter_6_event_fast_clone, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_0_10(__pyx_t_1, "fast_detach", (void (**)(void))&__pyx_f_6hunter_6_event_fast_detach, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *, PyObject *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -31033,7 +32543,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__predicates(PyObject *__pyx_pyinit __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1, __pyx_L1_error) { int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); - __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to _predicates pseudovariable */ + __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "_predicates" pseudovariable */ if (unlikely((add_module_result < 0))) __PYX_ERR(1, 1, __pyx_L1_error) pystate_addmodule_run = 1; } @@ -31045,10 +32555,8 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__predicates(PyObject *__pyx_pyinit CYTHON_UNUSED_VAR(__pyx_t_1); __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(1, 1, __pyx_L1_error) Py_INCREF(__pyx_d); - __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(1, 1, __pyx_L1_error) - Py_INCREF(__pyx_b); - __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(1, 1, __pyx_L1_error) - Py_INCREF(__pyx_cython_runtime); + __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(1, 1, __pyx_L1_error) if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(1, 1, __pyx_L1_error) #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); @@ -31060,7 +32568,7 @@ if (!__Pyx_RefNanny) { } #endif __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit__predicates(void)", 0); - if (__Pyx_check_binary_version() < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(1, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif @@ -31128,8 +32636,8 @@ if (!__Pyx_RefNanny) { /* "cfunc.to_py":66 * - * @cname("__Pyx_CFunc_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< * def wrap(Event event): * """wrap(event: 'Event')""" */ @@ -31148,7 +32656,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_deque); __Pyx_GIVEREF(__pyx_n_s_deque); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_deque); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_deque)) __PYX_ERR(1, 4, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_collections, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -31170,7 +32678,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_isclass); __Pyx_GIVEREF(__pyx_n_s_isclass); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_isclass); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_isclass)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_t_2 = __Pyx_patch_inspect(__Pyx_Import(__pyx_n_s_inspect, __pyx_t_3, 0)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -31192,7 +32700,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_compile); __Pyx_GIVEREF(__pyx_n_s_compile); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_compile); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_compile)) __PYX_ERR(1, 6, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_re, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -31214,7 +32722,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_Action); __Pyx_GIVEREF(__pyx_n_s_Action); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_Action); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_Action)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_2 = __Pyx_Import(__pyx_n_s_actions, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -31236,7 +32744,7 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_ColorStreamAction); __Pyx_GIVEREF(__pyx_n_s_ColorStreamAction); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_ColorStreamAction); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_ColorStreamAction)) __PYX_ERR(1, 16, __pyx_L1_error); __pyx_t_3 = __Pyx_Import(__pyx_n_s_actions, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -31510,7 +33018,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Query___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__11)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Query->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Query); @@ -31523,18 +33031,18 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Query___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__12)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Query->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Query); - /* "hunter/_predicates.pyx":265 + /* "hunter/_predicates.pyx":264 * return Not(self) * * cdef inline fast_Query_call(Query self, Event event): # <<<<<<<<<<<<<< * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) */ - __Pyx_TraceLine(265,0,__PYX_ERR(1, 265, __pyx_L1_error)) + __Pyx_TraceLine(264,0,__PYX_ERR(1, 264, __pyx_L1_error)) /* "(tree fragment)":1 @@ -31545,7 +33053,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_When___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__14)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_When->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_When, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_When); @@ -31558,18 +33066,18 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_When___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__15)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_When->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_When, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_When); - /* "hunter/_predicates.pyx":354 + /* "hunter/_predicates.pyx":353 * return Not(self) * * cdef inline fast_When_call(When self, Event event): # <<<<<<<<<<<<<< * cdef object result * */ - __Pyx_TraceLine(354,0,__PYX_ERR(1, 354, __pyx_L1_error)) + __Pyx_TraceLine(353,0,__PYX_ERR(1, 353, __pyx_L1_error)) /* "(tree fragment)":1 @@ -31580,7 +33088,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_From___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__16)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_From->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_From, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_From); @@ -31593,18 +33101,18 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_From___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__17)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_From->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_From, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_From); - /* "hunter/_predicates.pyx":408 + /* "hunter/_predicates.pyx":407 * return Not(self) * * cdef inline fast_From_call(From self, Event event): # <<<<<<<<<<<<<< * cdef object result * cdef int delta_depth */ - __Pyx_TraceLine(408,0,__PYX_ERR(1, 408, __pyx_L1_error)) + __Pyx_TraceLine(407,0,__PYX_ERR(1, 407, __pyx_L1_error)) /* "(tree fragment)":1 @@ -31615,7 +33123,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_And___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__18)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_And->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_And, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_And); @@ -31628,18 +33136,18 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_And___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__19)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_And->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_And, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_And); - /* "hunter/_predicates.pyx":479 + /* "hunter/_predicates.pyx":478 * return Not(self) * * cdef inline fast_And_call(And self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if not fast_call(predicate, event): */ - __Pyx_TraceLine(479,0,__PYX_ERR(1, 479, __pyx_L1_error)) + __Pyx_TraceLine(478,0,__PYX_ERR(1, 478, __pyx_L1_error)) /* "(tree fragment)":1 @@ -31650,7 +33158,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Or___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__20)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Or->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Or, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Or); @@ -31663,18 +33171,18 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Or___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__21)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Or->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Or, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Or); - /* "hunter/_predicates.pyx":529 + /* "hunter/_predicates.pyx":528 * return Not(self) * * cdef inline fast_Or_call(Or self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if fast_call(predicate, event): */ - __Pyx_TraceLine(529,0,__PYX_ERR(1, 529, __pyx_L1_error)) + __Pyx_TraceLine(528,0,__PYX_ERR(1, 528, __pyx_L1_error)) /* "(tree fragment)":1 @@ -31685,7 +33193,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Not___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__22)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Not->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Not, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Not); @@ -31698,41 +33206,41 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Not___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__23)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Not->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Not, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Not); - /* "hunter/_predicates.pyx":574 + /* "hunter/_predicates.pyx":573 * return self.predicate * * cdef inline fast_Not_call(Not self, Event event): # <<<<<<<<<<<<<< * return not fast_call(self.predicate, event) * */ - __Pyx_TraceLine(574,0,__PYX_ERR(1, 574, __pyx_L1_error)) + __Pyx_TraceLine(573,0,__PYX_ERR(1, 573, __pyx_L1_error)) - /* "hunter/_predicates.pyx":578 + /* "hunter/_predicates.pyx":577 * * * cdef inline fast_call(callable, Event event): # <<<<<<<<<<<<<< * if type(callable) is Query: * return fast_Query_call( callable, event) */ - __Pyx_TraceLine(578,0,__PYX_ERR(1, 578, __pyx_L1_error)) + __Pyx_TraceLine(577,0,__PYX_ERR(1, 577, __pyx_L1_error)) - /* "hunter/_predicates.pyx":644 + /* "hunter/_predicates.pyx":643 * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) * * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< * from hunter import _merge * */ - __Pyx_TraceLine(644,0,__PYX_ERR(1, 644, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_17filter, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog_filter, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__24)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 644, __pyx_L1_error) + __Pyx_TraceLine(643,0,__PYX_ERR(1, 643, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_17filter, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog_filter, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__24)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog->tp_dict, __pyx_n_s_filter, __pyx_t_3) < 0) __PYX_ERR(1, 644, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_n_s_filter, __pyx_t_3) < 0) __PYX_ERR(1, 643, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Backlog); @@ -31744,7 +33252,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__25)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog->tp_dict, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Backlog); @@ -31757,18 +33265,18 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__26)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog->tp_dict, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; PyType_Modified(__pyx_ptype_6hunter_11_predicates_Backlog); - /* "hunter/_predicates.pyx":656 + /* "hunter/_predicates.pyx":655 * ) * * cdef inline fast_Backlog_call(Backlog self, Event event): # <<<<<<<<<<<<<< * cdef bint first_is_call * cdef Event detached_event */ - __Pyx_TraceLine(656,0,__PYX_ERR(1, 656, __pyx_L1_error)) + __Pyx_TraceLine(655,0,__PYX_ERR(1, 655, __pyx_L1_error)) /* "(tree fragment)":1 @@ -31968,7 +33476,7 @@ if (!__Pyx_RefNanny) { /* #### Code section: cleanup_module ### */ /* #### Code section: main_method ### */ /* #### Code section: utility_code_pragmas ### */ -#if _MSC_VER +#ifdef _MSC_VER #pragma warning( push ) /* Warning 4127: conditional expression is constant * Cython uses constant conditional expressions to allow in inline functions to be optimized at @@ -32015,18 +33523,51 @@ static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple return 0; } static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) { - PyObject *exc_type = tstate->curexc_type; + int result; + PyObject *exc_type; +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *current_exception = tstate->current_exception; + if (unlikely(!current_exception)) return 0; + exc_type = (PyObject*) Py_TYPE(current_exception); + if (exc_type == err) return 1; +#else + exc_type = tstate->curexc_type; if (exc_type == err) return 1; if (unlikely(!exc_type)) return 0; - if (unlikely(PyTuple_Check(err))) - return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); +#endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(exc_type); + #endif + if (unlikely(PyTuple_Check(err))) { + result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + } else { + result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(exc_type); + #endif + return result; } #endif /* PyErrFetchRestore */ #if CYTHON_FAST_THREAD_STATE static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *tmp_value; + assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); + if (value) { + #if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) + #endif + PyException_SetTraceback(value, tb); + } + tmp_value = tstate->current_exception; + tstate->current_exception = value; + Py_XDECREF(tmp_value); + Py_XDECREF(type); + Py_XDECREF(tb); +#else PyObject *tmp_type, *tmp_value, *tmp_tb; tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; @@ -32037,14 +33578,34 @@ static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObjec Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#endif } static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject* exc_value; + exc_value = tstate->current_exception; + tstate->current_exception = 0; + *value = exc_value; + *type = NULL; + *tb = NULL; + if (exc_value) { + *type = (PyObject*) Py_TYPE(exc_value); + Py_INCREF(*type); + #if CYTHON_COMPILING_IN_CPYTHON + *tb = ((PyBaseExceptionObject*) exc_value)->traceback; + Py_XINCREF(*tb); + #else + *tb = PyException_GetTraceback(exc_value); + #endif + } +#else *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; +#endif } #endif @@ -32063,14 +33624,20 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject #endif /* PyObjectGetAttrStrNoError */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) __Pyx_PyErr_Clear(); } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + (void) PyObject_GetOptionalAttr(obj, attr_name, &result); + return result; +#else #if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { @@ -32082,6 +33649,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P __Pyx_PyObject_GetAttrStr_ClearAttributeError(); } return result; +#endif } /* GetBuiltinName */ @@ -32297,13 +33865,31 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO { int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); if (unlikely(eq != 0)) { - if (unlikely(eq < 0)) return NULL; // error + if (unlikely(eq < 0)) return NULL; return kwvalues[i]; } } - return NULL; // not found (no exception set) + return NULL; +} +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { + Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + PyObject *dict; + dict = PyDict_New(); + if (unlikely(!dict)) + return NULL; + for (i=0; i= PyTuple_GET_SIZE(kwds)) break; + Py_ssize_t size; +#if CYTHON_ASSUME_SAFE_MACROS + size = PyTuple_GET_SIZE(kwds); +#else + size = PyTuple_Size(kwds); + if (size < 0) goto bad; +#endif + if (pos >= size) break; +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); + if (!key) goto bad; +#elif CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kwds, pos); +#else + key = PyTuple_GetItem(kwds, pos); + if (!key) goto bad; +#endif value = kwvalues[pos]; pos++; } else { if (!PyDict_Next(kwds, &pos, &key, &value)) break; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif } name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(value); + Py_DECREF(key); +#endif + key = NULL; + value = NULL; continue; } +#if !CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif + Py_INCREF(value); name = first_kw_arg; #if PY_MAJOR_VERSION < 3 if (likely(PyString_Check(key))) { @@ -32358,6 +33974,9 @@ static int __Pyx_ParseOptionalKeywords( if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) && _PyString_Eq(**name, key)) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -32387,6 +34006,9 @@ static int __Pyx_ParseOptionalKeywords( if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; if (cmp == 0) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -32413,6 +34035,8 @@ static int __Pyx_ParseOptionalKeywords( goto invalid_keyword; } } + Py_XDECREF(key); + Py_XDECREF(value); return 0; arg_passed_twice: __Pyx_RaiseDoubleKeywordsError(function_name, key); @@ -32432,6 +34056,8 @@ static int __Pyx_ParseOptionalKeywords( function_name, key); #endif bad: + Py_XDECREF(key); + Py_XDECREF(value); return -1; } @@ -32653,10 +34279,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - PyObject *abi_module = PyImport_AddModule((char*) __PYX_ABI_MODULE_NAME); - if (unlikely(!abi_module)) return NULL; - Py_INCREF(abi_module); - return abi_module; + return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); } /* FetchCommonType */ @@ -32817,8 +34440,22 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #endif /* CythonFunctionShared */ +#if CYTHON_COMPILING_IN_LIMITED_API +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + if (__Pyx_CyFunction_Check(func)) { + return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; + } else if (PyCFunction_Check(func)) { + return PyCFunction_GetFunction(func) == (PyCFunction) cfunc; + } + return 0; +} +#else +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +} +#endif static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) { -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API __Pyx_Py_XDECREF_SET( __Pyx_CyFunction_GetClassObj(f), ((classobj) ? __Pyx_NewRef(classobj) : NULL)); @@ -32833,6 +34470,10 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); + if (unlikely(!op->func_doc)) return NULL; +#else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { #if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); @@ -32845,6 +34486,7 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(Py_None); return Py_None; } +#endif } Py_INCREF(op->func_doc); return op->func_doc; @@ -32865,7 +34507,9 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_name = PyObject_GetAttrString(op->func, "__name__"); +#elif PY_MAJOR_VERSION >= 3 op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); @@ -32984,10 +34628,10 @@ __Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) { op->defaults_kwdict = PyTuple_GET_ITEM(res, 1); Py_INCREF(op->defaults_kwdict); #else - op->defaults_tuple = PySequence_ITEM(res, 0); + op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0); if (unlikely(!op->defaults_tuple)) result = -1; else { - op->defaults_kwdict = PySequence_ITEM(res, 1); + op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1); if (unlikely(!op->defaults_kwdict)) result = -1; } #endif @@ -33096,7 +34740,15 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); +#if CYTHON_ASSUME_SAFE_MACROS PyList_SET_ITEM(fromlist, 0, marker); +#else + if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) { + Py_DECREF(marker); + Py_DECREF(fromlist); + return NULL; + } +#endif module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; @@ -33112,6 +34764,18 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); return __Pyx_NewRef(op->func_is_coroutine); } +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject * +__Pyx_CyFunction_get_module(__pyx_CyFunctionObject *op, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_GetAttrString(op->func, "__module__"); +} +static int +__Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_SetAttrString(op->func, "__module__", value); +} +#endif static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, @@ -33131,20 +34795,27 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, +#endif {0, 0, 0, 0, 0} }; static PyMemberDef __pyx_CyFunction_members[] = { +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, +#endif #if CYTHON_USE_TYPE_SPECS {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL #if CYTHON_BACKPORT_VECTORCALL {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif #endif -#if PY_VERSION_HEX < 0x030500A0 +#endif +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, @@ -33167,30 +34838,40 @@ static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) #endif static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { +#if !CYTHON_COMPILING_IN_LIMITED_API PyCFunctionObject *cf = (PyCFunctionObject*) op; +#endif if (unlikely(op == NULL)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API + op->func = PyCFunction_NewEx(ml, (PyObject*)op, module); + if (unlikely(!op->func)) return NULL; +#endif op->flags = flags; __Pyx_CyFunction_weakreflist(op) = NULL; +#if !CYTHON_COMPILING_IN_LIMITED_API cf->m_ml = ml; cf->m_self = (PyObject *) op; +#endif Py_XINCREF(closure); op->func_closure = closure; +#if !CYTHON_COMPILING_IN_LIMITED_API Py_XINCREF(module); cf->m_module = module; +#endif op->func_dict = NULL; op->func_name = NULL; Py_INCREF(qualname); op->func_qualname = qualname; op->func_doc = NULL; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API op->func_classobj = NULL; #else ((PyCMethodObject*)op)->mm_class = NULL; @@ -33236,13 +34917,18 @@ static int __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) { Py_CLEAR(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_CLEAR(m->func); +#else Py_CLEAR(((PyCFunctionObject*)m)->m_module); +#endif Py_CLEAR(m->func_dict); Py_CLEAR(m->func_name); Py_CLEAR(m->func_qualname); Py_CLEAR(m->func_doc); Py_CLEAR(m->func_globals); Py_CLEAR(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API #if PY_VERSION_HEX < 0x030900B1 Py_CLEAR(__Pyx_CyFunction_GetClassObj(m)); #else @@ -33251,6 +34937,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) ((PyCMethodObject *) (m))->mm_class = NULL; Py_XDECREF(cls); } +#endif #endif Py_CLEAR(m->defaults_tuple); Py_CLEAR(m->defaults_kwdict); @@ -33281,14 +34968,20 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { Py_VISIT(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_VISIT(m->func); +#else Py_VISIT(((PyCFunctionObject*)m)->m_module); +#endif Py_VISIT(m->func_dict); Py_VISIT(m->func_name); Py_VISIT(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); Py_VISIT(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); +#endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); @@ -33312,10 +35005,22 @@ __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) #endif } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *f = ((__pyx_CyFunctionObject*)func)->func; + PyObject *py_name = NULL; + PyCFunction meth; + int flags; + meth = PyCFunction_GetFunction(f); + if (unlikely(!meth)) return NULL; + flags = PyCFunction_GetFlags(f); + if (unlikely(flags < 0)) return NULL; +#else PyCFunctionObject* f = (PyCFunctionObject*)func; PyCFunction meth = f->m_ml->ml_meth; + int flags = f->m_ml->ml_flags; +#endif Py_ssize_t size; - switch (f->m_ml->ml_flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { + switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { case METH_VARARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) return (*meth)(self, arg); @@ -33324,24 +35029,43 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 0)) return (*meth)(self, NULL); +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 1)) { PyObject *result, *arg0; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS arg0 = PyTuple_GET_ITEM(arg, 0); #else - arg0 = PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; + arg0 = __Pyx_PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; #endif result = (*meth)(self, arg0); #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) @@ -33349,9 +35073,18 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; @@ -33359,12 +35092,28 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", + py_name); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", f->m_ml->ml_name); +#endif return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { - return __Pyx_CyFunction_CallMethod(func, ((PyCFunctionObject*)func)->m_self, arg, kw); + PyObject *self, *result; +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)func)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else + self = ((PyCFunctionObject*)func)->m_self; +#endif + result = __Pyx_CyFunction_CallMethod(func, self, arg, kw); + return result; } static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; @@ -33384,7 +35133,12 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; +#if CYTHON_ASSUME_SAFE_MACROS argc = PyTuple_GET_SIZE(args); +#else + argc = PyTuple_Size(args); + if (unlikely(!argc) < 0) return NULL; +#endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) return NULL; @@ -33509,7 +35263,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, default: return NULL; } - return ((_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { @@ -33597,7 +35351,7 @@ static PyTypeObject __pyx_CyFunctionType_type = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#ifdef _Py_TPFLAGS_HAVE_VECTORCALL +#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL _Py_TPFLAGS_HAVE_VECTORCALL | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, @@ -33638,13 +35392,13 @@ static PyTypeObject __pyx_CyFunctionType_type = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, #endif -#if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 +#if __PYX_NEED_TP_PRINT_SLOT 0, #endif #if PY_VERSION_HEX >= 0x030C0000 0, #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, #endif }; @@ -33707,8 +35461,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg ternaryfunc call = Py_TYPE(func)->tp_call; if (unlikely(!call)) return PyObject_Call(func, arg, kw); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = (*call)(func, arg, kw); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -33722,9 +35481,10 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg /* UnpackUnboundCMethod */ static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { + PyObject *result; PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); if (unlikely(!selfless_args)) return NULL; - PyObject *result = PyObject_Call(method, selfless_args, kwargs); + result = PyObject_Call(method, selfless_args, kwargs); Py_DECREF(selfless_args); return result; } @@ -33744,7 +35504,7 @@ static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { #if PY_MAJOR_VERSION >= 3 if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) #else - if (likely(!PyCFunction_Check(method))) + if (likely(!__Pyx_CyOrPyCFunction_Check(method))) #endif { PyMethodDescrObject *descr = (PyMethodDescrObject*) method; @@ -33752,9 +35512,7 @@ static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); } else #endif -#if defined(CYTHON_COMPILING_IN_PYPY) -#elif PY_VERSION_HEX >= 0x03090000 - if (PyCFunction_CheckExact(method)) +#if CYTHON_COMPILING_IN_PYPY #else if (PyCFunction_Check(method)) #endif @@ -33849,15 +35607,32 @@ static int __Pyx_CheckKeywordStrings( return 1; #else if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { - if (unlikely(PyTuple_GET_SIZE(kw) == 0)) + Py_ssize_t kwsize; +#if CYTHON_ASSUME_SAFE_MACROS + kwsize = PyTuple_GET_SIZE(kw); +#else + kwsize = PyTuple_Size(kw); + if (kwsize < 0) return 0; +#endif + if (unlikely(kwsize == 0)) return 1; if (!kw_allowed) { +#if CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kw, 0); +#else + key = PyTuple_GetItem(kw, pos); + if (!key) return 0; +#endif goto invalid_keyword; } #if PY_VERSION_HEX < 0x03090000 - for (pos = 0; pos < PyTuple_GET_SIZE(kw); pos++) { + for (pos = 0; pos < kwsize; pos++) { +#if CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kw, pos); +#else + key = PyTuple_GetItem(kw, pos); + if (!key) return 0; +#endif if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; } @@ -34029,7 +35804,9 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } PyErr_SetObject(type, value); if (tb) { -#if CYTHON_FAST_THREAD_STATE + #if PY_VERSION_HEX >= 0x030C00A6 + PyException_SetTraceback(value, tb); + #elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -34053,37 +35830,17 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject /* IterFinish */ static CYTHON_INLINE int __Pyx_IterFinish(void) { -#if CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* exc_type = tstate->curexc_type; + PyObject* exc_type; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + exc_type = __Pyx_PyErr_CurrentExceptionType(); if (unlikely(exc_type)) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) { - PyObject *exc_value, *exc_tb; - exc_value = tstate->curexc_value; - exc_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - Py_DECREF(exc_type); - Py_XDECREF(exc_value); - Py_XDECREF(exc_tb); - return 0; - } else { + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) return -1; - } - } - return 0; -#else - if (unlikely(PyErr_Occurred())) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { - return -1; - } + __Pyx_PyErr_Clear(); + return 0; } return 0; -#endif } /* PyFunctionFastCall */ @@ -34131,9 +35888,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, PyObject *result; assert(kwargs == NULL || PyDict_Check(kwargs)); nk = kwargs ? PyDict_Size(kwargs) : 0; + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { return NULL; } + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; + } + #endif if ( #if PY_MAJOR_VERSION >= 3 co->co_kwonlyargcount == 0 && @@ -34208,10 +35971,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { PyObject *self, *result; PyCFunction cfunc; - cfunc = PyCFunction_GET_FUNCTION(func); - self = PyCFunction_GET_SELF(func); + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = cfunc(self, arg); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -34224,42 +35992,33 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject #endif /* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { PyObject *argstuple; - PyObject *result; + PyObject *result = 0; size_t i; argstuple = PyTuple_New((Py_ssize_t)nargs); if (unlikely(!argstuple)) return NULL; for (i = 0; i < nargs; i++) { Py_INCREF(args[i]); - PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; } result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: Py_DECREF(argstuple); return result; } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); #if CYTHON_COMPILING_IN_CPYTHON if (nargs == 0 && kwargs == NULL) { -#if defined(__Pyx_CyFunction_USED) && defined(NDEBUG) - if (__Pyx_IsCyOrPyCFunction(func)) -#else - if (PyCFunction_Check(func)) -#endif - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) { - return __Pyx_PyObject_CallMethO(func, NULL); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); } else if (nargs == 1 && kwargs == NULL) { - if (PyCFunction_Check(func)) - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { - return __Pyx_PyObject_CallMethO(func, args[0]); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); } #endif #if PY_VERSION_HEX < 0x030800B1 @@ -34283,27 +36042,37 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj } #endif #endif - #if CYTHON_VECTORCALL - vectorcallfunc f = _PyVectorcall_Function(func); - if (f) { - return f(func, args, (size_t)nargs, kwargs); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, kwargs); + if (kwargs == NULL) { + #if CYTHON_VECTORCALL + #if PY_VERSION_HEX < 0x03090000 + vectorcallfunc f = _PyVectorcall_Function(func); + #else + vectorcallfunc f = PyVectorcall_Function(func); + #endif + if (f) { + return f(func, args, (size_t)nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, (size_t)nargs, NULL); + } + #endif } - #endif if (nargs == 0) { return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif } /* PyObjectCallNoArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { - PyObject *arg = NULL; - return __Pyx_PyObject_FastCall(func, (&arg)+1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + PyObject *arg[2] = {NULL, NULL}; + return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); } /* PyObjectCallOneArg */ @@ -34521,6 +36290,9 @@ static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyOb } /* dict_iter */ +#if CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 +#include +#endif static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, Py_ssize_t* p_orig_length, int* p_source_is_dict) { is_dict = is_dict || likely(PyDict_CheckExact(iterable)); @@ -34647,7 +36419,9 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, return __Pyx_PyObject_FormatAndDecref(s, f); } static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { - PyObject *result = PyObject_Format(s, f); + PyObject *result; + if (unlikely(!s)) return NULL; + result = PyObject_Format(s, f); Py_DECREF(s); return result; } @@ -34693,7 +36467,9 @@ static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_co if (!CYTHON_PEP393_ENABLED || ukind == result_ukind) { memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); } else { - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030300F0 || defined(_PyUnicode_FastCopyCharacters) + #if PY_VERSION_HEX >= 0x030d0000 + if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; + #elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030300F0 || defined(_PyUnicode_FastCopyCharacters) _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); #else Py_ssize_t j; @@ -34754,7 +36530,7 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) { PyObject *result; #if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { @@ -34832,20 +36608,32 @@ static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) #endif { - PyObject *local_type, *local_value, *local_tb; + PyObject *local_type = NULL, *local_value, *local_tb = NULL; #if CYTHON_FAST_THREAD_STATE PyObject *tmp_type, *tmp_value, *tmp_tb; + #if PY_VERSION_HEX >= 0x030C00A6 + local_value = tstate->current_exception; + tstate->current_exception = 0; + if (likely(local_value)) { + local_type = (PyObject*) Py_TYPE(local_value); + Py_INCREF(local_type); + local_tb = PyException_GetTraceback(local_value); + } + #else local_type = tstate->curexc_type; local_value = tstate->curexc_value; local_tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; + #endif #else PyErr_Fetch(&local_type, &local_value, &local_tb); #endif PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE +#if CYTHON_FAST_THREAD_STATE && PY_VERSION_HEX >= 0x030C00A6 + if (unlikely(tstate->current_exception)) +#elif CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) @@ -34938,14 +36726,54 @@ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { "generator raised StopIteration"); } +/* PyObjectCall2Args */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args[3] = {NULL, arg1, arg2}; + return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +} + +/* PyObjectCallMethod1 */ +#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2) +static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { + PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); + Py_DECREF(method); + return result; +} +#endif +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { +#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2 + PyObject *args[2] = {obj, arg}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_Call2Args; + return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else + PyObject *method = NULL, *result; + int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); + if (likely(is_method)) { + result = __Pyx_PyObject_Call2Args(method, obj, arg); + Py_DECREF(method); + return result; + } + if (unlikely(!method)) return NULL; + return __Pyx__PyObject_CallMethod1(method, arg); +#endif +} + /* StringJoin */ -#if !CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values) { - return PyObject_CallMethodObjArgs(sep, __pyx_n_s_join, values, NULL); -} + (void) __Pyx_PyObject_CallMethod1; +#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION < 3 + return _PyString_Join(sep, values); +#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 + return _PyBytes_Join(sep, values); +#else + return __Pyx_PyObject_CallMethod1(sep, __pyx_n_s_join, values); #endif +} /* GetAttr3 */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static PyObject *__Pyx_GetAttr3Default(PyObject *d) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -34955,9 +36783,14 @@ static PyObject *__Pyx_GetAttr3Default(PyObject *d) { Py_INCREF(d); return d; } +#endif static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { PyObject *r; -#if CYTHON_USE_TYPE_SLOTS +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + int res = PyObject_GetOptionalAttr(o, n, &r); + return (res != 0) ? r : __Pyx_NewRef(d); +#else + #if CYTHON_USE_TYPE_SLOTS if (likely(PyString_Check(n))) { r = __Pyx_PyObject_GetAttrStrNoError(o, n); if (unlikely(!r) && likely(!PyErr_Occurred())) { @@ -34965,9 +36798,10 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject } return r; } -#endif + #endif r = PyObject_GetAttr(o, n); return (likely(r)) ? r : __Pyx_GetAttr3Default(d); +#endif } /* RaiseUnexpectedTypeError */ @@ -35138,14 +36972,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { { #if PY_MAJOR_VERSION >= 3 if (level == -1) { - if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) { - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, 1); - #else + if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, 1); - #endif if (unlikely(!module)) { if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) goto bad; @@ -35164,14 +36993,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); Py_DECREF(py_level); #else - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, level); - #else module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, level); #endif - #endif } } bad: @@ -35314,37 +37138,13 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, } } #else - if (is_list || PySequence_Check(o)) { + if (is_list || !PyMapping_Check(o)) { return PySequence_GetItem(o, i); } #endif return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); } -/* PyObjectCall2Args */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { - PyObject *args[3] = {NULL, arg1, arg2}; - return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* PyObjectCallMethod1 */ -static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { - PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); - Py_DECREF(method); - return result; -} -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { - PyObject *method = NULL, *result; - int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); - if (likely(is_method)) { - result = __Pyx_PyObject_Call2Args(method, obj, arg); - Py_DECREF(method); - return result; - } - if (unlikely(!method)) return NULL; - return __Pyx__PyObject_CallMethod1(method, arg); -} - /* append */ static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x) { if (likely(PyList_CheckExact(L))) { @@ -35372,6 +37172,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { } /* HasAttr */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { PyObject *r; if (unlikely(!__Pyx_PyBaseString_Check(n))) { @@ -35388,20 +37189,38 @@ static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { return 1; } } +#endif /* ValidateBasesTuple */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { - Py_ssize_t i, n = PyTuple_GET_SIZE(bases); + Py_ssize_t i, n; +#if CYTHON_ASSUME_SAFE_MACROS + n = PyTuple_GET_SIZE(bases); +#else + n = PyTuple_Size(bases); + if (n < 0) return -1; +#endif for (i = 1; i < n; i++) { +#if CYTHON_AVOID_BORROWED_REFS + PyObject *b0 = PySequence_GetItem(bases, i); + if (!b0) return -1; +#elif CYTHON_ASSUME_SAFE_MACROS PyObject *b0 = PyTuple_GET_ITEM(bases, i); +#else + PyObject *b0 = PyTuple_GetItem(bases, i); + if (!b0) return -1; +#endif PyTypeObject *b; #if PY_MAJOR_VERSION < 3 if (PyClass_Check(b0)) { PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } #endif @@ -35412,20 +37231,46 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } - if (dictoffset == 0 && b->tp_dictoffset) + if (dictoffset == 0) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); - PyErr_Format(PyExc_TypeError, - "extension type '%.200s' has no __dict__ slot, " - "but base type '" __Pyx_FMT_TYPENAME "' has: " - "either add 'cdef dict __dict__' to the extension type " - "or add '__slots__ = [...]' to the base type", - type_name, b_name); - __Pyx_DECREF_TypeName(b_name); - return -1; + Py_ssize_t b_dictoffset = 0; +#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + b_dictoffset = b->tp_dictoffset; +#else + PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); + if (!py_b_dictoffset) goto dictoffset_return; + b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset); + Py_DECREF(py_b_dictoffset); + if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return; +#endif + if (b_dictoffset) { + { + __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + PyErr_Format(PyExc_TypeError, + "extension type '%.200s' has no __dict__ slot, " + "but base type '" __Pyx_FMT_TYPENAME "' has: " + "either add 'cdef dict __dict__' to the extension type " + "or add '__slots__ = [...]' to the base type", + type_name, b_name); + __Pyx_DECREF_TypeName(b_name); + } +#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) + dictoffset_return: +#endif +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif + return -1; + } } +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif } return 0; } @@ -35667,10 +37512,10 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { #endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType -#define __PYX_HAVE_RT_ImportType -static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_0_10 +#define __PYX_HAVE_RT_ImportType_3_0_10 +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) { PyObject *result = 0; char warning[200]; @@ -35724,7 +37569,7 @@ static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -35732,7 +37577,7 @@ static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn && (size_t)basicsize > size) { + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { PyOS_snprintf(warning, sizeof(warning), "%s.%s size changed, may indicate binary incompatibility. " "Expected %zd from C header, got %zd from PyObject", @@ -35960,20 +37805,93 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif #include "internal/pycore_frame.h" #endif #if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict, + PyObject *firstlineno, PyObject *name) { + PyObject *replace = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; + replace = PyObject_GetAttrString(code, "replace"); + if (likely(replace)) { + PyObject *result; + result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + Py_DECREF(replace); + return result; + } + PyErr_Clear(); + #if __PYX_LIMITED_VERSION_HEX < 0x030780000 + { + PyObject *compiled = NULL, *result = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; + compiled = Py_CompileString( + "out = type(code)(\n" + " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" + " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" + " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" + " code.co_lnotab)\n", "", Py_file_input); + if (!compiled) return NULL; + result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); + Py_DECREF(compiled); + if (!result) PyErr_Print(); + Py_DECREF(result); + result = PyDict_GetItemString(scratch_dict, "out"); + if (result) Py_INCREF(result); + return result; + } + #else + return NULL; + #endif +} static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { + PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL; + PyObject *replace = NULL, *getframe = NULL, *frame = NULL; + PyObject *exc_type, *exc_value, *exc_traceback; + int success = 0; if (c_line) { (void) __pyx_cfilenm; (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } - _PyTraceback_Add(funcname, filename, py_line); + PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + getframe = PySys_GetObject("_getframe"); + if (unlikely(!getframe)) goto bad; + if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; + frame = PyEval_EvalCode(code_object, dict, dict); + if (unlikely(!frame) || frame == Py_None) goto bad; + success = 1; + bad: + PyErr_Restore(exc_type, exc_value, exc_traceback); + Py_XDECREF(code_object); + Py_XDECREF(py_py_line); + Py_XDECREF(py_funcname); + Py_XDECREF(dict); + Py_XDECREF(replace); + if (success) { + PyTraceBack_Here( + (struct _frame*)frame); + } + Py_XDECREF(frame); } #else static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( @@ -36026,7 +37944,7 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( #else py_code = PyCode_NewEmpty(filename, funcname, py_line); #endif - Py_XDECREF(py_funcname); // XDECREF since it's only set on Py3 if cline + Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); @@ -36130,8 +38048,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(int), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -36162,40 +38106,45 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -36217,65 +38166,67 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(int) <= sizeof(long))) { @@ -36287,30 +38238,100 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else int val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (int) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (int) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (int) -1; } } else { @@ -36358,40 +38379,45 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -36413,65 +38439,67 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(long) <= sizeof(long))) { @@ -36483,30 +38511,100 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else long val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (long) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (long) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (long) -1; } } else { @@ -36560,8 +38658,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -36574,7 +38698,8 @@ __Pyx_PyType_GetName(PyTypeObject* tp) __pyx_n_s_name_2); if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { PyErr_Clear(); - Py_XSETREF(name, __Pyx_NewRef(__pyx_n_s__48)); + Py_XDECREF(name); + name = __Pyx_NewRef(__pyx_n_s__48); } return name; } @@ -36697,7 +38822,7 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #endif /* GetTopmostException */ -#if CYTHON_USE_EXC_INFO_STACK +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate) { @@ -36794,7 +38919,12 @@ static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject * } else { tmp_type = (PyObject*) Py_TYPE(tmp_value); Py_INCREF(tmp_type); + #if CYTHON_COMPILING_IN_CPYTHON + tmp_tb = ((PyBaseExceptionObject*) tmp_value)->traceback; + Py_XINCREF(tmp_tb); + #else tmp_tb = PyException_GetTraceback(tmp_value); + #endif } #elif CYTHON_USE_EXC_INFO_STACK _PyErr_StackItem *exc_info = tstate->exc_info; @@ -37013,8 +39143,10 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i #if CYTHON_COMPILING_IN_PYPY #else PyObject *exc_tb; - #if PY_VERSION_HEX >= 0x030B00a4 + #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON exc_tb = PyException_GetTraceback(exc_state->exc_value); + #elif PY_VERSION_HEX >= 0x030B00a4 + exc_tb = ((PyBaseExceptionObject*) exc_state->exc_value)->traceback; #else exc_tb = exc_state->exc_traceback; #endif @@ -37028,7 +39160,7 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i Py_XINCREF(tstate->frame); f->f_back = tstate->frame; #endif - #if PY_VERSION_HEX >= 0x030B00a4 + #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON Py_DECREF(exc_tb); #endif } @@ -37110,9 +39242,22 @@ PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) { PyErr_SetNone(PyExc_StopIteration); } else { +#if PY_VERSION_HEX < 0x030d00A1 _PyGen_SetStopIterationValue(result); +#else + if (!PyTuple_Check(result) && !PyExceptionInstance_Check(result)) { + PyErr_SetObject(PyExc_StopIteration, result); + } else { + PyObject *exc = __Pyx_PyObject_CallOneArg(PyExc_StopIteration, result); + if (likely(exc != NULL)) { + PyErr_SetObject(PyExc_StopIteration, exc); + Py_DECREF(exc); + } + } +#endif } - Py_CLEAR(result); + Py_DECREF(result); + result = NULL; } return result; #endif @@ -37826,13 +39971,13 @@ static PyTypeObject __pyx_GeneratorType_type = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, #endif -#if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 +#if __PYX_NEED_TP_PRINT_SLOT 0, #endif #if PY_VERSION_HEX >= 0x030C0000 0, #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, #endif }; @@ -37853,41 +39998,50 @@ static int __pyx_Generator_init(PyObject *module) { } /* CheckBinaryVersion */ -static int __Pyx_check_binary_version(void) { - char ctversion[5]; - int same=1, i, found_dot; - const char* rt_from_call = Py_GetVersion(); - PyOS_snprintf(ctversion, 5, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - found_dot = 0; - for (i = 0; i < 4; i++) { - if (!ctversion[i]) { - same = (rt_from_call[i] < '0' || rt_from_call[i] > '9'); - break; +static unsigned long __Pyx_get_runtime_version(void) { +#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4 + return Py_Version & ~0xFFUL; +#else + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; } - if (rt_from_call[i] != ctversion[i]) { - same = 0; + version += factor * digit; + if (rt_version[i] != '.') break; - } + digit = 0; + factor >>= 8; + ++i; } - if (!same) { - char rtversion[5] = {'\0'}; + return version; +#endif +} +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { + const unsigned long MAJOR_MINOR = 0xFFFF0000UL; + if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) + return 0; + if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR))) + return 1; + { char message[200]; - for (i=0; i<4; ++i) { - if (rt_from_call[i] == '.') { - if (found_dot) break; - found_dot = 1; - } else if (rt_from_call[i] < '0' || rt_from_call[i] > '9') { - break; - } - rtversion[i] = rt_from_call[i]; - } PyOS_snprintf(message, sizeof(message), - "compile time version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); + "compile time Python version %d.%d " + "of module '%.100s' " + "%s " + "runtime version %d.%d", + (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF), + __Pyx_MODULE_NAME, + (allow_newer) ? "was newer than" : "does not match", + (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF) + ); return PyErr_WarnEx(NULL, message, 1); } - return 0; } /* FunctionExport */ @@ -37924,9 +40078,9 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s } /* FunctionImport */ -#ifndef __PYX_HAVE_RT_ImportFunction -#define __PYX_HAVE_RT_ImportFunction -static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { +#ifndef __PYX_HAVE_RT_ImportFunction_3_0_10 +#define __PYX_HAVE_RT_ImportFunction_3_0_10 +static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { PyObject *d = 0; PyObject *cobj = 0; union { @@ -38004,8 +40158,24 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { return 0; } +#include +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) { + size_t len = strlen(s); + if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) { + PyErr_SetString(PyExc_OverflowError, "byte string is too long"); + return -1; + } + return (Py_ssize_t) len; +} static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { - return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return __Pyx_PyUnicode_FromStringAndSize(c_str, len); +} +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) { + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return PyByteArray_FromStringAndSize(c_str, len); } static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; @@ -38174,13 +40344,11 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { #endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(b); - const Py_ssize_t size = Py_SIZE(b); - if (likely(__Pyx_sst_abs(size) <= 1)) { - ival = likely(size) ? digits[0] : 0; - if (size == -1) ival = -ival; - return ival; + if (likely(__Pyx_PyLong_IsCompact(b))) { + return __Pyx_PyLong_CompactValue(b); } else { + const digit* digits = __Pyx_PyLong_Digits(b); + const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b); switch (size) { case 2: if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { @@ -38249,7 +40417,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { /* #### Code section: utility_code_pragmas_end ### */ -#if _MSV_VER +#ifdef _MSC_VER #pragma warning( pop ) #endif diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index 86f4cf9..70d9391 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.0b2 */ +/* Generated by Cython 3.0.10 */ /* BEGIN: Cython Metadata { @@ -54,10 +54,15 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) #error Cython requires Python 2.7+ or Python 3.3+. #else -#define CYTHON_ABI "3_0_0b2" +#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API +#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#else +#define __PYX_EXTRA_ABI_MODULE_NAME "" +#endif +#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x030000B2 +#define CYTHON_HEX_VERSION 0x03000AF0 #define CYTHON_FUTURE_DIVISION 1 #include #ifndef offsetof @@ -90,6 +95,7 @@ END: Cython Metadata */ #ifndef Py_HUGE_VAL #define Py_HUGE_VAL HUGE_VAL #endif +#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX #if defined(GRAALVM_PYTHON) /* For very preliminary testing purposes. Most variables are set the same as PyPy. The existence of this section does not imply that anything works or is even tested */ @@ -148,6 +154,8 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(PYPY_VERSION) #define CYTHON_COMPILING_IN_PYPY 1 #define CYTHON_COMPILING_IN_CPYTHON 0 @@ -156,8 +164,9 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_NOGIL 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #if PY_VERSION_HEX < 0x03050000 @@ -191,12 +200,16 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #if PY_VERSION_HEX < 0x03090000 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #define CYTHON_PEP489_MULTI_PHASE_INIT 1 + #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK @@ -204,7 +217,13 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(CYTHON_LIMITED_API) + #ifdef Py_LIMITED_API + #undef __PYX_LIMITED_VERSION_HEX + #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API + #endif #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 @@ -252,7 +271,7 @@ END: Cython Metadata */ #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 1 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 @@ -261,7 +280,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif -#elif defined(PY_NOGIL) + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 +#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 @@ -270,11 +291,17 @@ END: Cython Metadata */ #ifndef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 1 #endif + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #ifndef CYTHON_USE_ASYNC_SLOTS #define CYTHON_USE_ASYNC_SLOTS 1 #endif + #ifndef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #ifndef CYTHON_USE_UNICODE_INTERNALS @@ -282,8 +309,6 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif @@ -295,11 +320,22 @@ END: Cython Metadata */ #endif #undef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #ifndef CYTHON_METH_FASTCALL + #define CYTHON_METH_FASTCALL 1 + #endif #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 + #ifndef CYTHON_PEP487_INIT_SUBCLASS + #define CYTHON_PEP487_INIT_SUBCLASS 1 + #endif #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif + #ifndef CYTHON_USE_MODULE_STATE + #define CYTHON_USE_MODULE_STATE 0 + #endif #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif @@ -307,6 +343,12 @@ END: Cython Metadata */ #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 + #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC + #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 + #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 + #endif #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 @@ -356,7 +398,7 @@ END: Cython Metadata */ #define CYTHON_FAST_THREAD_STATE 1 #endif #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000) + #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) @@ -397,6 +439,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 1 + #endif #endif #if !defined(CYTHON_FAST_PYCCALL) #define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) @@ -474,6 +519,14 @@ END: Cython Metadata */ # define CYTHON_NCP_UNUSED CYTHON_UNUSED # endif #endif +#ifndef CYTHON_USE_CPP_STD_MOVE + #if defined(__cplusplus) && (\ + __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600)) + #define CYTHON_USE_CPP_STD_MOVE 1 + #else + #define CYTHON_USE_CPP_STD_MOVE 0 + #endif +#endif #define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) #ifdef _MSC_VER #ifndef _MSC_STDINT_H_ @@ -535,6 +588,18 @@ END: Cython Metadata */ #endif #endif #endif +#ifdef __cplusplus + template + struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; + #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL::value) +#else + #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0) +#endif +#if CYTHON_COMPILING_IN_PYPY == 1 + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000) +#else + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000) +#endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) #ifndef CYTHON_INLINE @@ -551,9 +616,6 @@ END: Cython Metadata */ #endif #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) - #define Py_OptimizeFlag 0 -#endif #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" #if PY_MAJOR_VERSION < 3 @@ -564,67 +626,91 @@ END: Cython Metadata */ #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" #define __Pyx_DefaultClassType PyType_Type -#if PY_VERSION_HEX >= 0x030B00A1 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, +#if CYTHON_COMPILING_IN_LIMITED_API + static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, PyObject *code, PyObject *c, PyObject* n, PyObject *v, PyObject *fv, PyObject *cell, PyObject* fn, PyObject *name, int fline, PyObject *lnos) { - PyObject *kwds=NULL, *argcount=NULL, *posonlyargcount=NULL, *kwonlyargcount=NULL; - PyObject *nlocals=NULL, *stacksize=NULL, *flags=NULL, *replace=NULL, *call_result=NULL, *empty=NULL; - const char *fn_cstr=NULL; - const char *name_cstr=NULL; - PyCodeObject* co=NULL; + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; PyObject *type, *value, *traceback; PyErr_Fetch(&type, &value, &traceback); - if (!(kwds=PyDict_New())) goto end; - if (!(argcount=PyLong_FromLong(a))) goto end; - if (PyDict_SetItemString(kwds, "co_argcount", argcount) != 0) goto end; - if (!(posonlyargcount=PyLong_FromLong(p))) goto end; - if (PyDict_SetItemString(kwds, "co_posonlyargcount", posonlyargcount) != 0) goto end; - if (!(kwonlyargcount=PyLong_FromLong(k))) goto end; - if (PyDict_SetItemString(kwds, "co_kwonlyargcount", kwonlyargcount) != 0) goto end; - if (!(nlocals=PyLong_FromLong(l))) goto end; - if (PyDict_SetItemString(kwds, "co_nlocals", nlocals) != 0) goto end; - if (!(stacksize=PyLong_FromLong(s))) goto end; - if (PyDict_SetItemString(kwds, "co_stacksize", stacksize) != 0) goto end; - if (!(flags=PyLong_FromLong(f))) goto end; - if (PyDict_SetItemString(kwds, "co_flags", flags) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_code", code) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_consts", c) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_names", n) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_varnames", v) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_freevars", fv) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_cellvars", cell) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_linetable", lnos) != 0) goto end; - if (!(fn_cstr=PyUnicode_AsUTF8AndSize(fn, NULL))) goto end; - if (!(name_cstr=PyUnicode_AsUTF8AndSize(name, NULL))) goto end; - if (!(co = PyCode_NewEmpty(fn_cstr, name_cstr, fline))) goto end; - if (!(replace = PyObject_GetAttrString((PyObject*)co, "replace"))) goto cleanup_code_too; - if (!(empty = PyTuple_New(0))) goto cleanup_code_too; // unfortunately __pyx_empty_tuple isn't available here - if (!(call_result = PyObject_Call(replace, empty, kwds))) goto cleanup_code_too; - Py_XDECREF((PyObject*)co); - co = (PyCodeObject*)call_result; - call_result = NULL; - if (0) { - cleanup_code_too: - Py_XDECREF((PyObject*)co); - co = NULL; + #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else { + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - end: - Py_XDECREF(kwds); - Py_XDECREF(argcount); - Py_XDECREF(posonlyargcount); - Py_XDECREF(kwonlyargcount); - Py_XDECREF(nlocals); - Py_XDECREF(stacksize); - Py_XDECREF(replace); - Py_XDECREF(call_result); - Py_XDECREF(empty); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); if (type) { PyErr_Restore(type, value, traceback); } - return co; + return result; } + #ifndef CO_OPTIMIZED + #define CO_OPTIMIZED 0x0001 + #endif + #ifndef CO_NEWLOCALS + #define CO_NEWLOCALS 0x0002 + #endif + #ifndef CO_VARARGS + #define CO_VARARGS 0x0004 + #endif + #ifndef CO_VARKEYWORDS + #define CO_VARKEYWORDS 0x0008 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x0200 + #endif + #ifndef CO_GENERATOR + #define CO_GENERATOR 0x0020 + #endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x0080 + #endif +#elif PY_VERSION_HEX >= 0x030B0000 + static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); + if (!empty_bytes) return NULL; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); + Py_DECREF(empty_bytes); + return result; + } #elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) @@ -659,6 +745,11 @@ END: Cython Metadata */ #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False) #endif #define __Pyx_NoneAsNull(obj) (__Pyx_Py_IsNone(obj) ? NULL : (obj)) +#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o) +#else + #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) +#endif #ifndef CO_COROUTINE #define CO_COROUTINE 0x80 #endif @@ -694,8 +785,13 @@ END: Cython Metadata */ typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames); #else - #define __Pyx_PyCFunctionFast _PyCFunctionFast - #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #if PY_VERSION_HEX >= 0x030d00A4 + # define __Pyx_PyCFunctionFast PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords + #else + # define __Pyx_PyCFunctionFast _PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #endif #endif #if CYTHON_METH_FASTCALL #define __Pyx_METH_FASTCALL METH_FASTCALL @@ -719,7 +815,32 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_VERSION_HEX < 0x030900B1 +#if PY_MAJOR_VERSION >= 0x030900B1 +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) +#else +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) +#endif +#define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func) +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth) +#elif !CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func) +#endif +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags) +static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { + return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; +} +#endif +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +#if CYTHON_COMPILING_IN_LIMITED_API + return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; +#else + return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +#endif +} +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) +#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -745,6 +866,8 @@ END: Cython Metadata */ #define __Pyx_PyThreadState_Current PyThreadState_Get() #elif !CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() #elif PY_VERSION_HEX >= 0x03060000 #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #elif PY_VERSION_HEX >= 0x03000000 @@ -820,7 +943,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { } #endif #endif -#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() @@ -832,7 +955,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && CYTHON_USE_UNICODE_INTERNALS +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); @@ -869,9 +992,14 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next #endif +#if CYTHON_COMPILING_IN_LIMITED_API + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) +#else + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) +#endif #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ - PyTypeObject *type = Py_TYPE(obj);\ + PyTypeObject *type = Py_TYPE((PyObject*)obj);\ assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\ PyObject_GC_Del(obj);\ Py_DECREF(type);\ @@ -884,7 +1012,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) @@ -903,7 +1031,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, (Py_UCS4) ch) #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) #else @@ -921,11 +1049,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY @@ -995,9 +1123,34 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif #if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) -#else + #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) +#else + static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { + PyObject *module = PyImport_AddModule(name); + Py_XINCREF(module); + return module; + } #endif #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject @@ -1077,11 +1230,20 @@ static CYTHON_INLINE float __PYX_NAN() { #endif #define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } + { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } -#ifndef __PYX_EXTERN_C +#ifdef CYTHON_EXTERN_C + #undef __PYX_EXTERN_C + #define __PYX_EXTERN_C CYTHON_EXTERN_C +#elif defined(__PYX_EXTERN_C) + #ifdef _MSC_VER + #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.") + #else + #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead. + #endif +#else #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" #else @@ -1096,6 +1258,7 @@ static CYTHON_INLINE float __PYX_NAN() { #include #include "vendor/_compat.h" #include "pystate.h" +#include #include "pythread.h" #ifdef _OPENMP #include @@ -1145,9 +1308,10 @@ static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { #else #define __Pyx_sst_abs(value) ((value<0) ? -value : value) #endif +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s); static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); -#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize @@ -1175,23 +1339,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) #define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const wchar_t *u) -{ - const wchar_t *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#else -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) -{ - const Py_UNICODE *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#endif -#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) -#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode +#define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode #define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) #define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) @@ -1216,6 +1364,45 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) #endif #if CYTHON_USE_PYLONG_INTERNALS + #if PY_VERSION_HEX >= 0x030C00A7 + #ifndef _PyLong_SIGN_MASK + #define _PyLong_SIGN_MASK 3 + #endif + #ifndef _PyLong_NON_SIZE_BITS + #define _PyLong_NON_SIZE_BITS 3 + #endif + #define __Pyx_PyLong_Sign(x) (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK) + #define __Pyx_PyLong_IsNeg(x) ((__Pyx_PyLong_Sign(x) & 2) != 0) + #define __Pyx_PyLong_IsNonNeg(x) (!__Pyx_PyLong_IsNeg(x)) + #define __Pyx_PyLong_IsZero(x) (__Pyx_PyLong_Sign(x) & 1) + #define __Pyx_PyLong_IsPos(x) (__Pyx_PyLong_Sign(x) == 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) (__Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_SignedDigitCount(x)\ + ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x)) + #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue) + #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x) + #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x) + #else + #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_CompactValue(x) ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0]) + #endif + typedef Py_ssize_t __Pyx_compact_pylong; + typedef size_t __Pyx_compact_upylong; + #else + #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0) + #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0) + #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0) + #define __Pyx_PyLong_IsPos(x) (Py_SIZE(x) > 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) __Pyx_sst_abs(Py_SIZE(x)) + #define __Pyx_PyLong_SignedDigitCount(x) Py_SIZE(x) + #define __Pyx_PyLong_IsCompact(x) (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1) + #define __Pyx_PyLong_CompactValue(x)\ + ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) + typedef sdigit __Pyx_compact_pylong; + typedef digit __Pyx_compact_upylong; + #endif #if PY_VERSION_HEX >= 0x030C00A5 #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->long_value.ob_digit) #else @@ -1223,6 +1410,7 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #endif #endif #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#include static int __Pyx_sys_getdefaultencoding_not_ascii; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1243,7 +1431,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { char ascii_chars[128]; int c; for (c = 0; c < 128; c++) { - ascii_chars[c] = c; + ascii_chars[c] = (char) c; } __Pyx_sys_getdefaultencoding_not_ascii = 1; ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); @@ -1273,6 +1461,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #else #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +#include static char* __PYX_DEFAULT_STRING_ENCODING; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1330,6 +1519,11 @@ static const char *__pyx_f[] = { "src/hunter/_predicates.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ +/* ForceInitThreads.proto */ +#ifndef __PYX_FORCE_INIT_THREADS + #define __PYX_FORCE_INIT_THREADS 0 +#endif + /* NoFastGil.proto */ #define __Pyx_PyGILState_Ensure PyGILState_Ensure #define __Pyx_PyGILState_Release PyGILState_Release @@ -1342,15 +1536,15 @@ static const char *__pyx_f[] = { /* #### Code section: type_declarations ### */ /*--- Type declarations ---*/ -struct __pyx_obj_6hunter_7_tracer_Tracer; -struct __pyx_obj_6hunter_11_predicates_Backlog; -struct __pyx_obj_6hunter_11_predicates_From; -struct __pyx_obj_6hunter_11_predicates_When; -struct __pyx_obj_6hunter_11_predicates_Not; -struct __pyx_obj_6hunter_11_predicates_Or; -struct __pyx_obj_6hunter_11_predicates_And; -struct __pyx_obj_6hunter_11_predicates_Query; struct __pyx_obj_6hunter_6_event_Event; +struct __pyx_obj_6hunter_11_predicates_Query; +struct __pyx_obj_6hunter_11_predicates_And; +struct __pyx_obj_6hunter_11_predicates_Or; +struct __pyx_obj_6hunter_11_predicates_Not; +struct __pyx_obj_6hunter_11_predicates_When; +struct __pyx_obj_6hunter_11_predicates_From; +struct __pyx_obj_6hunter_11_predicates_Backlog; +struct __pyx_obj_6hunter_7_tracer_Tracer; struct __pyx_opt_args_7cpython_11contextvars_get_value; struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default; @@ -1378,80 +1572,91 @@ struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default { PyObject *default_value; }; -/* "hunter/_tracer.pxd":35 +/* "_event.pxd":13 * * @cython.final - * cdef class Tracer: # <<<<<<<<<<<<<< + * cdef class Event: # <<<<<<<<<<<<<< * cdef: - * readonly object handler + * readonly FrameType frame */ -struct __pyx_obj_6hunter_7_tracer_Tracer { +struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD - PyObject *handler; - PyObject *previous; - PyObject *threading_support; - int profiling_mode; + struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; + PyFrameObject *frame; + PyObject *kind; + PyObject *arg; int depth; int calls; - PyObject *__weakref__; - PyObject *_threading_previous; - Py_tracefunc _previousfunc; + int threading_support; + int detached; + PyObject *builtin; + PyObject *_code; + PyObject *_filename; + PyObject *_fullsource; + PyObject *_function; + PyObject *_function_object; + PyObject *_globals; + PyObject *_lineno; + PyObject *_locals; + PyObject *_module; + PyObject *_source; + PyObject *_stdlib; + PyObject *_thread; + PyObject *_threadidn; + PyObject *_threadname; + PyObject *_instruction; }; -/* "_predicates.pxd":52 +/* "_predicates.pxd":8 * * @cython.final - * cdef class Backlog: # <<<<<<<<<<<<<< + * cdef class Query: # <<<<<<<<<<<<<< * cdef: - * readonly object condition + * readonly tuple query_contains */ -struct __pyx_obj_6hunter_11_predicates_Backlog { +struct __pyx_obj_6hunter_11_predicates_Query { PyObject_HEAD - PyObject *condition; - int size; - int stack; - int vars; - int strip; - PyObject *action; - PyObject *_try_repr; - PyObject *_filter; - PyObject *queue; + PyObject *query_contains; + PyObject *query_endswith; + PyObject *query_eq; + PyObject *query_gt; + PyObject *query_gte; + PyObject *query_in; + PyObject *query_lt; + PyObject *query_lte; + PyObject *query_regex; + PyObject *query_startswith; }; -/* "_predicates.pxd":43 +/* "_predicates.pxd":23 * * @cython.final - * cdef class From: # <<<<<<<<<<<<<< + * cdef class And: # <<<<<<<<<<<<<< * cdef: - * readonly object condition + * readonly tuple predicates */ -struct __pyx_obj_6hunter_11_predicates_From { +struct __pyx_obj_6hunter_11_predicates_And { PyObject_HEAD - PyObject *condition; - PyObject *predicate; - int watermark; - int origin_depth; - int origin_calls; + PyObject *predicates; }; -/* "_predicates.pxd":37 +/* "_predicates.pxd":29 * * @cython.final - * cdef class When: # <<<<<<<<<<<<<< + * cdef class Or: # <<<<<<<<<<<<<< * cdef: - * readonly object condition + * readonly tuple predicates */ -struct __pyx_obj_6hunter_11_predicates_When { +struct __pyx_obj_6hunter_11_predicates_Or { PyObject_HEAD - PyObject *condition; - PyObject *actions; + PyObject *predicates; }; -/* "_predicates.pxd":32 +/* "_predicates.pxd":35 * * @cython.final * cdef class Not: # <<<<<<<<<<<<<< @@ -1464,91 +1669,88 @@ struct __pyx_obj_6hunter_11_predicates_Not { }; -/* "_predicates.pxd":27 +/* "_predicates.pxd":41 * * @cython.final - * cdef class Or: # <<<<<<<<<<<<<< + * cdef class When: # <<<<<<<<<<<<<< * cdef: - * readonly tuple predicates + * readonly object condition */ -struct __pyx_obj_6hunter_11_predicates_Or { +struct __pyx_obj_6hunter_11_predicates_When { PyObject_HEAD - PyObject *predicates; + PyObject *condition; + PyObject *actions; }; -/* "_predicates.pxd":22 +/* "_predicates.pxd":48 * * @cython.final - * cdef class And: # <<<<<<<<<<<<<< + * cdef class From: # <<<<<<<<<<<<<< * cdef: - * readonly tuple predicates + * readonly object condition */ -struct __pyx_obj_6hunter_11_predicates_And { +struct __pyx_obj_6hunter_11_predicates_From { PyObject_HEAD - PyObject *predicates; + PyObject *condition; + PyObject *predicate; + int watermark; + int origin_depth; + int origin_calls; }; -/* "_predicates.pxd":8 +/* "_predicates.pxd":58 * * @cython.final - * cdef class Query: # <<<<<<<<<<<<<< + * cdef class Backlog: # <<<<<<<<<<<<<< * cdef: - * readonly tuple query_contains + * readonly object condition */ -struct __pyx_obj_6hunter_11_predicates_Query { +struct __pyx_obj_6hunter_11_predicates_Backlog { PyObject_HEAD - PyObject *query_contains; - PyObject *query_endswith; - PyObject *query_eq; - PyObject *query_gt; - PyObject *query_gte; - PyObject *query_in; - PyObject *query_lt; - PyObject *query_lte; - PyObject *query_regex; - PyObject *query_startswith; + PyObject *condition; + int size; + int stack; + int vars; + int strip; + PyObject *action; + PyObject *_try_repr; + PyObject *_filter; + PyObject *queue; }; -/* "_event.pxd":12 +/* "hunter/_tracer.pxd":36 * * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * cdef class Tracer: # <<<<<<<<<<<<<< * cdef: - * readonly FrameType frame + * readonly object handler */ -struct __pyx_obj_6hunter_6_event_Event { +struct __pyx_obj_6hunter_7_tracer_Tracer { PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; - PyFrameObject *frame; - PyObject *kind; - PyObject *arg; + PyObject *handler; + PyObject *previous; + PyObject *threading_support; + int profiling_mode; int depth; int calls; - int threading_support; - int detached; - PyObject *builtin; - PyObject *_code; - PyObject *_filename; - PyObject *_fullsource; - PyObject *_function; - PyObject *_function_object; - PyObject *_globals; - PyObject *_lineno; - PyObject *_locals; - PyObject *_module; - PyObject *_source; - PyObject *_stdlib; - PyObject *_thread; - PyObject *_threadidn; - PyObject *_threadname; - PyObject *_instruction; + PyObject *__weakref__; + PyObject *_threading_previous; + Py_tracefunc _previousfunc; }; +/* "_event.pxd":13 + * + * @cython.final + * cdef class Event: # <<<<<<<<<<<<<< + * cdef: + * readonly FrameType frame + */ + struct __pyx_vtabstruct_6hunter_6_event_Event { PyCodeObject *(*code_getter)(struct __pyx_obj_6hunter_6_event_Event *); PyObject *(*filename_getter)(struct __pyx_obj_6hunter_6_event_Event *); @@ -1659,11 +1861,18 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #if CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; -#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#if PY_VERSION_HEX >= 0x030C00A6 +#define __Pyx_PyErr_Occurred() (__pyx_tstate->current_exception != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL) +#else +#define __Pyx_PyErr_Occurred() (__pyx_tstate->curexc_type != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->curexc_type) +#endif #else #define __Pyx_PyThreadState_declare #define __Pyx_PyThreadState_assign -#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#define __Pyx_PyErr_Occurred() (PyErr_Occurred() != NULL) +#define __Pyx_PyErr_CurrentExceptionType() PyErr_Occurred() #endif /* PyErrFetchRestore.proto */ @@ -1675,7 +1884,7 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6 #define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) #else #define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) @@ -1752,12 +1961,18 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define __Pyx_TraceFrameInit(codeobj)\ if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj; #if PY_VERSION_HEX >= 0x030b00a2 + #if PY_VERSION_HEX >= 0x030C00b1 + #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ + ((!(check_tracing) || !(tstate)->tracing) &&\ + (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc))) + #else #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ (unlikely((tstate)->cframe->use_tracing) &&\ (!(check_tracing) || !(tstate)->tracing) &&\ (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc))) - #define __Pyx_EnterTracing(tstate) PyThreadState_EnterTracing(tstate) - #define __Pyx_LeaveTracing(tstate) PyThreadState_LeaveTracing(tstate) + #endif + #define __Pyx_EnterTracing(tstate) PyThreadState_EnterTracing(tstate) + #define __Pyx_LeaveTracing(tstate) PyThreadState_LeaveTracing(tstate) #elif PY_VERSION_HEX >= 0x030a00b1 #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ (unlikely((tstate)->cframe->use_tracing) &&\ @@ -1953,7 +2168,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg #endif /* GetTopmostException.proto */ -#if CYTHON_USE_EXC_INFO_STACK +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); #endif @@ -2038,7 +2253,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, #if !CYTHON_VECTORCALL #if PY_VERSION_HEX >= 0x03080000 #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -2091,7 +2306,20 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /* fastcall.proto */ -#define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) +#elif CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#else + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) +#endif +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) + #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) +#else + #define __Pyx_Arg_NewRef_VARARGS(arg) arg + #define __Pyx_Arg_XDECREF_VARARGS(arg) +#endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) @@ -2101,15 +2329,24 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); + #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) + #endif + #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs + to have the same reference counting */ + #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS + #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) + #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS #define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) #else @@ -2174,6 +2411,25 @@ static int __Pyx_CheckKeywordStrings(PyObject *kw, const char* function_name, in /* RaiseException.proto */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); +/* TypeImport.proto */ +#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 +#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L +#include +#endif +#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) +#else +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) +#endif +enum __Pyx_ImportType_CheckSize_3_0_10 { + __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, + __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 +}; +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); +#endif + /* IncludeStructmemberH.proto */ #include @@ -2211,25 +2467,6 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj static int __Pyx_setup_reduce(PyObject* type_obj); #endif -/* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto -#define __PYX_HAVE_RT_ImportType_proto -#if __STDC_VERSION__ >= 201112L -#include -#endif -#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT(s) alignof(s) -#else -#define __PYX_GET_STRUCT_ALIGNMENT(s) sizeof(void*) -#endif -enum __Pyx_ImportType_CheckSize { - __Pyx_ImportType_CheckSize_Error = 0, - __Pyx_ImportType_CheckSize_Warn = 1, - __Pyx_ImportType_CheckSize_Ignore = 2 -}; -static PyTypeObject *__Pyx_ImportType(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size); -#endif - /* GetVTable.proto */ static void* __Pyx_GetVtable(PyTypeObject *type); @@ -2253,7 +2490,22 @@ static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec #endif /* PyMethodNew.proto */ -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + typesModule = PyImport_ImportModule("types"); + if (!typesModule) return NULL; + methodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + if (!methodType) return NULL; + result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); + Py_DECREF(methodType); + return result; +} +#elif PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { CYTHON_UNUSED_VAR(typ); if (!self) @@ -2277,7 +2529,7 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CYFUNCTION_COROUTINE 0x08 #define __Pyx_CyFunction_GetClosure(f)\ (((__pyx_CyFunctionObject *) (f))->func_closure) -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_GetClassObj(f)\ (((__pyx_CyFunctionObject *) (f))->func_classobj) #else @@ -2291,7 +2543,10 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CyFunction_SetDefaultsGetter(f, g)\ ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g) typedef struct { -#if PY_VERSION_HEX < 0x030900B1 +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject_HEAD + PyObject *func; +#elif PY_VERSION_HEX < 0x030900B1 PyCFunctionObject func; #else PyCMethodObject func; @@ -2299,7 +2554,7 @@ typedef struct { #if CYTHON_BACKPORT_VECTORCALL __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2309,12 +2564,12 @@ typedef struct { PyObject *func_globals; PyObject *func_code; PyObject *func_closure; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif void *defaults; int defaults_pyobjects; - size_t defaults_size; // used by FusedFunction for copying defaults + size_t defaults_size; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2322,9 +2577,13 @@ typedef struct { PyObject *func_annotations; PyObject *func_is_coroutine; } __pyx_CyFunctionObject; +#undef __Pyx_CyOrPyCFunction_Check #define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_IsCyOrPyCFunction(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) #define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#undef __Pyx_IsSameCFunction +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, @@ -2432,14 +2691,15 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) #define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) #endif -#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_Occurred(), err1, err2) +#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) /* CheckBinaryVersion.proto */ -static int __Pyx_check_binary_version(void); +static unsigned long __Pyx_get_runtime_version(void); +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionImport.proto */ -static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig); +static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig); /* InitStrings.proto */ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); @@ -2496,6 +2756,8 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp /* Module declarations from "cpython.string" */ +/* Module declarations from "libc.stddef" */ + /* Module declarations from "cpython.unicode" */ /* Module declarations from "cpython.pyport" */ @@ -2771,6 +3033,8 @@ typedef struct { #endif #if CYTHON_USE_MODULE_STATE #endif + #if CYTHON_USE_MODULE_STATE + #endif PyTypeObject *__pyx_ptype_6hunter_6_event_Event; #if CYTHON_USE_MODULE_STATE #endif @@ -2784,9 +3048,9 @@ typedef struct { #if CYTHON_USE_MODULE_STATE PyObject *__pyx_type_6hunter_7_tracer_Tracer; #endif - PyTypeObject *__pyx_ptype_6hunter_7_tracer_Tracer; - PyTypeObject *__pyx_ptype_6hunter_7_tracer_CodeType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_FrameType; + PyTypeObject *__pyx_ptype_6hunter_7_tracer_CodeType; + PyTypeObject *__pyx_ptype_6hunter_7_tracer_Tracer; PyObject *__pyx_kp_s_; PyObject *__pyx_kp_s_Disabling_tracer_because_handler; PyObject *__pyx_n_s_Tracer; @@ -2935,10 +3199,10 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_When); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_From); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_CLEAR(clear_module_state->__pyx_type_6hunter_7_tracer_Tracer); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_CLEAR(clear_module_state->__pyx_kp_s_); Py_CLEAR(clear_module_state->__pyx_kp_s_Disabling_tracer_because_handler); Py_CLEAR(clear_module_state->__pyx_n_s_Tracer); @@ -3065,10 +3329,10 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_When); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_From); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_VISIT(traverse_module_state->__pyx_type_6hunter_7_tracer_Tracer); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_VISIT(traverse_module_state->__pyx_kp_s_); Py_VISIT(traverse_module_state->__pyx_kp_s_Disabling_tracer_because_handler); Py_VISIT(traverse_module_state->__pyx_n_s_Tracer); @@ -3285,6 +3549,8 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #endif #if CYTHON_USE_MODULE_STATE #endif +#if CYTHON_USE_MODULE_STATE +#endif #define __pyx_ptype_6hunter_6_event_Event __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event #if CYTHON_USE_MODULE_STATE #endif @@ -3298,9 +3564,9 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #if CYTHON_USE_MODULE_STATE #define __pyx_type_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_type_6hunter_7_tracer_Tracer #endif -#define __pyx_ptype_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer -#define __pyx_ptype_6hunter_7_tracer_CodeType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType #define __pyx_ptype_6hunter_7_tracer_FrameType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_FrameType +#define __pyx_ptype_6hunter_7_tracer_CodeType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType +#define __pyx_ptype_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer #define __pyx_kp_s_ __pyx_mstate_global->__pyx_kp_s_ #define __pyx_kp_s_Disabling_tracer_because_handler __pyx_mstate_global->__pyx_kp_s_Disabling_tracer_because_handler #define __pyx_n_s_Tracer __pyx_mstate_global->__pyx_n_s_Tracer @@ -3401,19 +3667,17 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* "cpython/complex.pxd":19 * * @property - * cdef inline double real(self): # <<<<<<<<<<<<<< + * cdef inline double real(self) noexcept: # <<<<<<<<<<<<<< * return self.cval.real * */ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComplexObject *__pyx_v_self) { double __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("real", 0); /* "cpython/complex.pxd":20 * @property - * cdef inline double real(self): + * cdef inline double real(self) noexcept: * return self.cval.real # <<<<<<<<<<<<<< * * @property @@ -3424,33 +3688,30 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComp /* "cpython/complex.pxd":19 * * @property - * cdef inline double real(self): # <<<<<<<<<<<<<< + * cdef inline double real(self) noexcept: # <<<<<<<<<<<<<< * return self.cval.real * */ /* function exit code */ __pyx_L0:; - __Pyx_RefNannyFinishContext(); return __pyx_r; } /* "cpython/complex.pxd":23 * * @property - * cdef inline double imag(self): # <<<<<<<<<<<<<< + * cdef inline double imag(self) noexcept: # <<<<<<<<<<<<<< * return self.cval.imag * */ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComplexObject *__pyx_v_self) { double __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("imag", 0); /* "cpython/complex.pxd":24 * @property - * cdef inline double imag(self): + * cdef inline double imag(self) noexcept: * return self.cval.imag # <<<<<<<<<<<<<< * * # PyTypeObject PyComplex_Type @@ -3461,14 +3722,13 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp /* "cpython/complex.pxd":23 * * @property - * cdef inline double imag(self): # <<<<<<<<<<<<<< + * cdef inline double imag(self) noexcept: # <<<<<<<<<<<<<< * return self.cval.imag * */ /* function exit code */ __pyx_L0:; - __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -3492,7 +3752,7 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value(PyObject int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_value", 0); + __Pyx_RefNannySetupContext("get_value", 1); if (__pyx_optional_args) { if (__pyx_optional_args->__pyx_n > 0) { __pyx_v_default_value = __pyx_optional_args->default_value; @@ -3622,7 +3882,7 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_defau int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_value_no_default", 0); + __Pyx_RefNannySetupContext("get_value_no_default", 1); if (__pyx_optional_args) { if (__pyx_optional_args->__pyx_n > 0) { __pyx_v_default_value = __pyx_optional_args->default_value; @@ -3736,7 +3996,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("trace_func", 0); + __Pyx_RefNannySetupContext("trace_func", 1); __Pyx_TraceCall("trace_func", __pyx_f[0], 25, 0, __PYX_ERR(0, 25, __pyx_L1_error)); /* "hunter/_tracer.pyx":26 @@ -3907,7 +4167,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_TraceLine(42,0,__PYX_ERR(0, 42, __pyx_L1_error)) __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if ((__pyx_v_arg == NULL)) { + __pyx_t_2 = (__pyx_v_arg == NULL); + if (__pyx_t_2) { __Pyx_INCREF(Py_None); __pyx_t_4 = Py_None; } else { @@ -3918,14 +4179,14 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF((PyObject *)__pyx_v_frame); __Pyx_GIVEREF((PyObject *)__pyx_v_frame); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_v_frame)); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_v_frame))) __PYX_ERR(0, 42, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error); __Pyx_INCREF((PyObject *)__pyx_v_self); __Pyx_GIVEREF((PyObject *)__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_self)); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_self))) __PYX_ERR(0, 42, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error) @@ -3992,9 +4253,9 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h if (__pyx_t_9) { __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_1) < 0) __PYX_ERR(0, 46, __pyx_L11_except_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_4); + __Pyx_XGOTREF(__pyx_t_5); + __Pyx_XGOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __pyx_v_exc = __pyx_t_5; /*try:*/ { @@ -4056,13 +4317,13 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_GOTREF(__pyx_t_11); __Pyx_INCREF(__pyx_v_handler); __Pyx_GIVEREF(__pyx_v_handler); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_handler); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_handler)) __PYX_ERR(0, 49, __pyx_L20_error); __Pyx_INCREF(__pyx_v_exc); __Pyx_GIVEREF(__pyx_v_exc); - PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_exc); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_exc)) __PYX_ERR(0, 49, __pyx_L20_error); __Pyx_INCREF((PyObject *)__pyx_v_event); __Pyx_GIVEREF((PyObject *)__pyx_v_event); - PyTuple_SET_ITEM(__pyx_t_11, 2, ((PyObject *)__pyx_v_event)); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 2, ((PyObject *)__pyx_v_event))) __PYX_ERR(0, 49, __pyx_L20_error); /* "hunter/_tracer.pyx":48 * except Exception as exc: @@ -4077,7 +4338,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_t_11 = NULL; __pyx_t_9 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_10))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_10); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); @@ -4087,6 +4349,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __pyx_t_9 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_t_12}; __pyx_t_13 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_9, 1+__pyx_t_9); @@ -4110,7 +4373,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_GOTREF(__pyx_t_10); __pyx_t_12 = NULL; __pyx_t_9 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_10))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_10))) { __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_10); if (likely(__pyx_t_12)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); @@ -4120,8 +4384,9 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __pyx_t_9 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_12, }; + PyObject *__pyx_callargs[2] = {__pyx_t_12, NULL}; __pyx_t_13 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_9, 0+__pyx_t_9); __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 50, __pyx_L20_error) @@ -4198,7 +4463,6 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h } } goto __pyx_L11_except_error; - __pyx_L11_except_error:; /* "hunter/_tracer.pyx":44 * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) @@ -4207,6 +4471,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * fast_call(handler, event) * except Exception as exc: */ + __pyx_L11_except_error:; __Pyx_XGIVEREF(__pyx_t_6); __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_8); @@ -4304,19 +4569,25 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_threading_support = 0; PyObject *__pyx_v_profiling_mode = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[2] = {0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_threading_support,&__pyx_n_s_profiling_mode,0}; - PyObject* values[2] = {0,0}; - values[0] = ((PyObject *)Py_None); - values[1] = ((PyObject *)Py_False); + values[0] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); + values[1] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_False)); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4332,14 +4603,14 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, case 0: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_threading_support); - if (value) { values[0] = value; kw_args--; } + if (value) { values[0] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_profiling_mode); - if (value) { values[1] = value; kw_args--; } + if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) } } @@ -4360,10 +4631,18 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, __pyx_v_threading_support = values[0]; __pyx_v_profiling_mode = values[1]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 59, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._tracer.Tracer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -4371,6 +4650,12 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_threading_support, __pyx_v_profiling_mode); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4383,7 +4668,7 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 0); + __Pyx_RefNannySetupContext("__cinit__", 1); __Pyx_TraceCall("__cinit__", __pyx_f[0], 59, 0, __PYX_ERR(0, 59, __pyx_L1_error)); /* "hunter/_tracer.pyx":60 @@ -4514,9 +4799,10 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ /* Python wrapper */ static void __pyx_pw_6hunter_7_tracer_6Tracer_3__dealloc__(PyObject *__pyx_v_self); /*proto*/ static void __pyx_pw_6hunter_7_tracer_6Tracer_3__dealloc__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -4535,7 +4821,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__dealloc__", 0); + __Pyx_RefNannySetupContext("__dealloc__", 1); __Pyx_TraceCall("__dealloc__", __pyx_f[0], 69, 0, __PYX_ERR(0, 69, __pyx_L1_error)); /* "hunter/_tracer.pyx":70 @@ -4571,7 +4857,8 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; __pyx_t_5 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -4581,8 +4868,9 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun __pyx_t_5 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_4, }; + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) @@ -4631,10 +4919,11 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5__repr__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -4657,7 +4946,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_RefNannySetupContext("__repr__", 1); __Pyx_TraceCall("__repr__", __pyx_f[0], 74, 0, __PYX_ERR(0, 74, __pyx_L1_error)); /* "hunter/_tracer.pyx":75 @@ -4770,18 +5059,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __pyx_t_8 = PyTuple_New(6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->threading_support); __Pyx_GIVEREF(__pyx_v_self->threading_support); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->threading_support); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->threading_support)) __PYX_ERR(0, 76, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_4)) __PYX_ERR(0, 76, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_t_6); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_t_6)) __PYX_ERR(0, 76, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_8, 5, __pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 5, __pyx_t_5)) __PYX_ERR(0, 76, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_4 = 0; @@ -4843,17 +5132,23 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s PyObject *__pyx_v_frame = 0; PyObject *__pyx_v_kind = 0; PyObject *__pyx_v_arg = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_frame,&__pyx_n_s_kind,&__pyx_n_s_arg,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4869,19 +5164,28 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_frame)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_frame)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_kind)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_kind)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 1); __PYX_ERR(0, 84, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_arg)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_arg)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 2); __PYX_ERR(0, 84, __pyx_L3_error) @@ -4902,10 +5206,18 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s __pyx_v_kind = ((PyObject*)values[1]); __pyx_v_arg = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 84, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._tracer.Tracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -4918,6 +5230,12 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s __pyx_L1_error:; __pyx_r = NULL; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4933,7 +5251,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_RefNannySetupContext("__call__", 1); __Pyx_TraceCall("__call__", __pyx_f[0], 84, 0, __PYX_ERR(0, 84, __pyx_L1_error)); /* "hunter/_tracer.pyx":85 @@ -5044,18 +5362,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v_predicate = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("trace (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_predicate,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -5067,7 +5393,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 90, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -5082,10 +5411,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v_predicate = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 90, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._tracer.Tracer.trace", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -5093,6 +5430,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_8trace(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_predicate); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5113,7 +5456,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__2) - __Pyx_RefNannySetupContext("trace", 0); + __Pyx_RefNannySetupContext("trace", 1); __Pyx_TraceCall("trace", __pyx_f[0], 90, 0, __PYX_ERR(0, 90, __pyx_L1_error)); /* "hunter/_tracer.pyx":91 @@ -5203,7 +5546,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -5213,6 +5557,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_3, ((PyObject *)__pyx_v_self)}; __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -5381,7 +5726,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -5391,6 +5737,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_v_self)}; __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -5557,12 +5904,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("stop (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("stop", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "stop", 0))) return NULL; @@ -5587,7 +5942,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__3) - __Pyx_RefNannySetupContext("stop", 0); + __Pyx_RefNannySetupContext("stop", 1); __Pyx_TraceCall("stop", __pyx_f[0], 118, 0, __PYX_ERR(0, 118, __pyx_L1_error)); /* "hunter/_tracer.pyx":119 @@ -5718,7 +6073,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -5728,6 +6084,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v_self->_threading_previous}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -5879,7 +6236,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -5889,6 +6247,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_self->_threading_previous}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -5982,12 +6341,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__enter__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__enter__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__enter__", 0))) return NULL; @@ -6006,7 +6373,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__4) - __Pyx_RefNannySetupContext("__enter__", 0); + __Pyx_RefNannySetupContext("__enter__", 1); __Pyx_TraceCall("__enter__", __pyx_f[0], 141, 0, __PYX_ERR(0, 141, __pyx_L1_error)); /* "hunter/_tracer.pyx":142 @@ -6068,18 +6435,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds CYTHON_UNUSED PyObject *__pyx_v_exc_val = 0; CYTHON_UNUSED PyObject *__pyx_v_exc_tb = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__exit__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_exc_type,&__pyx_n_s_exc_val,&__pyx_n_s_exc_tb,0}; - PyObject* values[3] = {0,0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -6095,19 +6470,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_type)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_type)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 144, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_val)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_val)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 144, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, 1); __PYX_ERR(0, 144, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_tb)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_tb)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 144, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, 2); __PYX_ERR(0, 144, __pyx_L3_error) @@ -6128,10 +6512,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_v_exc_val = values[1]; __pyx_v_exc_tb = values[2]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 144, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._tracer.Tracer.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -6139,6 +6531,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_exc_type, __pyx_v_exc_val, __pyx_v_exc_tb); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6155,7 +6553,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__5) - __Pyx_RefNannySetupContext("__exit__", 0); + __Pyx_RefNannySetupContext("__exit__", 1); __Pyx_TraceCall("__exit__", __pyx_f[0], 144, 0, __PYX_ERR(0, 144, __pyx_L1_error)); /* "hunter/_tracer.pyx":145 @@ -6168,7 +6566,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; __pyx_t_4 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) { + #if CYTHON_UNPACK_METHODS + if (likely(PyMethod_Check(__pyx_t_2))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); @@ -6178,8 +6577,9 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 __pyx_t_4 = 1; } } + #endif { - PyObject *__pyx_callargs[1] = {__pyx_t_3, }; + PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 0+__pyx_t_4); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __pyx_L1_error) @@ -6211,7 +6611,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_tracer.pxd":37 +/* "hunter/_tracer.pxd":38 * cdef class Tracer: * cdef: * readonly object handler # <<<<<<<<<<<<<< @@ -6222,10 +6622,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7handler_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7handler_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6240,8 +6641,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 37, 0, __PYX_ERR(3, 37, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 38, 0, __PYX_ERR(3, 38, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->handler); __pyx_r = __pyx_v_self->handler; @@ -6258,7 +6659,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx return __pyx_r; } -/* "hunter/_tracer.pxd":38 +/* "hunter/_tracer.pxd":39 * cdef: * readonly object handler * readonly object previous # <<<<<<<<<<<<<< @@ -6269,10 +6670,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_8previous_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_8previous_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6287,8 +6689,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 38, 0, __PYX_ERR(3, 38, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 39, 0, __PYX_ERR(3, 39, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->previous); __pyx_r = __pyx_v_self->previous; @@ -6305,7 +6707,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py return __pyx_r; } -/* "hunter/_tracer.pxd":39 +/* "hunter/_tracer.pxd":40 * readonly object handler * readonly object previous * readonly object threading_support # <<<<<<<<<<<<<< @@ -6316,10 +6718,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_17threading_support_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_17threading_support_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6334,8 +6737,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 39, 0, __PYX_ERR(3, 39, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 40, 0, __PYX_ERR(3, 40, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->threading_support); __pyx_r = __pyx_v_self->threading_support; @@ -6352,7 +6755,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s return __pyx_r; } -/* "hunter/_tracer.pxd":40 +/* "hunter/_tracer.pxd":41 * readonly object previous * readonly object threading_support * readonly bint profiling_mode # <<<<<<<<<<<<<< @@ -6363,10 +6766,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_14profiling_mode_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_14profiling_mode_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6382,10 +6786,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 40, 0, __PYX_ERR(3, 40, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 41, 0, __PYX_ERR(3, 41, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 40, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -6403,7 +6807,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru return __pyx_r; } -/* "hunter/_tracer.pxd":41 +/* "hunter/_tracer.pxd":42 * readonly object threading_support * readonly bint profiling_mode * readonly int depth # <<<<<<<<<<<<<< @@ -6414,10 +6818,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5depth_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5depth_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6433,10 +6838,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 41, 0, __PYX_ERR(3, 41, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 42, 0, __PYX_ERR(3, 42, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 41, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -6454,7 +6859,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_tracer.pxd":42 +/* "hunter/_tracer.pxd":43 * readonly bint profiling_mode * readonly int depth * readonly int calls # <<<<<<<<<<<<<< @@ -6465,10 +6870,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5calls_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5calls_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6484,10 +6890,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 42, 0, __PYX_ERR(3, 42, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 43, 0, __PYX_ERR(3, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 42, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 43, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -6505,7 +6911,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_tracer.pxd":46 +/* "hunter/_tracer.pxd":47 * object __weakref__ * * readonly object _threading_previous # <<<<<<<<<<<<<< @@ -6515,10 +6921,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_19_threading_previous_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_19_threading_previous_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6533,8 +6940,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceCall("__get__", __pyx_f[3], 46, 0, __PYX_ERR(3, 46, __pyx_L1_error)); + __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_TraceCall("__get__", __pyx_f[3], 47, 0, __PYX_ERR(3, 47, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threading_previous); __pyx_r = __pyx_v_self->_threading_previous; @@ -6574,12 +6981,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -6598,7 +7013,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_16__reduce_cython__(CYTHON_UN const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__6) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); __Pyx_TraceCall("__reduce_cython__", __pyx_f[1], 1, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":2 @@ -6652,18 +7067,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -6675,7 +7098,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 3, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -6690,10 +7116,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter._tracer.Tracer.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -6701,6 +7135,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_18__setstate_cython__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6713,7 +7153,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_18__setstate_cython__(CYTHON_ const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(__pyx_codeobj__7) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); __Pyx_TraceCall("__setstate_cython__", __pyx_f[1], 3, 0, __PYX_ERR(1, 3, __pyx_L1_error)); /* "(tree fragment)":4 @@ -6780,7 +7220,14 @@ static void __pyx_tp_dealloc_6hunter_7_tracer_Tracer(PyObject *o) { Py_CLEAR(p->previous); Py_CLEAR(p->threading_support); Py_CLEAR(p->_threading_previous); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif } static int __pyx_tp_traverse_6hunter_7_tracer_Tracer(PyObject *o, visitproc v, void *a) { @@ -6963,13 +7410,13 @@ static PyTypeObject __pyx_type_6hunter_7_tracer_Tracer = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; @@ -7227,6 +7674,10 @@ static int __Pyx_modinit_type_init_code(void) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 19, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyFrameObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(3, 19, __pyx_L1_error) + __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyCodeObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS __pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 58, __pyx_L1_error) if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) @@ -7251,14 +7702,6 @@ static int __Pyx_modinit_type_init_code(void) { #if !CYTHON_COMPILING_IN_LIMITED_API if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) #endif - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 22, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT(PyCodeObject), - __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) - __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT(PyFrameObject), - __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(3, 19, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7278,59 +7721,38 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", sizeof(PyBoolObject), __PYX_GET_STRUCT_ALIGNMENT(PyBoolObject), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error) + __pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", sizeof(PyBoolObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyBoolObject),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT(PyComplexObject), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 15, __pyx_L1_error) + __pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyComplexObject),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 12, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType(__pyx_t_1, "hunter._event", "Event", sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_6_event_Event), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(7, 12, __pyx_L1_error) - __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(7, 12, __pyx_L1_error) + __pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._event", "Event", sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6_event_Event),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(7, 13, __pyx_L1_error) + __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(7, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "Query", sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_Query), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(8, 8, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "And", sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_And), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(8, 22, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "Or", sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_Or), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(8, 27, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "Not", sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_Not), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(8, 32, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "When", sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_When), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(8, 37, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "From", sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_From), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(8, 43, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType(__pyx_t_1, "hunter._predicates", "Backlog", sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT(struct __pyx_obj_6hunter_11_predicates_Backlog), - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(8, 52, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Query", sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Query),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(8, 8, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "And", sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_And),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(8, 23, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Or", sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Or),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(8, 29, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Not", sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Not),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(8, 35, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "When", sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_When),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(8, 41, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "From", sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_From),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(8, 48, __pyx_L1_error) + __pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Backlog", sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Backlog),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(8, 58, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7358,7 +7780,7 @@ static int __Pyx_modinit_function_import_code(void) { /*--- Function import code ---*/ __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_ImportFunction(__pyx_t_1, "fast_call", (void (**)(void))&__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_0_10(__pyx_t_1, "fast_call", (void (**)(void))&__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7557,7 +7979,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__tracer(PyObject *__pyx_pyinit_mod __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) { int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); - __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to _tracer pseudovariable */ + __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "_tracer" pseudovariable */ if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) pystate_addmodule_run = 1; } @@ -7569,10 +7991,8 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__tracer(PyObject *__pyx_pyinit_mod CYTHON_UNUSED_VAR(__pyx_t_1); __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) Py_INCREF(__pyx_d); - __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_b); - __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_cython_runtime); + __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); @@ -7584,7 +8004,7 @@ if (!__Pyx_RefNanny) { } #endif __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit__tracer(void)", 0); - if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif @@ -7740,7 +8160,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(90,0,__PYX_ERR(0, 90, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer_trace, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__2)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer->tp_dict, __pyx_n_s_trace, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_trace, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); @@ -7754,7 +8174,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(118,0,__PYX_ERR(0, 118, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer_stop, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer->tp_dict, __pyx_n_s_stop, __pyx_t_2) < 0) __PYX_ERR(0, 118, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_stop, __pyx_t_2) < 0) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); @@ -7768,7 +8188,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(141,0,__PYX_ERR(0, 141, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer___enter, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__4)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer->tp_dict, __pyx_n_s_enter, __pyx_t_2) < 0) __PYX_ERR(0, 141, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_enter, __pyx_t_2) < 0) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); @@ -7781,7 +8201,7 @@ if (!__Pyx_RefNanny) { __Pyx_TraceLine(144,0,__PYX_ERR(0, 144, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer___exit, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__5)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer->tp_dict, __pyx_n_s_exit, __pyx_t_2) < 0) __PYX_ERR(0, 144, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_exit, __pyx_t_2) < 0) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); @@ -7857,7 +8277,7 @@ if (!__Pyx_RefNanny) { /* #### Code section: cleanup_module ### */ /* #### Code section: main_method ### */ /* #### Code section: utility_code_pragmas ### */ -#if _MSC_VER +#ifdef _MSC_VER #pragma warning( push ) /* Warning 4127: conditional expression is constant * Cython uses constant conditional expressions to allow in inline functions to be optimized at @@ -7904,18 +8324,51 @@ static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple return 0; } static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) { - PyObject *exc_type = tstate->curexc_type; + int result; + PyObject *exc_type; +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *current_exception = tstate->current_exception; + if (unlikely(!current_exception)) return 0; + exc_type = (PyObject*) Py_TYPE(current_exception); + if (exc_type == err) return 1; +#else + exc_type = tstate->curexc_type; if (exc_type == err) return 1; if (unlikely(!exc_type)) return 0; - if (unlikely(PyTuple_Check(err))) - return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); +#endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(exc_type); + #endif + if (unlikely(PyTuple_Check(err))) { + result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + } else { + result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(exc_type); + #endif + return result; } #endif /* PyErrFetchRestore */ #if CYTHON_FAST_THREAD_STATE static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *tmp_value; + assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); + if (value) { + #if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) + #endif + PyException_SetTraceback(value, tb); + } + tmp_value = tstate->current_exception; + tstate->current_exception = value; + Py_XDECREF(tmp_value); + Py_XDECREF(type); + Py_XDECREF(tb); +#else PyObject *tmp_type, *tmp_value, *tmp_tb; tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; @@ -7926,14 +8379,34 @@ static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObjec Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#endif } static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject* exc_value; + exc_value = tstate->current_exception; + tstate->current_exception = 0; + *value = exc_value; + *type = NULL; + *tb = NULL; + if (exc_value) { + *type = (PyObject*) Py_TYPE(exc_value); + Py_INCREF(*type); + #if CYTHON_COMPILING_IN_CPYTHON + *tb = ((PyBaseExceptionObject*) exc_value)->traceback; + Py_XINCREF(*tb); + #else + *tb = PyException_GetTraceback(exc_value); + #endif + } +#else *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; +#endif } #endif @@ -7952,14 +8425,20 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject #endif /* PyObjectGetAttrStrNoError */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) __Pyx_PyErr_Clear(); } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + (void) PyObject_GetOptionalAttr(obj, attr_name, &result); + return result; +#else #if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { @@ -7971,6 +8450,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P __Pyx_PyObject_GetAttrStr_ClearAttributeError(); } return result; +#endif } /* GetBuiltinName */ @@ -8098,9 +8578,14 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg ternaryfunc call = Py_TYPE(func)->tp_call; if (unlikely(!call)) return PyObject_Call(func, arg, kw); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; - result = (*call)(func, arg, kw); + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif + result = (*call)(func, arg, kw); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { PyErr_SetString( @@ -8112,7 +8597,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg #endif /* GetTopmostException */ -#if CYTHON_USE_EXC_INFO_STACK +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate) { @@ -8200,20 +8685,32 @@ static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) #endif { - PyObject *local_type, *local_value, *local_tb; + PyObject *local_type = NULL, *local_value, *local_tb = NULL; #if CYTHON_FAST_THREAD_STATE PyObject *tmp_type, *tmp_value, *tmp_tb; + #if PY_VERSION_HEX >= 0x030C00A6 + local_value = tstate->current_exception; + tstate->current_exception = 0; + if (likely(local_value)) { + local_type = (PyObject*) Py_TYPE(local_value); + Py_INCREF(local_type); + local_tb = PyException_GetTraceback(local_value); + } + #else local_type = tstate->curexc_type; local_value = tstate->curexc_value; local_tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; + #endif #else PyErr_Fetch(&local_type, &local_value, &local_tb); #endif PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE +#if CYTHON_FAST_THREAD_STATE && PY_VERSION_HEX >= 0x030C00A6 + if (unlikely(tstate->current_exception)) +#elif CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) @@ -8311,7 +8808,7 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) { PyObject *result; #if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { @@ -8390,9 +8887,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, PyObject *result; assert(kwargs == NULL || PyDict_Check(kwargs)); nk = kwargs ? PyDict_Size(kwargs) : 0; + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { return NULL; } + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; + } + #endif if ( #if PY_MAJOR_VERSION >= 3 co->co_kwonlyargcount == 0 && @@ -8467,10 +8970,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { PyObject *self, *result; PyCFunction cfunc; - cfunc = PyCFunction_GET_FUNCTION(func); - self = PyCFunction_GET_SELF(func); + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = cfunc(self, arg); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -8483,42 +8991,33 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject #endif /* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { PyObject *argstuple; - PyObject *result; + PyObject *result = 0; size_t i; argstuple = PyTuple_New((Py_ssize_t)nargs); if (unlikely(!argstuple)) return NULL; for (i = 0; i < nargs; i++) { Py_INCREF(args[i]); - PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; } result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: Py_DECREF(argstuple); return result; } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); #if CYTHON_COMPILING_IN_CPYTHON if (nargs == 0 && kwargs == NULL) { -#if defined(__Pyx_CyFunction_USED) && defined(NDEBUG) - if (__Pyx_IsCyOrPyCFunction(func)) -#else - if (PyCFunction_Check(func)) -#endif - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) { - return __Pyx_PyObject_CallMethO(func, NULL); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); } else if (nargs == 1 && kwargs == NULL) { - if (PyCFunction_Check(func)) - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { - return __Pyx_PyObject_CallMethO(func, args[0]); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); } #endif #if PY_VERSION_HEX < 0x030800B1 @@ -8542,21 +9041,31 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj } #endif #endif - #if CYTHON_VECTORCALL - vectorcallfunc f = _PyVectorcall_Function(func); - if (f) { - return f(func, args, (size_t)nargs, kwargs); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, kwargs); + if (kwargs == NULL) { + #if CYTHON_VECTORCALL + #if PY_VERSION_HEX < 0x03090000 + vectorcallfunc f = _PyVectorcall_Function(func); + #else + vectorcallfunc f = PyVectorcall_Function(func); + #endif + if (f) { + return f(func, args, (size_t)nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, (size_t)nargs, NULL); + } + #endif } - #endif if (nargs == 0) { return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif } /* SwapException */ @@ -8575,7 +9084,12 @@ static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject * } else { tmp_type = (PyObject*) Py_TYPE(tmp_value); Py_INCREF(tmp_type); + #if CYTHON_COMPILING_IN_CPYTHON + tmp_tb = ((PyBaseExceptionObject*) tmp_value)->traceback; + Py_XINCREF(tmp_tb); + #else tmp_tb = PyException_GetTraceback(tmp_value); + #endif } #elif CYTHON_USE_EXC_INFO_STACK _PyErr_StackItem *exc_info = tstate->exc_info; @@ -8807,12 +9321,30 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO { int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); if (unlikely(eq != 0)) { - if (unlikely(eq < 0)) return NULL; // error + if (unlikely(eq < 0)) return NULL; return kwvalues[i]; } } - return NULL; // not found (no exception set) + return NULL; } +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { + Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + PyObject *dict; + dict = PyDict_New(); + if (unlikely(!dict)) + return NULL; + for (i=0; i= PyTuple_GET_SIZE(kwds)) break; + Py_ssize_t size; +#if CYTHON_ASSUME_SAFE_MACROS + size = PyTuple_GET_SIZE(kwds); +#else + size = PyTuple_Size(kwds); + if (size < 0) goto bad; +#endif + if (pos >= size) break; +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); + if (!key) goto bad; +#elif CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kwds, pos); +#else + key = PyTuple_GetItem(kwds, pos); + if (!key) goto bad; +#endif value = kwvalues[pos]; pos++; } else { if (!PyDict_Next(kwds, &pos, &key, &value)) break; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif } name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(value); + Py_DECREF(key); +#endif + key = NULL; + value = NULL; continue; } +#if !CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif + Py_INCREF(value); name = first_kw_arg; #if PY_MAJOR_VERSION < 3 if (likely(PyString_Check(key))) { @@ -8868,6 +9430,9 @@ static int __Pyx_ParseOptionalKeywords( if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) && _PyString_Eq(**name, key)) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -8897,6 +9462,9 @@ static int __Pyx_ParseOptionalKeywords( if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; if (cmp == 0) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -8923,6 +9491,8 @@ static int __Pyx_ParseOptionalKeywords( goto invalid_keyword; } } + Py_XDECREF(key); + Py_XDECREF(value); return 0; arg_passed_twice: __Pyx_RaiseDoubleKeywordsError(function_name, key); @@ -8942,6 +9512,8 @@ static int __Pyx_ParseOptionalKeywords( function_name, key); #endif bad: + Py_XDECREF(key); + Py_XDECREF(value); return -1; } @@ -9093,6 +9665,7 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { #endif /* GetAttr3 */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static PyObject *__Pyx_GetAttr3Default(PyObject *d) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -9102,9 +9675,14 @@ static PyObject *__Pyx_GetAttr3Default(PyObject *d) { Py_INCREF(d); return d; } +#endif static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { PyObject *r; -#if CYTHON_USE_TYPE_SLOTS +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + int res = PyObject_GetOptionalAttr(o, n, &r); + return (res != 0) ? r : __Pyx_NewRef(d); +#else + #if CYTHON_USE_TYPE_SLOTS if (likely(PyString_Check(n))) { r = __Pyx_PyObject_GetAttrStrNoError(o, n); if (unlikely(!r) && likely(!PyErr_Occurred())) { @@ -9112,9 +9690,10 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject } return r; } -#endif + #endif r = PyObject_GetAttr(o, n); return (likely(r)) ? r : __Pyx_GetAttr3Default(d); +#endif } /* KeywordStringCheck */ @@ -9131,15 +9710,32 @@ static int __Pyx_CheckKeywordStrings( return 1; #else if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { - if (unlikely(PyTuple_GET_SIZE(kw) == 0)) + Py_ssize_t kwsize; +#if CYTHON_ASSUME_SAFE_MACROS + kwsize = PyTuple_GET_SIZE(kw); +#else + kwsize = PyTuple_Size(kw); + if (kwsize < 0) return 0; +#endif + if (unlikely(kwsize == 0)) return 1; if (!kw_allowed) { +#if CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kw, 0); +#else + key = PyTuple_GetItem(kw, pos); + if (!key) return 0; +#endif goto invalid_keyword; } #if PY_VERSION_HEX < 0x03090000 - for (pos = 0; pos < PyTuple_GET_SIZE(kw); pos++) { + for (pos = 0; pos < kwsize; pos++) { +#if CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kw, pos); +#else + key = PyTuple_GetItem(kw, pos); + if (!key) return 0; +#endif if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; } @@ -9311,7 +9907,9 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } PyErr_SetObject(type, value); if (tb) { -#if CYTHON_FAST_THREAD_STATE + #if PY_VERSION_HEX >= 0x030C00A6 + PyException_SetTraceback(value, tb); + #elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -9333,6 +9931,86 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } #endif +/* TypeImport */ +#ifndef __PYX_HAVE_RT_ImportType_3_0_10 +#define __PYX_HAVE_RT_ImportType_3_0_10 +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) +{ + PyObject *result = 0; + char warning[200]; + Py_ssize_t basicsize; + Py_ssize_t itemsize; +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_basicsize; + PyObject *py_itemsize; +#endif + result = PyObject_GetAttrString(module, class_name); + if (!result) + goto bad; + if (!PyType_Check(result)) { + PyErr_Format(PyExc_TypeError, + "%.200s.%.200s is not a type object", + module_name, class_name); + goto bad; + } +#if !CYTHON_COMPILING_IN_LIMITED_API + basicsize = ((PyTypeObject *)result)->tp_basicsize; + itemsize = ((PyTypeObject *)result)->tp_itemsize; +#else + py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); + if (!py_basicsize) + goto bad; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = 0; + if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) + goto bad; + py_itemsize = PyObject_GetAttrString(result, "__itemsize__"); + if (!py_itemsize) + goto bad; + itemsize = PyLong_AsSsize_t(py_itemsize); + Py_DECREF(py_itemsize); + py_itemsize = 0; + if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred()) + goto bad; +#endif + if (itemsize) { + if (size % alignment) { + alignment = size % alignment; + } + if (itemsize < (Py_ssize_t)alignment) + itemsize = (Py_ssize_t)alignment; + } + if ((size_t)(basicsize + itemsize) < size) { + PyErr_Format(PyExc_ValueError, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize+itemsize); + goto bad; + } + if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && + ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { + PyErr_Format(PyExc_ValueError, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd-%zd from PyObject", + module_name, class_name, size, basicsize, basicsize+itemsize); + goto bad; + } + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { + PyOS_snprintf(warning, sizeof(warning), + "%s.%s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize); + if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + } + return (PyTypeObject *)result; +bad: + Py_XDECREF(result); + return NULL; +} +#endif + /* FixUpExtensionType */ #if CYTHON_USE_TYPE_SPECS static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { @@ -9408,8 +10086,8 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject /* PyObjectCallNoArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { - PyObject *arg = NULL; - return __Pyx_PyObject_FastCall(func, (&arg)+1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + PyObject *arg[2] = {NULL, NULL}; + return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); } /* PyObjectGetMethod */ @@ -9532,16 +10210,33 @@ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name /* ValidateBasesTuple */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { - Py_ssize_t i, n = PyTuple_GET_SIZE(bases); + Py_ssize_t i, n; +#if CYTHON_ASSUME_SAFE_MACROS + n = PyTuple_GET_SIZE(bases); +#else + n = PyTuple_Size(bases); + if (n < 0) return -1; +#endif for (i = 1; i < n; i++) { +#if CYTHON_AVOID_BORROWED_REFS + PyObject *b0 = PySequence_GetItem(bases, i); + if (!b0) return -1; +#elif CYTHON_ASSUME_SAFE_MACROS PyObject *b0 = PyTuple_GET_ITEM(bases, i); +#else + PyObject *b0 = PyTuple_GetItem(bases, i); + if (!b0) return -1; +#endif PyTypeObject *b; #if PY_MAJOR_VERSION < 3 if (PyClass_Check(b0)) { PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } #endif @@ -9552,20 +10247,46 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } - if (dictoffset == 0 && b->tp_dictoffset) + if (dictoffset == 0) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); - PyErr_Format(PyExc_TypeError, - "extension type '%.200s' has no __dict__ slot, " - "but base type '" __Pyx_FMT_TYPENAME "' has: " - "either add 'cdef dict __dict__' to the extension type " - "or add '__slots__ = [...]' to the base type", - type_name, b_name); - __Pyx_DECREF_TypeName(b_name); - return -1; + Py_ssize_t b_dictoffset = 0; +#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + b_dictoffset = b->tp_dictoffset; +#else + PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); + if (!py_b_dictoffset) goto dictoffset_return; + b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset); + Py_DECREF(py_b_dictoffset); + if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return; +#endif + if (b_dictoffset) { + { + __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + PyErr_Format(PyExc_TypeError, + "extension type '%.200s' has no __dict__ slot, " + "but base type '" __Pyx_FMT_TYPENAME "' has: " + "either add 'cdef dict __dict__' to the extension type " + "or add '__slots__ = [...]' to the base type", + type_name, b_name); + __Pyx_DECREF_TypeName(b_name); + } +#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) + dictoffset_return: +#endif +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif + return -1; + } } +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif } return 0; } @@ -9764,125 +10485,45 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (reduce == object_reduce || PyErr_Occurred()) { - goto __PYX_BAD; - } - setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate); - if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); - if (likely(setstate_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (!setstate || PyErr_Occurred()) { - goto __PYX_BAD; - } - } - PyType_Modified((PyTypeObject*)type_obj); - } - } - goto __PYX_GOOD; -__PYX_BAD: - if (!PyErr_Occurred()) { - __Pyx_TypeName type_obj_name = - __Pyx_PyType_GetName((PyTypeObject*)type_obj); - PyErr_Format(PyExc_RuntimeError, - "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); - __Pyx_DECREF_TypeName(type_obj_name); - } - ret = -1; -__PYX_GOOD: -#if !CYTHON_USE_PYTYPE_LOOKUP - Py_XDECREF(object_reduce); - Py_XDECREF(object_reduce_ex); - Py_XDECREF(object_getstate); - Py_XDECREF(getstate); -#endif - Py_XDECREF(reduce); - Py_XDECREF(reduce_ex); - Py_XDECREF(reduce_cython); - Py_XDECREF(setstate); - Py_XDECREF(setstate_cython); - return ret; -} -#endif - -/* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType -#define __PYX_HAVE_RT_ImportType -static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size) -{ - PyObject *result = 0; - char warning[200]; - Py_ssize_t basicsize; - Py_ssize_t itemsize; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - PyObject *py_itemsize; -#endif - result = PyObject_GetAttrString(module, class_name); - if (!result) - goto bad; - if (!PyType_Check(result)) { - PyErr_Format(PyExc_TypeError, - "%.200s.%.200s is not a type object", - module_name, class_name); - goto bad; - } -#if !CYTHON_COMPILING_IN_LIMITED_API - basicsize = ((PyTypeObject *)result)->tp_basicsize; - itemsize = ((PyTypeObject *)result)->tp_itemsize; -#else - py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); - if (!py_basicsize) - goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; - py_itemsize = PyObject_GetAttrString(result, "__itemsize__"); - if (!py_itemsize) - goto bad; - itemsize = PyLong_AsSsize_t(py_itemsize); - Py_DECREF(py_itemsize); - py_itemsize = 0; - if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; -#endif - if (itemsize) { - if (size % alignment) { - alignment = size % alignment; - } - if (itemsize < (Py_ssize_t)alignment) - itemsize = (Py_ssize_t)alignment; - } - if ((size_t)(basicsize + itemsize) < size) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize+itemsize); - goto bad; - } - if (check_size == __Pyx_ImportType_CheckSize_Error && - ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd-%zd from PyObject", - module_name, class_name, size, basicsize, basicsize+itemsize); - goto bad; + goto __PYX_BAD; + } + setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate); + if (!setstate) PyErr_Clear(); + if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { + setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); + if (likely(setstate_cython)) { + ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + } else if (!setstate || PyErr_Occurred()) { + goto __PYX_BAD; + } + } + PyType_Modified((PyTypeObject*)type_obj); + } } - else if (check_size == __Pyx_ImportType_CheckSize_Warn && (size_t)basicsize > size) { - PyOS_snprintf(warning, sizeof(warning), - "%s.%s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + goto __PYX_GOOD; +__PYX_BAD: + if (!PyErr_Occurred()) { + __Pyx_TypeName type_obj_name = + __Pyx_PyType_GetName((PyTypeObject*)type_obj); + PyErr_Format(PyExc_RuntimeError, + "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); + __Pyx_DECREF_TypeName(type_obj_name); } - return (PyTypeObject *)result; -bad: - Py_XDECREF(result); - return NULL; + ret = -1; +__PYX_GOOD: +#if !CYTHON_USE_PYTYPE_LOOKUP + Py_XDECREF(object_reduce); + Py_XDECREF(object_reduce_ex); + Py_XDECREF(object_getstate); + Py_XDECREF(getstate); +#endif + Py_XDECREF(reduce); + Py_XDECREF(reduce_ex); + Py_XDECREF(reduce_cython); + Py_XDECREF(setstate); + Py_XDECREF(setstate_cython); + return ret; } #endif @@ -9929,14 +10570,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { { #if PY_MAJOR_VERSION >= 3 if (level == -1) { - if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) { - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, 1); - #else + if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, 1); - #endif if (unlikely(!module)) { if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) goto bad; @@ -9955,14 +10591,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); Py_DECREF(py_level); #else - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, level); - #else module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, level); #endif - #endif } } bad: @@ -10104,10 +10735,7 @@ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - PyObject *abi_module = PyImport_AddModule((char*) __PYX_ABI_MODULE_NAME); - if (unlikely(!abi_module)) return NULL; - Py_INCREF(abi_module); - return abi_module; + return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); } /* FetchCommonType */ @@ -10268,8 +10896,22 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #endif /* CythonFunctionShared */ +#if CYTHON_COMPILING_IN_LIMITED_API +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + if (__Pyx_CyFunction_Check(func)) { + return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; + } else if (PyCFunction_Check(func)) { + return PyCFunction_GetFunction(func) == (PyCFunction) cfunc; + } + return 0; +} +#else +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +} +#endif static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) { -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API __Pyx_Py_XDECREF_SET( __Pyx_CyFunction_GetClassObj(f), ((classobj) ? __Pyx_NewRef(classobj) : NULL)); @@ -10284,6 +10926,10 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); + if (unlikely(!op->func_doc)) return NULL; +#else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { #if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); @@ -10296,6 +10942,7 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(Py_None); return Py_None; } +#endif } Py_INCREF(op->func_doc); return op->func_doc; @@ -10316,7 +10963,9 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_name = PyObject_GetAttrString(op->func, "__name__"); +#elif PY_MAJOR_VERSION >= 3 op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); @@ -10435,10 +11084,10 @@ __Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) { op->defaults_kwdict = PyTuple_GET_ITEM(res, 1); Py_INCREF(op->defaults_kwdict); #else - op->defaults_tuple = PySequence_ITEM(res, 0); + op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0); if (unlikely(!op->defaults_tuple)) result = -1; else { - op->defaults_kwdict = PySequence_ITEM(res, 1); + op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1); if (unlikely(!op->defaults_kwdict)) result = -1; } #endif @@ -10547,7 +11196,15 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); +#if CYTHON_ASSUME_SAFE_MACROS PyList_SET_ITEM(fromlist, 0, marker); +#else + if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) { + Py_DECREF(marker); + Py_DECREF(fromlist); + return NULL; + } +#endif module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; @@ -10563,6 +11220,18 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); return __Pyx_NewRef(op->func_is_coroutine); } +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject * +__Pyx_CyFunction_get_module(__pyx_CyFunctionObject *op, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_GetAttrString(op->func, "__module__"); +} +static int +__Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_SetAttrString(op->func, "__module__", value); +} +#endif static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, @@ -10582,20 +11251,27 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, +#endif {0, 0, 0, 0, 0} }; static PyMemberDef __pyx_CyFunction_members[] = { +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, +#endif #if CYTHON_USE_TYPE_SPECS {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL #if CYTHON_BACKPORT_VECTORCALL {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif #endif -#if PY_VERSION_HEX < 0x030500A0 +#endif +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, @@ -10618,30 +11294,40 @@ static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) #endif static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { +#if !CYTHON_COMPILING_IN_LIMITED_API PyCFunctionObject *cf = (PyCFunctionObject*) op; +#endif if (unlikely(op == NULL)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API + op->func = PyCFunction_NewEx(ml, (PyObject*)op, module); + if (unlikely(!op->func)) return NULL; +#endif op->flags = flags; __Pyx_CyFunction_weakreflist(op) = NULL; +#if !CYTHON_COMPILING_IN_LIMITED_API cf->m_ml = ml; cf->m_self = (PyObject *) op; +#endif Py_XINCREF(closure); op->func_closure = closure; +#if !CYTHON_COMPILING_IN_LIMITED_API Py_XINCREF(module); cf->m_module = module; +#endif op->func_dict = NULL; op->func_name = NULL; Py_INCREF(qualname); op->func_qualname = qualname; op->func_doc = NULL; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API op->func_classobj = NULL; #else ((PyCMethodObject*)op)->mm_class = NULL; @@ -10687,13 +11373,18 @@ static int __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) { Py_CLEAR(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_CLEAR(m->func); +#else Py_CLEAR(((PyCFunctionObject*)m)->m_module); +#endif Py_CLEAR(m->func_dict); Py_CLEAR(m->func_name); Py_CLEAR(m->func_qualname); Py_CLEAR(m->func_doc); Py_CLEAR(m->func_globals); Py_CLEAR(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API #if PY_VERSION_HEX < 0x030900B1 Py_CLEAR(__Pyx_CyFunction_GetClassObj(m)); #else @@ -10702,6 +11393,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) ((PyCMethodObject *) (m))->mm_class = NULL; Py_XDECREF(cls); } +#endif #endif Py_CLEAR(m->defaults_tuple); Py_CLEAR(m->defaults_kwdict); @@ -10732,14 +11424,20 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { Py_VISIT(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_VISIT(m->func); +#else Py_VISIT(((PyCFunctionObject*)m)->m_module); +#endif Py_VISIT(m->func_dict); Py_VISIT(m->func_name); Py_VISIT(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); Py_VISIT(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); +#endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); @@ -10763,10 +11461,22 @@ __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) #endif } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *f = ((__pyx_CyFunctionObject*)func)->func; + PyObject *py_name = NULL; + PyCFunction meth; + int flags; + meth = PyCFunction_GetFunction(f); + if (unlikely(!meth)) return NULL; + flags = PyCFunction_GetFlags(f); + if (unlikely(flags < 0)) return NULL; +#else PyCFunctionObject* f = (PyCFunctionObject*)func; PyCFunction meth = f->m_ml->ml_meth; + int flags = f->m_ml->ml_flags; +#endif Py_ssize_t size; - switch (f->m_ml->ml_flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { + switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { case METH_VARARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) return (*meth)(self, arg); @@ -10775,24 +11485,43 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 0)) return (*meth)(self, NULL); +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 1)) { PyObject *result, *arg0; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS arg0 = PyTuple_GET_ITEM(arg, 0); #else - arg0 = PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; + arg0 = __Pyx_PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; #endif result = (*meth)(self, arg0); #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) @@ -10800,9 +11529,18 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; @@ -10810,12 +11548,28 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", + py_name); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", f->m_ml->ml_name); +#endif return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { - return __Pyx_CyFunction_CallMethod(func, ((PyCFunctionObject*)func)->m_self, arg, kw); + PyObject *self, *result; +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)func)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else + self = ((PyCFunctionObject*)func)->m_self; +#endif + result = __Pyx_CyFunction_CallMethod(func, self, arg, kw); + return result; } static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; @@ -10835,7 +11589,12 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; +#if CYTHON_ASSUME_SAFE_MACROS argc = PyTuple_GET_SIZE(args); +#else + argc = PyTuple_Size(args); + if (unlikely(!argc) < 0) return NULL; +#endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) return NULL; @@ -10960,7 +11719,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, default: return NULL; } - return ((_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { @@ -11048,7 +11807,7 @@ static PyTypeObject __pyx_CyFunctionType_type = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#ifdef _Py_TPFLAGS_HAVE_VECTORCALL +#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL _Py_TPFLAGS_HAVE_VECTORCALL | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, @@ -11089,13 +11848,13 @@ static PyTypeObject __pyx_CyFunctionType_type = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, #endif -#if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 +#if __PYX_NEED_TP_PRINT_SLOT 0, #endif #if PY_VERSION_HEX >= 0x030C0000 0, #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, #endif }; @@ -11280,20 +12039,93 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif #include "internal/pycore_frame.h" #endif #if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict, + PyObject *firstlineno, PyObject *name) { + PyObject *replace = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; + replace = PyObject_GetAttrString(code, "replace"); + if (likely(replace)) { + PyObject *result; + result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + Py_DECREF(replace); + return result; + } + PyErr_Clear(); + #if __PYX_LIMITED_VERSION_HEX < 0x030780000 + { + PyObject *compiled = NULL, *result = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; + compiled = Py_CompileString( + "out = type(code)(\n" + " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" + " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" + " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" + " code.co_lnotab)\n", "", Py_file_input); + if (!compiled) return NULL; + result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); + Py_DECREF(compiled); + if (!result) PyErr_Print(); + Py_DECREF(result); + result = PyDict_GetItemString(scratch_dict, "out"); + if (result) Py_INCREF(result); + return result; + } + #else + return NULL; + #endif +} static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { + PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL; + PyObject *replace = NULL, *getframe = NULL, *frame = NULL; + PyObject *exc_type, *exc_value, *exc_traceback; + int success = 0; if (c_line) { (void) __pyx_cfilenm; (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } - _PyTraceback_Add(funcname, filename, py_line); + PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + getframe = PySys_GetObject("_getframe"); + if (unlikely(!getframe)) goto bad; + if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; + frame = PyEval_EvalCode(code_object, dict, dict); + if (unlikely(!frame) || frame == Py_None) goto bad; + success = 1; + bad: + PyErr_Restore(exc_type, exc_value, exc_traceback); + Py_XDECREF(code_object); + Py_XDECREF(py_py_line); + Py_XDECREF(py_funcname); + Py_XDECREF(dict); + Py_XDECREF(replace); + if (success) { + PyTraceBack_Here( + (struct _frame*)frame); + } + Py_XDECREF(frame); } #else static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( @@ -11346,7 +12178,7 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( #else py_code = PyCode_NewEmpty(filename, funcname, py_line); #endif - Py_XDECREF(py_funcname); // XDECREF since it's only set on Py3 if cline + Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); @@ -11450,8 +12282,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(int), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -11482,40 +12340,45 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -11537,65 +12400,67 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(int) <= sizeof(long))) { @@ -11607,30 +12472,100 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else int val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (int) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (int) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (int) -1; } } else { @@ -11660,7 +12595,8 @@ __Pyx_PyType_GetName(PyTypeObject* tp) __pyx_n_s_name); if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { PyErr_Clear(); - Py_XSETREF(name, __Pyx_NewRef(__pyx_n_s__14)); + Py_XDECREF(name); + name = __Pyx_NewRef(__pyx_n_s__14); } return name; } @@ -11699,8 +12635,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -11731,40 +12693,45 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -11786,65 +12753,67 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(long) <= sizeof(long))) { @@ -11856,30 +12825,100 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else long val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (long) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (long) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (long) -1; } } else { @@ -12017,47 +13056,56 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #endif /* CheckBinaryVersion */ -static int __Pyx_check_binary_version(void) { - char ctversion[5]; - int same=1, i, found_dot; - const char* rt_from_call = Py_GetVersion(); - PyOS_snprintf(ctversion, 5, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - found_dot = 0; - for (i = 0; i < 4; i++) { - if (!ctversion[i]) { - same = (rt_from_call[i] < '0' || rt_from_call[i] > '9'); - break; +static unsigned long __Pyx_get_runtime_version(void) { +#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4 + return Py_Version & ~0xFFUL; +#else + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; } - if (rt_from_call[i] != ctversion[i]) { - same = 0; + version += factor * digit; + if (rt_version[i] != '.') break; - } + digit = 0; + factor >>= 8; + ++i; } - if (!same) { - char rtversion[5] = {'\0'}; + return version; +#endif +} +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { + const unsigned long MAJOR_MINOR = 0xFFFF0000UL; + if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) + return 0; + if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR))) + return 1; + { char message[200]; - for (i=0; i<4; ++i) { - if (rt_from_call[i] == '.') { - if (found_dot) break; - found_dot = 1; - } else if (rt_from_call[i] < '0' || rt_from_call[i] > '9') { - break; - } - rtversion[i] = rt_from_call[i]; - } PyOS_snprintf(message, sizeof(message), - "compile time version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); + "compile time Python version %d.%d " + "of module '%.100s' " + "%s " + "runtime version %d.%d", + (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF), + __Pyx_MODULE_NAME, + (allow_newer) ? "was newer than" : "does not match", + (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF) + ); return PyErr_WarnEx(NULL, message, 1); } - return 0; } /* FunctionImport */ -#ifndef __PYX_HAVE_RT_ImportFunction -#define __PYX_HAVE_RT_ImportFunction -static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { +#ifndef __PYX_HAVE_RT_ImportFunction_3_0_10 +#define __PYX_HAVE_RT_ImportFunction_3_0_10 +static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { PyObject *d = 0; PyObject *cobj = 0; union { @@ -12135,8 +13183,24 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { return 0; } +#include +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) { + size_t len = strlen(s); + if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) { + PyErr_SetString(PyExc_OverflowError, "byte string is too long"); + return -1; + } + return (Py_ssize_t) len; +} static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { - return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return __Pyx_PyUnicode_FromStringAndSize(c_str, len); +} +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) { + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return PyByteArray_FromStringAndSize(c_str, len); } static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; @@ -12305,13 +13369,11 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { #endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(b); - const Py_ssize_t size = Py_SIZE(b); - if (likely(__Pyx_sst_abs(size) <= 1)) { - ival = likely(size) ? digits[0] : 0; - if (size == -1) ival = -ival; - return ival; + if (likely(__Pyx_PyLong_IsCompact(b))) { + return __Pyx_PyLong_CompactValue(b); } else { + const digit* digits = __Pyx_PyLong_Digits(b); + const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b); switch (size) { case 2: if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { @@ -12380,7 +13442,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { /* #### Code section: utility_code_pragmas_end ### */ -#if _MSV_VER +#ifdef _MSC_VER #pragma warning( pop ) #endif diff --git a/src/hunter/vendor/_cymem/cymem.c b/src/hunter/vendor/_cymem/cymem.c index 5edd9f1..0bfd6d2 100644 --- a/src/hunter/vendor/_cymem/cymem.c +++ b/src/hunter/vendor/_cymem/cymem.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.0b2 */ +/* Generated by Cython 3.0.10 */ /* BEGIN: Cython Metadata { @@ -35,10 +35,15 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) #error Cython requires Python 2.7+ or Python 3.3+. #else -#define CYTHON_ABI "3_0_0b2" +#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API +#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#else +#define __PYX_EXTRA_ABI_MODULE_NAME "" +#endif +#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x030000B2 +#define CYTHON_HEX_VERSION 0x03000AF0 #define CYTHON_FUTURE_DIVISION 1 #include #ifndef offsetof @@ -71,6 +76,7 @@ END: Cython Metadata */ #ifndef Py_HUGE_VAL #define Py_HUGE_VAL HUGE_VAL #endif +#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX #if defined(GRAALVM_PYTHON) /* For very preliminary testing purposes. Most variables are set the same as PyPy. The existence of this section does not imply that anything works or is even tested */ @@ -129,6 +135,8 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(PYPY_VERSION) #define CYTHON_COMPILING_IN_PYPY 1 #define CYTHON_COMPILING_IN_CPYTHON 0 @@ -137,8 +145,9 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_NOGIL 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #if PY_VERSION_HEX < 0x03050000 @@ -172,12 +181,16 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #if PY_VERSION_HEX < 0x03090000 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #define CYTHON_PEP489_MULTI_PHASE_INIT 1 + #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK @@ -185,7 +198,13 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #elif defined(CYTHON_LIMITED_API) + #ifdef Py_LIMITED_API + #undef __PYX_LIMITED_VERSION_HEX + #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API + #endif #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 @@ -233,7 +252,7 @@ END: Cython Metadata */ #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 1 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 @@ -242,7 +261,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif -#elif defined(PY_NOGIL) + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 +#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 @@ -251,11 +272,17 @@ END: Cython Metadata */ #ifndef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 1 #endif + #ifndef CYTHON_USE_TYPE_SPECS + #define CYTHON_USE_TYPE_SPECS 0 + #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 #ifndef CYTHON_USE_ASYNC_SLOTS #define CYTHON_USE_ASYNC_SLOTS 1 #endif + #ifndef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #ifndef CYTHON_USE_UNICODE_INTERNALS @@ -263,8 +290,6 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif @@ -276,11 +301,22 @@ END: Cython Metadata */ #endif #undef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #ifndef CYTHON_METH_FASTCALL + #define CYTHON_METH_FASTCALL 1 + #endif #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 + #ifndef CYTHON_PEP487_INIT_SUBCLASS + #define CYTHON_PEP487_INIT_SUBCLASS 1 + #endif #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif + #ifndef CYTHON_USE_MODULE_STATE + #define CYTHON_USE_MODULE_STATE 0 + #endif #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif @@ -288,6 +324,12 @@ END: Cython Metadata */ #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 + #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC + #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 + #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 + #endif #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 @@ -337,7 +379,7 @@ END: Cython Metadata */ #define CYTHON_FAST_THREAD_STATE 1 #endif #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000) + #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) @@ -378,6 +420,9 @@ END: Cython Metadata */ #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif + #ifndef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 1 + #endif #endif #if !defined(CYTHON_FAST_PYCCALL) #define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) @@ -455,6 +500,14 @@ END: Cython Metadata */ # define CYTHON_NCP_UNUSED CYTHON_UNUSED # endif #endif +#ifndef CYTHON_USE_CPP_STD_MOVE + #if defined(__cplusplus) && (\ + __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600)) + #define CYTHON_USE_CPP_STD_MOVE 1 + #else + #define CYTHON_USE_CPP_STD_MOVE 0 + #endif +#endif #define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) #ifdef _MSC_VER #ifndef _MSC_STDINT_H_ @@ -516,6 +569,18 @@ END: Cython Metadata */ #endif #endif #endif +#ifdef __cplusplus + template + struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; + #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL::value) +#else + #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0) +#endif +#if CYTHON_COMPILING_IN_PYPY == 1 + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000) +#else + #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000) +#endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) #ifndef CYTHON_INLINE @@ -532,9 +597,6 @@ END: Cython Metadata */ #endif #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) - #define Py_OptimizeFlag 0 -#endif #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" #if PY_MAJOR_VERSION < 3 @@ -545,67 +607,91 @@ END: Cython Metadata */ #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" #define __Pyx_DefaultClassType PyType_Type -#if PY_VERSION_HEX >= 0x030B00A1 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, +#if CYTHON_COMPILING_IN_LIMITED_API + static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, PyObject *code, PyObject *c, PyObject* n, PyObject *v, PyObject *fv, PyObject *cell, PyObject* fn, PyObject *name, int fline, PyObject *lnos) { - PyObject *kwds=NULL, *argcount=NULL, *posonlyargcount=NULL, *kwonlyargcount=NULL; - PyObject *nlocals=NULL, *stacksize=NULL, *flags=NULL, *replace=NULL, *call_result=NULL, *empty=NULL; - const char *fn_cstr=NULL; - const char *name_cstr=NULL; - PyCodeObject* co=NULL; + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; PyObject *type, *value, *traceback; PyErr_Fetch(&type, &value, &traceback); - if (!(kwds=PyDict_New())) goto end; - if (!(argcount=PyLong_FromLong(a))) goto end; - if (PyDict_SetItemString(kwds, "co_argcount", argcount) != 0) goto end; - if (!(posonlyargcount=PyLong_FromLong(p))) goto end; - if (PyDict_SetItemString(kwds, "co_posonlyargcount", posonlyargcount) != 0) goto end; - if (!(kwonlyargcount=PyLong_FromLong(k))) goto end; - if (PyDict_SetItemString(kwds, "co_kwonlyargcount", kwonlyargcount) != 0) goto end; - if (!(nlocals=PyLong_FromLong(l))) goto end; - if (PyDict_SetItemString(kwds, "co_nlocals", nlocals) != 0) goto end; - if (!(stacksize=PyLong_FromLong(s))) goto end; - if (PyDict_SetItemString(kwds, "co_stacksize", stacksize) != 0) goto end; - if (!(flags=PyLong_FromLong(f))) goto end; - if (PyDict_SetItemString(kwds, "co_flags", flags) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_code", code) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_consts", c) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_names", n) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_varnames", v) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_freevars", fv) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_cellvars", cell) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_linetable", lnos) != 0) goto end; - if (!(fn_cstr=PyUnicode_AsUTF8AndSize(fn, NULL))) goto end; - if (!(name_cstr=PyUnicode_AsUTF8AndSize(name, NULL))) goto end; - if (!(co = PyCode_NewEmpty(fn_cstr, name_cstr, fline))) goto end; - if (!(replace = PyObject_GetAttrString((PyObject*)co, "replace"))) goto cleanup_code_too; - if (!(empty = PyTuple_New(0))) goto cleanup_code_too; // unfortunately __pyx_empty_tuple isn't available here - if (!(call_result = PyObject_Call(replace, empty, kwds))) goto cleanup_code_too; - Py_XDECREF((PyObject*)co); - co = (PyCodeObject*)call_result; - call_result = NULL; - if (0) { - cleanup_code_too: - Py_XDECREF((PyObject*)co); - co = NULL; + #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else { + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - end: - Py_XDECREF(kwds); - Py_XDECREF(argcount); - Py_XDECREF(posonlyargcount); - Py_XDECREF(kwonlyargcount); - Py_XDECREF(nlocals); - Py_XDECREF(stacksize); - Py_XDECREF(replace); - Py_XDECREF(call_result); - Py_XDECREF(empty); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); if (type) { PyErr_Restore(type, value, traceback); } - return co; + return result; } + #ifndef CO_OPTIMIZED + #define CO_OPTIMIZED 0x0001 + #endif + #ifndef CO_NEWLOCALS + #define CO_NEWLOCALS 0x0002 + #endif + #ifndef CO_VARARGS + #define CO_VARARGS 0x0004 + #endif + #ifndef CO_VARKEYWORDS + #define CO_VARKEYWORDS 0x0008 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x0200 + #endif + #ifndef CO_GENERATOR + #define CO_GENERATOR 0x0020 + #endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x0080 + #endif +#elif PY_VERSION_HEX >= 0x030B0000 + static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); + if (!empty_bytes) return NULL; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); + Py_DECREF(empty_bytes); + return result; + } #elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) @@ -640,6 +726,11 @@ END: Cython Metadata */ #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False) #endif #define __Pyx_NoneAsNull(obj) (__Pyx_Py_IsNone(obj) ? NULL : (obj)) +#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o) +#else + #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) +#endif #ifndef CO_COROUTINE #define CO_COROUTINE 0x80 #endif @@ -675,8 +766,13 @@ END: Cython Metadata */ typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames); #else - #define __Pyx_PyCFunctionFast _PyCFunctionFast - #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #if PY_VERSION_HEX >= 0x030d00A4 + # define __Pyx_PyCFunctionFast PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords + #else + # define __Pyx_PyCFunctionFast _PyCFunctionFast + # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords + #endif #endif #if CYTHON_METH_FASTCALL #define __Pyx_METH_FASTCALL METH_FASTCALL @@ -700,7 +796,32 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_VERSION_HEX < 0x030900B1 +#if PY_MAJOR_VERSION >= 0x030900B1 +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) +#else +#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) +#endif +#define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func) +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth) +#elif !CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func) +#endif +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags) +static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { + return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; +} +#endif +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +#if CYTHON_COMPILING_IN_LIMITED_API + return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; +#else + return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +#endif +} +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) +#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -726,6 +847,8 @@ END: Cython Metadata */ #define __Pyx_PyThreadState_Current PyThreadState_Get() #elif !CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() #elif PY_VERSION_HEX >= 0x03060000 #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #elif PY_VERSION_HEX >= 0x03000000 @@ -801,7 +924,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { } #endif #endif -#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() @@ -813,7 +936,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && CYTHON_USE_UNICODE_INTERNALS +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); @@ -850,9 +973,14 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next #endif +#if CYTHON_COMPILING_IN_LIMITED_API + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) +#else + #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) +#endif #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ - PyTypeObject *type = Py_TYPE(obj);\ + PyTypeObject *type = Py_TYPE((PyObject*)obj);\ assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\ PyObject_GC_Del(obj);\ Py_DECREF(type);\ @@ -865,7 +993,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) @@ -884,7 +1012,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, (Py_UCS4) ch) #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) #else @@ -902,11 +1030,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY @@ -976,9 +1104,34 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif #if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) -#else + #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) + #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) + #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) + #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) + #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) +#else + static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { + PyObject *module = PyImport_AddModule(name); + Py_XINCREF(module); + return module; + } #endif #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject @@ -1058,11 +1211,20 @@ static CYTHON_INLINE float __PYX_NAN() { #endif #define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } + { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } -#ifndef __PYX_EXTERN_C +#ifdef CYTHON_EXTERN_C + #undef __PYX_EXTERN_C + #define __PYX_EXTERN_C CYTHON_EXTERN_C +#elif defined(__PYX_EXTERN_C) + #ifdef _MSC_VER + #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.") + #else + #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead. + #endif +#else #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" #else @@ -1123,9 +1285,10 @@ static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { #else #define __Pyx_sst_abs(value) ((value<0) ? -value : value) #endif +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s); static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); -#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize @@ -1153,23 +1316,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) #define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const wchar_t *u) -{ - const wchar_t *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#else -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) -{ - const Py_UNICODE *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#endif -#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) -#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode +#define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode #define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) #define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) @@ -1194,6 +1341,45 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) #endif #if CYTHON_USE_PYLONG_INTERNALS + #if PY_VERSION_HEX >= 0x030C00A7 + #ifndef _PyLong_SIGN_MASK + #define _PyLong_SIGN_MASK 3 + #endif + #ifndef _PyLong_NON_SIZE_BITS + #define _PyLong_NON_SIZE_BITS 3 + #endif + #define __Pyx_PyLong_Sign(x) (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK) + #define __Pyx_PyLong_IsNeg(x) ((__Pyx_PyLong_Sign(x) & 2) != 0) + #define __Pyx_PyLong_IsNonNeg(x) (!__Pyx_PyLong_IsNeg(x)) + #define __Pyx_PyLong_IsZero(x) (__Pyx_PyLong_Sign(x) & 1) + #define __Pyx_PyLong_IsPos(x) (__Pyx_PyLong_Sign(x) == 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) (__Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_SignedDigitCount(x)\ + ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x)) + #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue) + #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x) + #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x) + #else + #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS)) + #define __Pyx_PyLong_CompactValue(x) ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0]) + #endif + typedef Py_ssize_t __Pyx_compact_pylong; + typedef size_t __Pyx_compact_upylong; + #else + #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0) + #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0) + #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0) + #define __Pyx_PyLong_IsPos(x) (Py_SIZE(x) > 0) + #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) + #define __Pyx_PyLong_DigitCount(x) __Pyx_sst_abs(Py_SIZE(x)) + #define __Pyx_PyLong_SignedDigitCount(x) Py_SIZE(x) + #define __Pyx_PyLong_IsCompact(x) (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1) + #define __Pyx_PyLong_CompactValue(x)\ + ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) + typedef sdigit __Pyx_compact_pylong; + typedef digit __Pyx_compact_upylong; + #endif #if PY_VERSION_HEX >= 0x030C00A5 #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->long_value.ob_digit) #else @@ -1201,6 +1387,7 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #endif #endif #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#include static int __Pyx_sys_getdefaultencoding_not_ascii; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1221,7 +1408,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { char ascii_chars[128]; int c; for (c = 0; c < 128; c++) { - ascii_chars[c] = c; + ascii_chars[c] = (char) c; } __Pyx_sys_getdefaultencoding_not_ascii = 1; ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); @@ -1251,6 +1438,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #else #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +#include static char* __PYX_DEFAULT_STRING_ENCODING; static int __Pyx_init_sys_getdefaultencoding_params(void) { PyObject* sys; @@ -1303,15 +1491,20 @@ static const char *__pyx_f[] = { ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/type.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ +/* ForceInitThreads.proto */ +#ifndef __PYX_FORCE_INIT_THREADS + #define __PYX_FORCE_INIT_THREADS 0 +#endif + /* #### Code section: numeric_typedefs ### */ /* #### Code section: complex_type_declarations ### */ /* #### Code section: type_declarations ### */ /*--- Type declarations ---*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool; +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; /* "hunter/vendor/_cymem/cymem.pxd":2 * # cython: language_level=3str @@ -1330,18 +1523,31 @@ typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); */ typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); -/* "hunter/vendor/_cymem/cymem.pxd":29 +/* "hunter/vendor/_cymem/cymem.pxd":5 + * ctypedef void (*free_t)(void *p) * + * cdef class PyMalloc: # <<<<<<<<<<<<<< + * cdef malloc_t malloc + * cdef void _set(self, malloc_t malloc) + */ +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { + PyObject_HEAD + struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; + __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t malloc; +}; + + +/* "hunter/vendor/_cymem/cymem.pxd":11 + * cdef PyMalloc WrapMalloc(malloc_t malloc) * - * cdef class Address: # <<<<<<<<<<<<<< - * cdef void* ptr - * cdef readonly PyMalloc pymalloc + * cdef class PyFree: # <<<<<<<<<<<<<< + * cdef free_t free + * cdef void _set(self, free_t free) */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { PyObject_HEAD - void *ptr; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; + struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; + __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t free; }; @@ -1363,31 +1569,18 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { }; -/* "hunter/vendor/_cymem/cymem.pxd":11 - * cdef PyMalloc WrapMalloc(malloc_t malloc) +/* "hunter/vendor/_cymem/cymem.pxd":29 * - * cdef class PyFree: # <<<<<<<<<<<<<< - * cdef free_t free - * cdef void _set(self, free_t free) - */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t free; -}; - - -/* "hunter/vendor/_cymem/cymem.pxd":5 - * ctypedef void (*free_t)(void *p) * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef malloc_t malloc - * cdef void _set(self, malloc_t malloc) + * cdef class Address: # <<<<<<<<<<<<<< + * cdef void* ptr + * cdef readonly PyMalloc pymalloc */ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { +struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t malloc; + void *ptr; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; }; @@ -1528,11 +1721,18 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #if CYTHON_FAST_THREAD_STATE #define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; #define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; -#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#if PY_VERSION_HEX >= 0x030C00A6 +#define __Pyx_PyErr_Occurred() (__pyx_tstate->current_exception != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL) +#else +#define __Pyx_PyErr_Occurred() (__pyx_tstate->curexc_type != NULL) +#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->curexc_type) +#endif #else #define __Pyx_PyThreadState_declare #define __Pyx_PyThreadState_assign -#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#define __Pyx_PyErr_Occurred() (PyErr_Occurred() != NULL) +#define __Pyx_PyErr_CurrentExceptionType() PyErr_Occurred() #endif /* PyErrFetchRestore.proto */ @@ -1544,7 +1744,7 @@ static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tsta #define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6 #define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) #else #define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) @@ -1589,7 +1789,20 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /* fastcall.proto */ -#define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) +#elif CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) +#else + #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) +#endif +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) + #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) +#else + #define __Pyx_Arg_NewRef_VARARGS(arg) arg + #define __Pyx_Arg_XDECREF_VARARGS(arg) +#endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) @@ -1599,15 +1812,24 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); + #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) + #endif + #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs + to have the same reference counting */ + #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS + #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) + #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS #define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) #else @@ -1649,7 +1871,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, #if !CYTHON_VECTORCALL #if PY_VERSION_HEX >= 0x03080000 #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -1797,6 +2019,37 @@ static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); } +/* AssertionsEnabled.proto */ +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) + #define __Pyx_init_assertions_enabled() (0) + #define __pyx_assertions_enabled() (1) +#elif CYTHON_COMPILING_IN_LIMITED_API || (CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030C0000) + static int __pyx_assertions_enabled_flag; + #define __pyx_assertions_enabled() (__pyx_assertions_enabled_flag) + static int __Pyx_init_assertions_enabled(void) { + PyObject *builtins, *debug, *debug_str; + int flag; + builtins = PyEval_GetBuiltins(); + if (!builtins) goto bad; + debug_str = PyUnicode_FromStringAndSize("__debug__", 9); + if (!debug_str) goto bad; + debug = PyObject_GetItem(builtins, debug_str); + Py_DECREF(debug_str); + if (!debug) goto bad; + flag = PyObject_IsTrue(debug); + Py_DECREF(debug); + if (flag == -1) goto bad; + __pyx_assertions_enabled_flag = flag; + return 0; + bad: + __pyx_assertions_enabled_flag = 1; + return -1; + } +#else + #define __Pyx_init_assertions_enabled() (0) + #define __pyx_assertions_enabled() (!Py_OptimizeFlag) +#endif + /* DictGetItem.proto */ #if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); @@ -1843,7 +2096,11 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { Py_ssize_t len = Py_SIZE(list); if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) { Py_INCREF(x); + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + L->ob_item[len] = x; + #else PyList_SET_ITEM(list, len, x); + #endif __Pyx_SET_SIZE(list, len + 1); return 0; } @@ -1853,6 +2110,10 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { #define __Pyx_PyList_Append(L,x) PyList_Append(L,x) #endif +/* PySequenceMultiply.proto */ +#define __Pyx_PySequence_Multiply_Left(mul, seq) __Pyx_PySequence_Multiply(seq, mul) +static CYTHON_INLINE PyObject* __Pyx_PySequence_Multiply(PyObject *seq, Py_ssize_t mul); + /* IncludeStructmemberH.proto */ #include @@ -1883,11 +2144,6 @@ static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_nam #define __Pyx_PyObject_GenericGetAttr PyObject_GenericGetAttr #endif -/* SetupReduce.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API -static int __Pyx_setup_reduce(PyObject* type_obj); -#endif - /* SetVTable.proto */ static int __Pyx_SetVtable(PyTypeObject* typeptr , void* vtable); @@ -1899,23 +2155,28 @@ static void* __Pyx_GetVtable(PyTypeObject *type); static int __Pyx_MergeVtables(PyTypeObject *type); #endif +/* SetupReduce.proto */ +#if !CYTHON_COMPILING_IN_LIMITED_API +static int __Pyx_setup_reduce(PyObject* type_obj); +#endif + /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto -#define __PYX_HAVE_RT_ImportType_proto -#if __STDC_VERSION__ >= 201112L +#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 +#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif -#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT(s) alignof(s) +#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize { - __Pyx_ImportType_CheckSize_Error = 0, - __Pyx_ImportType_CheckSize_Warn = 1, - __Pyx_ImportType_CheckSize_Ignore = 2 +enum __Pyx_ImportType_CheckSize_3_0_10 { + __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, + __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 }; -static PyTypeObject *__Pyx_ImportType(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size); +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); #endif /* Import.proto */ @@ -1938,7 +2199,22 @@ static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec #endif /* PyMethodNew.proto */ -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + typesModule = PyImport_ImportModule("types"); + if (!typesModule) return NULL; + methodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + if (!methodType) return NULL; + result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); + Py_DECREF(methodType); + return result; +} +#elif PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { CYTHON_UNUSED_VAR(typ); if (!self) @@ -1962,7 +2238,7 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CYFUNCTION_COROUTINE 0x08 #define __Pyx_CyFunction_GetClosure(f)\ (((__pyx_CyFunctionObject *) (f))->func_closure) -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_GetClassObj(f)\ (((__pyx_CyFunctionObject *) (f))->func_classobj) #else @@ -1976,7 +2252,10 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #define __Pyx_CyFunction_SetDefaultsGetter(f, g)\ ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g) typedef struct { -#if PY_VERSION_HEX < 0x030900B1 +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject_HEAD + PyObject *func; +#elif PY_VERSION_HEX < 0x030900B1 PyCFunctionObject func; #else PyCMethodObject func; @@ -1984,7 +2263,7 @@ typedef struct { #if CYTHON_BACKPORT_VECTORCALL __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -1994,12 +2273,12 @@ typedef struct { PyObject *func_globals; PyObject *func_code; PyObject *func_closure; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif void *defaults; int defaults_pyobjects; - size_t defaults_size; // used by FusedFunction for copying defaults + size_t defaults_size; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2007,9 +2286,13 @@ typedef struct { PyObject *func_annotations; PyObject *func_is_coroutine; } __pyx_CyFunctionObject; +#undef __Pyx_CyOrPyCFunction_Check #define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_IsCyOrPyCFunction(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) #define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#undef __Pyx_IsSameCFunction +#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, @@ -2120,11 +2403,12 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) #define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) #endif -#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_Occurred(), err1, err2) +#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) /* CheckBinaryVersion.proto */ -static int __Pyx_check_binary_version(void); +static unsigned long __Pyx_get_runtime_version(void); +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionExport.proto */ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); @@ -2258,10 +2542,10 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___ge static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop = {0, 0, 0, 0, 0}; /* #### Code section: late_includes ### */ /* #### Code section: module_state ### */ @@ -2308,15 +2592,15 @@ typedef struct { #if CYTHON_USE_MODULE_STATE #endif #if CYTHON_USE_MODULE_STATE - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; + PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; + PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; + PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; #endif - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address; - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool; - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc; + PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree; + PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool; + PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address; PyObject *__pyx_n_s_Address; PyObject *__pyx_n_s_Address___reduce_cython; PyObject *__pyx_n_s_Address___setstate_cython; @@ -2441,14 +2725,14 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_FusedFunctionType); #endif Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); + Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); Py_CLEAR(clear_module_state->__pyx_n_s_Address); Py_CLEAR(clear_module_state->__pyx_n_s_Address___reduce_cython); Py_CLEAR(clear_module_state->__pyx_n_s_Address___setstate_cython); @@ -2551,15 +2835,15 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_VISIT(traverse_module_state->__pyx_n_s_Address); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); + Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); + Py_VISIT(traverse_module_state->__pyx_n_s_Address); Py_VISIT(traverse_module_state->__pyx_n_s_Address___reduce_cython); Py_VISIT(traverse_module_state->__pyx_n_s_Address___setstate_cython); Py_VISIT(traverse_module_state->__pyx_kp_s_Allocating_zero_bytes); @@ -2686,15 +2970,15 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #if CYTHON_USE_MODULE_STATE #endif #if CYTHON_USE_MODULE_STATE -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree #define __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc +#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree +#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool +#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address #endif -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree #define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc +#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree +#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool +#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address #define __pyx_n_s_Address __pyx_mstate_global->__pyx_n_s_Address #define __pyx_n_s_Address___reduce_cython __pyx_mstate_global->__pyx_n_s_Address___reduce_cython #define __pyx_n_s_Address___setstate_cython __pyx_mstate_global->__pyx_n_s_Address___setstate_cython @@ -2787,8 +3071,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { */ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("_set", 0); /* "hunter/vendor/_cymem/cymem.pyx":13 * cdef class PyMalloc: @@ -2808,7 +3090,6 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_o */ /* function exit code */ - __Pyx_RefNannyFinishContext(); } /* "(tree fragment)":1 @@ -2835,12 +3116,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -2857,7 +3146,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cyth int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); /* "(tree fragment)":2 * def __reduce_cython__(self): @@ -2909,18 +3198,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -2932,7 +3229,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -2947,10 +3247,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyMalloc.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -2958,6 +3266,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -2968,7 +3282,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_c int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); /* "(tree fragment)":4 * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" @@ -3010,7 +3324,7 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("WrapMalloc", 0); + __Pyx_RefNannySetupContext("WrapMalloc", 1); /* "hunter/vendor/_cymem/cymem.pyx":16 * @@ -3074,8 +3388,6 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter */ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("_set", 0); /* "hunter/vendor/_cymem/cymem.pyx":22 * cdef class PyFree: @@ -3095,7 +3407,6 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj */ /* function exit code */ - __Pyx_RefNannyFinishContext(); } /* "(tree fragment)":1 @@ -3122,12 +3433,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -3144,7 +3463,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); /* "(tree fragment)":2 * def __reduce_cython__(self): @@ -3196,18 +3515,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -3219,7 +3546,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -3234,10 +3564,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyFree.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -3245,6 +3583,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -3255,7 +3599,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cyt int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); /* "(tree fragment)":4 * raise TypeError, "self.free cannot be converted to a Python object for pickling" @@ -3297,7 +3641,7 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("WrapFree", 0); + __Pyx_RefNannySetupContext("WrapFree", 1); /* "hunter/vendor/_cymem/cymem.pyx":25 * @@ -3365,19 +3709,25 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc = 0; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[2] = {0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pymalloc,&__pyx_n_s_pyfree,0}; - PyObject* values[2] = {0,0}; - values[0] = (PyObject *)__pyx_k_; - values[1] = (PyObject *)__pyx_k__2; + values[0] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k_); + values[1] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k__2); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -3393,14 +3743,14 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__ case 0: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pymalloc); - if (value) { values[0] = value; kw_args--; } + if (value) { values[0] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 49, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyfree); - if (value) { values[1] = value; kw_args--; } + if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 49, __pyx_L3_error) } } @@ -3421,10 +3771,18 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__ __pyx_v_pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)values[0]); __pyx_v_pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)values[1]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(1, 49, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -3438,6 +3796,12 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__ __pyx_L1_error:; __pyx_r = -1; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -3449,7 +3813,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 0); + __Pyx_RefNannySetupContext("__cinit__", 1); /* "hunter/vendor/_cymem/cymem.pyx":51 * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, @@ -3547,9 +3911,10 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ /* Python wrapper */ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_3__dealloc__(PyObject *__pyx_v_self); /*proto*/ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_3__dealloc__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -3570,7 +3935,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__dealloc__", 0); + __Pyx_RefNannySetupContext("__dealloc__", 1); /* "hunter/vendor/_cymem/cymem.pyx":59 * def __dealloc__(self): @@ -3687,7 +4052,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("alloc", 0); + __Pyx_RefNannySetupContext("alloc", 1); /* "hunter/vendor/_cymem/cymem.pyx":70 * WARN_ZERO_ALLOC was set to True. @@ -3730,7 +4095,8 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; __pyx_t_6 = 0; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -3740,6 +4106,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj __pyx_t_6 = 1; } } + #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_kp_s_Allocating_zero_bytes}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); @@ -3895,7 +4262,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("realloc", 0); + __Pyx_RefNannySetupContext("realloc", 1); /* "hunter/vendor/_cymem/cymem.pyx":87 * If p is not in the Pool or new_size is 0, a MemoryError is raised. @@ -3926,10 +4293,10 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 88, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1)) __PYX_ERR(1, 88, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->addresses); __Pyx_GIVEREF(__pyx_v_self->addresses); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->addresses); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->addresses)) __PYX_ERR(1, 88, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Pointer_d_not_found_in_Pool_s, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 88, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); @@ -3990,7 +4357,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * if new_ptr == NULL: */ #ifndef CYTHON_WITHOUT_ASSERTIONS - if (unlikely(!Py_OptimizeFlag)) { + if (unlikely(__pyx_assertions_enabled())) { __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (unlikely(__pyx_v_self->addresses == Py_None)) { @@ -4159,7 +4526,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("free", 0); + __Pyx_RefNannySetupContext("free", 1); /* "hunter/vendor/_cymem/cymem.pyx":108 * If p is not in Pool.addresses, a KeyError is raised. @@ -4242,18 +4609,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { PyObject *__pyx_v_py_ref = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("own_pyref (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_py_ref,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4265,7 +4640,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_py_ref)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_py_ref)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 111, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -4280,10 +4658,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v_py_ref = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("own_pyref", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 111, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.own_pyref", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -4291,6 +4677,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v_py_ref); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4302,7 +4694,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("own_pyref", 0); + __Pyx_RefNannySetupContext("own_pyref", 1); /* "hunter/vendor/_cymem/cymem.pyx":112 * @@ -4348,10 +4740,11 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4size_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4size_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -4366,7 +4759,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); @@ -4396,10 +4789,11 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(str /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -4410,7 +4804,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->addresses); __pyx_r = __pyx_v_self->addresses; @@ -4434,10 +4828,11 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get_ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -4448,7 +4843,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(Py static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->refs); __pyx_r = __pyx_v_self->refs; @@ -4472,10 +4867,11 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(str /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -4486,7 +4882,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get_ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pymalloc); __pyx_r = ((PyObject *)__pyx_v_self->pymalloc); @@ -4510,10 +4906,11 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -4524,7 +4921,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__( static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pyfree); __pyx_r = ((PyObject *)__pyx_v_self->pyfree); @@ -4561,12 +4958,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -4583,7 +4988,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); /* "(tree fragment)":2 * def __reduce_cython__(self): @@ -4635,18 +5040,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4658,7 +5071,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -4673,10 +5089,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -4684,6 +5108,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4694,7 +5124,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cytho int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); /* "(tree fragment)":4 * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" @@ -4735,19 +5165,25 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject CYTHON_UNUSED size_t __pyx_v_elem_size; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc = 0; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree = 0; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[4] = {0,0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_number,&__pyx_n_s_elem_size,&__pyx_n_s_pymalloc,&__pyx_n_s_pyfree,0}; - PyObject* values[4] = {0,0,0,0}; - values[2] = (PyObject *)__pyx_k__4; - values[3] = (PyObject *)__pyx_k__5; + values[2] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k__4); + values[3] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k__5); if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4765,12 +5201,18 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_number)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_number)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_elem_size)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_elem_size)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, 1); __PYX_ERR(1, 133, __pyx_L3_error) @@ -4779,14 +5221,14 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject case 2: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pymalloc); - if (value) { values[2] = value; kw_args--; } + if (value) { values[2] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 3: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyfree); - if (value) { values[3] = value; kw_args--; } + if (value) { values[3] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) } } @@ -4811,10 +5253,18 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject __pyx_v_pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)values[2]); __pyx_v_pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)values[3]); } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, __pyx_nargs); __PYX_ERR(1, 133, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -4828,6 +5278,12 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject __pyx_L1_error:; __pyx_r = -1; __pyx_L0:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4835,7 +5291,7 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED size_t __pyx_v_number, CYTHON_UNUSED size_t __pyx_v_elem_size, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree) { int __pyx_r; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__", 0); + __Pyx_RefNannySetupContext("__cinit__", 1); /* "hunter/vendor/_cymem/cymem.pyx":135 * def __cinit__(self, size_t number, size_t elem_size, @@ -4899,17 +5355,23 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject * static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { size_t __pyx_v_number; size_t __pyx_v_elem_size; - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[2] = {0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; + #endif + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_number,&__pyx_n_s_elem_size,0}; - PyObject* values[2] = {0,0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -4923,12 +5385,18 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject * kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_number)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_number)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_elem_size)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_elem_size)) != 0)) { + (void)__Pyx_Arg_NewRef_VARARGS(values[1]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) else { __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(1, 139, __pyx_L3_error) @@ -4947,10 +5415,18 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject * __pyx_v_number = __Pyx_PyInt_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) __pyx_v_elem_size = __Pyx_PyInt_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(1, 139, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; @@ -4958,6 +5434,12 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject * __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v_number, __pyx_v_elem_size); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4969,11 +5451,10 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_RefNannySetupContext("__init__", 1); /* "hunter/vendor/_cymem/cymem.pyx":140 * @@ -5007,17 +5488,14 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Error_assigning_d_bytes, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_elem_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 142, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_Multiply(__pyx_t_4, __pyx_v_elem_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyNumber_Multiply(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 142, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_Raise(__pyx_t_4, 0, 0, 0); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __PYX_ERR(1, 142, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":141 @@ -5052,7 +5530,6 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; @@ -5071,10 +5548,11 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); /* function exit code */ @@ -5089,7 +5567,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); /* "hunter/vendor/_cymem/cymem.pyx":147 * property addr: @@ -5135,9 +5613,10 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__( /* Python wrapper */ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(PyObject *__pyx_v_self); /*proto*/ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); /* function exit code */ @@ -5145,12 +5624,10 @@ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(PyObje } static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { - __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__dealloc__", 0); /* "hunter/vendor/_cymem/cymem.pyx":150 * @@ -5189,7 +5666,6 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct __pyx_L1_error:; __Pyx_WriteUnraisable("hunter.vendor._cymem.cymem.Address.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); __pyx_L0:; - __Pyx_RefNannyFinishContext(); } /* "hunter/vendor/_cymem/cymem.pxd":31 @@ -5202,10 +5678,11 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); /* function exit code */ @@ -5216,7 +5693,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__g static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pymalloc); __pyx_r = ((PyObject *)__pyx_v_self->pymalloc); @@ -5238,10 +5715,11 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___ge /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); + __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); /* function exit code */ @@ -5252,7 +5730,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_RefNannySetupContext("__get__", 1); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pyfree); __pyx_r = ((PyObject *)__pyx_v_self->pyfree); @@ -5289,12 +5767,20 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; @@ -5311,7 +5797,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cyth int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_RefNannySetupContext("__reduce_cython__", 1); /* "(tree fragment)":2 * def __reduce_cython__(self): @@ -5363,18 +5849,26 @@ PyObject *__pyx_args, PyObject *__pyx_kwds ) { CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED const Py_ssize_t __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - PyObject* values[1] = {0}; if (__pyx_kwds) { Py_ssize_t kw_args; switch (__pyx_nargs) { @@ -5386,7 +5880,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); switch (__pyx_nargs) { case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } @@ -5401,10 +5898,18 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } __pyx_v___pyx_state = values[0]; } - goto __pyx_L4_argument_unpacking_done; + goto __pyx_L6_skip; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; @@ -5412,6 +5917,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5422,7 +5933,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cy int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_RefNannySetupContext("__setstate_cython__", 1); /* "(tree fragment)":4 * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" @@ -5447,9 +5958,10 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cy __Pyx_RefNannyFinishContext(); return __pyx_r; } +static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p; +static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); @@ -5462,114 +5974,56 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObjec } if (unlikely(!o)) return 0; #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o); - p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); - p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); - if (unlikely(__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(o, a, k) < 0)) goto bad; + p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)o); + p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; return o; - bad: - Py_DECREF(o); o = 0; - return NULL; } -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; +static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyObject *o) { #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address) { + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !__Pyx_PyObject_GC_IsFinalized(o))) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc) { if (PyObject_CallFinalizerFromDealloc(o)) return; } } #endif - PyObject_GC_UnTrack(o); - { - PyObject *etype, *eval, *etb; - PyErr_Fetch(&etype, &eval, &etb); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); - __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(o); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); - PyErr_Restore(etype, eval, etb); - } - Py_CLEAR(p->pymalloc); - Py_CLEAR(p->pyfree); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; - if (p->pymalloc) { - e = (*v)(((PyObject *)p->pymalloc), a); if (e) return e; - } - if (p->pyfree) { - e = (*v)(((PyObject *)p->pyfree), a); if (e) return e; + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } - return 0; -} - -static int __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; - tmp = ((PyObject*)p->pymalloc); - p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->pyfree); - p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(o); + #endif } -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address[] = { - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}, +static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc[] = { + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}, {0, 0, 0, 0} }; - -static struct PyGetSetDef __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address[] = { - {(char *)"addr", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr, 0, (char *)0, 0}, - {(char *)"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc, 0, (char *)0, 0}, - {(char *)"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_doc, (void *)PyDoc_STR("Address(size_t number, size_t elem_size)\nA block of number * size-bytes of 0-initialized memory, tied to a Python\n ref-counted object. When the object is garbage collected, the memory is freed.\n\n >>> from cymem.cymem cimport Address\n >>> cdef Address address = Address(10, sizeof(double))\n >>> d10 = address.ptr\n\n Args:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\n Attributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_init, (void *)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address}, +static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec = { - "hunter.vendor._cymem.cymem.Address", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), +static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec = { + "hunter.vendor._cymem.cymem.PyMalloc", + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, + __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_slots, }; #else -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { +static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""Address", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), /*tp_basicsize*/ + "hunter.vendor._cymem.cymem.""PyMalloc", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -5594,17 +6048,17 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("Address(size_t number, size_t elem_size)\nA block of number * size-bytes of 0-initialized memory, tied to a Python\n ref-counted object. When the object is garbage collected, the memory is freed.\n\n >>> from cymem.cymem cimport Address\n >>> cdef Address address = Address(10, sizeof(double))\n >>> d10 = address.ptr\n\n Args:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\n Attributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_traverse*/ - __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_clear*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + 0, /*tp_doc*/ + 0, /*tp_traverse*/ + 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_methods*/ + __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_methods*/ 0, /*tp_members*/ - __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_getset*/ + 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -5612,9 +6066,9 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__, /*tp_init*/ + 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_new*/ + __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -5634,13 +6088,154 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 + 0, /*tp_pypy_flags*/ + #endif +}; +#endif +static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree; + +static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *p; + PyObject *o; + #if CYTHON_COMPILING_IN_LIMITED_API + allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); + o = alloc_func(t, 0); + #else + if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + } + if (unlikely(!o)) return 0; + #endif + p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)o); + p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; + return o; +} + +static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !__Pyx_PyObject_GC_IsFinalized(o))) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif +} + +static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree[] = { + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}, + {0, 0, 0, 0} +}; +#if CYTHON_USE_TYPE_SPECS +static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree}, + {0, 0}, +}; +static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec = { + "hunter.vendor._cymem.cymem.PyFree", + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), + 0, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, + __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_slots, +}; +#else + +static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree = { + PyVarObject_HEAD_INIT(0, 0) + "hunter.vendor._cymem.cymem.""PyFree", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 + 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + #if PY_MAJOR_VERSION < 3 + 0, /*tp_compare*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + 0, /*tp_doc*/ + 0, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + #if !CYTHON_USE_TYPE_SPECS + 0, /*tp_dictoffset*/ + #endif + 0, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + #if CYTHON_USE_TP_FINALIZE + 0, /*tp_finalize*/ + #else + NULL, /*tp_finalize*/ + #endif + #endif + #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) + 0, /*tp_vectorcall*/ + #endif + #if __PYX_NEED_TP_PRINT_SLOT == 1 + 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030C0000 + 0, /*tp_watched*/ + #endif + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; @@ -5677,7 +6272,7 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject * static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o) { struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)o; #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !_PyGC_FINALIZED(o)) { + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool) { if (PyObject_CallFinalizerFromDealloc(o)) return; } @@ -5696,7 +6291,14 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o) { Py_CLEAR(p->refs); Py_CLEAR(p->pymalloc); Py_CLEAR(p->pyfree); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif } static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o, visitproc v, void *a) { @@ -5860,21 +6462,20 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree; -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *p; +static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k) { + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p; PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); @@ -5887,183 +6488,121 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject } if (unlikely(!o)) return 0; #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)o); - p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; + p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o); + p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); + p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); + if (unlikely(__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(o, a, k) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree(PyObject *o) { +static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) { + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree) { + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address) { if (PyObject_CallFinalizerFromDealloc(o)) return; } } #endif + PyObject_GC_UnTrack(o); + { + PyObject *etype, *eval, *etb; + PyErr_Fetch(&etype, &eval, &etb); + __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); + __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(o); + __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); + PyErr_Restore(etype, eval, etb); + } + Py_CLEAR(p->pymalloc); + Py_CLEAR(p->pyfree); + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY (*Py_TYPE(o)->tp_free)(o); -} - -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree[] = { - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}, - {0, 0, 0, 0} -}; -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec = { - "hunter.vendor._cymem.cymem.PyFree", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree = { - PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""PyFree", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - 0, /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ #else - NULL, /*tp_finalize*/ - #endif - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); } - if (unlikely(!o)) return 0; #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)o); - p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - return o; } -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyObject *o) { - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } +static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; + if (p->pymalloc) { + e = (*v)(((PyObject *)p->pymalloc), a); if (e) return e; } - #endif - (*Py_TYPE(o)->tp_free)(o); + if (p->pyfree) { + e = (*v)(((PyObject *)p->pyfree), a); if (e) return e; + } + return 0; +} + +static int __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) { + PyObject* tmp; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; + tmp = ((PyObject*)p->pymalloc); + p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + tmp = ((PyObject*)p->pyfree); + p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); + Py_XDECREF(tmp); + return 0; +} + +static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(o); +} + +static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(o); } -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc[] = { - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}, +static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree(PyObject *o, CYTHON_UNUSED void *x) { + return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(o); +} + +static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address[] = { + {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}, {0, 0, 0, 0} }; + +static struct PyGetSetDef __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address[] = { + {(char *)"addr", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr, 0, (char *)0, 0}, + {(char *)"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc, 0, (char *)0, 0}, + {(char *)"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree, 0, (char *)0, 0}, + {0, 0, 0, 0, 0} +}; #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, +static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address}, + {Py_tp_doc, (void *)PyDoc_STR("Address(size_t number, size_t elem_size)\nA block of number * size-bytes of 0-initialized memory, tied to a Python\n ref-counted object. When the object is garbage collected, the memory is freed.\n\n >>> from cymem.cymem cimport Address\n >>> cdef Address address = Address(10, sizeof(double))\n >>> d10 = address.ptr\n\n Args:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\n Attributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n ")}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address}, + {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address}, + {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address}, + {Py_tp_getset, (void *)__pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address}, + {Py_tp_init, (void *)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__}, + {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address}, {0, 0}, }; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec = { - "hunter.vendor._cymem.cymem.PyMalloc", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), +static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec = { + "hunter.vendor._cymem.cymem.Address", + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_slots, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, + __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots, }; #else -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { +static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""PyMalloc", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), /*tp_basicsize*/ + "hunter.vendor._cymem.cymem.""Address", /*tp_name*/ + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_dealloc*/ + __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -6088,17 +6627,17 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - 0, /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + PyDoc_STR("Address(size_t number, size_t elem_size)\nA block of number * size-bytes of 0-initialized memory, tied to a Python\n ref-counted object. When the object is garbage collected, the memory is freed.\n\n >>> from cymem.cymem cimport Address\n >>> cdef Address address = Address(10, sizeof(double))\n >>> d10 = address.ptr\n\n Args:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\n Attributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n "), /*tp_doc*/ + __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_traverse*/ + __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_methods*/ + __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_methods*/ 0, /*tp_members*/ - 0, /*tp_getset*/ + __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ @@ -6106,9 +6645,9 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { #if !CYTHON_USE_TYPE_SPECS 0, /*tp_dictoffset*/ #endif - 0, /*tp_init*/ + __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_new*/ + __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -6128,13 +6667,13 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + #if __PYX_NEED_TP_PRINT_SLOT == 1 0, /*tp_print*/ #endif #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; @@ -6347,7 +6886,14 @@ static CYTHON_SMALL_CODE int __Pyx_InitConstants(void) { /* #### Code section: init_globals ### */ static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { + /* AssertionsEnabled.init */ + if (likely(__Pyx_init_assertions_enabled() == 0)); else + +if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; } /* #### Code section: init_module ### */ @@ -6398,59 +6944,34 @@ static int __Pyx_modinit_type_init_code(void) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ + __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; + __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set; #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address)) __PYX_ERR(1, 115, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_print = 0; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro = __Pyx_PyObject_GenericGetAttr; - } - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Address, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #endif - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.alloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.free = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.realloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc; - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(1, 32, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(1, 11, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_print = 0; + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro = __Pyx_PyObject_GenericGetAttr; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro = __Pyx_PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Pool, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PyMalloc, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) #endif __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree; __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set; @@ -6481,34 +7002,59 @@ static int __Pyx_modinit_type_init_code(void) { #if !CYTHON_COMPILING_IN_LIMITED_API if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) #endif - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set; + __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool; + __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.alloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc; + __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.free = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free; + __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.realloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc; #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(1, 11, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(1, 32, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_print = 0; + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro = __Pyx_PyObject_GenericGetAttr; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro = __Pyx_PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PyMalloc, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Pool, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + #endif + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address)) __PYX_ERR(1, 115, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) + #else + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + #endif + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Address, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) + #if !CYTHON_COMPILING_IN_LIMITED_API + if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) #endif __Pyx_RefNannyFinishContext(); return 0; @@ -6527,16 +7073,15 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -6750,7 +7295,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec_cymem(PyObject *__pyx_pyinit_modul __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1, __pyx_L1_error) { int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); - __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to cymem pseudovariable */ + __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "cymem" pseudovariable */ if (unlikely((add_module_result < 0))) __PYX_ERR(1, 1, __pyx_L1_error) pystate_addmodule_run = 1; } @@ -6762,10 +7307,8 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec_cymem(PyObject *__pyx_pyinit_modul CYTHON_UNUSED_VAR(__pyx_t_1); __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(1, 1, __pyx_L1_error) Py_INCREF(__pyx_d); - __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(1, 1, __pyx_L1_error) - Py_INCREF(__pyx_b); - __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(1, 1, __pyx_L1_error) - Py_INCREF(__pyx_cython_runtime); + __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(1, 1, __pyx_L1_error) if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(1, 1, __pyx_L1_error) #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); @@ -6777,7 +7320,7 @@ if (!__Pyx_RefNanny) { } #endif __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_cymem(void)", 0); - if (__Pyx_check_binary_version() < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(1, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif @@ -6966,7 +7509,7 @@ if (!__Pyx_RefNanny) { */ __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Pool_own_pyref, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__14)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_dict, __pyx_n_s_own_pyref, __pyx_t_2) < 0) __PYX_ERR(1, 111, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_n_s_own_pyref, __pyx_t_2) < 0) __PYX_ERR(1, 111, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; PyType_Modified(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); @@ -7079,7 +7622,7 @@ if (!__Pyx_RefNanny) { /* #### Code section: cleanup_module ### */ /* #### Code section: main_method ### */ /* #### Code section: utility_code_pragmas ### */ -#if _MSC_VER +#ifdef _MSC_VER #pragma warning( push ) /* Warning 4127: conditional expression is constant * Cython uses constant conditional expressions to allow in inline functions to be optimized at @@ -7126,18 +7669,51 @@ static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple return 0; } static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) { - PyObject *exc_type = tstate->curexc_type; + int result; + PyObject *exc_type; +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *current_exception = tstate->current_exception; + if (unlikely(!current_exception)) return 0; + exc_type = (PyObject*) Py_TYPE(current_exception); + if (exc_type == err) return 1; +#else + exc_type = tstate->curexc_type; if (exc_type == err) return 1; if (unlikely(!exc_type)) return 0; - if (unlikely(PyTuple_Check(err))) - return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); +#endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(exc_type); + #endif + if (unlikely(PyTuple_Check(err))) { + result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + } else { + result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(exc_type); + #endif + return result; } #endif /* PyErrFetchRestore */ #if CYTHON_FAST_THREAD_STATE static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *tmp_value; + assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); + if (value) { + #if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) + #endif + PyException_SetTraceback(value, tb); + } + tmp_value = tstate->current_exception; + tstate->current_exception = value; + Py_XDECREF(tmp_value); + Py_XDECREF(type); + Py_XDECREF(tb); +#else PyObject *tmp_type, *tmp_value, *tmp_tb; tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; @@ -7148,14 +7724,34 @@ static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObjec Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#endif } static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject* exc_value; + exc_value = tstate->current_exception; + tstate->current_exception = 0; + *value = exc_value; + *type = NULL; + *tb = NULL; + if (exc_value) { + *type = (PyObject*) Py_TYPE(exc_value); + Py_INCREF(*type); + #if CYTHON_COMPILING_IN_CPYTHON + *tb = ((PyBaseExceptionObject*) exc_value)->traceback; + Py_XINCREF(*tb); + #else + *tb = PyException_GetTraceback(exc_value); + #endif + } +#else *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; +#endif } #endif @@ -7174,14 +7770,20 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject #endif /* PyObjectGetAttrStrNoError */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) __Pyx_PyErr_Clear(); } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; +#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 + (void) PyObject_GetOptionalAttr(obj, attr_name, &result); + return result; +#else #if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { @@ -7193,6 +7795,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P __Pyx_PyObject_GetAttrStr_ClearAttributeError(); } return result; +#endif } /* GetBuiltinName */ @@ -7408,13 +8011,31 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO { int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); if (unlikely(eq != 0)) { - if (unlikely(eq < 0)) return NULL; // error + if (unlikely(eq < 0)) return NULL; return kwvalues[i]; } } - return NULL; // not found (no exception set) + return NULL; +} +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { + Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + PyObject *dict; + dict = PyDict_New(); + if (unlikely(!dict)) + return NULL; + for (i=0; i= 0x030C00A6 + PyException_SetTraceback(value, tb); + #elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -7688,22 +8328,52 @@ static int __Pyx_ParseOptionalKeywords( PyObject*** first_kw_arg = argnames + num_pos_args; int kwds_is_tuple = CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds)); while (1) { + Py_XDECREF(key); key = NULL; + Py_XDECREF(value); value = NULL; if (kwds_is_tuple) { - if (pos >= PyTuple_GET_SIZE(kwds)) break; + Py_ssize_t size; +#if CYTHON_ASSUME_SAFE_MACROS + size = PyTuple_GET_SIZE(kwds); +#else + size = PyTuple_Size(kwds); + if (size < 0) goto bad; +#endif + if (pos >= size) break; +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); + if (!key) goto bad; +#elif CYTHON_ASSUME_SAFE_MACROS key = PyTuple_GET_ITEM(kwds, pos); +#else + key = PyTuple_GetItem(kwds, pos); + if (!key) goto bad; +#endif value = kwvalues[pos]; pos++; } else { if (!PyDict_Next(kwds, &pos, &key, &value)) break; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif } name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(value); + Py_DECREF(key); +#endif + key = NULL; + value = NULL; continue; } +#if !CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); +#endif + Py_INCREF(value); name = first_kw_arg; #if PY_MAJOR_VERSION < 3 if (likely(PyString_Check(key))) { @@ -7711,6 +8381,9 @@ static int __Pyx_ParseOptionalKeywords( if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) && _PyString_Eq(**name, key)) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -7740,6 +8413,9 @@ static int __Pyx_ParseOptionalKeywords( if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; if (cmp == 0) { values[name-argnames] = value; +#if CYTHON_AVOID_BORROWED_REFS + value = NULL; +#endif break; } name++; @@ -7766,6 +8442,8 @@ static int __Pyx_ParseOptionalKeywords( goto invalid_keyword; } } + Py_XDECREF(key); + Py_XDECREF(value); return 0; arg_passed_twice: __Pyx_RaiseDoubleKeywordsError(function_name, key); @@ -7785,6 +8463,8 @@ static int __Pyx_ParseOptionalKeywords( function_name, key); #endif bad: + Py_XDECREF(key); + Py_XDECREF(value); return -1; } @@ -7833,9 +8513,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, PyObject *result; assert(kwargs == NULL || PyDict_Check(kwargs)); nk = kwargs ? PyDict_Size(kwargs) : 0; + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { return NULL; } + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; + } + #endif if ( #if PY_MAJOR_VERSION >= 3 co->co_kwonlyargcount == 0 && @@ -7912,8 +8598,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg ternaryfunc call = Py_TYPE(func)->tp_call; if (unlikely(!call)) return PyObject_Call(func, arg, kw); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = (*call)(func, arg, kw); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -7930,10 +8621,15 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { PyObject *self, *result; PyCFunction cfunc; - cfunc = PyCFunction_GET_FUNCTION(func); - self = PyCFunction_GET_SELF(func); + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + #if PY_MAJOR_VERSION < 3 if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) return NULL; + #else + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + #endif result = cfunc(self, arg); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -7946,42 +8642,33 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject #endif /* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { PyObject *argstuple; - PyObject *result; + PyObject *result = 0; size_t i; argstuple = PyTuple_New((Py_ssize_t)nargs); if (unlikely(!argstuple)) return NULL; for (i = 0; i < nargs; i++) { Py_INCREF(args[i]); - PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; } result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: Py_DECREF(argstuple); return result; } +#endif static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); #if CYTHON_COMPILING_IN_CPYTHON if (nargs == 0 && kwargs == NULL) { -#if defined(__Pyx_CyFunction_USED) && defined(NDEBUG) - if (__Pyx_IsCyOrPyCFunction(func)) -#else - if (PyCFunction_Check(func)) -#endif - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) { - return __Pyx_PyObject_CallMethO(func, NULL); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); } else if (nargs == 1 && kwargs == NULL) { - if (PyCFunction_Check(func)) - { - if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { - return __Pyx_PyObject_CallMethO(func, args[0]); - } - } + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); } #endif #if PY_VERSION_HEX < 0x030800B1 @@ -8005,27 +8692,37 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj } #endif #endif - #if CYTHON_VECTORCALL - vectorcallfunc f = _PyVectorcall_Function(func); - if (f) { - return f(func, args, (size_t)nargs, kwargs); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, kwargs); + if (kwargs == NULL) { + #if CYTHON_VECTORCALL + #if PY_VERSION_HEX < 0x03090000 + vectorcallfunc f = _PyVectorcall_Function(func); + #else + vectorcallfunc f = PyVectorcall_Function(func); + #endif + if (f) { + return f(func, args, (size_t)nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, (size_t)nargs, NULL); + } + #endif } - #endif if (nargs == 0) { return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif } /* PyObjectCallNoArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { - PyObject *arg = NULL; - return __Pyx_PyObject_FastCall(func, (&arg)+1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + PyObject *arg[2] = {NULL, NULL}; + return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); } /* ArgTypeTest */ @@ -8057,37 +8754,17 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam /* IterFinish */ static CYTHON_INLINE int __Pyx_IterFinish(void) { -#if CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* exc_type = tstate->curexc_type; + PyObject* exc_type; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + exc_type = __Pyx_PyErr_CurrentExceptionType(); if (unlikely(exc_type)) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) { - PyObject *exc_value, *exc_tb; - exc_value = tstate->curexc_value; - exc_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - Py_DECREF(exc_type); - Py_XDECREF(exc_value); - Py_XDECREF(exc_tb); - return 0; - } else { - return -1; - } - } - return 0; -#else - if (unlikely(PyErr_Occurred())) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) return -1; - } + __Pyx_PyErr_Clear(); + return 0; } return 0; -#endif } /* PyObjectCallOneArg */ @@ -8305,6 +8982,9 @@ static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyOb } /* dict_iter */ +#if CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 +#include +#endif static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, Py_ssize_t* p_orig_length, int* p_source_is_dict) { is_dict = is_dict || likely(PyDict_CheckExact(iterable)); @@ -8496,7 +9176,7 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) { PyObject *result; #if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { @@ -8556,9 +9236,10 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { /* UnpackUnboundCMethod */ static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { + PyObject *result; PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); if (unlikely(!selfless_args)) return NULL; - PyObject *result = PyObject_Call(method, selfless_args, kwargs); + result = PyObject_Call(method, selfless_args, kwargs); Py_DECREF(selfless_args); return result; } @@ -8578,7 +9259,7 @@ static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { #if PY_MAJOR_VERSION >= 3 if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) #else - if (likely(!PyCFunction_Check(method))) + if (likely(!__Pyx_CyOrPyCFunction_Check(method))) #endif { PyMethodDescrObject *descr = (PyMethodDescrObject*) method; @@ -8586,9 +9267,7 @@ static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); } else #endif -#if defined(CYTHON_COMPILING_IN_PYPY) -#elif PY_VERSION_HEX >= 0x03090000 - if (PyCFunction_CheckExact(method)) +#if CYTHON_COMPILING_IN_PYPY #else if (PyCFunction_Check(method)) #endif @@ -8727,7 +9406,7 @@ static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObje /* py_dict_pop */ static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyObject *default_value) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B3 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B3 & PY_VERSION_HEX < 0x030d0000 if ((1)) { return _PyDict_Pop(d, key, default_value); } else @@ -8739,6 +9418,27 @@ static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyOb } } +/* PySequenceMultiply */ +static PyObject* __Pyx_PySequence_Multiply_Generic(PyObject *seq, Py_ssize_t mul) { + PyObject *result, *pymul = PyInt_FromSsize_t(mul); + if (unlikely(!pymul)) + return NULL; + result = PyNumber_Multiply(seq, pymul); + Py_DECREF(pymul); + return result; +} +static CYTHON_INLINE PyObject* __Pyx_PySequence_Multiply(PyObject *seq, Py_ssize_t mul) { +#if CYTHON_USE_TYPE_SLOTS + PyTypeObject *type = Py_TYPE(seq); + if (likely(type->tp_as_sequence && type->tp_as_sequence->sq_repeat)) { + return type->tp_as_sequence->sq_repeat(seq, mul); + } else +#endif + { + return __Pyx_PySequence_Multiply_Generic(seq, mul); + } +} + /* FixUpExtensionType */ #if CYTHON_USE_TYPE_SPECS static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { @@ -8815,16 +9515,33 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject /* ValidateBasesTuple */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { - Py_ssize_t i, n = PyTuple_GET_SIZE(bases); + Py_ssize_t i, n; +#if CYTHON_ASSUME_SAFE_MACROS + n = PyTuple_GET_SIZE(bases); +#else + n = PyTuple_Size(bases); + if (n < 0) return -1; +#endif for (i = 1; i < n; i++) { +#if CYTHON_AVOID_BORROWED_REFS + PyObject *b0 = PySequence_GetItem(bases, i); + if (!b0) return -1; +#elif CYTHON_ASSUME_SAFE_MACROS PyObject *b0 = PyTuple_GET_ITEM(bases, i); +#else + PyObject *b0 = PyTuple_GetItem(bases, i); + if (!b0) return -1; +#endif PyTypeObject *b; #if PY_MAJOR_VERSION < 3 if (PyClass_Check(b0)) { PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } #endif @@ -8835,20 +9552,46 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif return -1; } - if (dictoffset == 0 && b->tp_dictoffset) + if (dictoffset == 0) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); - PyErr_Format(PyExc_TypeError, - "extension type '%.200s' has no __dict__ slot, " - "but base type '" __Pyx_FMT_TYPENAME "' has: " - "either add 'cdef dict __dict__' to the extension type " - "or add '__slots__ = [...]' to the base type", - type_name, b_name); - __Pyx_DECREF_TypeName(b_name); - return -1; + Py_ssize_t b_dictoffset = 0; +#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + b_dictoffset = b->tp_dictoffset; +#else + PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); + if (!py_b_dictoffset) goto dictoffset_return; + b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset); + Py_DECREF(py_b_dictoffset); + if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return; +#endif + if (b_dictoffset) { + { + __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + PyErr_Format(PyExc_TypeError, + "extension type '%.200s' has no __dict__ slot, " + "but base type '" __Pyx_FMT_TYPENAME "' has: " + "either add 'cdef dict __dict__' to the extension type " + "or add '__slots__ = [...]' to the base type", + type_name, b_name); + __Pyx_DECREF_TypeName(b_name); + } +#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) + dictoffset_return: +#endif +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif + return -1; + } } +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(b0); +#endif } return 0; } @@ -8988,6 +9731,97 @@ static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_nam } #endif +/* SetVTable */ +static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { + PyObject *ob = PyCapsule_New(vtable, 0, 0); + if (unlikely(!ob)) + goto bad; +#if CYTHON_COMPILING_IN_LIMITED_API + if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_n_s_pyx_vtable, ob) < 0)) +#else + if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_n_s_pyx_vtable, ob) < 0)) +#endif + goto bad; + Py_DECREF(ob); + return 0; +bad: + Py_XDECREF(ob); + return -1; +} + +/* GetVTable */ +static void* __Pyx_GetVtable(PyTypeObject *type) { + void* ptr; +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable); +#else + PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable); +#endif + if (!ob) + goto bad; + ptr = PyCapsule_GetPointer(ob, 0); + if (!ptr && !PyErr_Occurred()) + PyErr_SetString(PyExc_RuntimeError, "invalid vtable found for imported type"); + Py_DECREF(ob); + return ptr; +bad: + Py_XDECREF(ob); + return NULL; +} + +/* MergeVTables */ +#if !CYTHON_COMPILING_IN_LIMITED_API +static int __Pyx_MergeVtables(PyTypeObject *type) { + int i; + void** base_vtables; + __Pyx_TypeName tp_base_name; + __Pyx_TypeName base_name; + void* unknown = (void*)-1; + PyObject* bases = type->tp_bases; + int base_depth = 0; + { + PyTypeObject* base = type->tp_base; + while (base) { + base_depth += 1; + base = base->tp_base; + } + } + base_vtables = (void**) malloc(sizeof(void*) * (size_t)(base_depth + 1)); + base_vtables[0] = unknown; + for (i = 1; i < PyTuple_GET_SIZE(bases); i++) { + void* base_vtable = __Pyx_GetVtable(((PyTypeObject*)PyTuple_GET_ITEM(bases, i))); + if (base_vtable != NULL) { + int j; + PyTypeObject* base = type->tp_base; + for (j = 0; j < base_depth; j++) { + if (base_vtables[j] == unknown) { + base_vtables[j] = __Pyx_GetVtable(base); + base_vtables[j + 1] = unknown; + } + if (base_vtables[j] == base_vtable) { + break; + } else if (base_vtables[j] == NULL) { + goto bad; + } + base = base->tp_base; + } + } + } + PyErr_Clear(); + free(base_vtables); + return 0; +bad: + tp_base_name = __Pyx_PyType_GetName(type->tp_base); + base_name = __Pyx_PyType_GetName((PyTypeObject*)PyTuple_GET_ITEM(bases, i)); + PyErr_Format(PyExc_TypeError, + "multiple bases have vtable conflict: '" __Pyx_FMT_TYPENAME "' and '" __Pyx_FMT_TYPENAME "'", tp_base_name, base_name); + __Pyx_DECREF_TypeName(tp_base_name); + __Pyx_DECREF_TypeName(base_name); + free(base_vtables); + return -1; +} +#endif + /* SetupReduce */ #if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { @@ -9082,119 +9916,28 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); __Pyx_DECREF_TypeName(type_obj_name); } - ret = -1; -__PYX_GOOD: -#if !CYTHON_USE_PYTYPE_LOOKUP - Py_XDECREF(object_reduce); - Py_XDECREF(object_reduce_ex); - Py_XDECREF(object_getstate); - Py_XDECREF(getstate); -#endif - Py_XDECREF(reduce); - Py_XDECREF(reduce_ex); - Py_XDECREF(reduce_cython); - Py_XDECREF(setstate); - Py_XDECREF(setstate_cython); - return ret; -} -#endif - -/* SetVTable */ -static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { - PyObject *ob = PyCapsule_New(vtable, 0, 0); - if (unlikely(!ob)) - goto bad; -#if CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_n_s_pyx_vtable, ob) < 0)) -#else - if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_n_s_pyx_vtable, ob) < 0)) -#endif - goto bad; - Py_DECREF(ob); - return 0; -bad: - Py_XDECREF(ob); - return -1; -} - -/* GetVTable */ -static void* __Pyx_GetVtable(PyTypeObject *type) { - void* ptr; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable); -#else - PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable); -#endif - if (!ob) - goto bad; - ptr = PyCapsule_GetPointer(ob, 0); - if (!ptr && !PyErr_Occurred()) - PyErr_SetString(PyExc_RuntimeError, "invalid vtable found for imported type"); - Py_DECREF(ob); - return ptr; -bad: - Py_XDECREF(ob); - return NULL; -} - -/* MergeVTables */ -#if !CYTHON_COMPILING_IN_LIMITED_API -static int __Pyx_MergeVtables(PyTypeObject *type) { - int i; - void** base_vtables; - __Pyx_TypeName tp_base_name; - __Pyx_TypeName base_name; - void* unknown = (void*)-1; - PyObject* bases = type->tp_bases; - int base_depth = 0; - { - PyTypeObject* base = type->tp_base; - while (base) { - base_depth += 1; - base = base->tp_base; - } - } - base_vtables = (void**) malloc(sizeof(void*) * (size_t)(base_depth + 1)); - base_vtables[0] = unknown; - for (i = 1; i < PyTuple_GET_SIZE(bases); i++) { - void* base_vtable = __Pyx_GetVtable(((PyTypeObject*)PyTuple_GET_ITEM(bases, i))); - if (base_vtable != NULL) { - int j; - PyTypeObject* base = type->tp_base; - for (j = 0; j < base_depth; j++) { - if (base_vtables[j] == unknown) { - base_vtables[j] = __Pyx_GetVtable(base); - base_vtables[j + 1] = unknown; - } - if (base_vtables[j] == base_vtable) { - break; - } else if (base_vtables[j] == NULL) { - goto bad; - } - base = base->tp_base; - } - } - } - PyErr_Clear(); - free(base_vtables); - return 0; -bad: - tp_base_name = __Pyx_PyType_GetName(type->tp_base); - base_name = __Pyx_PyType_GetName((PyTypeObject*)PyTuple_GET_ITEM(bases, i)); - PyErr_Format(PyExc_TypeError, - "multiple bases have vtable conflict: '" __Pyx_FMT_TYPENAME "' and '" __Pyx_FMT_TYPENAME "'", tp_base_name, base_name); - __Pyx_DECREF_TypeName(tp_base_name); - __Pyx_DECREF_TypeName(base_name); - free(base_vtables); - return -1; + ret = -1; +__PYX_GOOD: +#if !CYTHON_USE_PYTYPE_LOOKUP + Py_XDECREF(object_reduce); + Py_XDECREF(object_reduce_ex); + Py_XDECREF(object_getstate); + Py_XDECREF(getstate); +#endif + Py_XDECREF(reduce); + Py_XDECREF(reduce_ex); + Py_XDECREF(reduce_cython); + Py_XDECREF(setstate); + Py_XDECREF(setstate_cython); + return ret; } #endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType -#define __PYX_HAVE_RT_ImportType -static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_0_10 +#define __PYX_HAVE_RT_ImportType_3_0_10 +static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) { PyObject *result = 0; char warning[200]; @@ -9248,7 +9991,7 @@ static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -9256,7 +9999,7 @@ static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn && (size_t)basicsize > size) { + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { PyOS_snprintf(warning, sizeof(warning), "%s.%s size changed, may indicate binary incompatibility. " "Expected %zd from C header, got %zd from PyObject", @@ -9293,14 +10036,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { { #if PY_MAJOR_VERSION >= 3 if (level == -1) { - if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) { - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, 1); - #else + if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, 1); - #endif if (unlikely(!module)) { if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) goto bad; @@ -9319,14 +10057,9 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); Py_DECREF(py_level); #else - #if CYTHON_COMPILING_IN_LIMITED_API - module = PyImport_ImportModuleLevelObject( - name, empty_dict, empty_dict, from_list, level); - #else module = PyImport_ImportModuleLevelObject( name, __pyx_d, empty_dict, from_list, level); #endif - #endif } } bad: @@ -9468,10 +10201,7 @@ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - PyObject *abi_module = PyImport_AddModule((char*) __PYX_ABI_MODULE_NAME); - if (unlikely(!abi_module)) return NULL; - Py_INCREF(abi_module); - return abi_module; + return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); } /* FetchCommonType */ @@ -9632,8 +10362,22 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _ #endif /* CythonFunctionShared */ +#if CYTHON_COMPILING_IN_LIMITED_API +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + if (__Pyx_CyFunction_Check(func)) { + return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; + } else if (PyCFunction_Check(func)) { + return PyCFunction_GetFunction(func) == (PyCFunction) cfunc; + } + return 0; +} +#else +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { + return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; +} +#endif static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) { -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API __Pyx_Py_XDECREF_SET( __Pyx_CyFunction_GetClassObj(f), ((classobj) ? __Pyx_NewRef(classobj) : NULL)); @@ -9648,6 +10392,10 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); + if (unlikely(!op->func_doc)) return NULL; +#else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { #if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); @@ -9660,6 +10408,7 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(Py_None); return Py_None; } +#endif } Py_INCREF(op->func_doc); return op->func_doc; @@ -9680,7 +10429,9 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { -#if PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_LIMITED_API + op->func_name = PyObject_GetAttrString(op->func, "__name__"); +#elif PY_MAJOR_VERSION >= 3 op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); @@ -9799,10 +10550,10 @@ __Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) { op->defaults_kwdict = PyTuple_GET_ITEM(res, 1); Py_INCREF(op->defaults_kwdict); #else - op->defaults_tuple = PySequence_ITEM(res, 0); + op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0); if (unlikely(!op->defaults_tuple)) result = -1; else { - op->defaults_kwdict = PySequence_ITEM(res, 1); + op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1); if (unlikely(!op->defaults_kwdict)) result = -1; } #endif @@ -9911,7 +10662,15 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); +#if CYTHON_ASSUME_SAFE_MACROS PyList_SET_ITEM(fromlist, 0, marker); +#else + if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) { + Py_DECREF(marker); + Py_DECREF(fromlist); + return NULL; + } +#endif module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; @@ -9927,6 +10686,18 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); return __Pyx_NewRef(op->func_is_coroutine); } +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject * +__Pyx_CyFunction_get_module(__pyx_CyFunctionObject *op, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_GetAttrString(op->func, "__module__"); +} +static int +__Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *context) { + CYTHON_UNUSED_VAR(context); + return PyObject_SetAttrString(op->func, "__module__", value); +} +#endif static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, @@ -9946,20 +10717,27 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, +#endif {0, 0, 0, 0, 0} }; static PyMemberDef __pyx_CyFunction_members[] = { +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, +#endif #if CYTHON_USE_TYPE_SPECS {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL #if CYTHON_BACKPORT_VECTORCALL {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else +#if !CYTHON_COMPILING_IN_LIMITED_API {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif #endif -#if PY_VERSION_HEX < 0x030500A0 +#endif +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, @@ -9982,30 +10760,40 @@ static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 +#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) #endif static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { +#if !CYTHON_COMPILING_IN_LIMITED_API PyCFunctionObject *cf = (PyCFunctionObject*) op; +#endif if (unlikely(op == NULL)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API + op->func = PyCFunction_NewEx(ml, (PyObject*)op, module); + if (unlikely(!op->func)) return NULL; +#endif op->flags = flags; __Pyx_CyFunction_weakreflist(op) = NULL; +#if !CYTHON_COMPILING_IN_LIMITED_API cf->m_ml = ml; cf->m_self = (PyObject *) op; +#endif Py_XINCREF(closure); op->func_closure = closure; +#if !CYTHON_COMPILING_IN_LIMITED_API Py_XINCREF(module); cf->m_module = module; +#endif op->func_dict = NULL; op->func_name = NULL; Py_INCREF(qualname); op->func_qualname = qualname; op->func_doc = NULL; -#if PY_VERSION_HEX < 0x030900B1 +#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API op->func_classobj = NULL; #else ((PyCMethodObject*)op)->mm_class = NULL; @@ -10051,13 +10839,18 @@ static int __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) { Py_CLEAR(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_CLEAR(m->func); +#else Py_CLEAR(((PyCFunctionObject*)m)->m_module); +#endif Py_CLEAR(m->func_dict); Py_CLEAR(m->func_name); Py_CLEAR(m->func_qualname); Py_CLEAR(m->func_doc); Py_CLEAR(m->func_globals); Py_CLEAR(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API #if PY_VERSION_HEX < 0x030900B1 Py_CLEAR(__Pyx_CyFunction_GetClassObj(m)); #else @@ -10066,6 +10859,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) ((PyCMethodObject *) (m))->mm_class = NULL; Py_XDECREF(cls); } +#endif #endif Py_CLEAR(m->defaults_tuple); Py_CLEAR(m->defaults_kwdict); @@ -10096,14 +10890,20 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { Py_VISIT(m->func_closure); +#if CYTHON_COMPILING_IN_LIMITED_API + Py_VISIT(m->func); +#else Py_VISIT(((PyCFunctionObject*)m)->m_module); +#endif Py_VISIT(m->func_dict); Py_VISIT(m->func_name); Py_VISIT(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); Py_VISIT(m->func_code); +#if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); +#endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); @@ -10127,10 +10927,22 @@ __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) #endif } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *f = ((__pyx_CyFunctionObject*)func)->func; + PyObject *py_name = NULL; + PyCFunction meth; + int flags; + meth = PyCFunction_GetFunction(f); + if (unlikely(!meth)) return NULL; + flags = PyCFunction_GetFlags(f); + if (unlikely(flags < 0)) return NULL; +#else PyCFunctionObject* f = (PyCFunctionObject*)func; PyCFunction meth = f->m_ml->ml_meth; + int flags = f->m_ml->ml_flags; +#endif Py_ssize_t size; - switch (f->m_ml->ml_flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { + switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { case METH_VARARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) return (*meth)(self, arg); @@ -10139,24 +10951,43 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 0)) return (*meth)(self, NULL); +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { +#if CYTHON_ASSUME_SAFE_MACROS size = PyTuple_GET_SIZE(arg); +#else + size = PyTuple_Size(arg); + if (unlikely(size < 0)) return NULL; +#endif if (likely(size == 1)) { PyObject *result, *arg0; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS arg0 = PyTuple_GET_ITEM(arg, 0); #else - arg0 = PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; + arg0 = __Pyx_PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; #endif result = (*meth)(self, arg0); #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) @@ -10164,9 +10995,18 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, + "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, size); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", f->m_ml->ml_name, size); +#endif return NULL; } break; @@ -10174,12 +11014,28 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } +#if CYTHON_COMPILING_IN_LIMITED_API + py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); + if (!py_name) return NULL; + PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", + py_name); + Py_DECREF(py_name); +#else PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", f->m_ml->ml_name); +#endif return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { - return __Pyx_CyFunction_CallMethod(func, ((PyCFunctionObject*)func)->m_self, arg, kw); + PyObject *self, *result; +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)func)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else + self = ((PyCFunctionObject*)func)->m_self; +#endif + result = __Pyx_CyFunction_CallMethod(func, self, arg, kw); + return result; } static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; @@ -10199,7 +11055,12 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; +#if CYTHON_ASSUME_SAFE_MACROS argc = PyTuple_GET_SIZE(args); +#else + argc = PyTuple_Size(args); + if (unlikely(!argc) < 0) return NULL; +#endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) return NULL; @@ -10324,7 +11185,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, default: return NULL; } - return ((_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { @@ -10412,7 +11273,7 @@ static PyTypeObject __pyx_CyFunctionType_type = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#ifdef _Py_TPFLAGS_HAVE_VECTORCALL +#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL _Py_TPFLAGS_HAVE_VECTORCALL | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, @@ -10453,13 +11314,13 @@ static PyTypeObject __pyx_CyFunctionType_type = { #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, #endif -#if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 +#if __PYX_NEED_TP_PRINT_SLOT 0, #endif #if PY_VERSION_HEX >= 0x030C0000 0, #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, #endif }; @@ -10664,20 +11525,93 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif #include "internal/pycore_frame.h" #endif #if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict, + PyObject *firstlineno, PyObject *name) { + PyObject *replace = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; + replace = PyObject_GetAttrString(code, "replace"); + if (likely(replace)) { + PyObject *result; + result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + Py_DECREF(replace); + return result; + } + PyErr_Clear(); + #if __PYX_LIMITED_VERSION_HEX < 0x030780000 + { + PyObject *compiled = NULL, *result = NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; + if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; + compiled = Py_CompileString( + "out = type(code)(\n" + " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" + " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" + " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" + " code.co_lnotab)\n", "", Py_file_input); + if (!compiled) return NULL; + result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); + Py_DECREF(compiled); + if (!result) PyErr_Print(); + Py_DECREF(result); + result = PyDict_GetItemString(scratch_dict, "out"); + if (result) Py_INCREF(result); + return result; + } + #else + return NULL; + #endif +} static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { + PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL; + PyObject *replace = NULL, *getframe = NULL, *frame = NULL; + PyObject *exc_type, *exc_value, *exc_traceback; + int success = 0; if (c_line) { (void) __pyx_cfilenm; (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } - _PyTraceback_Add(funcname, filename, py_line); + PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + getframe = PySys_GetObject("_getframe"); + if (unlikely(!getframe)) goto bad; + if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; + frame = PyEval_EvalCode(code_object, dict, dict); + if (unlikely(!frame) || frame == Py_None) goto bad; + success = 1; + bad: + PyErr_Restore(exc_type, exc_value, exc_traceback); + Py_XDECREF(code_object); + Py_XDECREF(py_py_line); + Py_XDECREF(py_funcname); + Py_XDECREF(dict); + Py_XDECREF(replace); + if (success) { + PyTraceBack_Here( + (struct _frame*)frame); + } + Py_XDECREF(frame); } #else static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( @@ -10730,7 +11664,7 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( #else py_code = PyCode_NewEmpty(filename, funcname, py_line); #endif - Py_XDECREF(py_funcname); // XDECREF since it's only set on Py3 if cline + Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); @@ -10828,40 +11762,45 @@ static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (size_t) 0; - case 1: __PYX_VERIFY_RETURN_INT(size_t, digit, digits[0]) - case 2: - if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 2 * PyLong_SHIFT)) { - return (size_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) >= 2 * PyLong_SHIFT)) { + return (size_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 3 * PyLong_SHIFT)) { - return (size_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + break; + case 3: + if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) >= 3 * PyLong_SHIFT)) { + return (size_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 4 * PyLong_SHIFT)) { - return (size_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + break; + case 4: + if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) >= 4 * PyLong_SHIFT)) { + return (size_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -10883,65 +11822,67 @@ static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (size_t) 0; - case -1: __PYX_VERIFY_RETURN_INT(size_t, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(size_t, digit, +digits[0]) - case -2: - if ((8 * sizeof(size_t) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(size_t) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { + return (size_t) (((size_t)-1)*(((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - return (size_t) ((((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + break; + case 2: + if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { + return (size_t) ((((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + break; + case -3: + if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { + return (size_t) (((size_t)-1)*(((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - return (size_t) ((((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + break; + case 3: + if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { + return (size_t) ((((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + break; + case -4: + if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { + return (size_t) (((size_t)-1)*(((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { - return (size_t) ((((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + break; + case 4: + if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { + return (size_t) ((((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(size_t) <= sizeof(long))) { @@ -10953,30 +11894,100 @@ static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else size_t val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (size_t) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (size_t) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (size_t) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (size_t) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (size_t) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(size_t) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((size_t) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(size_t) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((size_t) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((size_t) 1) << (sizeof(size_t) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (size_t) -1; } } else { @@ -11006,7 +12017,8 @@ __Pyx_PyType_GetName(PyTypeObject* tp) __pyx_n_s_name); if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { PyErr_Clear(); - Py_XSETREF(name, __Pyx_NewRef(__pyx_n_s__19)); + Py_XDECREF(name); + name = __Pyx_NewRef(__pyx_n_s__19); } return name; } @@ -11045,8 +12057,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { { int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); +#else + PyObject *from_bytes, *result = NULL; + PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + arg_tuple = PyTuple_Pack(2, py_bytes, order_str); + if (!arg_tuple) goto limited_bad; + if (!is_unsigned) { + kwds = PyDict_New(); + if (!kwds) goto limited_bad; + if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + } + result = PyObject_Call(from_bytes, arg_tuple, kwds); + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(arg_tuple); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } } @@ -11077,40 +12115,45 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -11132,65 +12175,67 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(long) <= sizeof(long))) { @@ -11202,30 +12247,100 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else long val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (long) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (long) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (long) -1; } } else { @@ -11273,40 +12388,45 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { if (likely(PyLong_Check(x))) { if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } } - } - break; + break; + } } #endif -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } @@ -11328,65 +12448,67 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } else { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(x); - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } } - } - break; + break; + } } #endif if ((sizeof(int) <= sizeof(long))) { @@ -11398,30 +12520,100 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } { -#if (CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available, cannot convert large numbers"); -#else int val; PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 +#if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; v = PyNumber_Long(tmp); Py_DECREF(tmp); } - #endif +#endif if (likely(v)) { + int ret = -1; +#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) int one = 1; int is_little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); + ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + long idigit; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (unlikely(!PyLong_CheckExact(v))) { + PyObject *tmp = v; + v = PyNumber_Long(v); + assert(PyLong_CheckExact(v)); + Py_DECREF(tmp); + if (unlikely(!v)) return (int) -1; + } +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(x) == 0) + return (int) 0; + is_negative = Py_SIZE(x) < 0; +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + is_negative = result == 1; + } +#endif + if (is_unsigned && unlikely(is_negative)) { + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = __Pyx_NewRef(v); + } + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + if (Py_SIZE(stepval) == 0) + goto unpacking_done; + #endif + } + idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 + unpacking_done: + #endif + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif Py_DECREF(v); if (likely(!ret)) return val; } -#endif return (int) -1; } } else { @@ -11559,41 +12751,50 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #endif /* CheckBinaryVersion */ -static int __Pyx_check_binary_version(void) { - char ctversion[5]; - int same=1, i, found_dot; - const char* rt_from_call = Py_GetVersion(); - PyOS_snprintf(ctversion, 5, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - found_dot = 0; - for (i = 0; i < 4; i++) { - if (!ctversion[i]) { - same = (rt_from_call[i] < '0' || rt_from_call[i] > '9'); - break; +static unsigned long __Pyx_get_runtime_version(void) { +#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4 + return Py_Version & ~0xFFUL; +#else + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; } - if (rt_from_call[i] != ctversion[i]) { - same = 0; + version += factor * digit; + if (rt_version[i] != '.') break; - } + digit = 0; + factor >>= 8; + ++i; } - if (!same) { - char rtversion[5] = {'\0'}; + return version; +#endif +} +static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { + const unsigned long MAJOR_MINOR = 0xFFFF0000UL; + if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) + return 0; + if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR))) + return 1; + { char message[200]; - for (i=0; i<4; ++i) { - if (rt_from_call[i] == '.') { - if (found_dot) break; - found_dot = 1; - } else if (rt_from_call[i] < '0' || rt_from_call[i] > '9') { - break; - } - rtversion[i] = rt_from_call[i]; - } PyOS_snprintf(message, sizeof(message), - "compile time version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); + "compile time Python version %d.%d " + "of module '%.100s' " + "%s " + "runtime version %d.%d", + (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF), + __Pyx_MODULE_NAME, + (allow_newer) ? "was newer than" : "does not match", + (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF) + ); return PyErr_WarnEx(NULL, message, 1); } - return 0; } /* FunctionExport */ @@ -11672,8 +12873,24 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { return 0; } +#include +static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) { + size_t len = strlen(s); + if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) { + PyErr_SetString(PyExc_OverflowError, "byte string is too long"); + return -1; + } + return (Py_ssize_t) len; +} static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { - return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return __Pyx_PyUnicode_FromStringAndSize(c_str, len); +} +static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) { + Py_ssize_t len = __Pyx_ssize_strlen(c_str); + if (unlikely(len < 0)) return NULL; + return PyByteArray_FromStringAndSize(c_str, len); } static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; @@ -11842,13 +13059,11 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { #endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = __Pyx_PyLong_Digits(b); - const Py_ssize_t size = Py_SIZE(b); - if (likely(__Pyx_sst_abs(size) <= 1)) { - ival = likely(size) ? digits[0] : 0; - if (size == -1) ival = -ival; - return ival; + if (likely(__Pyx_PyLong_IsCompact(b))) { + return __Pyx_PyLong_CompactValue(b); } else { + const digit* digits = __Pyx_PyLong_Digits(b); + const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b); switch (size) { case 2: if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { @@ -11917,7 +13132,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { /* #### Code section: utility_code_pragmas_end ### */ -#if _MSV_VER +#ifdef _MSC_VER #pragma warning( pop ) #endif From 30f4751d7d848afa6cc8badd48024cd1abd881f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 16:55:48 +0300 Subject: [PATCH 06/80] Fix test issues. --- tests/test_remote.py | 4 ++-- tox.ini | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_remote.py b/tests/test_remote.py index f9e0fb3..6574cc8 100644 --- a/tests/test_remote.py +++ b/tests/test_remote.py @@ -73,7 +73,7 @@ def test_manhole_clean_exit(): 'line time.sleep(1)', 'return <= stuff: None', ) - target.reset() + target.buff.reset() tracer.proc.send_signal(signal.SIGINT) wait_for_strings( target.read, @@ -120,6 +120,6 @@ def test_gdb_clean_exit(): 'line time.sleep(1)', 'return <= stuff: None', ) - target.reset() + target.buff.reset() tracer.proc.send_signal(signal.SIGINT) wait_for_strings(target.read, TIMEOUT, 'Doing stuff', 'Doing stuff', 'Doing stuff') diff --git a/tox.ini b/tox.ini index 9e3d52e..b32461e 100644 --- a/tox.ini +++ b/tox.ini @@ -43,7 +43,7 @@ deps = pytest-benchmark cover: pytest-cov {cython,cover}: cython==3.0.10 - manhole==1.8.0 + manhole process-tests setuptools-scm aspectlib From ca5be90f925c55eeba57ac5695ed3bc1b0c93565 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 16:55:54 +0300 Subject: [PATCH 07/80] Update changelog. --- CHANGELOG.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 1dc8a56..1150c70 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,15 @@ Changelog ========= +3.7.0 (2024-05-01) +------------------ + +* Drop support for Python 3.7. +* Upgrade linters and refactor various string formatting and other cleanups. +* Upgrade Cython to latest release (3.0.10). +* Linux wheels should be back now. +* Switched docs theme to furo. + 3.6.1 (2023-04-26) ------------------ From f51275f9205dc2f8192555b08f61421d63a39a75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 19:38:13 +0300 Subject: [PATCH 08/80] Fix osx arch. --- .github/workflows/github-actions.yml | 128 +++++++++--------- .../.github/workflows/github-actions.yml | 2 +- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 8048dbc..2f707ba 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -37,13 +37,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py38-pure-cover (macos/x86_64)' + - name: 'py38-pure-cover (macos/arm64)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py38-pure-nocov (ubuntu/x86_64)' @@ -62,12 +62,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py38-pure-nocov (macos/x86_64)' + - name: 'py38-pure-nocov (macos/arm64)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py38-cython-cover (ubuntu/x86_64)' @@ -88,13 +88,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py38-cython-cover (macos/x86_64)' + - name: 'py38-cython-cover (macos/arm64)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py38-cython-nocov (ubuntu/x86_64/manylinux)' @@ -145,12 +145,12 @@ jobs: cibw_arch: 'x86' cibw_build: 'cp38-*' os: 'windows-latest' - - name: 'py38-cython-nocov (macos/x86_64)' + - name: 'py38-cython-nocov (macos/arm64)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: 'cp38-*' os: 'macos-latest' - name: 'py39-pure-cover (ubuntu/x86_64)' @@ -171,13 +171,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py39-pure-cover (macos/x86_64)' + - name: 'py39-pure-cover (macos/arm64)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py39-pure-nocov (ubuntu/x86_64)' @@ -196,12 +196,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py39-pure-nocov (macos/x86_64)' + - name: 'py39-pure-nocov (macos/arm64)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py39-cython-cover (ubuntu/x86_64)' @@ -222,13 +222,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py39-cython-cover (macos/x86_64)' + - name: 'py39-cython-cover (macos/arm64)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py39-cython-nocov (ubuntu/x86_64/manylinux)' @@ -279,12 +279,12 @@ jobs: cibw_arch: 'x86' cibw_build: 'cp39-*' os: 'windows-latest' - - name: 'py39-cython-nocov (macos/x86_64)' + - name: 'py39-cython-nocov (macos/arm64)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: 'cp39-*' os: 'macos-latest' - name: 'py310-pure-cover (ubuntu/x86_64)' @@ -305,13 +305,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py310-pure-cover (macos/x86_64)' + - name: 'py310-pure-cover (macos/arm64)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py310-pure-nocov (ubuntu/x86_64)' @@ -330,12 +330,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py310-pure-nocov (macos/x86_64)' + - name: 'py310-pure-nocov (macos/arm64)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py310-cython-cover (ubuntu/x86_64)' @@ -356,13 +356,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py310-cython-cover (macos/x86_64)' + - name: 'py310-cython-cover (macos/arm64)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py310-cython-nocov (ubuntu/x86_64/manylinux)' @@ -413,12 +413,12 @@ jobs: cibw_arch: 'x86' cibw_build: 'cp310-*' os: 'windows-latest' - - name: 'py310-cython-nocov (macos/x86_64)' + - name: 'py310-cython-nocov (macos/arm64)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: 'cp310-*' os: 'macos-latest' - name: 'py311-pure-cover (ubuntu/x86_64)' @@ -439,13 +439,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py311-pure-cover (macos/x86_64)' + - name: 'py311-pure-cover (macos/arm64)' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py311-pure-nocov (ubuntu/x86_64)' @@ -464,12 +464,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py311-pure-nocov (macos/x86_64)' + - name: 'py311-pure-nocov (macos/arm64)' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py311-cython-cover (ubuntu/x86_64)' @@ -490,13 +490,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py311-cython-cover (macos/x86_64)' + - name: 'py311-cython-cover (macos/arm64)' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py311-cython-nocov (ubuntu/x86_64/manylinux)' @@ -547,12 +547,12 @@ jobs: cibw_arch: 'x86' cibw_build: 'cp311-*' os: 'windows-latest' - - name: 'py311-cython-nocov (macos/x86_64)' + - name: 'py311-cython-nocov (macos/arm64)' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: 'cp311-*' os: 'macos-latest' - name: 'py312-pure-cover (ubuntu/x86_64)' @@ -573,13 +573,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py312-pure-cover (macos/x86_64)' + - name: 'py312-pure-cover (macos/arm64)' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py312-pure-nocov (ubuntu/x86_64)' @@ -598,12 +598,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py312-pure-nocov (macos/x86_64)' + - name: 'py312-pure-nocov (macos/arm64)' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py312-cython-cover (ubuntu/x86_64)' @@ -624,13 +624,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py312-cython-cover (macos/x86_64)' + - name: 'py312-cython-cover (macos/arm64)' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'py312-cython-nocov (ubuntu/x86_64/manylinux)' @@ -681,12 +681,12 @@ jobs: cibw_arch: 'x86' cibw_build: 'cp312-*' os: 'windows-latest' - - name: 'py312-cython-nocov (macos/x86_64)' + - name: 'py312-cython-nocov (macos/arm64)' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: 'cp312-*' os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' @@ -707,13 +707,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-pure-cover (macos/x86_64)' + - name: 'pypy38-pure-cover (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy38-pure-nocov (ubuntu/x86_64)' @@ -732,12 +732,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-pure-nocov (macos/x86_64)' + - name: 'pypy38-pure-nocov (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy38-cython-cover (ubuntu/x86_64)' @@ -758,13 +758,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-cython-cover (macos/x86_64)' + - name: 'pypy38-cython-cover (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy38-cython-nocov (ubuntu/x86_64/manylinux)' @@ -783,12 +783,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-cython-nocov (macos/x86_64)' + - name: 'pypy38-cython-nocov (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy39-pure-cover (ubuntu/x86_64)' @@ -809,13 +809,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy39-pure-cover (macos/x86_64)' + - name: 'pypy39-pure-cover (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy39-pure-nocov (ubuntu/x86_64)' @@ -834,12 +834,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy39-pure-nocov (macos/x86_64)' + - name: 'pypy39-pure-nocov (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy39-cython-cover (ubuntu/x86_64)' @@ -860,13 +860,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy39-cython-cover (macos/x86_64)' + - name: 'pypy39-cython-cover (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy39-cython-nocov (ubuntu/x86_64/manylinux)' @@ -885,12 +885,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy39-cython-nocov (macos/x86_64)' + - name: 'pypy39-cython-nocov (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy310-pure-cover (ubuntu/x86_64)' @@ -911,13 +911,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy310-pure-cover (macos/x86_64)' + - name: 'pypy310-pure-cover (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-pure-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy310-pure-nocov (ubuntu/x86_64)' @@ -936,12 +936,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy310-pure-nocov (macos/x86_64)' + - name: 'pypy310-pure-nocov (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-pure-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy310-cython-cover (ubuntu/x86_64)' @@ -962,13 +962,13 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy310-cython-cover (macos/x86_64)' + - name: 'pypy310-cython-cover (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-cython-cover' cover: true - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - name: 'pypy310-cython-nocov (ubuntu/x86_64/manylinux)' @@ -987,12 +987,12 @@ jobs: cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy310-cython-nocov (macos/x86_64)' + - name: 'pypy310-cython-nocov (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-cython-nocov' - cibw_arch: 'x86_64' + cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' steps: diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 7dad0fb..d0b1a66 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -37,7 +37,7 @@ jobs: ['ubuntu', 'x64', 'aarch64', '*musllinux*', False], ['windows', 'x64', 'AMD64', '*', True], ['windows', 'x86', 'x86', '*', False], - ['macos', 'x64', 'x86_64', '*', True], + ['macos', 'x64', 'arm64', '*', True], ] %} {% if include_cover or (env.endswith('cython-nocov') and not prefix.startswith('pypy')) %} {% set wheel_suffix = env.endswith('cython-nocov') and wheel_arch.strip('*') %} From 3fbc676721518884a8194ca059656ffb8dd802cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 23:40:33 +0300 Subject: [PATCH 09/80] XFail these on 3.12, ref https://github.com/cython/cython/issues/5470 --- tests/test_tracer.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tests/test_tracer.py b/tests/test_tracer.py index f01ab6c..c038e39 100644 --- a/tests/test_tracer.py +++ b/tests/test_tracer.py @@ -842,7 +842,10 @@ def foo(): assert ('return', __name__, 'foo', 0) in calls -@pytest.mark.xfail(reason="TODO: Check what's going on with Cython 3.0") +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, see https://github.com/cython/cython/issues/5470", +) def test_source_cython(LineMatcher): pytest.importorskip('sample5') calls = [] @@ -884,6 +887,10 @@ def foo(): ) +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, see https://github.com/cython/cython/issues/5470", +) def test_fullsource_cython(LineMatcher): pytest.importorskip('sample5') calls = [] From 1b23eda7a959a88a26e7dddf4e6e5da20436bef8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 1 May 2024 23:41:06 +0300 Subject: [PATCH 10/80] Rework envs so test cython extension is always built for cpython. --- .github/workflows/github-actions.yml | 670 --------------------------- tox.ini | 15 +- 2 files changed, 8 insertions(+), 677 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 2f707ba..15d660e 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -19,676 +19,6 @@ jobs: toxpython: 'python3.11' tox_env: 'docs' os: 'ubuntu-latest' - - name: 'py38-pure-cover (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py38-pure-cover (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py38-pure-cover (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py38-pure-nocov (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py38-pure-nocov (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py38-pure-nocov (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py38-cython-cover (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py38-cython-cover (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py38-cython-cover (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py38-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp38-*manylinux*' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp38-*musllinux*' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp38-*manylinux*' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp38-*musllinux*' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp38-*' - os: 'windows-latest' - - name: 'py38-cython-nocov (windows/x86)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x86' - tox_env: 'py38-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp38-*' - os: 'windows-latest' - - name: 'py38-cython-nocov (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp38-*' - os: 'macos-latest' - - name: 'py39-pure-cover (ubuntu/x86_64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py39-pure-cover (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py39-pure-cover (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py39-pure-nocov (ubuntu/x86_64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py39-pure-nocov (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py39-pure-nocov (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py39-cython-cover (ubuntu/x86_64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py39-cython-cover (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py39-cython-cover (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py39-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp39-*manylinux*' - os: 'ubuntu-latest' - - name: 'py39-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp39-*musllinux*' - os: 'ubuntu-latest' - - name: 'py39-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp39-*manylinux*' - os: 'ubuntu-latest' - - name: 'py39-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp39-*musllinux*' - os: 'ubuntu-latest' - - name: 'py39-cython-nocov (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp39-*' - os: 'windows-latest' - - name: 'py39-cython-nocov (windows/x86)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x86' - tox_env: 'py39-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp39-*' - os: 'windows-latest' - - name: 'py39-cython-nocov (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'py39-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp39-*' - os: 'macos-latest' - - name: 'py310-pure-cover (ubuntu/x86_64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py310-pure-cover (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py310-pure-cover (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py310-pure-nocov (ubuntu/x86_64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py310-pure-nocov (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py310-pure-nocov (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py310-cython-cover (ubuntu/x86_64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py310-cython-cover (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py310-cython-cover (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py310-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp310-*manylinux*' - os: 'ubuntu-latest' - - name: 'py310-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp310-*musllinux*' - os: 'ubuntu-latest' - - name: 'py310-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp310-*manylinux*' - os: 'ubuntu-latest' - - name: 'py310-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp310-*musllinux*' - os: 'ubuntu-latest' - - name: 'py310-cython-nocov (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp310-*' - os: 'windows-latest' - - name: 'py310-cython-nocov (windows/x86)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x86' - tox_env: 'py310-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp310-*' - os: 'windows-latest' - - name: 'py310-cython-nocov (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'py310-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp310-*' - os: 'macos-latest' - - name: 'py311-pure-cover (ubuntu/x86_64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py311-pure-cover (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py311-pure-cover (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py311-pure-nocov (ubuntu/x86_64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py311-pure-nocov (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py311-pure-nocov (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py311-cython-cover (ubuntu/x86_64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py311-cython-cover (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py311-cython-cover (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py311-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp311-*manylinux*' - os: 'ubuntu-latest' - - name: 'py311-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp311-*musllinux*' - os: 'ubuntu-latest' - - name: 'py311-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp311-*manylinux*' - os: 'ubuntu-latest' - - name: 'py311-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp311-*musllinux*' - os: 'ubuntu-latest' - - name: 'py311-cython-nocov (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp311-*' - os: 'windows-latest' - - name: 'py311-cython-nocov (windows/x86)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x86' - tox_env: 'py311-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp311-*' - os: 'windows-latest' - - name: 'py311-cython-nocov (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'py311-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp311-*' - os: 'macos-latest' - - name: 'py312-pure-cover (ubuntu/x86_64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py312-pure-cover (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py312-pure-cover (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py312-pure-nocov (ubuntu/x86_64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py312-pure-nocov (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py312-pure-nocov (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py312-cython-cover (ubuntu/x86_64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py312-cython-cover (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py312-cython-cover (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py312-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp312-*manylinux*' - os: 'ubuntu-latest' - - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp312-*musllinux*' - os: 'ubuntu-latest' - - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp312-*manylinux*' - os: 'ubuntu-latest' - - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp312-*musllinux*' - os: 'ubuntu-latest' - - name: 'py312-cython-nocov (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp312-*' - os: 'windows-latest' - - name: 'py312-cython-nocov (windows/x86)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x86' - tox_env: 'py312-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp312-*' - os: 'windows-latest' - - name: 'py312-cython-nocov (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'py312-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp312-*' - os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' toxpython: 'pypy3.8' diff --git a/tox.ini b/tox.ini index b32461e..075f681 100644 --- a/tox.ini +++ b/tox.ini @@ -14,7 +14,8 @@ envlist = clean, check, docs, - {py38,py39,py310,py311,py312,pypy38,pypy39,pypy310}-{pure,cython}-{cover,nocov}, + {cpy,pypy}{38,39,310}-{pure,cython}-{cover,nocov}, + {cpy}{311,312}-{pure,cython}-{cover,nocov}, report ignore_basepython_conflict = true @@ -23,11 +24,11 @@ basepython = pypy38: {env:TOXPYTHON:pypy3.8} pypy39: {env:TOXPYTHON:pypy3.9} pypy310: {env:TOXPYTHON:pypy3.10} - py38: {env:TOXPYTHON:python3.8} - py39: {env:TOXPYTHON:python3.9} - py310: {env:TOXPYTHON:python3.10} - py311: {env:TOXPYTHON:python3.11} - py312: {env:TOXPYTHON:python3.12} + cpy38: {env:TOXPYTHON:python3.8} + cpy39: {env:TOXPYTHON:python3.9} + cpy310: {env:TOXPYTHON:python3.10} + cpy311: {env:TOXPYTHON:python3.11} + cpy312: {env:TOXPYTHON:python3.12} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests @@ -52,7 +53,7 @@ deps = tzdata ipdb commands = - {py27,py3,py33,py34,py35,py36,py36,py37,py38,py39,py310,py311}: python tests/setup.py clean --all build_ext --force --inplace + cpy: python tests/setup.py clean --all build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From af36ce7aba5d26c2e277b97a8411387fcdaf1be1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 04:20:57 +0300 Subject: [PATCH 11/80] Fix missing envs. --- .github/workflows/github-actions.yml | 670 ++++++++++++++++++ ci/bootstrap.py | 2 +- .../.github/workflows/github-actions.yml | 6 +- 3 files changed, 674 insertions(+), 4 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 15d660e..cdbde06 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -19,6 +19,408 @@ jobs: toxpython: 'python3.11' tox_env: 'docs' os: 'ubuntu-latest' + - name: 'cpy38-pure-cover (ubuntu/x86_64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy38-pure-cover (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy38-pure-cover (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy38-pure-nocov (ubuntu/x86_64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy38-pure-nocov (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy38-pure-nocov (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy38-cython-cover (ubuntu/x86_64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy38-cython-cover (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy38-cython-cover (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy38-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp38-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy38-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp38-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy38-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp38-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy38-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp38-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy38-cython-nocov (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp38-*' + os: 'windows-latest' + - name: 'cpy38-cython-nocov (windows/x86)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x86' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp38-*' + os: 'windows-latest' + - name: 'cpy38-cython-nocov (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'cpy38-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp38-*' + os: 'macos-latest' + - name: 'cpy39-pure-cover (ubuntu/x86_64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy39-pure-cover (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy39-pure-cover (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy39-pure-nocov (ubuntu/x86_64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy39-pure-nocov (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy39-pure-nocov (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy39-cython-cover (ubuntu/x86_64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy39-cython-cover (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy39-cython-cover (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy39-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp39-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy39-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp39-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy39-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp39-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy39-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp39-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy39-cython-nocov (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp39-*' + os: 'windows-latest' + - name: 'cpy39-cython-nocov (windows/x86)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x86' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp39-*' + os: 'windows-latest' + - name: 'cpy39-cython-nocov (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'cpy39-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp39-*' + os: 'macos-latest' + - name: 'cpy310-pure-cover (ubuntu/x86_64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy310-pure-cover (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy310-pure-cover (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy310-pure-nocov (ubuntu/x86_64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy310-pure-nocov (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy310-pure-nocov (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy310-cython-cover (ubuntu/x86_64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy310-cython-cover (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy310-cython-cover (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy310-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp310-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy310-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp310-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy310-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp310-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy310-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp310-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy310-cython-nocov (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp310-*' + os: 'windows-latest' + - name: 'cpy310-cython-nocov (windows/x86)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x86' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp310-*' + os: 'windows-latest' + - name: 'cpy310-cython-nocov (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'cpy310-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp310-*' + os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' toxpython: 'pypy3.8' @@ -325,6 +727,274 @@ jobs: cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' + - name: 'cpy311-pure-cover (ubuntu/x86_64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy311-pure-cover (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy311-pure-cover (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy311-pure-nocov (ubuntu/x86_64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy311-pure-nocov (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy311-pure-nocov (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy311-cython-cover (ubuntu/x86_64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy311-cython-cover (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy311-cython-cover (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy311-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp311-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy311-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp311-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy311-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp311-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy311-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp311-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy311-cython-nocov (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp311-*' + os: 'windows-latest' + - name: 'cpy311-cython-nocov (windows/x86)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x86' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp311-*' + os: 'windows-latest' + - name: 'cpy311-cython-nocov (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'cpy311-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp311-*' + os: 'macos-latest' + - name: 'cpy312-pure-cover (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy312-pure-cover (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy312-pure-cover (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy312-pure-nocov (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy312-pure-nocov (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy312-pure-nocov (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy312-cython-cover (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'cpy312-cython-cover (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'cpy312-cython-cover (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'cpy312-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp312-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy312-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp312-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy312-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp312-*manylinux*' + os: 'ubuntu-latest' + - name: 'cpy312-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp312-*musllinux*' + os: 'ubuntu-latest' + - name: 'cpy312-cython-nocov (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp312-*' + os: 'windows-latest' + - name: 'cpy312-cython-nocov (windows/x86)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x86' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp312-*' + os: 'windows-latest' + - name: 'cpy312-cython-nocov (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'cpy312-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp312-*' + os: 'macos-latest' steps: - uses: docker/setup-qemu-action@v3 if: matrix.cibw_arch == 'aarch64' diff --git a/ci/bootstrap.py b/ci/bootstrap.py index f3c9a7e..bf309ec 100755 --- a/ci/bootstrap.py +++ b/ci/bootstrap.py @@ -61,7 +61,7 @@ def main(): # invokes this bootstrap.py itself. for line in subprocess.check_output([sys.executable, '-m', 'tox', '--listenvs'], universal_newlines=True).splitlines() ] - tox_environments = [line for line in tox_environments if line.startswith('py')] + tox_environments = [line for line in tox_environments if line.startswith(('cpy', 'pypy'))] for template in templates_path.rglob('*'): if template.is_file(): template_path = template.relative_to(templates_path).as_posix() diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index d0b1a66..209c15a 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -26,9 +26,9 @@ jobs: {% set cpython %}pp{{ prefix[4:5] }}{% endset %} {% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% else %} -{% set python %}{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} -{% set cpython %}cp{{ prefix[2:] }}{% endset %} -{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} +{% set python %}{{ prefix[3] }}.{{ prefix[4:] }}{% endset %} +{% set cpython %}cp{{ prefix[3:] }}{% endset %} +{% set toxpython %}python{{ prefix[3] }}.{{ prefix[4:] }}{% endset %} {% endif %} {% for os, python_arch, cibw_arch, wheel_arch, include_cover in [ ['ubuntu', 'x64', 'x86_64', '*manylinux*', True], From 5cd0f61daace1c525eeb1a7b6460d434d09f6c4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 04:21:13 +0300 Subject: [PATCH 12/80] Make sure it output ints. --- src/hunter/util.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/hunter/util.py b/src/hunter/util.py index 9acc2ed..e25d0d5 100644 --- a/src/hunter/util.py +++ b/src/hunter/util.py @@ -181,12 +181,23 @@ def safe_repr(obj, maxdepth=5): return repr(obj) elif obj_type is datetime: return ( - f'{obj_type.__name__}({obj.year}, {obj.month}, {obj.day}, {obj.hour}, {obj.minute}, {obj.second}, {obj.microsecond}, ' + f'{obj_type.__name__}(' + f'{obj.year:d}, ' + f'{obj.month:d}, ' + f'{obj.day:d}, ' + f'{obj.hour:d}, ' + f'{obj.minute:d}, ' + f'{obj.second:d}, ' + f'{obj.microsecond:d}, ' f'tzinfo={safe_repr(obj.tzinfo)}{f", fold={safe_repr(obj.fold)}" if hasattr(obj, "fold") else ""})' ) elif obj_type is time: return ( - f'{obj_type.__name__}({obj.hour}, {obj.minute}, {obj.second}, {obj.microsecond}, ' + f'{obj_type.__name__}(' + f'{obj.hour:d}, ' + f'{obj.minute:d}, ' + f'{obj.second:d}, ' + f'{obj.microsecond:d}, ' f'tzinfo={safe_repr(obj.tzinfo)}{f", fold={safe_repr(obj.fold)}" if hasattr(obj, "fold") else ""})' ) elif obj_type is types.MethodType: From a15697d43be4068799194e418a3de4a96aa6889e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 04:32:08 +0300 Subject: [PATCH 13/80] Fix arch this time. --- .github/workflows/github-actions.yml | 64 +++++++++---------- .../.github/workflows/github-actions.yml | 2 +- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index cdbde06..f8a14af 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -40,7 +40,7 @@ jobs: - name: 'cpy38-pure-cover (macos/arm64)' python: '3.8' toxpython: 'python3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy38-pure-cover' cover: true cibw_arch: 'arm64' @@ -65,7 +65,7 @@ jobs: - name: 'cpy38-pure-nocov (macos/arm64)' python: '3.8' toxpython: 'python3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy38-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -91,7 +91,7 @@ jobs: - name: 'cpy38-cython-cover (macos/arm64)' python: '3.8' toxpython: 'python3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy38-cython-cover' cover: true cibw_arch: 'arm64' @@ -148,7 +148,7 @@ jobs: - name: 'cpy38-cython-nocov (macos/arm64)' python: '3.8' toxpython: 'python3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy38-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp38-*' @@ -174,7 +174,7 @@ jobs: - name: 'cpy39-pure-cover (macos/arm64)' python: '3.9' toxpython: 'python3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy39-pure-cover' cover: true cibw_arch: 'arm64' @@ -199,7 +199,7 @@ jobs: - name: 'cpy39-pure-nocov (macos/arm64)' python: '3.9' toxpython: 'python3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy39-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -225,7 +225,7 @@ jobs: - name: 'cpy39-cython-cover (macos/arm64)' python: '3.9' toxpython: 'python3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy39-cython-cover' cover: true cibw_arch: 'arm64' @@ -282,7 +282,7 @@ jobs: - name: 'cpy39-cython-nocov (macos/arm64)' python: '3.9' toxpython: 'python3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy39-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp39-*' @@ -308,7 +308,7 @@ jobs: - name: 'cpy310-pure-cover (macos/arm64)' python: '3.10' toxpython: 'python3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy310-pure-cover' cover: true cibw_arch: 'arm64' @@ -333,7 +333,7 @@ jobs: - name: 'cpy310-pure-nocov (macos/arm64)' python: '3.10' toxpython: 'python3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy310-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -359,7 +359,7 @@ jobs: - name: 'cpy310-cython-cover (macos/arm64)' python: '3.10' toxpython: 'python3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy310-cython-cover' cover: true cibw_arch: 'arm64' @@ -416,7 +416,7 @@ jobs: - name: 'cpy310-cython-nocov (macos/arm64)' python: '3.10' toxpython: 'python3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy310-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp310-*' @@ -442,7 +442,7 @@ jobs: - name: 'pypy38-pure-cover (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy38-pure-cover' cover: true cibw_arch: 'arm64' @@ -467,7 +467,7 @@ jobs: - name: 'pypy38-pure-nocov (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy38-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -493,7 +493,7 @@ jobs: - name: 'pypy38-cython-cover (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy38-cython-cover' cover: true cibw_arch: 'arm64' @@ -518,7 +518,7 @@ jobs: - name: 'pypy38-cython-nocov (macos/arm64)' python: 'pypy-3.8' toxpython: 'pypy3.8' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy38-cython-nocov' cibw_arch: 'arm64' cibw_build: false @@ -544,7 +544,7 @@ jobs: - name: 'pypy39-pure-cover (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy39-pure-cover' cover: true cibw_arch: 'arm64' @@ -569,7 +569,7 @@ jobs: - name: 'pypy39-pure-nocov (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy39-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -595,7 +595,7 @@ jobs: - name: 'pypy39-cython-cover (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy39-cython-cover' cover: true cibw_arch: 'arm64' @@ -620,7 +620,7 @@ jobs: - name: 'pypy39-cython-nocov (macos/arm64)' python: 'pypy-3.9' toxpython: 'pypy3.9' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy39-cython-nocov' cibw_arch: 'arm64' cibw_build: false @@ -646,7 +646,7 @@ jobs: - name: 'pypy310-pure-cover (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy310-pure-cover' cover: true cibw_arch: 'arm64' @@ -671,7 +671,7 @@ jobs: - name: 'pypy310-pure-nocov (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy310-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -697,7 +697,7 @@ jobs: - name: 'pypy310-cython-cover (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy310-cython-cover' cover: true cibw_arch: 'arm64' @@ -722,7 +722,7 @@ jobs: - name: 'pypy310-cython-nocov (macos/arm64)' python: 'pypy-3.10' toxpython: 'pypy3.10' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'pypy310-cython-nocov' cibw_arch: 'arm64' cibw_build: false @@ -748,7 +748,7 @@ jobs: - name: 'cpy311-pure-cover (macos/arm64)' python: '3.11' toxpython: 'python3.11' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy311-pure-cover' cover: true cibw_arch: 'arm64' @@ -773,7 +773,7 @@ jobs: - name: 'cpy311-pure-nocov (macos/arm64)' python: '3.11' toxpython: 'python3.11' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy311-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -799,7 +799,7 @@ jobs: - name: 'cpy311-cython-cover (macos/arm64)' python: '3.11' toxpython: 'python3.11' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy311-cython-cover' cover: true cibw_arch: 'arm64' @@ -856,7 +856,7 @@ jobs: - name: 'cpy311-cython-nocov (macos/arm64)' python: '3.11' toxpython: 'python3.11' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy311-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp311-*' @@ -882,7 +882,7 @@ jobs: - name: 'cpy312-pure-cover (macos/arm64)' python: '3.12' toxpython: 'python3.12' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy312-pure-cover' cover: true cibw_arch: 'arm64' @@ -907,7 +907,7 @@ jobs: - name: 'cpy312-pure-nocov (macos/arm64)' python: '3.12' toxpython: 'python3.12' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy312-pure-nocov' cibw_arch: 'arm64' cibw_build: false @@ -933,7 +933,7 @@ jobs: - name: 'cpy312-cython-cover (macos/arm64)' python: '3.12' toxpython: 'python3.12' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy312-cython-cover' cover: true cibw_arch: 'arm64' @@ -990,7 +990,7 @@ jobs: - name: 'cpy312-cython-nocov (macos/arm64)' python: '3.12' toxpython: 'python3.12' - python_arch: 'x64' + python_arch: 'arm64' tox_env: 'cpy312-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp312-*' diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 209c15a..5f8426a 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -37,7 +37,7 @@ jobs: ['ubuntu', 'x64', 'aarch64', '*musllinux*', False], ['windows', 'x64', 'AMD64', '*', True], ['windows', 'x86', 'x86', '*', False], - ['macos', 'x64', 'arm64', '*', True], + ['macos', 'arm64', 'arm64', '*', True], ] %} {% if include_cover or (env.endswith('cython-nocov') and not prefix.startswith('pypy')) %} {% set wheel_suffix = env.endswith('cython-nocov') and wheel_arch.strip('*') %} From 291b3564dbd9738f507b628170a20eefce239c3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 04:42:07 +0300 Subject: [PATCH 14/80] Turns out there needs to be a dash or something between the generative parts. I give up and hardcode the versions for that test setup cmd. --- .github/workflows/github-actions.yml | 670 ------------------ .../.github/workflows/github-actions.yml | 6 +- tox.ini | 15 +- 3 files changed, 10 insertions(+), 681 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index f8a14af..5be2e6c 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -19,408 +19,6 @@ jobs: toxpython: 'python3.11' tox_env: 'docs' os: 'ubuntu-latest' - - name: 'cpy38-pure-cover (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy38-pure-cover (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy38-pure-cover (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'cpy38-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy38-pure-nocov (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy38-pure-nocov (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy38-pure-nocov (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'cpy38-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy38-cython-cover (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy38-cython-cover (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy38-cython-cover (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'cpy38-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy38-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp38-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy38-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp38-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy38-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp38-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy38-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp38-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy38-cython-nocov (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp38-*' - os: 'windows-latest' - - name: 'cpy38-cython-nocov (windows/x86)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x86' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp38-*' - os: 'windows-latest' - - name: 'cpy38-cython-nocov (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'cpy38-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp38-*' - os: 'macos-latest' - - name: 'cpy39-pure-cover (ubuntu/x86_64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy39-pure-cover (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy39-pure-cover (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'arm64' - tox_env: 'cpy39-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy39-pure-nocov (ubuntu/x86_64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy39-pure-nocov (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy39-pure-nocov (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'arm64' - tox_env: 'cpy39-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy39-cython-cover (ubuntu/x86_64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy39-cython-cover (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy39-cython-cover (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'arm64' - tox_env: 'cpy39-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy39-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp39-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy39-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp39-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy39-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp39-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy39-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp39-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy39-cython-nocov (windows/AMD64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x64' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp39-*' - os: 'windows-latest' - - name: 'cpy39-cython-nocov (windows/x86)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'x86' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp39-*' - os: 'windows-latest' - - name: 'cpy39-cython-nocov (macos/arm64)' - python: '3.9' - toxpython: 'python3.9' - python_arch: 'arm64' - tox_env: 'cpy39-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp39-*' - os: 'macos-latest' - - name: 'cpy310-pure-cover (ubuntu/x86_64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy310-pure-cover (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy310-pure-cover (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'arm64' - tox_env: 'cpy310-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy310-pure-nocov (ubuntu/x86_64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy310-pure-nocov (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy310-pure-nocov (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'arm64' - tox_env: 'cpy310-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy310-cython-cover (ubuntu/x86_64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy310-cython-cover (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy310-cython-cover (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'arm64' - tox_env: 'cpy310-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy310-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp310-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy310-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp310-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy310-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp310-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy310-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp310-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy310-cython-nocov (windows/AMD64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x64' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp310-*' - os: 'windows-latest' - - name: 'cpy310-cython-nocov (windows/x86)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'x86' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp310-*' - os: 'windows-latest' - - name: 'cpy310-cython-nocov (macos/arm64)' - python: '3.10' - toxpython: 'python3.10' - python_arch: 'arm64' - tox_env: 'cpy310-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp310-*' - os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' toxpython: 'pypy3.8' @@ -727,274 +325,6 @@ jobs: cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'cpy311-pure-cover (ubuntu/x86_64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy311-pure-cover (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy311-pure-cover (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'arm64' - tox_env: 'cpy311-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy311-pure-nocov (ubuntu/x86_64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy311-pure-nocov (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy311-pure-nocov (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'arm64' - tox_env: 'cpy311-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy311-cython-cover (ubuntu/x86_64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy311-cython-cover (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy311-cython-cover (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'arm64' - tox_env: 'cpy311-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy311-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp311-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy311-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp311-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy311-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp311-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy311-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp311-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy311-cython-nocov (windows/AMD64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x64' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp311-*' - os: 'windows-latest' - - name: 'cpy311-cython-nocov (windows/x86)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'x86' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp311-*' - os: 'windows-latest' - - name: 'cpy311-cython-nocov (macos/arm64)' - python: '3.11' - toxpython: 'python3.11' - python_arch: 'arm64' - tox_env: 'cpy311-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp311-*' - os: 'macos-latest' - - name: 'cpy312-pure-cover (ubuntu/x86_64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy312-pure-cover (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy312-pure-cover (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'arm64' - tox_env: 'cpy312-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy312-pure-nocov (ubuntu/x86_64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy312-pure-nocov (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy312-pure-nocov (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'arm64' - tox_env: 'cpy312-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy312-cython-cover (ubuntu/x86_64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'cpy312-cython-cover (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'cpy312-cython-cover (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'arm64' - tox_env: 'cpy312-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'cpy312-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp312-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy312-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp312-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy312-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp312-*manylinux*' - os: 'ubuntu-latest' - - name: 'cpy312-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp312-*musllinux*' - os: 'ubuntu-latest' - - name: 'cpy312-cython-nocov (windows/AMD64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x64' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp312-*' - os: 'windows-latest' - - name: 'cpy312-cython-nocov (windows/x86)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'x86' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp312-*' - os: 'windows-latest' - - name: 'cpy312-cython-nocov (macos/arm64)' - python: '3.12' - toxpython: 'python3.12' - python_arch: 'arm64' - tox_env: 'cpy312-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp312-*' - os: 'macos-latest' steps: - uses: docker/setup-qemu-action@v3 if: matrix.cibw_arch == 'aarch64' diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 5f8426a..c75e0b5 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -26,9 +26,9 @@ jobs: {% set cpython %}pp{{ prefix[4:5] }}{% endset %} {% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% else %} -{% set python %}{{ prefix[3] }}.{{ prefix[4:] }}{% endset %} -{% set cpython %}cp{{ prefix[3:] }}{% endset %} -{% set toxpython %}python{{ prefix[3] }}.{{ prefix[4:] }}{% endset %} +{% set python %}{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} +{% set cpython %}cp{{ prefix[2:] }}{% endset %} +{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} {% endif %} {% for os, python_arch, cibw_arch, wheel_arch, include_cover in [ ['ubuntu', 'x64', 'x86_64', '*manylinux*', True], diff --git a/tox.ini b/tox.ini index 075f681..51da279 100644 --- a/tox.ini +++ b/tox.ini @@ -14,8 +14,7 @@ envlist = clean, check, docs, - {cpy,pypy}{38,39,310}-{pure,cython}-{cover,nocov}, - {cpy}{311,312}-{pure,cython}-{cover,nocov}, + {py38,py39,py310,py311,py312,pypy38,pypy39,pypy310}-{pure,cython}-{cover,nocov}, report ignore_basepython_conflict = true @@ -24,11 +23,11 @@ basepython = pypy38: {env:TOXPYTHON:pypy3.8} pypy39: {env:TOXPYTHON:pypy3.9} pypy310: {env:TOXPYTHON:pypy3.10} - cpy38: {env:TOXPYTHON:python3.8} - cpy39: {env:TOXPYTHON:python3.9} - cpy310: {env:TOXPYTHON:python3.10} - cpy311: {env:TOXPYTHON:python3.11} - cpy312: {env:TOXPYTHON:python3.12} + py38: {env:TOXPYTHON:python3.8} + py39: {env:TOXPYTHON:python3.9} + py310: {env:TOXPYTHON:python3.10} + py311: {env:TOXPYTHON:python3.11} + py312: {env:TOXPYTHON:python3.12} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests @@ -53,7 +52,7 @@ deps = tzdata ipdb commands = - cpy: python tests/setup.py clean --all build_ext --force --inplace + {py38,py39,py310,py311,py312}: python tests/setup.py clean --all build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From 4e6a22591b744f5800be1c26df580dd1982ffe44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 05:03:22 +0300 Subject: [PATCH 15/80] Doh! --- .github/workflows/github-actions.yml | 670 +++++++++++++++++++++++++++ ci/bootstrap.py | 2 +- 2 files changed, 671 insertions(+), 1 deletion(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 5be2e6c..088334f 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -19,6 +19,676 @@ jobs: toxpython: 'python3.11' tox_env: 'docs' os: 'ubuntu-latest' + - name: 'py38-pure-cover (ubuntu/x86_64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py38-pure-cover (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py38-pure-cover (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'arm64' + tox_env: 'py38-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py38-pure-nocov (ubuntu/x86_64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py38-pure-nocov (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py38-pure-nocov (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'arm64' + tox_env: 'py38-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py38-cython-cover (ubuntu/x86_64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py38-cython-cover (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py38-cython-cover (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'arm64' + tox_env: 'py38-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py38-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp38-*manylinux*' + os: 'ubuntu-latest' + - name: 'py38-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp38-*musllinux*' + os: 'ubuntu-latest' + - name: 'py38-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp38-*manylinux*' + os: 'ubuntu-latest' + - name: 'py38-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp38-*musllinux*' + os: 'ubuntu-latest' + - name: 'py38-cython-nocov (windows/AMD64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x64' + tox_env: 'py38-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp38-*' + os: 'windows-latest' + - name: 'py38-cython-nocov (windows/x86)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'x86' + tox_env: 'py38-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp38-*' + os: 'windows-latest' + - name: 'py38-cython-nocov (macos/arm64)' + python: '3.8' + toxpython: 'python3.8' + python_arch: 'arm64' + tox_env: 'py38-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp38-*' + os: 'macos-latest' + - name: 'py39-pure-cover (ubuntu/x86_64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py39-pure-cover (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py39-pure-cover (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'arm64' + tox_env: 'py39-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py39-pure-nocov (ubuntu/x86_64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py39-pure-nocov (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py39-pure-nocov (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'arm64' + tox_env: 'py39-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py39-cython-cover (ubuntu/x86_64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py39-cython-cover (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py39-cython-cover (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'arm64' + tox_env: 'py39-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py39-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp39-*manylinux*' + os: 'ubuntu-latest' + - name: 'py39-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp39-*musllinux*' + os: 'ubuntu-latest' + - name: 'py39-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp39-*manylinux*' + os: 'ubuntu-latest' + - name: 'py39-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp39-*musllinux*' + os: 'ubuntu-latest' + - name: 'py39-cython-nocov (windows/AMD64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x64' + tox_env: 'py39-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp39-*' + os: 'windows-latest' + - name: 'py39-cython-nocov (windows/x86)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'x86' + tox_env: 'py39-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp39-*' + os: 'windows-latest' + - name: 'py39-cython-nocov (macos/arm64)' + python: '3.9' + toxpython: 'python3.9' + python_arch: 'arm64' + tox_env: 'py39-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp39-*' + os: 'macos-latest' + - name: 'py310-pure-cover (ubuntu/x86_64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py310-pure-cover (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py310-pure-cover (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'arm64' + tox_env: 'py310-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py310-pure-nocov (ubuntu/x86_64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py310-pure-nocov (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py310-pure-nocov (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'arm64' + tox_env: 'py310-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py310-cython-cover (ubuntu/x86_64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py310-cython-cover (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py310-cython-cover (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'arm64' + tox_env: 'py310-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py310-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp310-*manylinux*' + os: 'ubuntu-latest' + - name: 'py310-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp310-*musllinux*' + os: 'ubuntu-latest' + - name: 'py310-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp310-*manylinux*' + os: 'ubuntu-latest' + - name: 'py310-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp310-*musllinux*' + os: 'ubuntu-latest' + - name: 'py310-cython-nocov (windows/AMD64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x64' + tox_env: 'py310-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp310-*' + os: 'windows-latest' + - name: 'py310-cython-nocov (windows/x86)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'x86' + tox_env: 'py310-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp310-*' + os: 'windows-latest' + - name: 'py310-cython-nocov (macos/arm64)' + python: '3.10' + toxpython: 'python3.10' + python_arch: 'arm64' + tox_env: 'py310-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp310-*' + os: 'macos-latest' + - name: 'py311-pure-cover (ubuntu/x86_64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py311-pure-cover (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py311-pure-cover (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'arm64' + tox_env: 'py311-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py311-pure-nocov (ubuntu/x86_64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py311-pure-nocov (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py311-pure-nocov (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'arm64' + tox_env: 'py311-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py311-cython-cover (ubuntu/x86_64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py311-cython-cover (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py311-cython-cover (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'arm64' + tox_env: 'py311-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py311-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp311-*manylinux*' + os: 'ubuntu-latest' + - name: 'py311-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp311-*musllinux*' + os: 'ubuntu-latest' + - name: 'py311-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp311-*manylinux*' + os: 'ubuntu-latest' + - name: 'py311-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp311-*musllinux*' + os: 'ubuntu-latest' + - name: 'py311-cython-nocov (windows/AMD64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x64' + tox_env: 'py311-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp311-*' + os: 'windows-latest' + - name: 'py311-cython-nocov (windows/x86)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'x86' + tox_env: 'py311-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp311-*' + os: 'windows-latest' + - name: 'py311-cython-nocov (macos/arm64)' + python: '3.11' + toxpython: 'python3.11' + python_arch: 'arm64' + tox_env: 'py311-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp311-*' + os: 'macos-latest' + - name: 'py312-pure-cover (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py312-pure-cover (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py312-pure-cover (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'arm64' + tox_env: 'py312-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py312-pure-nocov (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py312-pure-nocov (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py312-pure-nocov (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'arm64' + tox_env: 'py312-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py312-cython-cover (ubuntu/x86_64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py312-cython-cover (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py312-cython-cover (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'arm64' + tox_env: 'py312-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py312-cython-nocov (ubuntu/x86_64/manylinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp312-*manylinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp312-*musllinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp312-*manylinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp312-*musllinux*' + os: 'ubuntu-latest' + - name: 'py312-cython-nocov (windows/AMD64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp312-*' + os: 'windows-latest' + - name: 'py312-cython-nocov (windows/x86)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'x86' + tox_env: 'py312-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp312-*' + os: 'windows-latest' + - name: 'py312-cython-nocov (macos/arm64)' + python: '3.12' + toxpython: 'python3.12' + python_arch: 'arm64' + tox_env: 'py312-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp312-*' + os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' toxpython: 'pypy3.8' diff --git a/ci/bootstrap.py b/ci/bootstrap.py index bf309ec..f3c9a7e 100755 --- a/ci/bootstrap.py +++ b/ci/bootstrap.py @@ -61,7 +61,7 @@ def main(): # invokes this bootstrap.py itself. for line in subprocess.check_output([sys.executable, '-m', 'tox', '--listenvs'], universal_newlines=True).splitlines() ] - tox_environments = [line for line in tox_environments if line.startswith(('cpy', 'pypy'))] + tox_environments = [line for line in tox_environments if line.startswith('py')] for template in templates_path.rglob('*'): if template.is_file(): template_path = template.relative_to(templates_path).as_posix() From 682617caefcbc30f52449879fb65bf2a98d98f8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 05:17:58 +0300 Subject: [PATCH 16/80] Improve assertion. --- tests/test_util.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_util.py b/tests/test_util.py index 80589df..1ea033f 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -147,7 +147,7 @@ def test_safe_repr_zoneinfo(): zoneinfo = pytest.importorskip("zoneinfo") assert ( safe_repr(datetime(2000, 2, 2, tzinfo=zoneinfo.ZoneInfo('Europe/Bucharest'))) - == "datetime(2000, 2, 2, 0, 0, 0, 0, tzinfo=zoneinfo.ZoneInfo(key='Europe/Bucharest'), fold=0)" + == f"datetime(2000, 2, 2, 0, 0, 0, 0, tzinfo={repr(zoneinfo.ZoneInfo('Europe/Bucharest'))}, fold=0)" ) From 1a8a84d8af1fc7efea10a371265830ddd16878a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 05:54:48 +0300 Subject: [PATCH 17/80] Rework a bit this test. --- tests/sample5.pyx | 10 +++++++--- tests/test_tracer.py | 6 +++--- tox.ini | 5 +++-- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/tests/sample5.pyx b/tests/sample5.pyx index 3961c98..383d1aa 100644 --- a/tests/sample5.pyx +++ b/tests/sample5.pyx @@ -1,8 +1,12 @@ # cython: linetrace=True, language_level=3 -foo = bar = lambda x: x +a = b = lambda x: x -@foo -@bar +@a +@b def foo(): return 1 + + +def bar(): + foo() diff --git a/tests/test_tracer.py b/tests/test_tracer.py index c038e39..83be356 100644 --- a/tests/test_tracer.py +++ b/tests/test_tracer.py @@ -849,15 +849,15 @@ def foo(): def test_source_cython(LineMatcher): pytest.importorskip('sample5') calls = [] - from sample5 import foo + from sample5 import bar with trace(action=lambda event: calls.extend(event.source.splitlines())): - foo() + bar() lm = LineMatcher(calls) lm.fnmatch_lines( [ - 'def foo():', + 'def bar():', ' return 1', ] ) diff --git a/tox.ini b/tox.ini index 51da279..cc8bf02 100644 --- a/tox.ini +++ b/tox.ini @@ -42,7 +42,7 @@ deps = pytest pytest-benchmark cover: pytest-cov - {cython,cover}: cython==3.0.10 + {py38,py39,py310,py311,py312}: cython==3.0.10 manhole process-tests setuptools-scm @@ -52,7 +52,8 @@ deps = tzdata ipdb commands = - {py38,py39,py310,py311,py312}: python tests/setup.py clean --all build_ext --force --inplace + {py38,py39,py310,py311,py312}: python tests/setup.py clean --all + {py38,py39,py310,py311,py312}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From 89a2b24b10df34325f1a72ec5cd2a413370cde8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 06:01:59 +0300 Subject: [PATCH 18/80] Bump action. --- .github/workflows/github-actions.yml | 2 +- ci/templates/.github/workflows/github-actions.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 088334f..187631f 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1052,7 +1052,7 @@ jobs: if: matrix.cibw_build run: twine check wheelhouse/*.whl - name: upload wheel - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: matrix.cibw_build with: path: wheelhouse/*.whl diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index c75e0b5..f0cac25 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -117,7 +117,7 @@ jobs: if: matrix.cibw_build run: twine check wheelhouse/*.whl - name: upload wheel - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: matrix.cibw_build with: path: wheelhouse/*.whl From f4491d4363b6b4aa925c8a1682d7388010ffeb37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 06:43:38 +0300 Subject: [PATCH 19/80] XFail some stuff on 3.12. --- docs/cookbook.rst | 4 ++-- tests/test_cookbook.py | 14 ++++++++++---- tests/test_integration.py | 8 ++++++++ tests/test_tracer.py | 8 ++++++++ 4 files changed, 28 insertions(+), 6 deletions(-) diff --git a/docs/cookbook.rst b/docs/cookbook.rst index e7e1dfe..be73b93 100644 --- a/docs/cookbook.rst +++ b/docs/cookbook.rst @@ -409,10 +409,10 @@ Behold, a `ProfileAction` that works in any mode: # exception was discarded self.output( '{fore(BLUE)}{} returned: {}. Duration: {:.4f}s{RESET}\n', - function, event.arg, delta + function, safe_repr(event.arg), delta ) else: self.output( '{fore(RED)}{} raised exception: {}. Duration: {:.4f}s{RESET}\n', - function, exception, delta + function, safe_repr(exception), delta ) diff --git a/tests/test_cookbook.py b/tests/test_cookbook.py index a482af4..18845a8 100644 --- a/tests/test_cookbook.py +++ b/tests/test_cookbook.py @@ -1,6 +1,7 @@ import contextlib import functools import os +import sys from logging import getLogger from time import time @@ -10,6 +11,7 @@ import hunter from hunter.actions import RETURN_VALUE from hunter.actions import ColorStreamAction +from hunter.util import safe_repr try: from cStringIO import StringIO @@ -120,18 +122,22 @@ def __call__(self, event): self.output( '{fore(BLUE)}{} returned: {}. Duration: {:.4f}s{RESET}\n', function, - event.arg, + safe_repr(event.arg), delta, ) else: self.output( '{fore(RED)}{} raised exception: {}. Duration: {:.4f}s{RESET}\n', function, - exception, + safe_repr(exception), delta, ) +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, fixme", +) @pytest.mark.parametrize( 'options', [{'kind__in': ['call', 'return', 'exception']}, {'profile': True}], @@ -164,7 +170,7 @@ def test_profile(LineMatcher, options): 'sample8errors.error raised exception: None. Duration: ?.????s', 'sample8errors.silenced1 returned: None. Duration: ?.????s', 'sample8errors.error raised exception: None. Duration: ?.????s', - 'sample8errors.silenced3 returned: mwhahaha. Duration: ?.????s', + 'sample8errors.silenced3 returned: \'mwhahaha\'. Duration: ?.????s', 'sample8errors.error raised exception: None. Duration: ?.????s', '.repr raised exception: None. Duration: ?.????s', 'sample8errors.silenced4 returned: None. Duration: ?.????s', @@ -178,7 +184,7 @@ def test_profile(LineMatcher, options): 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', 'sample8errors.silenced1 returned: None. Duration: ?.????s', 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', - 'sample8errors.silenced3 returned: mwhahaha. Duration: ?.????s', + 'sample8errors.silenced3 returned: \'mwhahaha\'. Duration: ?.????s', 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', 'sample8errors.silenced4 returned: None. Duration: ?.????s', 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', diff --git a/tests/test_integration.py b/tests/test_integration.py index 2f00192..f14ed27 100644 --- a/tests/test_integration.py +++ b/tests/test_integration.py @@ -436,6 +436,10 @@ def a(): assert snooper.stored_reprs == {} +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, fixme", +) def test_errorsnooper(LineMatcher): lines = StringIO() snooper = ErrorSnooper(stream=lines, max_backlog=50, max_events=100) @@ -550,6 +554,10 @@ def a(): ) +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, fixme", +) def test_errorsnooper_fastmode(LineMatcher): lines = StringIO() snooper = ErrorSnooper(stream=lines, max_backlog=0, max_events=100) diff --git a/tests/test_tracer.py b/tests/test_tracer.py index 83be356..5a6e6db 100644 --- a/tests/test_tracer.py +++ b/tests/test_tracer.py @@ -1539,6 +1539,10 @@ def a(): assert snooper.stored_reprs == {} +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, fixme", +) def test_errorsnooper(LineMatcher): lines = StringIO() snooper = ErrorSnooper(stream=lines, max_backlog=50, max_events=100) @@ -1652,6 +1656,10 @@ def a(): ) +@pytest.mark.xfail( + sys.version_info.major == 3 and sys.version_info.minor == 12, + reason="broken on 3.12, fixme", +) def test_errorsnooper_fastmode(LineMatcher): lines = StringIO() snooper = ErrorSnooper(stream=lines, max_backlog=0, max_events=100) From 0b9169e14bfba3f0cd4ee4e3065d2d630aeee355 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 14:43:06 +0300 Subject: [PATCH 20/80] Fix artifact uploads (turns out they aren't merged anymore). --- .github/workflows/github-actions.yml | 3 +++ ci/templates/.github/workflows/github-actions.yml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 187631f..9ad5d95 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1055,6 +1055,9 @@ jobs: uses: actions/upload-artifact@v4 if: matrix.cibw_build with: + name: 'wheel-${{ matrix.cibw_build }}-${{ matrix.cibw_arch }}' + if-no-files-found: error + compression-level: 0 path: wheelhouse/*.whl finish: needs: test diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index f0cac25..4d6fed7 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -120,6 +120,9 @@ jobs: uses: actions/upload-artifact@v4 if: matrix.cibw_build with: + name: '{{ 'wheel-${{ matrix.cibw_build }}-${{ matrix.cibw_arch }}' }}' + if-no-files-found: error + compression-level: 0 path: wheelhouse/*.whl finish: needs: test From 625b48a7fc83c79f735d39fa07d67633cd725a6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 15:13:38 +0300 Subject: [PATCH 21/80] Use an artifact variable instead. --- .github/workflows/github-actions.yml | 37 ++++++++++++++++++- .../.github/workflows/github-actions.yml | 3 +- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 9ad5d95..e129a8d 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -104,6 +104,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp38-*manylinux*' + artifact: 'ubuntu-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.8' @@ -112,6 +113,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp38-*musllinux*' + artifact: 'ubuntu-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.8' @@ -120,6 +122,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp38-*manylinux*' + artifact: 'ubuntu-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.8' @@ -128,6 +131,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp38-*musllinux*' + artifact: 'ubuntu-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (windows/AMD64)' python: '3.8' @@ -136,6 +140,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp38-*' + artifact: 'windows-AMD64-default' os: 'windows-latest' - name: 'py38-cython-nocov (windows/x86)' python: '3.8' @@ -144,6 +149,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp38-*' + artifact: 'windows-x86-default' os: 'windows-latest' - name: 'py38-cython-nocov (macos/arm64)' python: '3.8' @@ -152,6 +158,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp38-*' + artifact: 'macos-arm64-default' os: 'macos-latest' - name: 'py39-pure-cover (ubuntu/x86_64)' python: '3.9' @@ -238,6 +245,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp39-*manylinux*' + artifact: 'ubuntu-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.9' @@ -246,6 +254,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp39-*musllinux*' + artifact: 'ubuntu-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.9' @@ -254,6 +263,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp39-*manylinux*' + artifact: 'ubuntu-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.9' @@ -262,6 +272,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp39-*musllinux*' + artifact: 'ubuntu-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (windows/AMD64)' python: '3.9' @@ -270,6 +281,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp39-*' + artifact: 'windows-AMD64-default' os: 'windows-latest' - name: 'py39-cython-nocov (windows/x86)' python: '3.9' @@ -278,6 +290,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp39-*' + artifact: 'windows-x86-default' os: 'windows-latest' - name: 'py39-cython-nocov (macos/arm64)' python: '3.9' @@ -286,6 +299,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp39-*' + artifact: 'macos-arm64-default' os: 'macos-latest' - name: 'py310-pure-cover (ubuntu/x86_64)' python: '3.10' @@ -372,6 +386,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp310-*manylinux*' + artifact: 'ubuntu-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.10' @@ -380,6 +395,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp310-*musllinux*' + artifact: 'ubuntu-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.10' @@ -388,6 +404,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp310-*manylinux*' + artifact: 'ubuntu-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.10' @@ -396,6 +413,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp310-*musllinux*' + artifact: 'ubuntu-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (windows/AMD64)' python: '3.10' @@ -404,6 +422,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp310-*' + artifact: 'windows-AMD64-default' os: 'windows-latest' - name: 'py310-cython-nocov (windows/x86)' python: '3.10' @@ -412,6 +431,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp310-*' + artifact: 'windows-x86-default' os: 'windows-latest' - name: 'py310-cython-nocov (macos/arm64)' python: '3.10' @@ -420,6 +440,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp310-*' + artifact: 'macos-arm64-default' os: 'macos-latest' - name: 'py311-pure-cover (ubuntu/x86_64)' python: '3.11' @@ -506,6 +527,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp311-*manylinux*' + artifact: 'ubuntu-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.11' @@ -514,6 +536,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp311-*musllinux*' + artifact: 'ubuntu-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.11' @@ -522,6 +545,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp311-*manylinux*' + artifact: 'ubuntu-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.11' @@ -530,6 +554,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp311-*musllinux*' + artifact: 'ubuntu-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (windows/AMD64)' python: '3.11' @@ -538,6 +563,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp311-*' + artifact: 'windows-AMD64-default' os: 'windows-latest' - name: 'py311-cython-nocov (windows/x86)' python: '3.11' @@ -546,6 +572,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp311-*' + artifact: 'windows-x86-default' os: 'windows-latest' - name: 'py311-cython-nocov (macos/arm64)' python: '3.11' @@ -554,6 +581,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp311-*' + artifact: 'macos-arm64-default' os: 'macos-latest' - name: 'py312-pure-cover (ubuntu/x86_64)' python: '3.12' @@ -640,6 +668,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp312-*manylinux*' + artifact: 'ubuntu-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.12' @@ -648,6 +677,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp312-*musllinux*' + artifact: 'ubuntu-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.12' @@ -656,6 +686,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp312-*manylinux*' + artifact: 'ubuntu-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.12' @@ -664,6 +695,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp312-*musllinux*' + artifact: 'ubuntu-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (windows/AMD64)' python: '3.12' @@ -672,6 +704,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp312-*' + artifact: 'windows-AMD64-default' os: 'windows-latest' - name: 'py312-cython-nocov (windows/x86)' python: '3.12' @@ -680,6 +713,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp312-*' + artifact: 'windows-x86-default' os: 'windows-latest' - name: 'py312-cython-nocov (macos/arm64)' python: '3.12' @@ -688,6 +722,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp312-*' + artifact: 'macos-arm64-default' os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' @@ -1055,7 +1090,7 @@ jobs: uses: actions/upload-artifact@v4 if: matrix.cibw_build with: - name: 'wheel-${{ matrix.cibw_build }}-${{ matrix.cibw_arch }}' + name: '${{ matrix.artifact }}' if-no-files-found: error compression-level: 0 path: wheelhouse/*.whl diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 4d6fed7..6311625 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -53,6 +53,7 @@ jobs: cibw_arch: '{{ cibw_arch }}' {% if env.endswith('cython-nocov') and not prefix.startswith('pypy') %} cibw_build: '{{ cpython }}-{{ wheel_arch }}' + artifact: '{{ os }}-{{ cibw_arch }}-{{ wheel_arch.strip("*") or "default" }}' {% else %} cibw_build: false {% endif %} @@ -120,7 +121,7 @@ jobs: uses: actions/upload-artifact@v4 if: matrix.cibw_build with: - name: '{{ 'wheel-${{ matrix.cibw_build }}-${{ matrix.cibw_arch }}' }}' + name: '{{ '${{ matrix.artifact }}' }}' if-no-files-found: error compression-level: 0 path: wheelhouse/*.whl From 74000e97953dc0b87c384eb82e0ee0df9d8ce953 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 15:14:16 +0300 Subject: [PATCH 22/80] Fix that space issue. --- ci/templates/.github/workflows/github-actions.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 6311625..9a4de92 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -133,3 +133,4 @@ jobs: - uses: codecov/codecov-action@v3 with: CODECOV_TOKEN: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %} +{{ '' }} From a1e7f3812a84ebcd64c526e1388b16727156956e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 15:22:29 +0300 Subject: [PATCH 23/80] Doh, forgot to include python version. --- .github/workflows/github-actions.yml | 70 +++++++++---------- .../.github/workflows/github-actions.yml | 2 +- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index e129a8d..6d8321f 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -104,7 +104,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp38-*manylinux*' - artifact: 'ubuntu-x86_64-manylinux' + artifact: 'ubuntu-cp38-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.8' @@ -113,7 +113,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp38-*musllinux*' - artifact: 'ubuntu-x86_64-musllinux' + artifact: 'ubuntu-cp38-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.8' @@ -122,7 +122,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp38-*manylinux*' - artifact: 'ubuntu-aarch64-manylinux' + artifact: 'ubuntu-cp38-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.8' @@ -131,7 +131,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp38-*musllinux*' - artifact: 'ubuntu-aarch64-musllinux' + artifact: 'ubuntu-cp38-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py38-cython-nocov (windows/AMD64)' python: '3.8' @@ -140,7 +140,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp38-*' - artifact: 'windows-AMD64-default' + artifact: 'windows-cp38-AMD64-default' os: 'windows-latest' - name: 'py38-cython-nocov (windows/x86)' python: '3.8' @@ -149,7 +149,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp38-*' - artifact: 'windows-x86-default' + artifact: 'windows-cp38-x86-default' os: 'windows-latest' - name: 'py38-cython-nocov (macos/arm64)' python: '3.8' @@ -158,7 +158,7 @@ jobs: tox_env: 'py38-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp38-*' - artifact: 'macos-arm64-default' + artifact: 'macos-cp38-arm64-default' os: 'macos-latest' - name: 'py39-pure-cover (ubuntu/x86_64)' python: '3.9' @@ -245,7 +245,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp39-*manylinux*' - artifact: 'ubuntu-x86_64-manylinux' + artifact: 'ubuntu-cp39-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.9' @@ -254,7 +254,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp39-*musllinux*' - artifact: 'ubuntu-x86_64-musllinux' + artifact: 'ubuntu-cp39-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.9' @@ -263,7 +263,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp39-*manylinux*' - artifact: 'ubuntu-aarch64-manylinux' + artifact: 'ubuntu-cp39-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.9' @@ -272,7 +272,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp39-*musllinux*' - artifact: 'ubuntu-aarch64-musllinux' + artifact: 'ubuntu-cp39-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py39-cython-nocov (windows/AMD64)' python: '3.9' @@ -281,7 +281,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp39-*' - artifact: 'windows-AMD64-default' + artifact: 'windows-cp39-AMD64-default' os: 'windows-latest' - name: 'py39-cython-nocov (windows/x86)' python: '3.9' @@ -290,7 +290,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp39-*' - artifact: 'windows-x86-default' + artifact: 'windows-cp39-x86-default' os: 'windows-latest' - name: 'py39-cython-nocov (macos/arm64)' python: '3.9' @@ -299,7 +299,7 @@ jobs: tox_env: 'py39-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp39-*' - artifact: 'macos-arm64-default' + artifact: 'macos-cp39-arm64-default' os: 'macos-latest' - name: 'py310-pure-cover (ubuntu/x86_64)' python: '3.10' @@ -386,7 +386,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp310-*manylinux*' - artifact: 'ubuntu-x86_64-manylinux' + artifact: 'ubuntu-cp310-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.10' @@ -395,7 +395,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp310-*musllinux*' - artifact: 'ubuntu-x86_64-musllinux' + artifact: 'ubuntu-cp310-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.10' @@ -404,7 +404,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp310-*manylinux*' - artifact: 'ubuntu-aarch64-manylinux' + artifact: 'ubuntu-cp310-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.10' @@ -413,7 +413,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp310-*musllinux*' - artifact: 'ubuntu-aarch64-musllinux' + artifact: 'ubuntu-cp310-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py310-cython-nocov (windows/AMD64)' python: '3.10' @@ -422,7 +422,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp310-*' - artifact: 'windows-AMD64-default' + artifact: 'windows-cp310-AMD64-default' os: 'windows-latest' - name: 'py310-cython-nocov (windows/x86)' python: '3.10' @@ -431,7 +431,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp310-*' - artifact: 'windows-x86-default' + artifact: 'windows-cp310-x86-default' os: 'windows-latest' - name: 'py310-cython-nocov (macos/arm64)' python: '3.10' @@ -440,7 +440,7 @@ jobs: tox_env: 'py310-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp310-*' - artifact: 'macos-arm64-default' + artifact: 'macos-cp310-arm64-default' os: 'macos-latest' - name: 'py311-pure-cover (ubuntu/x86_64)' python: '3.11' @@ -527,7 +527,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp311-*manylinux*' - artifact: 'ubuntu-x86_64-manylinux' + artifact: 'ubuntu-cp311-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.11' @@ -536,7 +536,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp311-*musllinux*' - artifact: 'ubuntu-x86_64-musllinux' + artifact: 'ubuntu-cp311-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.11' @@ -545,7 +545,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp311-*manylinux*' - artifact: 'ubuntu-aarch64-manylinux' + artifact: 'ubuntu-cp311-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.11' @@ -554,7 +554,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp311-*musllinux*' - artifact: 'ubuntu-aarch64-musllinux' + artifact: 'ubuntu-cp311-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py311-cython-nocov (windows/AMD64)' python: '3.11' @@ -563,7 +563,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp311-*' - artifact: 'windows-AMD64-default' + artifact: 'windows-cp311-AMD64-default' os: 'windows-latest' - name: 'py311-cython-nocov (windows/x86)' python: '3.11' @@ -572,7 +572,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp311-*' - artifact: 'windows-x86-default' + artifact: 'windows-cp311-x86-default' os: 'windows-latest' - name: 'py311-cython-nocov (macos/arm64)' python: '3.11' @@ -581,7 +581,7 @@ jobs: tox_env: 'py311-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp311-*' - artifact: 'macos-arm64-default' + artifact: 'macos-cp311-arm64-default' os: 'macos-latest' - name: 'py312-pure-cover (ubuntu/x86_64)' python: '3.12' @@ -668,7 +668,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp312-*manylinux*' - artifact: 'ubuntu-x86_64-manylinux' + artifact: 'ubuntu-cp312-x86_64-manylinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' python: '3.12' @@ -677,7 +677,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp312-*musllinux*' - artifact: 'ubuntu-x86_64-musllinux' + artifact: 'ubuntu-cp312-x86_64-musllinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' python: '3.12' @@ -686,7 +686,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp312-*manylinux*' - artifact: 'ubuntu-aarch64-manylinux' + artifact: 'ubuntu-cp312-aarch64-manylinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' python: '3.12' @@ -695,7 +695,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp312-*musllinux*' - artifact: 'ubuntu-aarch64-musllinux' + artifact: 'ubuntu-cp312-aarch64-musllinux' os: 'ubuntu-latest' - name: 'py312-cython-nocov (windows/AMD64)' python: '3.12' @@ -704,7 +704,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp312-*' - artifact: 'windows-AMD64-default' + artifact: 'windows-cp312-AMD64-default' os: 'windows-latest' - name: 'py312-cython-nocov (windows/x86)' python: '3.12' @@ -713,7 +713,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp312-*' - artifact: 'windows-x86-default' + artifact: 'windows-cp312-x86-default' os: 'windows-latest' - name: 'py312-cython-nocov (macos/arm64)' python: '3.12' @@ -722,7 +722,7 @@ jobs: tox_env: 'py312-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp312-*' - artifact: 'macos-arm64-default' + artifact: 'macos-cp312-arm64-default' os: 'macos-latest' - name: 'pypy38-pure-cover (ubuntu/x86_64)' python: 'pypy-3.8' diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 9a4de92..9a17f06 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -53,7 +53,7 @@ jobs: cibw_arch: '{{ cibw_arch }}' {% if env.endswith('cython-nocov') and not prefix.startswith('pypy') %} cibw_build: '{{ cpython }}-{{ wheel_arch }}' - artifact: '{{ os }}-{{ cibw_arch }}-{{ wheel_arch.strip("*") or "default" }}' + artifact: '{{ os }}-{{ cpython }}-{{ cibw_arch }}-{{ wheel_arch.strip("*") or "default" }}' {% else %} cibw_build: false {% endif %} From 4455468a95d7ee2586f21125038e2c5f1bb0d2df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 16:02:30 +0300 Subject: [PATCH 24/80] Just install it everywhere (cython coverage plugin loading seems to be strict now). --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index cc8bf02..b874122 100644 --- a/tox.ini +++ b/tox.ini @@ -42,7 +42,7 @@ deps = pytest pytest-benchmark cover: pytest-cov - {py38,py39,py310,py311,py312}: cython==3.0.10 + cython==3.0.10 manhole process-tests setuptools-scm From 047cccdab85b54b23a675976dc845824f97c6a4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 16:02:50 +0300 Subject: [PATCH 25/80] Update date. --- CHANGELOG.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 1150c70..61b64d3 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,7 +2,7 @@ Changelog ========= -3.7.0 (2024-05-01) +3.7.0 (2024-05-02) ------------------ * Drop support for Python 3.7. From 5689bae52b2a8e32e7a4e509534486f136330a24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 2 May 2024 16:25:30 +0300 Subject: [PATCH 26/80] =?UTF-8?q?Bump=20version:=203.6.1=20=E2=86=92=203.7?= =?UTF-8?q?.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .bumpversion.cfg | 2 +- .cookiecutterrc | 2 +- README.rst | 4 ++-- docs/conf.py | 2 +- setup.py | 2 +- src/hunter/__init__.py | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index b663f17..d9adf56 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.6.1 +current_version = 3.7.0 commit = True tag = True diff --git a/.cookiecutterrc b/.cookiecutterrc index e7d0fe6..9aa3dbe 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -40,7 +40,7 @@ default_context: sphinx_theme: furo test_matrix_separate_coverage: 'yes' tests_inside_package: 'no' - version: 3.6.1 + version: 3.7.0 version_manager: bump2version website: https://blog.ionelmc.ro year_from: '2015' diff --git a/README.rst b/README.rst index 9183b9e..06a11f5 100644 --- a/README.rst +++ b/README.rst @@ -41,9 +41,9 @@ Overview :alt: Supported implementations :target: https://pypi.org/project/hunter -.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-hunter/v3.6.1.svg +.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-hunter/v3.7.0.svg :alt: Commits since latest release - :target: https://github.com/ionelmc/python-hunter/compare/v3.6.1...master + :target: https://github.com/ionelmc/python-hunter/compare/v3.7.0...master diff --git a/docs/conf.py b/docs/conf.py index 3c5b13e..ffaf4ab 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -28,7 +28,7 @@ import traceback traceback.print_exc() - version = release = '3.6.1' + version = release = '3.7.0' pygments_style = 'trac' templates_path = ['.'] diff --git a/setup.py b/setup.py index 8ac9838..d1fa806 100755 --- a/setup.py +++ b/setup.py @@ -113,7 +113,7 @@ def read(*names, **kwargs): use_scm_version={ 'local_scheme': 'dirty-tag', 'write_to': 'src/hunter/_version.py', - 'fallback_version': '3.6.1', + 'fallback_version': '3.7.0', }, license='BSD-2-Clause', description='Hunter is a flexible code tracing toolkit.', diff --git a/src/hunter/__init__.py b/src/hunter/__init__.py index 8cf264e..02de712 100644 --- a/src/hunter/__init__.py +++ b/src/hunter/__init__.py @@ -43,7 +43,7 @@ try: from ._version import version as __version__ except ImportError: - __version__ = '3.6.1' + __version__ = '3.7.0' __all__ = ( 'And', From 129daf2da5b1ef2aa918679748a23bbc63dc47d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Sun, 6 Jul 2025 19:22:05 +0300 Subject: [PATCH 27/80] Make it build on python 3.13 with cython 3.1. --- .cookiecutterrc | 104 +- .pre-commit-config.yaml | 13 +- ci/requirements.txt | 1 - .../.github/workflows/github-actions.yml | 7 +- docs/conf.py | 6 +- pyproject.toml | 14 +- setup.py | 52 +- src/hunter/__init__.py | 2 +- src/hunter/_event.c | 17011 +++++----- src/hunter/_event.pxd | 3 +- src/hunter/_event.pyx | 11 +- src/hunter/_predicates.c | 28243 +++++++++------- src/hunter/_tracer.c | 11375 ++++--- src/hunter/_tracer.pxd | 13 +- src/hunter/actions.py | 8 +- src/hunter/vendor/_compat.h | 1894 +- src/hunter/vendor/_cymem/cymem.c | 9998 +++--- tests/test_cookbook.py | 6 +- tests/test_integration.py | 23 +- tests/test_tracer.py | 8 +- tests/test_util.py | 4 +- tox.ini | 54 +- 22 files changed, 38097 insertions(+), 30753 deletions(-) diff --git a/.cookiecutterrc b/.cookiecutterrc index 9aa3dbe..126dcc2 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -1,47 +1,61 @@ -# Generated by cookiepatcher, a small shim around cookiecutter (pip install cookiepatcher) +# This file exists so you can easily regenerate your project. +# +# `cookiepatcher` is a convenient shim around `cookiecutter` +# for regenerating projects (it will generate a .cookiecutterrc +# automatically for any template). To use it: +# +# pip install cookiepatcher +# cookiepatcher gh:ionelmc/cookiecutter-pylibrary python-hunter +# +# See: +# https://pypi.org/project/cookiepatcher +# +# Alternatively, you can run: +# +# cookiecutter --overwrite-if-exists --config-file=python-hunter/.cookiecutterrc gh:ionelmc/cookiecutter-pylibrary default_context: - c_extension_optional: 'yes' - c_extension_support: cython - codacy: 'no' - codacy_projectid: '-' - codeclimate: 'no' - codecov: 'yes' - command_line_interface: argparse - command_line_interface_bin_name: hunter-trace - coveralls: 'no' - distribution_name: hunter - email: contact@ionelmc.ro - formatter_quote_style: single - full_name: Ionel Cristian Mărieș - function_name: compute - github_actions: 'yes' - github_actions_osx: 'yes' - github_actions_windows: 'yes' - license: BSD 2-Clause License - module_name: core - package_name: hunter - pre_commit: 'yes' - project_name: Hunter - project_short_description: Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API and a convenient terminal API (see `Environment variable activation `_). - pypi_badge: 'yes' - pypi_disable_upload: 'no' - release_date: '2023-04-26' - repo_hosting: github.com - repo_hosting_domain: github.com - repo_main_branch: master - repo_name: python-hunter - repo_username: ionelmc - scrutinizer: 'no' - setup_py_uses_setuptools_scm: 'yes' - sphinx_docs: 'yes' - sphinx_docs_hosting: https://python-hunter.readthedocs.io/ - sphinx_doctest: 'no' - sphinx_theme: furo - test_matrix_separate_coverage: 'yes' - tests_inside_package: 'no' - version: 3.7.0 - version_manager: bump2version - website: https://blog.ionelmc.ro - year_from: '2015' - year_to: '2024' + c_extension_optional: "yes" + c_extension_support: "cython" + codacy: "no" + codacy_projectid: "-" + codeclimate: "no" + codecov: "yes" + command_line_interface: "argparse" + command_line_interface_bin_name: "hunter-trace" + coveralls: "no" + distribution_name: "hunter" + email: "contact@ionelmc.ro" + formatter_quote_style: "single" + full_name: "Ionel Cristian Mărieș" + function_name: "compute" + github_actions: "yes" + github_actions_osx: "yes" + github_actions_windows: "yes" + license: "BSD 2-Clause License" + module_name: "core" + package_name: "hunter" + pre_commit: "yes" + project_name: "Hunter" + project_short_description: "Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API and a convenient terminal API (see `Environment variable activation `_)." + pypi_badge: "yes" + pypi_disable_upload: "no" + release_date: "2024-05-02" + repo_hosting: "github.com" + repo_hosting_domain: "github.com" + repo_main_branch: "master" + repo_name: "python-hunter" + repo_username: "ionelmc" + scrutinizer: "no" + setup_py_uses_setuptools_scm: "yes" + sphinx_docs: "yes" + sphinx_docs_hosting: "https://python-hunter.readthedocs.io/" + sphinx_doctest: "no" + sphinx_theme: "furo" + test_matrix_separate_coverage: "yes" + tests_inside_package: "no" + version: "3.7.0" + version_manager: "bump2version" + website: "https://blog.ionelmc.ro" + year_from: "2015" + year_to: "2025" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5177597..9f8d403 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,16 +6,13 @@ exclude: '^(.tox/|ci/templates/|src/hunter.(pth|embed)$|src/hunter/vendor/|.bump # Note the order is intentional to avoid multiple passes of the hooks repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.4.2 + rev: v0.12.2 hooks: - id: ruff - args: [--fix, --exit-non-zero-on-fix, --show-fixes, --unsafe-fixes] - - repo: https://github.com/psf/black - rev: 24.4.2 - hooks: - - id: black + args: [--fix, --exit-non-zero-on-fix, --show-fixes] + - id: ruff-format - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.6.0 + rev: v5.0.0 hooks: - id: trailing-whitespace exclude_types: @@ -28,6 +25,6 @@ repos: - id: debug-statements exclude: '^tests/sample*|src/hunter/actions.py' - repo: https://github.com/MarcoGorelli/cython-lint - rev: v0.16.2 + rev: v0.16.7 hooks: - id: cython-lint diff --git a/ci/requirements.txt b/ci/requirements.txt index 65a1480..48e3b0c 100644 --- a/ci/requirements.txt +++ b/ci/requirements.txt @@ -1,6 +1,5 @@ virtualenv>=20.4.7 pip>=19.1.1 setuptools>=18.0.1 -six>=1.14.0 tox twine diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 9a17f06..1c54435 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -109,7 +109,7 @@ jobs: !matrix.cibw_build run: > tox -e {{ '${{ matrix.tox_env }}' }} -v - - uses: codecov/codecov-action@v3 + - uses: codecov/codecov-action@v5 if: matrix.cover with: verbose: true @@ -130,7 +130,10 @@ jobs: if: {{ '${{ always() }}' }} runs-on: ubuntu-latest steps: - - uses: codecov/codecov-action@v3 + - uses: actions/upload-artifact/merge@v4 + with: + name: all-wheels + - uses: codecov/codecov-action@v5 with: CODECOV_TOKEN: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %} {{ '' }} diff --git a/docs/conf.py b/docs/conf.py index ffaf4ab..f5bea50 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -17,7 +17,7 @@ source_suffix = '.rst' master_doc = 'index' project = 'Hunter' -year = '2015-2024' +year = '2015-2025' author = 'Ionel Cristian Mărieș' copyright = f'{year}, {author}' try: @@ -50,7 +50,3 @@ napoleon_use_ivar = True napoleon_use_rtype = False napoleon_use_param = False - -autosummary_generate = True - -autosectionlabel_prefix_document = True diff --git a/pyproject.toml b/pyproject.toml index b50de29..b5664c9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,8 @@ backend-path = ["build_backend"] extend-exclude = ["static", "ci/templates"] line-length = 140 src = ["src", "tests"] -target-version = "py38" +target-version = "py39" + [tool.cython-lint] max-line-length = 140 @@ -26,6 +27,7 @@ ignore = [ "S307", "S308", # flake8-bandit suspicious-mark-safe-usage "E501", # pycodestyle line-too-long + "PLC0415", # import-outside-top-level ] select = [ "B", # flake8-bugbear @@ -40,7 +42,6 @@ select = [ "PLC", # pylint convention "PLE", # pylint errors "PT", # flake8-pytest-style - "Q", # flake8-quotes "RSE", # flake8-raise "RUF", # ruff-specific rules "S", # flake8-bandit @@ -52,15 +53,10 @@ select = [ fixture-parentheses = false mark-parentheses = false -[tool.ruff.lint.flake8-quotes] -inline-quotes = "single" - [tool.ruff.lint.isort] extra-standard-library = ["opcode"] forced-separate = ["conftest"] force-single-line = true -[tool.black] -line-length = 140 -target-version = ["py38"] -skip-string-normalization = true +[tool.ruff.format] +quote-style = "single" diff --git a/setup.py b/setup.py index d1fa806..e1a3fff 100755 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ from pathlib import Path from setuptools import Extension -from setuptools import find_packages +from setuptools import find_namespace_packages from setuptools import setup from setuptools.command.build import build from setuptools.command.build_ext import build_ext @@ -23,7 +23,7 @@ Cython = None # Enable code coverage for C code: we cannot use CFLAGS=-coverage in tox.ini, since that may mess with compiling -# dependencies (e.g. numpy). Therefore we set SETUPPY_CFLAGS=-coverage in tox.ini and copy it to CFLAGS here (after +# dependencies (e.g. numpy). Therefore, we set SETUPPY_CFLAGS=-coverage in tox.ini and copy it to CFLAGS here (after # deps have been safely installed). if 'TOX_ENV_NAME' in os.environ and os.environ.get('SETUPPY_EXT_COVERAGE') == 'yes': CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_TRACE=1' @@ -31,6 +31,15 @@ else: CFLAGS = '' LFLAGS = '' + +allow_extensions = True +if '__pypy__' in sys.builtin_module_names: + print('NOTICE: C extensions disabled on PyPy (would be broken)!') + allow_extensions = False +if os.environ.get('SETUPPY_FORCE_PURE'): + print('NOTICE: C extensions disabled (SETUPPY_FORCE_PURE)!') + allow_extensions = False + pth_file = str(Path(__file__).parent.joinpath('src', 'hunter.pth')) @@ -70,8 +79,6 @@ class OptionalBuildExt(build_ext): def run(self): try: - if os.environ.get('SETUPPY_FORCE_PURE'): - raise Exception('C extensions disabled (SETUPPY_FORCE_PURE)!') super().run() except Exception as e: self._unavailable(e) @@ -121,29 +128,30 @@ def read(*names, **kwargs): re.compile('^.. start-badges.*^.. end-badges', re.M | re.S).sub('', read('README.rst')), re.sub(':[a-z]+:`~?(.*?)`', r'``\1``', read('CHANGELOG.rst')), ), + long_description_content_type='text/x-rst', author='Ionel Cristian Mărieș', author_email='contact@ionelmc.ro', url='https://github.com/ionelmc/python-hunter', - packages=find_packages('src'), + packages=find_namespace_packages('src'), package_dir={'': 'src'}, py_modules=[path.stem for path in Path('src').glob('*.py')], + include_package_data=True, zip_safe=False, classifiers=[ # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers 'Development Status :: 5 - Production/Stable', 'Intended Audience :: Developers', - 'License :: OSI Approved :: BSD License', 'Operating System :: Unix', 'Operating System :: POSIX', 'Operating System :: Microsoft :: Windows', 'Programming Language :: Python', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3 :: Only', - 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: 3.12', + 'Programming Language :: Python :: 3.13', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Topic :: Utilities', @@ -163,7 +171,7 @@ def read(*names, **kwargs): 'code', 'source', ], - python_requires='>=3.8', + python_requires='>=3.9', install_requires=[], extras_require={ ':platform_system != "Windows"': ['manhole >= 1.5'], @@ -190,19 +198,17 @@ def read(*names, **kwargs): 'develop': DevelopWithPTH, 'build_ext': OptionalBuildExt, }, - ext_modules=( - [] - if hasattr(sys, 'pypy_version_info') - else [ - Extension( - str(path.relative_to('src').with_suffix('')).replace(os.sep, '.'), - sources=[str(path)], - extra_compile_args=CFLAGS.split(), - extra_link_args=LFLAGS.split(), - include_dirs=[str(path.parent)], - ) - for path in Path('src').glob('**/*.pyx' if Cython else '**/*.c') - ] - ), - distclass=BinaryDistribution, + ext_modules=[ + Extension( + str(path.relative_to('src').with_suffix('')).replace(os.sep, '.'), + sources=[str(path)], + extra_compile_args=CFLAGS.split(), + extra_link_args=LFLAGS.split(), + include_dirs=[str(path.parent)], + ) + for path in Path('src').glob('**/*.pyx' if Cython else '**/*.c') + ] + if allow_extensions + else [], + distclass=BinaryDistribution if allow_extensions else None, ) diff --git a/src/hunter/__init__.py b/src/hunter/__init__.py index 02de712..0d72b41 100644 --- a/src/hunter/__init__.py +++ b/src/hunter/__init__.py @@ -341,7 +341,7 @@ def Backlog(*conditions, **kwargs): vars = kwargs.pop('vars', False) if not conditions and not kwargs: raise TypeError( - 'Backlog needs at least 1 condition ' "(it doesn't have any effect without one besides making everything incredibly slow)." + "Backlog needs at least 1 condition (it doesn't have any effect without one besides making everything incredibly slow)." ) return _Backlog( _merge(*conditions, **kwargs), diff --git a/src/hunter/_event.c b/src/hunter/_event.c index 83cb6be..36a79b0 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.10 */ +/* Generated by Cython 3.1.2 */ /* BEGIN: Cython Metadata { @@ -21,32 +21,21 @@ END: Cython Metadata */ #ifndef PY_SSIZE_T_CLEAN #define PY_SSIZE_T_CLEAN #endif /* PY_SSIZE_T_CLEAN */ -#if defined(CYTHON_LIMITED_API) && 0 - #ifndef Py_LIMITED_API - #if CYTHON_LIMITED_API+0 > 0x03030000 - #define Py_LIMITED_API CYTHON_LIMITED_API - #else - #define Py_LIMITED_API 0x03030000 - #endif - #endif +/* InitLimitedAPI */ +#if defined(Py_LIMITED_API) && !defined(CYTHON_LIMITED_API) + #define CYTHON_LIMITED_API 1 #endif #include "Python.h" #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) - #error Cython requires Python 2.7+ or Python 3.3+. -#else -#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API -#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#elif PY_VERSION_HEX < 0x03080000 + #error Cython requires Python 3.8+. #else -#define __PYX_EXTRA_ABI_MODULE_NAME "" -#endif -#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME -#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI -#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x03000AF0 +#define __PYX_ABI_VERSION "3_1_2" +#define CYTHON_HEX_VERSION 0x030102F0 #define CYTHON_FUTURE_DIVISION 1 +/* CModulePreamble */ #include #ifndef offsetof #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) @@ -86,19 +75,13 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 1 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 #undef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -109,8 +92,12 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -122,18 +109,22 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #undef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #undef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 + #define CYTHON_USE_EXC_INFO_STACK 1 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif @@ -144,20 +135,14 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 + #define CYTHON_USE_TYPE_SLOTS 1 #ifndef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -168,8 +153,13 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -181,7 +171,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #if PY_VERSION_HEX < 0x03090000 #undef CYTHON_PEP489_MULTI_PHASE_INIT @@ -191,14 +181,19 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00) + #endif + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100) #endif #undef CYTHON_USE_FREELISTS #define CYTHON_USE_FREELISTS 0 @@ -211,7 +206,7 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_CLINE_IN_TRACEBACK #define CYTHON_CLINE_IN_TRACEBACK 0 #undef CYTHON_USE_TYPE_SLOTS @@ -220,8 +215,6 @@ END: Cython Metadata */ #define CYTHON_USE_TYPE_SPECS 1 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -234,8 +227,13 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -243,71 +241,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_GIL #define CYTHON_FAST_GIL 0 #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #undef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 1 - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #endif - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 1 - #ifndef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #ifndef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #endif - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #ifndef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif - #ifndef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #endif - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 1 - #endif + #define CYTHON_METH_FASTCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS @@ -319,26 +253,37 @@ END: Cython Metadata */ #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 + #endif + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000) #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 - #endif - #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 - #ifndef CYTHON_USE_TYPE_SLOTS + #ifdef Py_GIL_DISABLED + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1 + #else + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 + #endif + #if PY_VERSION_HEX < 0x030A0000 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #elif !defined(CYTHON_USE_TYPE_SLOTS) #define CYTHON_USE_TYPE_SLOTS 1 #endif #ifndef CYTHON_USE_TYPE_SPECS @@ -347,22 +292,19 @@ END: Cython Metadata */ #ifndef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 1 #endif - #if PY_MAJOR_VERSION < 3 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #ifndef CYTHON_USE_PYLONG_INTERNALS #define CYTHON_USE_PYLONG_INTERNALS 1 #endif - #ifndef CYTHON_USE_PYLIST_INTERNALS + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLIST_INTERNALS) #define CYTHON_USE_PYLIST_INTERNALS 1 #endif #ifndef CYTHON_USE_UNICODE_INTERNALS #define CYTHON_USE_UNICODE_INTERNALS 1 #endif - #if PY_VERSION_HEX < 0x030300F0 || PY_VERSION_HEX >= 0x030B00A2 + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2 #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 #elif !defined(CYTHON_USE_UNICODE_WRITER) @@ -371,20 +313,32 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 + #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS) + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #ifndef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 1 #endif + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #ifndef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 1 #endif #ifndef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 1 #endif - #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #elif !defined(CYTHON_FAST_GIL) + #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) + #define CYTHON_METH_FASTCALL 1 #endif #ifndef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 1 @@ -392,51 +346,49 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif - #if PY_VERSION_HEX < 0x030400a1 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #elif !defined(CYTHON_USE_TP_FINALIZE) + #ifndef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1) + #endif + #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif - #if PY_VERSION_HEX < 0x030600B1 + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 1 + #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #elif !defined(CYTHON_USE_DICT_VERSIONS) - #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5) + #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE) #endif - #if PY_VERSION_HEX < 0x030700A3 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #elif !defined(CYTHON_USE_EXC_INFO_STACK) + #ifndef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 1 #endif #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 1 + #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING) #endif #endif -#if !defined(CYTHON_FAST_PYCCALL) -#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#ifndef CYTHON_FAST_PYCCALL +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCALL #endif -#if !defined(CYTHON_VECTORCALL) +#ifndef CYTHON_VECTORCALL +#if CYTHON_COMPILING_IN_LIMITED_API +#define CYTHON_VECTORCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) +#else #define CYTHON_VECTORCALL (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1) #endif +#endif #define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1) #if CYTHON_USE_PYLONG_INTERNALS - #if PY_MAJOR_VERSION < 3 - #include "longintrepr.h" - #endif #undef SHIFT #undef BASE #undef MASK @@ -496,7 +448,7 @@ END: Cython Metadata */ #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x) #endif #ifndef CYTHON_NCP_UNUSED -# if CYTHON_COMPILING_IN_CPYTHON +# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING # define CYTHON_NCP_UNUSED # else # define CYTHON_NCP_UNUSED CYTHON_UNUSED @@ -571,6 +523,9 @@ END: Cython Metadata */ #endif #endif #endif +#ifndef Py_UNREACHABLE + #define Py_UNREACHABLE() assert(0); abort() +#endif #ifdef __cplusplus template struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; @@ -585,6 +540,7 @@ END: Cython Metadata */ #endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) +/* CInitCode */ #ifndef CYTHON_INLINE #if defined(__clang__) #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) @@ -599,109 +555,42 @@ END: Cython Metadata */ #endif #endif +/* PythonCompatibility */ #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" - #define __Pyx_DefaultClassType PyClass_Type - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" - #define __Pyx_DefaultClassType PyType_Type +#define __Pyx_BUILTIN_MODULE_NAME "builtins" +#define __Pyx_DefaultClassType PyType_Type #if CYTHON_COMPILING_IN_LIMITED_API - static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyObject *exception_table = NULL; - PyObject *types_module=NULL, *code_type=NULL, *result=NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 - PyObject *version_info; - PyObject *py_minor_version = NULL; - #endif - long minor_version = 0; - PyObject *type, *value, *traceback; - PyErr_Fetch(&type, &value, &traceback); - #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 - minor_version = 11; - #else - if (!(version_info = PySys_GetObject("version_info"))) goto end; - if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; - minor_version = PyLong_AsLong(py_minor_version); - Py_DECREF(py_minor_version); - if (minor_version == -1 && PyErr_Occurred()) goto end; - #endif - if (!(types_module = PyImport_ImportModule("types"))) goto end; - if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; - if (minor_version <= 7) { - (void)p; - result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else if (minor_version <= 10) { - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else { - if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); - } - end: - Py_XDECREF(code_type); - Py_XDECREF(exception_table); - Py_XDECREF(types_module); - if (type) { - PyErr_Restore(type, value, traceback); - } - return result; - } #ifndef CO_OPTIMIZED - #define CO_OPTIMIZED 0x0001 + static int CO_OPTIMIZED; #endif #ifndef CO_NEWLOCALS - #define CO_NEWLOCALS 0x0002 + static int CO_NEWLOCALS; #endif #ifndef CO_VARARGS - #define CO_VARARGS 0x0004 + static int CO_VARARGS; #endif #ifndef CO_VARKEYWORDS - #define CO_VARKEYWORDS 0x0008 + static int CO_VARKEYWORDS; #endif #ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x0200 + static int CO_ASYNC_GENERATOR; #endif #ifndef CO_GENERATOR - #define CO_GENERATOR 0x0020 + static int CO_GENERATOR; #endif #ifndef CO_COROUTINE - #define CO_COROUTINE 0x0080 + static int CO_COROUTINE; #endif -#elif PY_VERSION_HEX >= 0x030B0000 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyCodeObject *result; - PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); - if (!empty_bytes) return NULL; - result = - #if PY_VERSION_HEX >= 0x030C0000 - PyUnstable_Code_NewWithPosOnlyArgs - #else - PyCode_NewWithPosOnlyArgs - #endif - (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); - Py_DECREF(empty_bytes); - return result; - } -#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #else - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x80 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x200 + #endif #endif +static int __Pyx_init_co_variables(void); #if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE) #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type) #else @@ -733,12 +622,6 @@ END: Cython Metadata */ #else #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) #endif -#ifndef CO_COROUTINE - #define CO_COROUTINE 0x80 -#endif -#ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x200 -#endif #ifndef Py_TPFLAGS_CHECKTYPES #define Py_TPFLAGS_CHECKTYPES 0 #endif @@ -760,7 +643,7 @@ END: Cython Metadata */ #ifndef METH_STACKLESS #define METH_STACKLESS 0 #endif -#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) +#ifndef METH_FASTCALL #ifndef METH_FASTCALL #define METH_FASTCALL 0x80 #endif @@ -798,7 +681,7 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_MAJOR_VERSION >= 0x030900B1 +#if PY_VERSION_HEX >= 0x030900B1 #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) #else #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) @@ -815,7 +698,7 @@ static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; } #endif -static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void (*cfunc)(void)) { #if CYTHON_COMPILING_IN_LIMITED_API return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; #else @@ -823,7 +706,7 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #endif } #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) -#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 +#if __PYX_LIMITED_VERSION_HEX < 0x03090000 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -839,8 +722,10 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define PyObject_Realloc(p) PyMem_Realloc(p) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) +#elif CYTHON_COMPILING_IN_GRAAL + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno)) #else #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) @@ -851,15 +736,11 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define __Pyx_PyThreadState_Current PyThreadState_GET() #elif PY_VERSION_HEX >= 0x030d00A1 #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() -#elif PY_VERSION_HEX >= 0x03060000 - #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() -#elif PY_VERSION_HEX >= 0x03000000 - #define __Pyx_PyThreadState_Current PyThreadState_GET() #else - #define __Pyx_PyThreadState_Current _PyThreadState_Current + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #endif -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) +#if CYTHON_USE_MODULE_STATE +static CYTHON_INLINE void *__Pyx__PyModule_GetState(PyObject *op) { void *result; result = PyModule_GetState(op); @@ -867,85 +748,43 @@ static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) Py_FatalError("Couldn't find the module state"); return result; } -#endif -#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE(obj), name, func_ctype) -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) +#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o) #else - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) -#endif -#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) -#include "pythread.h" -#define Py_tss_NEEDS_INIT 0 -typedef int Py_tss_t; -static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { - *key = PyThread_create_key(); - return 0; -} -static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { - Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); - *key = Py_tss_NEEDS_INIT; - return key; -} -static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { - PyObject_Free(key); -} -static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { - return *key != Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { - PyThread_delete_key(*key); - *key = Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { - return PyThread_set_key_value(*key, value); -} -static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { - return PyThread_get_key_value(*key); -} -#endif -#if PY_MAJOR_VERSION < 3 - #if CYTHON_COMPILING_IN_PYPY - #if PYPY_VERSION_NUM < 0x07030600 - #if defined(__cplusplus) && __cplusplus >= 201402L - [[deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")]] - #elif defined(__GNUC__) || defined(__clang__) - __attribute__ ((__deprecated__("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6"))) - #elif defined(_MSC_VER) - __declspec(deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")) - #endif - static CYTHON_INLINE int PyGILState_Check(void) { - return 0; - } - #else // PYPY_VERSION_NUM < 0x07030600 - #endif // PYPY_VERSION_NUM < 0x07030600 - #else - static CYTHON_INLINE int PyGILState_Check(void) { - PyThreadState * tstate = _PyThreadState_Current; - return tstate && (tstate == PyGILState_GetThisThreadState()); - } - #endif +#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) +#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype) +#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype) +#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#if CYTHON_USE_TYPE_SLOTS + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype) + #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL) + #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) +#else + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\ + ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\ + (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\ + __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL) + #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype) + #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype) +#endif +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() #endif -#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) +#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); if (res == NULL) PyErr_Clear(); return res; } -#elif PY_MAJOR_VERSION >= 3 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000) +#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000 #define __Pyx_PyDict_GetItemStrWithError PyDict_GetItemWithError #define __Pyx_PyDict_GetItemStr PyDict_GetItem #else @@ -969,17 +808,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if CYTHON_USE_TYPE_SLOTS #define __Pyx_PyType_GetFlags(tp) (((PyTypeObject *)tp)->tp_flags) #define __Pyx_PyType_HasFeature(type, feature) ((__Pyx_PyType_GetFlags(type) & (feature)) != 0) - #define __Pyx_PyObject_GetIterNextFunc(obj) (Py_TYPE(obj)->tp_iternext) #else #define __Pyx_PyType_GetFlags(tp) (PyType_GetFlags((PyTypeObject *)tp)) #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) - #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) -#else - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) #endif +#define __Pyx_PyObject_GetIterNextFunc(iterator) __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc) #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ PyTypeObject *type = Py_TYPE((PyObject*)obj);\ @@ -991,24 +824,20 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyHeapTypeObject_GC_Del(obj) PyObject_GC_Del(obj) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define CYTHON_PEP393_ENABLED 1 #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GetLength(u)) -#elif PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) - #define CYTHON_PEP393_ENABLED 1 +#else #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_READY(op) (0) #else #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ 0 : _PyUnicode_Ready((PyObject *)(op))) #endif - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) @@ -1024,20 +853,6 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) #endif #endif -#else - #define CYTHON_PEP393_ENABLED 0 - #define PyUnicode_1BYTE_KIND 1 - #define PyUnicode_2BYTE_KIND 2 - #define PyUnicode_4BYTE_KIND 4 - #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) - #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) - #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) - #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) - #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) @@ -1051,8 +866,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if !defined(PyUnicode_DecodeUnicodeEscape) #define PyUnicode_DecodeUnicodeEscape(s, size, errors) PyUnicode_Decode(s, size, "unicode_escape", errors) #endif - #if !defined(PyUnicode_Contains) || (PY_MAJOR_VERSION == 2 && PYPY_VERSION_NUM < 0x07030500) - #undef PyUnicode_Contains + #if !defined(PyUnicode_Contains) #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) #endif #if !defined(PyByteArray_Check) @@ -1062,33 +876,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) #endif #endif -#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) #define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) -#else - #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) -#endif -#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) - #define PyObject_ASCII(o) PyObject_Repr(o) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#ifndef PyObject_Unicode - #define PyObject_Unicode PyObject_Str -#endif -#endif -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) - #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) -#else - #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) - #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) -#endif #if CYTHON_COMPILING_IN_CPYTHON #define __Pyx_PySequence_ListKeepNew(obj)\ (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj)) @@ -1105,28 +893,83 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif +#if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) + #else + #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i) + #endif +#elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i)) + #endif +#else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_NewRef(PyList_GET_ITEM(o, i)) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result) +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyObject_GetItem(dict, key); + if (*result == NULL) { + if (PyErr_ExceptionMatches(PyExc_KeyError)) { + PyErr_Clear(); + return 0; + } + return -1; + } + return 1; +} +#else +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyDict_GetItemWithError(dict, key); + if (*result == NULL) { + return PyErr_Occurred() ? -1 : 0; + } + Py_INCREF(*result); + return 1; +} +#endif +#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST + #define __Pyx_VISIT_CONST(obj) Py_VISIT(obj) +#else + #define __Pyx_VISIT_CONST(obj) +#endif #if CYTHON_ASSUME_SAFE_MACROS #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i) #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i) +#endif +#if CYTHON_ASSUME_SAFE_SIZE #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o) #else - #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) - #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) - #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) - #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o) #endif -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) #else static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { @@ -1135,85 +978,138 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, return module; } #endif -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define __Pyx_Py3Int_Check(op) PyLong_Check(op) - #define __Pyx_Py3Int_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask - #define PyNumber_Int PyNumber_Long -#else - #define __Pyx_Py3Int_Check(op) (PyLong_Check(op) || PyInt_Check(op)) - #define __Pyx_Py3Int_CheckExact(op) (PyLong_CheckExact(op) || PyInt_CheckExact(op)) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString) + #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) #endif -#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY - #ifndef PyUnicode_InternFromString - #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) - #endif +#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t +#define __Pyx_PyLong_AsHash_t __Pyx_PyIndex_AsSsize_t +#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000 + #define __Pyx_PySendResult PySendResult +#else + typedef enum { + PYGEN_RETURN = 0, + PYGEN_ERROR = -1, + PYGEN_NEXT = 1, + } __Pyx_PySendResult; +#endif +#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3 + typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result); +#else + #define __Pyx_pyiter_sendfunc sendfunc #endif -#if PY_VERSION_HEX < 0x030200A4 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsHash_t +#if !CYTHON_USE_AM_SEND +#define __PYX_HAS_PY_AM_SEND 0 +#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000 +#define __PYX_HAS_PY_AM_SEND 1 #else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsSsize_t +#define __PYX_HAS_PY_AM_SEND 2 // our own backported implementation #endif -#if CYTHON_USE_ASYNC_SLOTS - #if PY_VERSION_HEX >= 0x030500B1 +#if __PYX_HAS_PY_AM_SEND < 2 #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods - #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) - #else - #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) - #endif #else - #define __Pyx_PyType_AsAsync(obj) NULL -#endif -#ifndef __Pyx_PyAsyncMethodsStruct typedef struct { unaryfunc am_await; unaryfunc am_aiter; unaryfunc am_anext; + __Pyx_pyiter_sendfunc am_send; } __Pyx_PyAsyncMethodsStruct; + #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s)) #endif - -#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) - #if !defined(_USE_MATH_DEFINES) - #define _USE_MATH_DEFINES - #endif -#endif -#include -#ifdef NAN -#define __PYX_NAN() ((float) NAN) +#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0 + #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21) #else -static CYTHON_INLINE float __PYX_NAN() { - float value; - memset(&value, 0xFF, sizeof(value)); - return value; -} + #define __Pyx_TPFLAGS_HAVE_AM_SEND (0) #endif -#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) -#define __Pyx_truncl trunc +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyInterpreterState_Get() PyInterpreterState_Get() +#else +#define __Pyx_PyInterpreterState_Get() PyThreadState_Get()->interp +#endif +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000 +#ifdef __cplusplus +extern "C" +#endif +PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); +#endif +#if CYTHON_COMPILING_IN_LIMITED_API +static int __Pyx_init_co_variable(PyObject *inspect, const char* name, int *write_to) { + int value; + PyObject *py_value = PyObject_GetAttrString(inspect, name); + if (!py_value) return 0; + value = (int) PyLong_AsLong(py_value); + Py_DECREF(py_value); + *write_to = value; + return value != -1 || !PyErr_Occurred(); +} +static int __Pyx_init_co_variables(void) { + PyObject *inspect; + int result; + inspect = PyImport_ImportModule("inspect"); + result = +#if !defined(CO_OPTIMIZED) + __Pyx_init_co_variable(inspect, "CO_OPTIMIZED", &CO_OPTIMIZED) && +#endif +#if !defined(CO_NEWLOCALS) + __Pyx_init_co_variable(inspect, "CO_NEWLOCALS", &CO_NEWLOCALS) && +#endif +#if !defined(CO_VARARGS) + __Pyx_init_co_variable(inspect, "CO_VARARGS", &CO_VARARGS) && +#endif +#if !defined(CO_VARKEYWORDS) + __Pyx_init_co_variable(inspect, "CO_VARKEYWORDS", &CO_VARKEYWORDS) && +#endif +#if !defined(CO_ASYNC_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) && +#endif +#if !defined(CO_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_GENERATOR", &CO_GENERATOR) && +#endif +#if !defined(CO_COROUTINE) + __Pyx_init_co_variable(inspect, "CO_COROUTINE", &CO_COROUTINE) && +#endif + 1; + Py_DECREF(inspect); + return result ? 0 : -1; +} +#else +static int __Pyx_init_co_variables(void) { + return 0; // It's a limited API-only feature +} +#endif + +/* MathInitCode */ +#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) + #ifndef _USE_MATH_DEFINES + #define _USE_MATH_DEFINES + #endif +#endif +#include +#ifdef NAN +#define __PYX_NAN() ((float) NAN) +#else +static CYTHON_INLINE float __PYX_NAN() { + float value; + memset(&value, 0xFF, sizeof(value)); + return value; +} +#endif +#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) +#define __Pyx_truncl trunc #else #define __Pyx_truncl truncl #endif -#define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } +#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 0 +#endif +#ifndef CYTHON_CLINE_IN_TRACEBACK +#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#endif +#if CYTHON_CLINE_IN_TRACEBACK +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; } +#else +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; } +#endif #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } @@ -1250,13 +1146,8 @@ static CYTHON_INLINE float __PYX_NAN() { #define CYTHON_WITHOUT_ASSERTIONS #endif -typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; - const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; - #define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 1 #define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) -#define __PYX_DEFAULT_STRING_ENCODING "ascii" #define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString #define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize #define __Pyx_uchar_cast(c) ((unsigned char)c) @@ -1298,19 +1189,23 @@ static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); -#if PY_MAJOR_VERSION < 3 - #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s) #else - #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize -#endif -#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s) +#endif #define __Pyx_PyObject_AsWritableString(s) ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableSString(s) ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) @@ -1319,32 +1214,44 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) #define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) #define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) -#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef) + return Py_NewRef(obj); +#else + Py_INCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef) + return Py_XNewRef(obj); +#else + Py_XINCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b); static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x); #define __Pyx_PySequence_Tuple(obj)\ (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t); static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #if CYTHON_ASSUME_SAFE_MACROS -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x) #else -#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x) #endif -#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) -#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x)) #define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) -#else -#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) -#endif #if CYTHON_USE_PYLONG_INTERNALS #if PY_VERSION_HEX >= 0x030C00A7 #ifndef _PyLong_SIGN_MASK @@ -1391,81 +1298,12 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) #endif #endif -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII -#include -static int __Pyx_sys_getdefaultencoding_not_ascii; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - PyObject* ascii_chars_u = NULL; - PyObject* ascii_chars_b = NULL; - const char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - if (strcmp(default_encoding_c, "ascii") == 0) { - __Pyx_sys_getdefaultencoding_not_ascii = 0; - } else { - char ascii_chars[128]; - int c; - for (c = 0; c < 128; c++) { - ascii_chars[c] = (char) c; - } - __Pyx_sys_getdefaultencoding_not_ascii = 1; - ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); - if (!ascii_chars_u) goto bad; - ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); - if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { - PyErr_Format( - PyExc_ValueError, - "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", - default_encoding_c); - goto bad; - } - Py_DECREF(ascii_chars_u); - Py_DECREF(ascii_chars_b); - } - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - Py_XDECREF(ascii_chars_u); - Py_XDECREF(ascii_chars_b); - return -1; -} -#endif -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL) #else -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#include -static char* __PYX_DEFAULT_STRING_ENCODING; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); - if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; - strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - return -1; -} -#endif + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #endif @@ -1477,26 +1315,91 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ */ +/* PretendToInitialize */ +#ifdef __cplusplus +#if __cplusplus > 201103L +#include +#endif +template +static void __Pyx_pretend_to_initialize(T* ptr) { +#if __cplusplus > 201103L + if ((std::is_trivially_default_constructible::value)) +#endif + *ptr = T(); + (void)ptr; +} +#else static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } +#endif + #if !CYTHON_USE_MODULE_STATE static PyObject *__pyx_m = NULL; #endif static int __pyx_lineno; static int __pyx_clineno = 0; -static const char * __pyx_cfilenm = __FILE__; +static const char * const __pyx_cfilenm = __FILE__; static const char *__pyx_filename; /* #### Code section: filename_table ### */ -static const char *__pyx_f[] = { +static const char* const __pyx_f[] = { "src/hunter/_event.pyx", "src/hunter/_event.pxd", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/type.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", "src/hunter/_tracer.pxd", "src/hunter/vendor/_cymem/cymem.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ +/* Profile_config.proto */ +#ifndef CYTHON_PROFILE +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + #define CYTHON_PROFILE 0 +#else + #define CYTHON_PROFILE 1 +#endif +#endif +#ifndef CYTHON_TRACE_NOGIL + #define CYTHON_TRACE_NOGIL 0 +#else + #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) + #define CYTHON_TRACE 1 + #endif +#endif +#ifndef CYTHON_TRACE + #define CYTHON_TRACE 0 +#endif +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef enum { + __Pyx_Monitoring_PY_START = 0, + __Pyx_Monitoring_PY_RETURN, + __Pyx_Monitoring_PY_UNWIND, + __Pyx_Monitoring_LINE, + __Pyx_Monitoring_RAISE, + __Pyx_Monitoring_RERAISE, + __Pyx_Monitoring_EXCEPTION_HANDLED, + __Pyx_Monitoring_PY_RESUME, + __Pyx_Monitoring_PY_YIELD, + __Pyx_Monitoring_STOP_ITERATION, + } __Pyx_Monitoring_Event_Index; + static const unsigned char __Pyx_MonitoringEventTypes[] = { + PY_MONITORING_EVENT_PY_START, + PY_MONITORING_EVENT_PY_RETURN, + PY_MONITORING_EVENT_PY_UNWIND, + PY_MONITORING_EVENT_LINE, + PY_MONITORING_EVENT_RAISE, + PY_MONITORING_EVENT_RERAISE, + PY_MONITORING_EVENT_EXCEPTION_HANDLED, + PY_MONITORING_EVENT_PY_RESUME, + PY_MONITORING_EVENT_PY_YIELD, + PY_MONITORING_EVENT_STOP_ITERATION, + }; + #define __Pyx_MonitoringEventTypes_CyFunc_count (sizeof(__Pyx_MonitoringEventTypes) - 3) + #define __Pyx_MonitoringEventTypes_CyGen_count (sizeof(__Pyx_MonitoringEventTypes)) +#endif +#endif + /* NoFastGil.proto */ #define __Pyx_PyGILState_Ensure PyGILState_Ensure #define __Pyx_PyGILState_Release PyGILState_Release @@ -1504,9 +1407,163 @@ static const char *__pyx_f[] = { #define __Pyx_FastGIL_Forget() #define __Pyx_FastGilFuncInit() -/* ForceInitThreads.proto */ -#ifndef __PYX_FORCE_INIT_THREADS - #define __PYX_FORCE_INIT_THREADS 0 +/* Atomics.proto */ +#include +#ifndef CYTHON_ATOMICS + #define CYTHON_ATOMICS 1 +#endif +#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS +#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __pyx_atomic_int_type int +#define __pyx_nonatomic_int_type int +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__)) + #include +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ + (defined(_MSC_VER) && _MSC_VER >= 1700))) + #include +#endif +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type atomic_int + #define __pyx_atomic_ptr_type atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) atomic_load(value) + #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C atomics" + #endif +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ +\ + (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type std::atomic_int + #define __pyx_atomic_ptr_type std::atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) std::atomic_load(value) + #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C++ atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C++ atomics" + #endif +#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\ + (__GNUC_MINOR__ > 1 ||\ + (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2)))) + #define __pyx_atomic_ptr_type void* + #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1) + #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #warning "Using GNU atomics" + #endif +#elif CYTHON_ATOMICS && defined(_MSC_VER) + #include + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type long + #define __pyx_atomic_ptr_type void* + #undef __pyx_nonatomic_int_type + #define __pyx_nonatomic_int_type long + #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer) + #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1) + #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0) + #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value + #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #pragma message ("Using MSVC atomics") + #endif +#else + #undef CYTHON_ATOMICS + #define CYTHON_ATOMICS 0 + #ifdef __PYX_DEBUG_ATOMICS + #warning "Not using atomics" + #endif +#endif +#if CYTHON_ATOMICS + #define __pyx_add_acquisition_count(memview)\ + __pyx_atomic_incr_relaxed(__pyx_get_slice_count_pointer(memview)) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_atomic_decr_acq_rel(__pyx_get_slice_count_pointer(memview)) +#else + #define __pyx_add_acquisition_count(memview)\ + __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) +#endif + +/* IncludeStructmemberH.proto */ +#include + +/* CriticalSections.proto */ +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __Pyx_PyCriticalSection void* +#define __Pyx_PyCriticalSection2 void* +#define __Pyx_PyCriticalSection_Begin1(cs, arg) (void)cs +#define __Pyx_PyCriticalSection_Begin2(cs, arg1, arg2) (void)cs +#define __Pyx_PyCriticalSection_End1(cs) +#define __Pyx_PyCriticalSection_End2(cs) +#else +#define __Pyx_PyCriticalSection PyCriticalSection +#define __Pyx_PyCriticalSection2 PyCriticalSection2 +#define __Pyx_PyCriticalSection_Begin1 PyCriticalSection_Begin +#define __Pyx_PyCriticalSection_Begin2 PyCriticalSection2_Begin +#define __Pyx_PyCriticalSection_End1 PyCriticalSection_End +#define __Pyx_PyCriticalSection_End2 PyCriticalSection2_End +#endif +#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_BEGIN_CRITICAL_SECTION(o) { +#define __Pyx_END_CRITICAL_SECTION() } +#else +#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION +#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION #endif /* #### Code section: numeric_typedefs ### */ @@ -1522,12 +1579,21 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; struct __pyx_obj_6hunter_6_event_Event; struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines; +/* "_tracer.pxd":7 + * from cpython.ref cimport PyObject + * + * ctypedef extern FrameType # <<<<<<<<<<<<<< + * + * cdef extern from "vendor/_compat.h": +*/ +typedef PyObject *FrameType; + /* "vendor/_cymem/cymem.pxd":2 * # cython: language_level=3str * ctypedef void* (*malloc_t)(size_t n) # <<<<<<<<<<<<<< * ctypedef void (*free_t)(void *p) * - */ +*/ typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); /* "vendor/_cymem/cymem.pxd":3 @@ -1536,16 +1602,16 @@ typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); * ctypedef void (*free_t)(void *p) # <<<<<<<<<<<<<< * * cdef class PyMalloc: - */ +*/ typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); -/* "_tracer.pxd":36 +/* "_tracer.pxd":35 + * * - * @cython.final - * cdef class Tracer: # <<<<<<<<<<<<<< + * @cython.final # <<<<<<<<<<<<<< + * cdef class Tracer: * cdef: - * readonly object handler - */ +*/ struct __pyx_obj_6hunter_7_tracer_Tracer { PyObject_HEAD PyObject *handler; @@ -1566,7 +1632,7 @@ struct __pyx_obj_6hunter_7_tracer_Tracer { * cdef class PyMalloc: # <<<<<<<<<<<<<< * cdef malloc_t malloc * cdef void _set(self, malloc_t malloc) - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; @@ -1580,7 +1646,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { * cdef class PyFree: # <<<<<<<<<<<<<< * cdef free_t free * cdef void _set(self, free_t free) - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; @@ -1594,7 +1660,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { * cdef class Pool: # <<<<<<<<<<<<<< * cdef readonly size_t size * cdef readonly dict addresses - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtab; @@ -1612,7 +1678,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { * cdef class Address: # <<<<<<<<<<<<<< * cdef void* ptr * cdef readonly PyMalloc pymalloc - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { PyObject_HEAD void *ptr; @@ -1621,17 +1687,17 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { }; -/* "hunter/_event.pxd":13 +/* "hunter/_event.pxd":11 + * * - * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * @cython.final # <<<<<<<<<<<<<< + * cdef class Event: * cdef: - * readonly FrameType frame - */ +*/ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; - PyFrameObject *frame; + FrameType frame; PyObject *kind; PyObject *arg; int depth; @@ -1657,13 +1723,13 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "hunter/_event.pyx":363 +/* "hunter/_event.pyx":362 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None - */ +*/ struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines { PyObject_HEAD Py_ssize_t __pyx_v_amount; @@ -1687,7 +1753,7 @@ struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines { * cdef class PyMalloc: # <<<<<<<<<<<<<< * cdef malloc_t malloc * cdef void _set(self, malloc_t malloc) - */ +*/ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc { void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); @@ -1701,7 +1767,7 @@ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vt * cdef class PyFree: # <<<<<<<<<<<<<< * cdef free_t free * cdef void _set(self, free_t free) - */ +*/ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree { void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); @@ -1715,7 +1781,7 @@ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab * cdef class Pool: # <<<<<<<<<<<<<< * cdef readonly size_t size * cdef readonly dict addresses - */ +*/ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { void *(*alloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t); @@ -1725,13 +1791,13 @@ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool; -/* "hunter/_event.pyx":47 +/* "hunter/_event.pyx":46 + * * - * @auto_pickle(False) - * cdef class Event: # <<<<<<<<<<<<<< + * @auto_pickle(False) # <<<<<<<<<<<<<< + * cdef class Event: * """ - * A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates. - */ +*/ struct __pyx_vtabstruct_6hunter_6_event_Event { PyCodeObject *(*code_getter)(struct __pyx_obj_6hunter_6_event_Event *); @@ -1781,7 +1847,6 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; -#ifdef WITH_THREAD #define __Pyx_RefNannySetupContext(name, acquire_gil)\ if (acquire_gil) {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ @@ -1795,11 +1860,6 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __Pyx_RefNannyFinishContext();\ PyGILState_Release(__pyx_gilstate_save);\ } -#else - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__)) - #define __Pyx_RefNannyFinishContextNogil() __Pyx_RefNannyFinishContext() -#endif #define __Pyx_RefNannyFinishContextNogil() {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ __Pyx_RefNannyFinishContext();\ @@ -1909,34 +1969,191 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P static PyObject *__Pyx_GetBuiltinName(PyObject *name); /* Profile.proto */ -#ifndef CYTHON_PROFILE -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - #define CYTHON_PROFILE 0 -#else - #define CYTHON_PROFILE 1 -#endif -#endif -#ifndef CYTHON_TRACE_NOGIL - #define CYTHON_TRACE_NOGIL 0 -#else - #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) - #define CYTHON_TRACE 1 - #endif -#endif -#ifndef CYTHON_TRACE - #define CYTHON_TRACE 0 -#endif #if CYTHON_TRACE #undef CYTHON_PROFILE_REUSE_FRAME #endif +#if CYTHON_USE_MODULE_STATE + #undef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 0 + #undef CYTHON_PROFILE_REUSE_FRAME +#endif +#ifndef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 1 +#endif #ifndef CYTHON_PROFILE_REUSE_FRAME #define CYTHON_PROFILE_REUSE_FRAME 0 #endif +#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) + #define __PYX_MONITORING_ABI_SUFFIX "_mon" +#else + #define __PYX_MONITORING_ABI_SUFFIX +#endif #if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef uint64_t __pyx_monitoring_version_type; + #define __Pyx_TraceDeclarationsFunc\ + PyObject *__pyx_frame_code = NULL;\ + PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyFunc_count];\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_TraceDeclarationsGen\ + PyObject *__pyx_frame_code = Py_NewRef(__pyx_generator->gi_code);\ + PyMonitoringState* __pyx_pymonitoring_state = __pyx_generator->__pyx_pymonitoring_state;\ + __pyx_monitoring_version_type __pyx_pymonitoring_version = __pyx_generator->__pyx_pymonitoring_version;\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_IsTracing(event_id) ((!__pyx_sys_monitoring_disabled_in_parallel) && (__pyx_pymonitoring_state[event_id]).active) + #define __Pyx_TraceFrameInit(codeobj)\ + if (codeobj) __pyx_frame_code = codeobj; + #define __Pyx_TurnOffSysMonitoringInParallel\ + const int __pyx_sys_monitoring_disabled_in_parallel = 1;\ + CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno); + CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event); + CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset); + CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset); + CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised); + #define __Pyx_PyMonitoring_ExitScope(nogil)\ + if (nogil) {\ + (void) __pyx_exception_already_reported;\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + PyMonitoring_ExitScope();\ + Py_XDECREF(__pyx_frame_code);\ + PyGILState_Release(state);\ + }\ + } else {\ + PyMonitoring_ExitScope();\ + Py_XDECREF(__pyx_frame_code);\ + } + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ + if ((0) ); else {\ + int ret = 0;\ + memset(__pyx_pymonitoring_state, 0, sizeof(__pyx_pymonitoring_state));\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + if (!__Pyx_PyThreadState_Current->tracing) {\ + if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\ + else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\ + if (unlikely(!__pyx_frame_code)) goto_error;\ + ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + if (!__Pyx_PyThreadState_Current->tracing) {\ + if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\ + else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\ + if (unlikely(!__pyx_frame_code)) goto_error;\ + ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\ + }\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceStartGen(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ + if ((0) ); else {\ + int ret = __Pyx__TraceStartGen(__pyx_pymonitoring_state, &__pyx_pymonitoring_version, __pyx_frame_code, offset);\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error)\ + if ((0) ); else {\ + int ret = __Pyx__TraceResumeGen(__pyx_pymonitoring_state, &__pyx_pymonitoring_version, __pyx_frame_code, offset);\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceYield(result, offset, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_YIELD)); else {\ + int ret = PyMonitoring_FirePyYieldEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + PyMonitoring_ExitScope();\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceException(offset, reraised, fresh)\ + if (!__Pyx_IsTracing((reraised) ? __Pyx_Monitoring_RERAISE : __Pyx_Monitoring_RAISE)); else {\ + if (fresh || reraised || !__pyx_exception_already_reported) {\ + __Pyx__TraceException(&__pyx_pymonitoring_state[(reraised) ? __Pyx_Monitoring_RERAISE : __Pyx_Monitoring_RAISE], __pyx_frame_code, offset, reraised);\ + }\ + __pyx_exception_already_reported = 1;\ + } + #define __Pyx_TraceExceptionDone() __pyx_exception_already_reported = 0 + #define __Pyx_TraceExceptionHandled(offset)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_EXCEPTION_HANDLED)); else {\ + (void) PyMonitoring_FireExceptionHandledEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_EXCEPTION_HANDLED], __pyx_frame_code, offset);\ + __pyx_exception_already_reported = 0;\ + } + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_RETURN)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + PyGILState_Release(state);\ + }\ + } else {\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_RETURN)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) {\ + PyErr_Clear();\ + pyvalue = Py_None; Py_INCREF(Py_None);\ + }\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, pyvalue);\ + Py_DECREF(pyvalue);\ + PyGILState_Release(state);\ + }\ + } else {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) {\ + PyErr_Clear();\ + pyvalue = Py_None; Py_INCREF(Py_None);\ + }\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, pyvalue);\ + Py_DECREF(pyvalue);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceExceptionUnwind(offset, nogil)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_UNWIND)); else {\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + (void) PyMonitoring_FirePyUnwindEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_UNWIND], __pyx_frame_code, offset);\ + PyGILState_Release(state);\ + }\ + } else {\ + (void) PyMonitoring_FirePyUnwindEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_UNWIND], __pyx_frame_code, offset);\ + }\ + } + #if CYTHON_TRACE + CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset); + #define __Pyx_TraceLine(line, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_LINE)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + ret = __Pyx__TraceLine(&__pyx_pymonitoring_state[__Pyx_Monitoring_LINE], __pyx_frame_code, line, offset);\ + PyGILState_Release(state);\ + }\ + } else {\ + ret = __Pyx__TraceLine(&__pyx_pymonitoring_state[__Pyx_Monitoring_LINE], __pyx_frame_code, line, offset);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #endif +#else #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -1949,12 +2166,26 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define CYTHON_FRAME_MODIFIER #define CYTHON_FRAME_DEL(frame) Py_CLEAR(frame) #endif - #define __Pyx_TraceDeclarations\ - static PyCodeObject *__pyx_frame_code = NULL;\ + #if CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_CODEOBJ_MODIFIER static + #else + #define CYTHON_CODEOBJ_MODIFIER + #endif + #define __Pyx_TraceDeclarationsFunc\ + CYTHON_CODEOBJ_MODIFIER PyCodeObject *__pyx_frame_code = NULL;\ + CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\ + int __Pyx_use_tracing = 0; + #define __Pyx_TraceDeclarationsGen\ + PyObject *__pyx_frame_code = __pyx_generator->gi_code;\ CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\ int __Pyx_use_tracing = 0; #define __Pyx_TraceFrameInit(codeobj)\ if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj; + #define __Pyx_PyMonitoring_ExitScope(nogil) {} + #define __Pyx_TraceException(offset, reraised, fresh) {} + #define __Pyx_TraceExceptionHandled(offset) {} + #define __Pyx_TraceExceptionDone() {} + #define __Pyx_TurnOffSysMonitoringInParallel {} // Only needed for freethreading #if PY_VERSION_HEX >= 0x030b00a2 #if PY_VERSION_HEX >= 0x030C00b1 #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ @@ -1995,15 +2226,14 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); || tstate->c_profilefunc != NULL);\ } while (0) #endif - #ifdef WITH_THREAD - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\ + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ PyThreadState *tstate;\ PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ + __Pyx_use_tracing = __Pyx_TraceSetupAndCall((PyCodeObject**)&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno, skip_event);\ }\ PyGILState_Release(state);\ if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ @@ -2011,37 +2241,22 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); } else {\ PyThreadState* tstate = PyThreadState_GET();\ if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ + __Pyx_use_tracing = __Pyx_TraceSetupAndCall((PyCodeObject**)&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno, skip_event);\ if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ }\ } - #else - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\ - { PyThreadState* tstate = PyThreadState_GET();\ - if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ - if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ - }\ - } - #endif - #define __Pyx_TraceException()\ + #define __Pyx_TraceStartGen __Pyx_TraceStartFunc + #define __Pyx_TraceYield(result, offset, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 1)) {\ - __Pyx_EnterTracing(tstate);\ - PyObject *exc_info = __Pyx_GetExceptionTuple(tstate);\ - if (exc_info) {\ - if (CYTHON_TRACE && tstate->c_tracefunc)\ - tstate->c_tracefunc(\ - tstate->c_traceobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\ - tstate->c_profilefunc(\ - tstate->c_profileobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\ - Py_DECREF(exc_info);\ - }\ - __Pyx_LeaveTracing(tstate);\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 0);\ }\ + if ((1)); else goto_error;\ } - static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result) { + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error)\ + __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, 0, 0, goto_error) + CYTHON_UNUSED static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result, int delete_frame) { PyObject *type, *value, *traceback; __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); __Pyx_EnterTracing(tstate); @@ -2049,12 +2264,13 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_RETURN, result); if (tstate->c_profilefunc) tstate->c_profilefunc(tstate->c_profileobj, frame, PyTrace_RETURN, result); - CYTHON_FRAME_DEL(frame); + if (delete_frame) { + CYTHON_FRAME_DEL(frame); + } __Pyx_LeaveTracing(tstate); __Pyx_ErrRestoreInState(tstate, type, value, traceback); } - #ifdef WITH_THREAD - #define __Pyx_TraceReturn(result, nogil)\ + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ @@ -2062,88 +2278,109 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 1);\ }\ PyGILState_Release(state);\ }\ } else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 1);\ }\ }\ + if ((1)); else goto_error;\ } - #else - #define __Pyx_TraceReturn(result, nogil)\ - if (likely(!__Pyx_use_tracing)); else {\ - PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ - }\ - } - #endif - static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno); - static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno); -#else - #define __Pyx_TraceDeclarations - #define __Pyx_TraceFrameInit(codeobj) - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error) if ((1)); else goto_error; - #define __Pyx_TraceException() - #define __Pyx_TraceReturn(result, nogil) -#endif -#if CYTHON_TRACE - static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int lineno) { - int ret; - PyObject *type, *value, *traceback; - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - __Pyx_PyFrame_SetLineNumber(frame, lineno); - __Pyx_EnterTracing(tstate); - ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); - __Pyx_LeaveTracing(tstate); - if (likely(!ret)) { - __Pyx_ErrRestoreInState(tstate, type, value, traceback); - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); - } - return ret; - } - #ifdef WITH_THREAD - #define __Pyx_TraceLine(lineno, nogil, goto_error)\ + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ - int ret = 0;\ PyThreadState *tstate;\ - PyGILState_STATE state = __Pyx_PyGILState_Ensure();\ + PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) goto_error;\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, pyvalue, 1);\ + Py_DECREF(pyvalue);\ }\ - __Pyx_PyGILState_Release(state);\ - if (unlikely(ret)) goto_error;\ + PyGILState_Release(state);\ }\ } else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ - if (unlikely(ret)) goto_error;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) goto_error;\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, pyvalue, 1);\ + Py_DECREF(pyvalue);\ }\ }\ } - #else - #define __Pyx_TraceLine(lineno, nogil, goto_error)\ + #define __Pyx_TraceExceptionUnwind(offset, nogil)\ if (likely(!__Pyx_use_tracing)); else {\ - PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ - if (unlikely(ret)) goto_error;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyThreadState *tstate;\ + PyGILState_STATE state = PyGILState_Ensure();\ + tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, Py_None, 1);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + PyThreadState* tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, Py_None, 1);\ + }\ }\ } - #endif + static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno, int skip_event); +#if CYTHON_TRACE + CYTHON_UNUSED static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line); + #define __Pyx_TraceLine(line, offset, nogil, goto_error)\ + if (likely(!__Pyx_use_tracing)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyThreadState *tstate;\ + PyGILState_STATE state = __Pyx_PyGILState_Ensure();\ + tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ + ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, line);\ + }\ + __Pyx_PyGILState_Release(state);\ + }\ + } else {\ + PyThreadState* tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ + ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, line);\ + }\ + }\ + if (unlikely(ret)) goto_error;\ + } +#endif +#endif #else - #define __Pyx_TraceLine(lineno, nogil, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceDeclarationsFunc + #define __Pyx_TraceDeclarationsGen + #define __Pyx_TraceExceptionDone() {} + #define __Pyx_TraceFrameInit(codeobj) {} + #define __Pyx_TurnOffSysMonitoringInParallel {} + #define __Pyx_PyMonitoring_ExitScope(nogil) {} + #define __Pyx_TraceException(offset, reraised, fresh) {} + #define __Pyx_TraceExceptionUnwind(offset, nogil) {} + #define __Pyx_TraceExceptionHandled(offset) {} + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceStartGen __Pyx_TraceStartFunc + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceYield(result, offset, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ + if ((1)); else goto_error; + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ + if ((1)); else { (void) convert_function; goto_error } +#endif +#if !CYTHON_TRACE + #define __Pyx_TraceLine(line, offset, nogil, goto_error) if ((1)); else goto_error; #endif /* RaiseUnexpectedTypeError.proto */ @@ -2155,6 +2392,8 @@ static PyObject* __Pyx_Intern(PyObject* s); /* TupleAndListFromArray.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); +#endif +#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); #endif @@ -2169,71 +2408,90 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int /* fastcall.proto */ #if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) #elif CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) -#else - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) -#endif -#if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) - #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) #else - #define __Pyx_Arg_NewRef_VARARGS(arg) arg - #define __Pyx_Arg_XDECREF_VARARGS(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) #endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) #define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) #if CYTHON_METH_FASTCALL - #define __Pyx_Arg_FASTCALL(args, i) args[i] - #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) + #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) + #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) #endif - #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs - to have the same reference counting */ - #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else - #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS + #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS - #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) - #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS -#define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) -#else #define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) +#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) +#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) +#else #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) #endif -/* RaiseArgTupleInvalid.proto */ -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); - /* RaiseDoubleKeywords.proto */ static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); /* ParseKeywords.proto */ -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, - const char* function_name); +static CYTHON_INLINE int __Pyx_ParseKeywords( + PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], + PyObject *kwds2, PyObject *values[], + Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs +); + +/* CallCFunction.proto */ +#define __Pyx_CallCFunction(cfunc, self, args)\ + ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) +#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ + ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) +#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ + ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) +#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ + ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) -/* ArgTypeTest.proto */ -#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ - ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ - __Pyx__ArgTypeTest(obj, type, name, exact)) -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#if !CYTHON_VECTORCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); +#endif +#define __Pyx_BUILD_ASSERT_EXPR(cond)\ + (sizeof(char [1 - 2*!(cond)]) - 1) +#ifndef Py_MEMBER_SIZE +#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) +#endif +#if !CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03080000 + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets() + #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) +#else + static size_t __pyx_pyframe_localsplus_offset = 0; + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets()\ + ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ + (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) + #define __Pyx_PyFrame_GetLocalsplus(frame)\ + (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) +#endif +#endif +#endif /* PyObjectCall.proto */ #if CYTHON_COMPILING_IN_CPYTHON @@ -2242,6 +2500,67 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg #define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) #endif +/* PyObjectCallMethO.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif + +/* PyObjectFastCall.proto */ +#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); + +/* UnpackUnboundCMethod.proto */ +typedef struct { + PyObject *type; + PyObject **method_name; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS + __pyx_atomic_int_type initialized; +#endif + PyCFunction func; + PyObject *method; + int flag; +} __Pyx_CachedCFunction; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { +#if !CYTHON_ATOMICS + return 1; +#else + __pyx_nonatomic_int_type expected = 0; + if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { + return 0; + } + return expected; +#endif +} +static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { +#if CYTHON_ATOMICS + __pyx_atomic_store(&cfunc->initialized, 2); +#endif +} +#else +#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 +#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) +#endif + +/* CallUnboundCMethod2.proto */ +CYTHON_UNUSED +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); +#else +#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) +#endif + +/* RaiseArgTupleInvalid.proto */ +static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, + Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); + +/* ArgTypeTest.proto */ +#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ + ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ + __Pyx__ArgTypeTest(obj, type, name, exact)) +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); + /* RaiseException.proto */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); @@ -2276,7 +2595,7 @@ static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UIN #define __Pyx_GetModuleGlobalName(var, name) do {\ static PY_UINT64_T __pyx_dict_version = 0;\ static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ } while(0) @@ -2292,22 +2611,30 @@ static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_ve static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); #endif -/* KeywordStringCheck.proto */ -static int __Pyx_CheckKeywordStrings(PyObject *kw, const char* function_name, int kw_allowed); +/* PyObjectFormatAndDecref.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); + +/* JoinPyUnicode.proto */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char); + +/* RejectKeywords.proto */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); /* GetItemInt.proto */ -#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ +#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\ (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\ __Pyx_GetItemInt_Generic(o, to_py_func(i)))) -#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ +#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, int wraparound, int boundscheck); -#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ +#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL)) @@ -2317,50 +2644,13 @@ static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, int wraparound, int boundscheck); -/* PyFunctionFastCall.proto */ -#if CYTHON_FAST_PYCALL -#if !CYTHON_VECTORCALL -#define __Pyx_PyFunction_FastCall(func, args, nargs)\ - __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); -#endif -#define __Pyx_BUILD_ASSERT_EXPR(cond)\ - (sizeof(char [1 - 2*!(cond)]) - 1) -#ifndef Py_MEMBER_SIZE -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) -#endif -#if !CYTHON_VECTORCALL -#if PY_VERSION_HEX >= 0x03080000 - #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif - #define __Pxy_PyFrame_Initialize_Offsets() - #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) +/* PyObjectFastCallMethod.proto */ +#if CYTHON_VECTORCALL && PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyObject_FastCallMethod(name, args, nargsf) PyObject_VectorcallMethod(name, args, nargsf, NULL) #else - static size_t __pyx_pyframe_localsplus_offset = 0; - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets()\ - ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ - (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) - #define __Pyx_PyFrame_GetLocalsplus(frame)\ - (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) -#endif -#endif +static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf); #endif -/* PyObjectCallMethO.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); -#endif - -/* PyObjectFastCall.proto */ -#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs); - /* IterFinish.proto */ static CYTHON_INLINE int __Pyx_IterFinish(void); @@ -2392,12 +2682,8 @@ static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); /* UnpackTuple2.proto */ -#define __Pyx_unpack_tuple2(tuple, value1, value2, is_tuple, has_known_size, decref_tuple)\ - (likely(is_tuple || PyTuple_Check(tuple)) ?\ - (likely(has_known_size || PyTuple_GET_SIZE(tuple) == 2) ?\ - __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple) :\ - (__Pyx_UnpackTupleError(tuple, 2), -1)) :\ - __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple)) +static CYTHON_INLINE int __Pyx_unpack_tuple2( + PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple); static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple); static int __Pyx_unpack_tuple2_generic( @@ -2424,41 +2710,24 @@ static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* s return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); } -/* StrEquals.proto */ -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals +/* IterNextPlain.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyIter_Next_Plain(PyObject *iterator); +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 +static PyObject *__Pyx_GetBuiltinNext_LimitedAPI(void); #endif /* IterNext.proto */ #define __Pyx_PyIter_Next(obj) __Pyx_PyIter_Next2(obj, NULL) static CYTHON_INLINE PyObject *__Pyx_PyIter_Next2(PyObject *, PyObject *); -/* PyIntBinop.proto */ +/* PyLongBinop.proto */ #if !CYTHON_COMPILING_IN_PYPY -static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check); +static CYTHON_INLINE PyObject* __Pyx_PyLong_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check); #else -#define __Pyx_PyInt_SubtractObjC(op1, op2, intval, inplace, zerodivision_check)\ +#define __Pyx_PyLong_SubtractObjC(op1, op2, intval, inplace, zerodivision_check)\ (inplace ? PyNumber_InPlaceSubtract(op1, op2) : PyNumber_Subtract(op1, op2)) #endif -/* PyObjectCall2Args.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); - -/* PyObjectCallMethod1.proto */ -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); - -/* StringJoin.proto */ -#if PY_MAJOR_VERSION < 3 -#define __Pyx_PyString_Join __Pyx_PyBytes_Join -#define __Pyx_PyBaseString_Join(s, v) (PyUnicode_CheckExact(s) ? PyUnicode_Join(s, v) : __Pyx_PyBytes_Join(s, v)) -#else -#define __Pyx_PyString_Join PyUnicode_Join -#define __Pyx_PyBaseString_Join PyUnicode_Join -#endif -static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values); - /* GetTopmostException.proto */ #if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); @@ -2487,10 +2756,17 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) #define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2)) #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) -#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) { + return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2); +} #endif #define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) +#ifdef PyExceptionInstance_Check + #define __Pyx_PyBaseException_Check(obj) PyExceptionInstance_Check(obj) +#else + #define __Pyx_PyBaseException_Check(obj) __Pyx_TypeCheck(obj, PyExc_BaseException) +#endif /* GetException.proto */ #if CYTHON_FAST_THREAD_STATE @@ -2500,10 +2776,6 @@ static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); #endif -/* PyObjectFormatAndDecref.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); - /* SwapException.proto */ #if CYTHON_FAST_THREAD_STATE #define __Pyx_ExceptionSwap(type, value, tb) __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb) @@ -2517,11 +2789,6 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, #define __Pyx_PyObject_FormatSimple(s, f) (\ likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\ PyObject_Format(s, f)) -#elif PY_MAJOR_VERSION < 3 - #define __Pyx_PyObject_FormatSimple(s, f) (\ - likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\ - likely(PyString_CheckExact(s)) ? PyUnicode_FromEncodedObject(s, NULL, "strict") :\ - PyObject_Format(s, f)) #elif CYTHON_USE_TYPE_SLOTS #define __Pyx_PyObject_FormatSimple(s, f) (\ likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\ @@ -2534,10 +2801,6 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject_Format(s, f)) #endif -/* JoinPyUnicode.proto */ -static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_count, Py_ssize_t result_ulength, - Py_UCS4 max_char); - /* GetAttr.proto */ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *); @@ -2565,14 +2828,25 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { /* pep479.proto */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); -/* IncludeStructmemberH.proto */ -#include +/* CallTypeTraverse.proto */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg); +#endif -/* FixUpExtensionType.proto */ -#if CYTHON_USE_TYPE_SPECS -static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); +/* LimitedApiGetTypeDict.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp); #endif +/* SetItemOnTypeDict.proto */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v); +#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v) + +/* FixUpExtensionType.proto */ +static CYTHON_INLINE int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); + /* ValidateBasesTuple.proto */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases); @@ -2581,13 +2855,6 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs /* PyType_Ready.proto */ CYTHON_UNUSED static int __Pyx_PyType_Ready(PyTypeObject *t); -/* PyObject_GenericGetAttrNoDict.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr -#endif - /* SetVTable.proto */ static int __Pyx_SetVtable(PyTypeObject* typeptr , void* vtable); @@ -2595,29 +2862,30 @@ static int __Pyx_SetVtable(PyTypeObject* typeptr , void* vtable); static void* __Pyx_GetVtable(PyTypeObject *type); /* MergeVTables.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_MergeVtables(PyTypeObject *type); -#endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 -#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 +#define __PYX_HAVE_RT_ImportType_proto_3_1_2 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_0_10 { - __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, - __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 +enum __Pyx_ImportType_CheckSize_3_1_2 { + __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); #endif +/* ListPack.proto */ +static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...); + /* Import.proto */ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); @@ -2627,42 +2895,21 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); /* FetchSharedCythonModule.proto */ static PyObject *__Pyx_FetchSharedCythonABIModule(void); +/* dict_setdefault.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, int is_safe_type); + /* FetchCommonType.proto */ -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type); -#else -static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases); -#endif +static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases); + +/* CommonTypesMetaclass.proto */ +static int __pyx_CommonTypesMetaclass_init(PyObject *module); +#define __Pyx_CommonTypesMetaclass_USED /* PyMethodNew.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - typesModule = PyImport_ImportModule("types"); - if (!typesModule) return NULL; - methodType = PyObject_GetAttrString(typesModule, "MethodType"); - Py_DECREF(typesModule); - if (!methodType) return NULL; - result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); - Py_DECREF(methodType); - return result; -} -#elif PY_MAJOR_VERSION >= 3 -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - return PyMethod_New(func, self); -} -#else - #define __Pyx_PyMethod_New PyMethod_New -#endif +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ); /* PyVectorcallFastCallDict.proto */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw); #endif @@ -2696,10 +2943,11 @@ typedef struct { #else PyCMethodObject func; #endif -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL ||\ + (CYTHON_COMPILING_IN_LIMITED_API && CYTHON_METH_FASTCALL) __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2712,9 +2960,7 @@ typedef struct { #if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif - void *defaults; - int defaults_pyobjects; - size_t defaults_size; + PyObject *defaults; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2723,10 +2969,10 @@ typedef struct { PyObject *func_is_coroutine; } __pyx_CyFunctionObject; #undef __Pyx_CyOrPyCFunction_Check -#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) -#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)); #undef __Pyx_IsSameCFunction #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, @@ -2735,9 +2981,8 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef * PyObject *module, PyObject *globals, PyObject* code); static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj); -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *m, - size_t size, - int pyobjects); +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, + PyTypeObject *defaults_type); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m, PyObject *tuple); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m, @@ -2750,7 +2995,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_func_vectorcall(f) (((__pyx_CyFunctionObject*)f)->func_vectorcall) #else #define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall) @@ -2765,28 +3010,33 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, PyObject* code); /* CLineInTraceback.proto */ -#ifdef CYTHON_CLINE_IN_TRACEBACK -#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) -#else +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#else +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) #endif /* CodeObjectCache.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API +typedef PyObject __Pyx_CachedCodeObjectType; +#else +typedef PyCodeObject __Pyx_CachedCodeObjectType; +#endif typedef struct { - PyCodeObject* code_object; + __Pyx_CachedCodeObjectType* code_object; int code_line; } __Pyx_CodeObjectCacheEntry; struct __Pyx_CodeObjectCache { int count; int max_count; __Pyx_CodeObjectCacheEntry* entries; + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_int_type accessor_count; + #endif }; -static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); -static PyCodeObject *__pyx_find_code_object(int code_line); -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); -#endif +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line); +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object); /* AddTraceback.proto */ static void __Pyx_AddTraceback(const char *funcname, int c_line, @@ -2798,29 +3048,60 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, #endif /* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); + +/* PyObjectVectorCallKwBuilder.proto */ +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#if CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_Object_Vectorcall_CallFromBuilder PyObject_Vectorcall +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder _PyObject_Vectorcall +#endif +#define __Pyx_MakeVectorcallBuilderKwds(n) PyTuple_New(n) +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder __Pyx_PyObject_FastCallDict +#define __Pyx_MakeVectorcallBuilderKwds(n) __Pyx_PyDict_NewPresized(n) +#define __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n) PyDict_SetItem(builder, key, value) +#define __Pyx_VectorcallBuilder_AddArgStr(key, value, builder, args, n) PyDict_SetItemString(builder, key, value) +#endif /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value); /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); /* FormatTypeName.proto */ #if CYTHON_COMPILING_IN_LIMITED_API typedef PyObject *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%U" -static __Pyx_TypeName __Pyx_PyType_GetName(PyTypeObject* tp); #define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj) +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName #else +static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp); +#endif +#else // !LIMITED_API typedef const char *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%.200s" -#define __Pyx_PyType_GetName(tp) ((tp)->tp_name) +#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name) #define __Pyx_DECREF_TypeName(obj) #endif /* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); + +/* PyObjectCall2Args.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); + +/* PyObjectCallMethod1.proto */ +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); + +/* ReturnWithStopIteration.proto */ +static CYTHON_INLINE void __Pyx_ReturnWithStopIteration(PyObject* value, int async, int iternext); /* CoroutineBase.proto */ struct __pyx_CoroutineObject; @@ -2842,11 +3123,16 @@ typedef struct __pyx_CoroutineObject { PyObject *gi_weakreflist; PyObject *classobj; PyObject *yieldfrom; + __Pyx_pyiter_sendfunc yieldfrom_am_send; PyObject *gi_name; PyObject *gi_qualname; PyObject *gi_modulename; PyObject *gi_code; PyObject *gi_frame; +#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) + PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyGen_count]; + uint64_t __pyx_pymonitoring_version; +#endif int resume_label; char is_running; } __pyx_CoroutineObject; @@ -2858,8 +3144,9 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit( PyObject *name, PyObject *qualname, PyObject *module_name); static CYTHON_INLINE void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *self); static int __Pyx_Coroutine_clear(PyObject *self); +static __Pyx_PySendResult __Pyx_Coroutine_AmSend(PyObject *self, PyObject *value, PyObject **retval); static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value); -static PyObject *__Pyx_Coroutine_Close(PyObject *self); +static __Pyx_PySendResult __Pyx_Coroutine_Close(PyObject *self, PyObject **retval); static PyObject *__Pyx_Coroutine_Throw(PyObject *gen, PyObject *args); #if CYTHON_USE_EXC_INFO_STACK #define __Pyx_Coroutine_SwapException(self) @@ -2883,32 +3170,80 @@ static PyObject *__Pyx_Coroutine_Throw(PyObject *gen, PyObject *args); #endif static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *tstate, PyObject **pvalue); static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state); - -/* PatchModuleWithCoroutine.proto */ -static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code); - -/* PatchGeneratorABC.proto */ -static int __Pyx_patch_abc(void); +static char __Pyx_Coroutine_test_and_set_is_running(__pyx_CoroutineObject *gen); +static void __Pyx_Coroutine_unset_is_running(__pyx_CoroutineObject *gen); +static char __Pyx_Coroutine_get_is_running(__pyx_CoroutineObject *gen); +static PyObject *__Pyx_Coroutine_get_is_running_getter(PyObject *gen, void *closure); +#if __PYX_HAS_PY_AM_SEND == 2 +static void __Pyx_SetBackportTypeAmSend(PyTypeObject *type, __Pyx_PyAsyncMethodsStruct *static_amsend_methods, __Pyx_pyiter_sendfunc am_send); +#endif +static PyObject *__Pyx_Coroutine_fail_reduce_ex(PyObject *self, PyObject *arg); /* Generator.proto */ #define __Pyx_Generator_USED -#define __Pyx_Generator_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_GeneratorType) +#define __Pyx_Generator_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_GeneratorType) #define __Pyx_Generator_New(body, code, closure, name, qualname, module_name)\ - __Pyx__Coroutine_New(__pyx_GeneratorType, body, code, closure, name, qualname, module_name) + __Pyx__Coroutine_New(__pyx_mstate_global->__pyx_GeneratorType, body, code, closure, name, qualname, module_name) static PyObject *__Pyx_Generator_Next(PyObject *self); static int __pyx_Generator_init(PyObject *module); +static CYTHON_INLINE PyObject *__Pyx_Generator_GetInlinedResult(PyObject *self); -/* CheckBinaryVersion.proto */ +/* GetRuntimeVersion.proto */ static unsigned long __Pyx_get_runtime_version(void); + +/* CheckBinaryVersion.proto */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionExport.proto */ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); -/* InitStrings.proto */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); +/* MultiPhaseInitModuleState.proto */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +static PyObject *__Pyx_State_FindModule(void*); +static int __Pyx_State_AddModule(PyObject* module, void*); +static int __Pyx_State_RemoveModule(void*); +#elif CYTHON_USE_MODULE_STATE +#define __Pyx_State_FindModule PyState_FindModule +#define __Pyx_State_AddModule PyState_AddModule +#define __Pyx_State_RemoveModule PyState_RemoveModule +#endif /* #### Code section: module_declarations ### */ +/* CythonABIVersion.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API + #if CYTHON_METH_FASTCALL + #define __PYX_FASTCALL_ABI_SUFFIX "_fastcall" + #else + #define __PYX_FASTCALL_ABI_SUFFIX + #endif + #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_FASTCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#else + #define __PYX_LIMITED_ABI_SUFFIX +#endif +#if __PYX_HAS_PY_AM_SEND == 1 + #define __PYX_AM_SEND_ABI_SUFFIX +#elif __PYX_HAS_PY_AM_SEND == 2 + #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport" +#else + #define __PYX_AM_SEND_ABI_SUFFIX "noamsend" +#endif +#ifndef __PYX_MONITORING_ABI_SUFFIX + #define __PYX_MONITORING_ABI_SUFFIX +#endif +#if CYTHON_USE_TP_FINALIZE + #define __PYX_TP_FINALIZE_ABI_SUFFIX +#else + #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize" +#endif +#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED) + #define __PYX_FREELISTS_ABI_SUFFIX +#else + #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists" +#endif +#define CYTHON_ABI __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI +#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." + static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto*/ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto*/ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto*/ @@ -2968,36 +3303,59 @@ static PyObject *__pyx_builtin_object; static PyObject *__pyx_builtin_enumerate; static PyObject *__pyx_builtin_TypeError; /* #### Code section: string_decls ### */ -static const char __pyx_k__7[] = ""; -static const char __pyx_k__9[] = "?"; +static const char __pyx_k_1[] = "\2301"; +static const char __pyx_k_6[] = "\320\004\"\240!\330\010\017\210{\230!\2306\240\021"; +static const char __pyx_k_Q[] = "\220Q"; +static const char __pyx_k_a[] = "\220a"; +static const char __pyx_k_v[] = "v"; +static const char __pyx_k__2[] = ">"; +static const char __pyx_k__3[] = ""; +static const char __pyx_k__4[] = "?"; +static const char __pyx_k__5[] = "."; +static const char __pyx_k__6[] = "\230\001"; +static const char __pyx_k__7[] = "\200\001\330\020\021"; +static const char __pyx_k_eq[] = "__eq__"; static const char __pyx_k_gc[] = "gc"; static const char __pyx_k_py[] = ".py"; static const char __pyx_k_so[] = ".so"; -static const char __pyx_k__14[] = "."; +static const char __pyx_k_A_t[] = "\200A\340\010\017\210t\220>\240\021"; +static const char __pyx_k_A_z[] = "\200A\330\010\017\210z\230\021\230!"; static const char __pyx_k_all[] = "__all__"; static const char __pyx_k_arg[] = "arg"; static const char __pyx_k_def[] = "def"; static const char __pyx_k_get[] = "get"; +static const char __pyx_k_mem[] = "mem"; +static const char __pyx_k_pop[] = "pop"; static const char __pyx_k_pyc[] = ".pyc"; static const char __pyx_k_pyd[] = ".pyd"; static const char __pyx_k_pyo[] = ".pyo"; static const char __pyx_k_pyx[] = ".pyx"; static const char __pyx_k_sub[] = "sub"; -static const char __pyx_k_args[] = "args"; static const char __pyx_k_call[] = "call"; +static const char __pyx_k_code[] = "_code"; static const char __pyx_k_file[] = "__file__"; -static const char __pyx_k_join[] = "join"; +static const char __pyx_k_func[] = "__func__"; +static const char __pyx_k_init[] = "__init__"; +static const char __pyx_k_item[] = "item"; static const char __pyx_k_kind[] = "kind"; static const char __pyx_k_line[] = "line"; static const char __pyx_k_main[] = "__main__"; static const char __pyx_k_name[] = "name"; static const char __pyx_k_next[] = "next"; +static const char __pyx_k_repr[] = "__repr__"; static const char __pyx_k_self[] = "self"; static const char __pyx_k_send[] = "send"; static const char __pyx_k_site[] = "site"; static const char __pyx_k_test[] = "__test__"; static const char __pyx_k_util[] = "util"; +static const char __pyx_k_A_t_1[] = "\200A\340\010\017\210t\320\023#\2401"; +static const char __pyx_k_A_t_2[] = "\200A\340\010\017\210t\220?\240!"; +static const char __pyx_k_A_t_Q[] = "\200A\340\010\017\210t\320\023%\240Q"; +static const char __pyx_k_A_t_a[] = "\200A\340\010\017\210t\320\023&\240a"; +static const char __pyx_k_A_t_q[] = "\200A\340\010\017\210t\220<\230q"; +static const char __pyx_k_A_uCq[] = "\200A\330\010\017\210u\220C\220q"; static const char __pyx_k_Event[] = "Event"; +static const char __pyx_k_UNSET[] = "UNSET"; static const char __pyx_k_calls[] = "calls"; static const char __pyx_k_class[] = "class"; static const char __pyx_k_clone[] = "clone"; @@ -3005,87 +3363,157 @@ static const char __pyx_k_close[] = "close"; static const char __pyx_k_const[] = "const"; static const char __pyx_k_depth[] = "depth"; static const char __pyx_k_frame[] = "frame"; +static const char __pyx_k_get_2[] = "__get__"; static const char __pyx_k_ident[] = "ident"; static const char __pyx_k_items[] = "items"; static const char __pyx_k_limit[] = "limit"; +static const char __pyx_k_other[] = "other"; static const char __pyx_k_split[] = "split"; static const char __pyx_k_start[] = "start"; static const char __pyx_k_throw[] = "throw"; +static const char __pyx_k_value[] = "value"; +static const char __pyx_k_A_wavQ[] = "\200A\330\010\017\210w\220a\220v\230Q"; static const char __pyx_k_amount[] = "amount"; +static const char __pyx_k_code_2[] = "code"; static const char __pyx_k_dedent[] = "dedent"; static const char __pyx_k_detach[] = "detach"; static const char __pyx_k_enable[] = "enable"; static const char __pyx_k_exists[] = "exists"; static const char __pyx_k_file_2[] = " file"; -static const char __pyx_k_import[] = "__import__"; +static const char __pyx_k_func_2[] = "func"; static const char __pyx_k_lambda[] = "lambda"; -static const char __pyx_k_lineno[] = "lineno"; +static const char __pyx_k_lineno[] = " lineno="; static const char __pyx_k_locals[] = "locals"; -static const char __pyx_k_module[] = "module"; +static const char __pyx_k_module[] = " module="; static const char __pyx_k_name_2[] = "__name__"; static const char __pyx_k_object[] = "object"; static const char __pyx_k_return[] = "return"; +static const char __pyx_k_source[] = "_source"; +static const char __pyx_k_stdlib[] = "_stdlib"; static const char __pyx_k_string[] = ""; +static const char __pyx_k_thread[] = "_thread"; static const char __pyx_k_tracer[] = "tracer"; static const char __pyx_k_values[] = "values"; static const char __pyx_k_MISSING[] = "MISSING"; +static const char __pyx_k_builtin[] = "builtin"; static const char __pyx_k_disable[] = "disable"; static const char __pyx_k_findall[] = "findall"; +static const char __pyx_k_getitem[] = "__getitem__"; static const char __pyx_k_getline[] = "getline"; static const char __pyx_k_globals[] = "globals"; static const char __pyx_k_os_path[] = "os.path"; static const char __pyx_k_partial[] = "partial"; +static const char __pyx_k_strings[] = "strings"; +static const char __pyx_k_add_note[] = "add_note"; static const char __pyx_k_basename[] = "basename"; +static const char __pyx_k_detached[] = "detached"; static const char __pyx_k_endswith[] = "endswith"; -static const char __pyx_k_filename[] = "filename"; -static const char __pyx_k_function[] = "function"; +static const char __pyx_k_filename[] = " filename="; +static const char __pyx_k_function[] = " function="; static const char __pyx_k_getlines[] = "getlines"; -static const char __pyx_k_module_2[] = "__module__"; -static const char __pyx_k_module_3[] = ""; +static const char __pyx_k_lineno_2[] = "lineno"; +static const char __pyx_k_lineno_3[] = "_lineno"; +static const char __pyx_k_locals_2[] = "_locals"; +static const char __pyx_k_module_2[] = "module"; +static const char __pyx_k_module_3[] = "__module__"; +static const char __pyx_k_module_4[] = ""; +static const char __pyx_k_module_5[] = "_module"; +static const char __pyx_k_qualname[] = "__qualname__"; +static const char __pyx_k_set_name[] = "__set_name__"; static const char __pyx_k_splitext[] = "splitext"; static const char __pyx_k_tokenize[] = "tokenize"; static const char __pyx_k_NO_SOURCE[] = "\077\077? NO SOURCE: "; static const char __pyx_k_TypeError[] = "TypeError"; +static const char __pyx_k_candidate[] = "candidate"; static const char __pyx_k_collector[] = "collector"; static const char __pyx_k_enumerate[] = "enumerate"; static const char __pyx_k_exception[] = "exception"; static const char __pyx_k_f_globals[] = "f_globals"; +static const char __pyx_k_first_arg[] = "first_arg"; static const char __pyx_k_functools[] = "functools"; +static const char __pyx_k_globals_2[] = "_globals"; static const char __pyx_k_isenabled[] = "isenabled"; static const char __pyx_k_linecache[] = "linecache"; +static const char __pyx_k_threadidn[] = "_threadidn"; static const char __pyx_k_threading[] = "threading"; +static const char __pyx_k_Event_kind[] = " 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + #define CYTHON_SMALL_CODE __attribute__((cold)) +#else + #define CYTHON_SMALL_CODE +#endif +#endif + typedef struct { PyObject *__pyx_d; PyObject *__pyx_b; @@ -3143,213 +3582,252 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_7cpython_4type_type; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - PyTypeObject *__pyx_ptype_6hunter_7_tracer_FrameType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_CodeType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_Tracer; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address; - #if CYTHON_USE_MODULE_STATE PyObject *__pyx_type_6hunter_6_event_Event; PyObject *__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; - #endif PyTypeObject *__pyx_ptype_6hunter_6_event_Event; PyTypeObject *__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines; - PyObject *__pyx_n_s_CYTHON_SUFFIX_RE; - PyObject *__pyx_n_s_Event; - PyObject *__pyx_n_s_Event_clone; - PyObject *__pyx_n_s_Event_detach; - PyObject *__pyx_kp_s_Event_kind_r_function_r_module; - PyObject *__pyx_n_s_LEADING_WHITESPACE_RE; - PyObject *__pyx_n_s_MISSING; - PyObject *__pyx_kp_s_Missing_argument_calls_required; - PyObject *__pyx_kp_s_Missing_argument_depth_required; - PyObject *__pyx_kp_s_Missing_argument_threading_suppo; - PyObject *__pyx_kp_u_NO_SOURCE; - PyObject *__pyx_kp_u_NO_SOURCE_not_reading_binary; - PyObject *__pyx_n_s_SITE_PACKAGES_PATHS; - PyObject *__pyx_n_s_SYS_PREFIX_PATHS; - PyObject *__pyx_n_s_TokenError; - PyObject *__pyx_n_s_TypeError; - PyObject *__pyx_kp_s__14; - PyObject *__pyx_kp_u__14; - PyObject *__pyx_kp_s__7; - PyObject *__pyx_kp_s__9; - PyObject *__pyx_n_s_all; - PyObject *__pyx_n_s_amount; - PyObject *__pyx_n_s_arg; - PyObject *__pyx_n_s_args; - PyObject *__pyx_n_s_asyncio_coroutines; - PyObject *__pyx_n_s_basename; - PyObject *__pyx_n_s_call; - PyObject *__pyx_n_s_calls; - PyObject *__pyx_n_s_class; - PyObject *__pyx_n_s_cline_in_traceback; - PyObject *__pyx_n_s_clone; - PyObject *__pyx_n_s_close; - PyObject *__pyx_n_s_collector; - PyObject *__pyx_n_s_const; - PyObject *__pyx_n_s_current_thread; - PyObject *__pyx_n_s_dedent; - PyObject *__pyx_n_s_def; - PyObject *__pyx_n_s_depth; - PyObject *__pyx_n_s_detach; - PyObject *__pyx_kp_u_disable; - PyObject *__pyx_kp_u_enable; - PyObject *__pyx_n_s_endswith; - PyObject *__pyx_n_s_enumerate; - PyObject *__pyx_n_s_exception; - PyObject *__pyx_n_s_exists; - PyObject *__pyx_n_s_f_globals; - PyObject *__pyx_n_s_file; - PyObject *__pyx_kp_u_file_2; - PyObject *__pyx_n_s_filename; - PyObject *__pyx_n_s_findall; - PyObject *__pyx_n_s_frame; - PyObject *__pyx_n_s_function; - PyObject *__pyx_n_s_functools; - PyObject *__pyx_kp_u_gc; - PyObject *__pyx_n_s_generate_tokens; - PyObject *__pyx_n_s_get; - PyObject *__pyx_n_s_get_func_in_mro; - PyObject *__pyx_n_s_get_main_thread; - PyObject *__pyx_n_s_getline; - PyObject *__pyx_n_s_getlines; - PyObject *__pyx_n_s_globals; - PyObject *__pyx_n_s_hunter__event; - PyObject *__pyx_n_s_ident; - PyObject *__pyx_n_s_if_same_code; - PyObject *__pyx_n_s_import; - PyObject *__pyx_n_s_is_coroutine; - PyObject *__pyx_kp_u_isenabled; - PyObject *__pyx_n_s_items; - PyObject *__pyx_n_s_join; - PyObject *__pyx_n_s_kind; - PyObject *__pyx_n_s_lambda; - PyObject *__pyx_n_s_limit; - PyObject *__pyx_n_s_line; - PyObject *__pyx_n_s_linecache; - PyObject *__pyx_n_s_lineno; - PyObject *__pyx_n_s_locals; - PyObject *__pyx_n_s_main; - PyObject *__pyx_n_s_module; - PyObject *__pyx_n_s_module_2; - PyObject *__pyx_kp_s_module_3; - PyObject *__pyx_n_s_module_globals; - PyObject *__pyx_n_s_name; - PyObject *__pyx_n_s_name_2; - PyObject *__pyx_n_s_namedtuple; - PyObject *__pyx_n_s_next; - PyObject *__pyx_n_s_object; - PyObject *__pyx_n_s_os_path; - PyObject *__pyx_n_s_partial; - PyObject *__pyx_n_s_pkg_resources; - PyObject *__pyx_kp_s_py; - PyObject *__pyx_kp_s_pyc; - PyObject *__pyx_kp_s_pyd; - PyObject *__pyx_kp_s_pyo; - PyObject *__pyx_kp_s_pyx; - PyObject *__pyx_n_s_pyx_vtable; - PyObject *__pyx_n_s_return; - PyObject *__pyx_n_s_self; - PyObject *__pyx_n_s_send; - PyObject *__pyx_n_s_site; - PyObject *__pyx_kp_s_so; - PyObject *__pyx_n_s_split; - PyObject *__pyx_n_s_splitext; - PyObject *__pyx_kp_s_src_hunter__event_pyx; - PyObject *__pyx_n_s_start; - PyObject *__pyx_n_s_startswith; - PyObject *__pyx_kp_s_string; - PyObject *__pyx_n_s_sub; - PyObject *__pyx_n_s_test; - PyObject *__pyx_n_s_threading; - PyObject *__pyx_n_s_threading_support; - PyObject *__pyx_n_s_throw; - PyObject *__pyx_n_s_tokenize; - PyObject *__pyx_n_s_tracer; - PyObject *__pyx_n_s_util; - PyObject *__pyx_n_s_value_filter; - PyObject *__pyx_n_s_values; - PyObject *__pyx_n_s_yield_lines; + __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; + PyObject *__pyx_k_; + PyObject *__pyx_slice[1]; + PyObject *__pyx_tuple[7]; + PyObject *__pyx_codeobj_tab[45]; + PyObject *__pyx_string_tab[175]; PyObject *__pyx_int_1; PyObject *__pyx_int_10; PyObject *__pyx_int_neg_1; - PyObject *__pyx_k_; - PyObject *__pyx_tuple__2; - PyObject *__pyx_tuple__3; - PyObject *__pyx_tuple__4; - PyObject *__pyx_tuple__8; - PyObject *__pyx_slice__11; - PyObject *__pyx_tuple__10; - PyObject *__pyx_tuple__12; - PyObject *__pyx_tuple__13; - PyObject *__pyx_tuple__16; - PyObject *__pyx_tuple__17; - PyObject *__pyx_tuple__18; - PyObject *__pyx_tuple__19; - PyObject *__pyx_tuple__20; - PyObject *__pyx_tuple__21; - PyObject *__pyx_codeobj__5; - PyObject *__pyx_codeobj__6; - PyObject *__pyx_codeobj__15; -} __pyx_mstate; +/* #### Code section: module_state_contents ### */ +/* IterNextPlain.module_state_decls */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 +PyObject *__Pyx_GetBuiltinNext_LimitedAPI_cache; +#endif + + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[8]; +int __pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines; +#endif +/* CommonTypesMetaclass.module_state_decls */ +PyTypeObject *__pyx_CommonTypesMetaclassType; + +/* CachedMethodType.module_state_decls */ +#if CYTHON_COMPILING_IN_LIMITED_API +PyObject *__Pyx_CachedMethodType; +#endif + +/* CodeObjectCache.module_state_decls */ +struct __Pyx_CodeObjectCache __pyx_code_cache; + +/* #### Code section: module_state_end ### */ +} __pyx_mstatetype; #if CYTHON_USE_MODULE_STATE #ifdef __cplusplus namespace { - extern struct PyModuleDef __pyx_moduledef; +extern struct PyModuleDef __pyx_moduledef; } /* anonymous namespace */ #else static struct PyModuleDef __pyx_moduledef; #endif -#define __pyx_mstate(o) ((__pyx_mstate *)__Pyx_PyModule_GetState(o)) +#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef))) -#define __pyx_mstate_global (__pyx_mstate(PyState_FindModule(&__pyx_moduledef))) - -#define __pyx_m (PyState_FindModule(&__pyx_moduledef)) +#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef)) #else -static __pyx_mstate __pyx_mstate_global_static = +static __pyx_mstatetype __pyx_mstate_global_static = #ifdef __cplusplus {}; #else {0}; #endif -static __pyx_mstate *__pyx_mstate_global = &__pyx_mstate_global_static; -#endif +static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_static; +#endif +/* #### Code section: constant_name_defines ### */ +#define __pyx_n_u_CYTHON_SUFFIX_RE __pyx_string_tab[0] +#define __pyx_n_u_Event __pyx_string_tab[1] +#define __pyx_n_u_Event_clone __pyx_string_tab[2] +#define __pyx_n_u_Event_detach __pyx_string_tab[3] +#define __pyx_kp_u_Event_kind __pyx_string_tab[4] +#define __pyx_n_u_KIND_NAMES __pyx_string_tab[5] +#define __pyx_n_u_LEADING_WHITESPACE_RE __pyx_string_tab[6] +#define __pyx_n_u_MISSING __pyx_string_tab[7] +#define __pyx_kp_u_Missing_argument_calls_required __pyx_string_tab[8] +#define __pyx_kp_u_Missing_argument_depth_required __pyx_string_tab[9] +#define __pyx_kp_u_Missing_argument_threading_suppo __pyx_string_tab[10] +#define __pyx_kp_u_NO_SOURCE __pyx_string_tab[11] +#define __pyx_kp_u_NO_SOURCE_not_reading_binary __pyx_string_tab[12] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[13] +#define __pyx_n_u_SITE_PACKAGES_PATHS __pyx_string_tab[14] +#define __pyx_n_u_SYS_PREFIX_PATHS __pyx_string_tab[15] +#define __pyx_n_u_TokenError __pyx_string_tab[16] +#define __pyx_n_u_TypeError __pyx_string_tab[17] +#define __pyx_n_u_UNSET __pyx_string_tab[18] +#define __pyx_kp_u__2 __pyx_string_tab[19] +#define __pyx_kp_u__3 __pyx_string_tab[20] +#define __pyx_kp_u__4 __pyx_string_tab[21] +#define __pyx_kp_u__5 __pyx_string_tab[22] +#define __pyx_kp_u_add_note __pyx_string_tab[23] +#define __pyx_n_u_all __pyx_string_tab[24] +#define __pyx_n_u_amount __pyx_string_tab[25] +#define __pyx_n_u_arg __pyx_string_tab[26] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[27] +#define __pyx_n_u_basename __pyx_string_tab[28] +#define __pyx_n_u_builtin __pyx_string_tab[29] +#define __pyx_n_u_call __pyx_string_tab[30] +#define __pyx_n_u_calls __pyx_string_tab[31] +#define __pyx_n_u_candidate __pyx_string_tab[32] +#define __pyx_n_u_class __pyx_string_tab[33] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[34] +#define __pyx_n_u_clone __pyx_string_tab[35] +#define __pyx_n_u_close __pyx_string_tab[36] +#define __pyx_n_u_code __pyx_string_tab[37] +#define __pyx_n_u_code_2 __pyx_string_tab[38] +#define __pyx_n_u_code_getter __pyx_string_tab[39] +#define __pyx_n_u_collector __pyx_string_tab[40] +#define __pyx_n_u_const __pyx_string_tab[41] +#define __pyx_n_u_current_thread __pyx_string_tab[42] +#define __pyx_n_u_dedent __pyx_string_tab[43] +#define __pyx_n_u_def __pyx_string_tab[44] +#define __pyx_n_u_depth __pyx_string_tab[45] +#define __pyx_n_u_detach __pyx_string_tab[46] +#define __pyx_n_u_detached __pyx_string_tab[47] +#define __pyx_kp_u_disable __pyx_string_tab[48] +#define __pyx_kp_u_enable __pyx_string_tab[49] +#define __pyx_n_u_endswith __pyx_string_tab[50] +#define __pyx_n_u_enumerate __pyx_string_tab[51] +#define __pyx_n_u_eq __pyx_string_tab[52] +#define __pyx_n_u_exception __pyx_string_tab[53] +#define __pyx_n_u_exists __pyx_string_tab[54] +#define __pyx_n_u_f_globals __pyx_string_tab[55] +#define __pyx_n_u_fast_clone __pyx_string_tab[56] +#define __pyx_n_u_fast_detach __pyx_string_tab[57] +#define __pyx_n_u_file __pyx_string_tab[58] +#define __pyx_kp_u_file_2 __pyx_string_tab[59] +#define __pyx_kp_u_filename __pyx_string_tab[60] +#define __pyx_n_u_filename_2 __pyx_string_tab[61] +#define __pyx_n_u_filename_3 __pyx_string_tab[62] +#define __pyx_n_u_filename_getter __pyx_string_tab[63] +#define __pyx_n_u_findall __pyx_string_tab[64] +#define __pyx_n_u_first_arg __pyx_string_tab[65] +#define __pyx_n_u_frame __pyx_string_tab[66] +#define __pyx_n_u_fullsource __pyx_string_tab[67] +#define __pyx_n_u_fullsource_getter __pyx_string_tab[68] +#define __pyx_n_u_func __pyx_string_tab[69] +#define __pyx_n_u_func_2 __pyx_string_tab[70] +#define __pyx_kp_u_function __pyx_string_tab[71] +#define __pyx_n_u_function_2 __pyx_string_tab[72] +#define __pyx_n_u_function_3 __pyx_string_tab[73] +#define __pyx_n_u_function_getter __pyx_string_tab[74] +#define __pyx_n_u_function_object __pyx_string_tab[75] +#define __pyx_n_u_functools __pyx_string_tab[76] +#define __pyx_kp_u_gc __pyx_string_tab[77] +#define __pyx_n_u_generate_tokens __pyx_string_tab[78] +#define __pyx_n_u_get __pyx_string_tab[79] +#define __pyx_n_u_get_2 __pyx_string_tab[80] +#define __pyx_n_u_get_func_in_mro __pyx_string_tab[81] +#define __pyx_n_u_get_main_thread __pyx_string_tab[82] +#define __pyx_n_u_getitem __pyx_string_tab[83] +#define __pyx_n_u_getline __pyx_string_tab[84] +#define __pyx_n_u_getlines __pyx_string_tab[85] +#define __pyx_n_u_globals __pyx_string_tab[86] +#define __pyx_n_u_globals_2 __pyx_string_tab[87] +#define __pyx_n_u_globals_getter __pyx_string_tab[88] +#define __pyx_n_u_hunter__event __pyx_string_tab[89] +#define __pyx_n_u_ident __pyx_string_tab[90] +#define __pyx_n_u_if_same_code __pyx_string_tab[91] +#define __pyx_n_u_init __pyx_string_tab[92] +#define __pyx_n_u_instruction __pyx_string_tab[93] +#define __pyx_n_u_instruction_getter __pyx_string_tab[94] +#define __pyx_n_u_is_coroutine __pyx_string_tab[95] +#define __pyx_kp_u_isenabled __pyx_string_tab[96] +#define __pyx_n_u_item __pyx_string_tab[97] +#define __pyx_n_u_items __pyx_string_tab[98] +#define __pyx_n_u_kind __pyx_string_tab[99] +#define __pyx_n_u_lambda __pyx_string_tab[100] +#define __pyx_n_u_limit __pyx_string_tab[101] +#define __pyx_n_u_line __pyx_string_tab[102] +#define __pyx_n_u_linecache __pyx_string_tab[103] +#define __pyx_kp_u_lineno __pyx_string_tab[104] +#define __pyx_n_u_lineno_2 __pyx_string_tab[105] +#define __pyx_n_u_lineno_3 __pyx_string_tab[106] +#define __pyx_n_u_lineno_getter __pyx_string_tab[107] +#define __pyx_n_u_locals __pyx_string_tab[108] +#define __pyx_n_u_locals_2 __pyx_string_tab[109] +#define __pyx_n_u_locals_getter __pyx_string_tab[110] +#define __pyx_n_u_main __pyx_string_tab[111] +#define __pyx_n_u_make_kind_names __pyx_string_tab[112] +#define __pyx_n_u_mem __pyx_string_tab[113] +#define __pyx_kp_u_module __pyx_string_tab[114] +#define __pyx_n_u_module_2 __pyx_string_tab[115] +#define __pyx_n_u_module_3 __pyx_string_tab[116] +#define __pyx_kp_u_module_4 __pyx_string_tab[117] +#define __pyx_n_u_module_5 __pyx_string_tab[118] +#define __pyx_n_u_module_getter __pyx_string_tab[119] +#define __pyx_n_u_module_globals __pyx_string_tab[120] +#define __pyx_n_u_name __pyx_string_tab[121] +#define __pyx_n_u_name_2 __pyx_string_tab[122] +#define __pyx_n_u_namedtuple __pyx_string_tab[123] +#define __pyx_n_u_next __pyx_string_tab[124] +#define __pyx_n_u_object __pyx_string_tab[125] +#define __pyx_n_u_os_path __pyx_string_tab[126] +#define __pyx_n_u_other __pyx_string_tab[127] +#define __pyx_n_u_partial __pyx_string_tab[128] +#define __pyx_n_u_pkg_resources __pyx_string_tab[129] +#define __pyx_n_u_pop __pyx_string_tab[130] +#define __pyx_kp_u_py __pyx_string_tab[131] +#define __pyx_kp_u_pyc __pyx_string_tab[132] +#define __pyx_kp_u_pyd __pyx_string_tab[133] +#define __pyx_kp_u_pyo __pyx_string_tab[134] +#define __pyx_kp_u_pyx __pyx_string_tab[135] +#define __pyx_n_u_pyx_vtable __pyx_string_tab[136] +#define __pyx_n_u_qualname __pyx_string_tab[137] +#define __pyx_n_u_repr __pyx_string_tab[138] +#define __pyx_n_u_return __pyx_string_tab[139] +#define __pyx_n_u_self __pyx_string_tab[140] +#define __pyx_n_u_send __pyx_string_tab[141] +#define __pyx_n_u_set_name __pyx_string_tab[142] +#define __pyx_n_u_site __pyx_string_tab[143] +#define __pyx_kp_u_so __pyx_string_tab[144] +#define __pyx_n_u_source __pyx_string_tab[145] +#define __pyx_n_u_source_getter __pyx_string_tab[146] +#define __pyx_n_u_split __pyx_string_tab[147] +#define __pyx_n_u_splitext __pyx_string_tab[148] +#define __pyx_kp_u_src_hunter__event_pxd __pyx_string_tab[149] +#define __pyx_kp_u_src_hunter__event_pyx __pyx_string_tab[150] +#define __pyx_n_u_start __pyx_string_tab[151] +#define __pyx_n_u_startswith __pyx_string_tab[152] +#define __pyx_n_u_stdlib __pyx_string_tab[153] +#define __pyx_n_u_stdlib_getter __pyx_string_tab[154] +#define __pyx_kp_u_string __pyx_string_tab[155] +#define __pyx_n_u_strings __pyx_string_tab[156] +#define __pyx_n_u_sub __pyx_string_tab[157] +#define __pyx_n_u_test __pyx_string_tab[158] +#define __pyx_n_u_thread __pyx_string_tab[159] +#define __pyx_n_u_threadid_getter __pyx_string_tab[160] +#define __pyx_n_u_threadidn __pyx_string_tab[161] +#define __pyx_n_u_threading __pyx_string_tab[162] +#define __pyx_n_u_threading_support __pyx_string_tab[163] +#define __pyx_n_u_threadname __pyx_string_tab[164] +#define __pyx_n_u_threadname_getter __pyx_string_tab[165] +#define __pyx_n_u_throw __pyx_string_tab[166] +#define __pyx_n_u_tokenize __pyx_string_tab[167] +#define __pyx_n_u_tracer __pyx_string_tab[168] +#define __pyx_n_u_util __pyx_string_tab[169] +#define __pyx_n_u_v __pyx_string_tab[170] +#define __pyx_n_u_value __pyx_string_tab[171] +#define __pyx_n_u_value_filter __pyx_string_tab[172] +#define __pyx_n_u_values __pyx_string_tab[173] +#define __pyx_n_u_yield_lines __pyx_string_tab[174] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_clear(PyObject *m) { - __pyx_mstate *clear_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { + __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m); if (!clear_module_state) return 0; Py_CLEAR(clear_module_state->__pyx_d); Py_CLEAR(clear_module_state->__pyx_b); @@ -3363,8 +3841,10 @@ static int __pyx_m_clear(PyObject *m) { #ifdef __Pyx_FusedFunction_USED Py_CLEAR(clear_module_state->__pyx_FusedFunctionType); #endif + #if CYTHON_PEP489_MULTI_PHASE_INIT + __Pyx_State_RemoveModule(NULL); + #endif Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); @@ -3375,158 +3855,28 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); - Py_CLEAR(clear_module_state->__pyx_n_s_CYTHON_SUFFIX_RE); - Py_CLEAR(clear_module_state->__pyx_n_s_Event); - Py_CLEAR(clear_module_state->__pyx_n_s_Event_clone); - Py_CLEAR(clear_module_state->__pyx_n_s_Event_detach); - Py_CLEAR(clear_module_state->__pyx_kp_s_Event_kind_r_function_r_module); - Py_CLEAR(clear_module_state->__pyx_n_s_LEADING_WHITESPACE_RE); - Py_CLEAR(clear_module_state->__pyx_n_s_MISSING); - Py_CLEAR(clear_module_state->__pyx_kp_s_Missing_argument_calls_required); - Py_CLEAR(clear_module_state->__pyx_kp_s_Missing_argument_depth_required); - Py_CLEAR(clear_module_state->__pyx_kp_s_Missing_argument_threading_suppo); - Py_CLEAR(clear_module_state->__pyx_kp_u_NO_SOURCE); - Py_CLEAR(clear_module_state->__pyx_kp_u_NO_SOURCE_not_reading_binary); - Py_CLEAR(clear_module_state->__pyx_n_s_SITE_PACKAGES_PATHS); - Py_CLEAR(clear_module_state->__pyx_n_s_SYS_PREFIX_PATHS); - Py_CLEAR(clear_module_state->__pyx_n_s_TokenError); - Py_CLEAR(clear_module_state->__pyx_n_s_TypeError); - Py_CLEAR(clear_module_state->__pyx_kp_s__14); - Py_CLEAR(clear_module_state->__pyx_kp_u__14); - Py_CLEAR(clear_module_state->__pyx_kp_s__7); - Py_CLEAR(clear_module_state->__pyx_kp_s__9); - Py_CLEAR(clear_module_state->__pyx_n_s_all); - Py_CLEAR(clear_module_state->__pyx_n_s_amount); - Py_CLEAR(clear_module_state->__pyx_n_s_arg); - Py_CLEAR(clear_module_state->__pyx_n_s_args); - Py_CLEAR(clear_module_state->__pyx_n_s_asyncio_coroutines); - Py_CLEAR(clear_module_state->__pyx_n_s_basename); - Py_CLEAR(clear_module_state->__pyx_n_s_call); - Py_CLEAR(clear_module_state->__pyx_n_s_calls); - Py_CLEAR(clear_module_state->__pyx_n_s_class); - Py_CLEAR(clear_module_state->__pyx_n_s_cline_in_traceback); - Py_CLEAR(clear_module_state->__pyx_n_s_clone); - Py_CLEAR(clear_module_state->__pyx_n_s_close); - Py_CLEAR(clear_module_state->__pyx_n_s_collector); - Py_CLEAR(clear_module_state->__pyx_n_s_const); - Py_CLEAR(clear_module_state->__pyx_n_s_current_thread); - Py_CLEAR(clear_module_state->__pyx_n_s_dedent); - Py_CLEAR(clear_module_state->__pyx_n_s_def); - Py_CLEAR(clear_module_state->__pyx_n_s_depth); - Py_CLEAR(clear_module_state->__pyx_n_s_detach); - Py_CLEAR(clear_module_state->__pyx_kp_u_disable); - Py_CLEAR(clear_module_state->__pyx_kp_u_enable); - Py_CLEAR(clear_module_state->__pyx_n_s_endswith); - Py_CLEAR(clear_module_state->__pyx_n_s_enumerate); - Py_CLEAR(clear_module_state->__pyx_n_s_exception); - Py_CLEAR(clear_module_state->__pyx_n_s_exists); - Py_CLEAR(clear_module_state->__pyx_n_s_f_globals); - Py_CLEAR(clear_module_state->__pyx_n_s_file); - Py_CLEAR(clear_module_state->__pyx_kp_u_file_2); - Py_CLEAR(clear_module_state->__pyx_n_s_filename); - Py_CLEAR(clear_module_state->__pyx_n_s_findall); - Py_CLEAR(clear_module_state->__pyx_n_s_frame); - Py_CLEAR(clear_module_state->__pyx_n_s_function); - Py_CLEAR(clear_module_state->__pyx_n_s_functools); - Py_CLEAR(clear_module_state->__pyx_kp_u_gc); - Py_CLEAR(clear_module_state->__pyx_n_s_generate_tokens); - Py_CLEAR(clear_module_state->__pyx_n_s_get); - Py_CLEAR(clear_module_state->__pyx_n_s_get_func_in_mro); - Py_CLEAR(clear_module_state->__pyx_n_s_get_main_thread); - Py_CLEAR(clear_module_state->__pyx_n_s_getline); - Py_CLEAR(clear_module_state->__pyx_n_s_getlines); - Py_CLEAR(clear_module_state->__pyx_n_s_globals); - Py_CLEAR(clear_module_state->__pyx_n_s_hunter__event); - Py_CLEAR(clear_module_state->__pyx_n_s_ident); - Py_CLEAR(clear_module_state->__pyx_n_s_if_same_code); - Py_CLEAR(clear_module_state->__pyx_n_s_import); - Py_CLEAR(clear_module_state->__pyx_n_s_is_coroutine); - Py_CLEAR(clear_module_state->__pyx_kp_u_isenabled); - Py_CLEAR(clear_module_state->__pyx_n_s_items); - Py_CLEAR(clear_module_state->__pyx_n_s_join); - Py_CLEAR(clear_module_state->__pyx_n_s_kind); - Py_CLEAR(clear_module_state->__pyx_n_s_lambda); - Py_CLEAR(clear_module_state->__pyx_n_s_limit); - Py_CLEAR(clear_module_state->__pyx_n_s_line); - Py_CLEAR(clear_module_state->__pyx_n_s_linecache); - Py_CLEAR(clear_module_state->__pyx_n_s_lineno); - Py_CLEAR(clear_module_state->__pyx_n_s_locals); - Py_CLEAR(clear_module_state->__pyx_n_s_main); - Py_CLEAR(clear_module_state->__pyx_n_s_module); - Py_CLEAR(clear_module_state->__pyx_n_s_module_2); - Py_CLEAR(clear_module_state->__pyx_kp_s_module_3); - Py_CLEAR(clear_module_state->__pyx_n_s_module_globals); - Py_CLEAR(clear_module_state->__pyx_n_s_name); - Py_CLEAR(clear_module_state->__pyx_n_s_name_2); - Py_CLEAR(clear_module_state->__pyx_n_s_namedtuple); - Py_CLEAR(clear_module_state->__pyx_n_s_next); - Py_CLEAR(clear_module_state->__pyx_n_s_object); - Py_CLEAR(clear_module_state->__pyx_n_s_os_path); - Py_CLEAR(clear_module_state->__pyx_n_s_partial); - Py_CLEAR(clear_module_state->__pyx_n_s_pkg_resources); - Py_CLEAR(clear_module_state->__pyx_kp_s_py); - Py_CLEAR(clear_module_state->__pyx_kp_s_pyc); - Py_CLEAR(clear_module_state->__pyx_kp_s_pyd); - Py_CLEAR(clear_module_state->__pyx_kp_s_pyo); - Py_CLEAR(clear_module_state->__pyx_kp_s_pyx); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_vtable); - Py_CLEAR(clear_module_state->__pyx_n_s_return); - Py_CLEAR(clear_module_state->__pyx_n_s_self); - Py_CLEAR(clear_module_state->__pyx_n_s_send); - Py_CLEAR(clear_module_state->__pyx_n_s_site); - Py_CLEAR(clear_module_state->__pyx_kp_s_so); - Py_CLEAR(clear_module_state->__pyx_n_s_split); - Py_CLEAR(clear_module_state->__pyx_n_s_splitext); - Py_CLEAR(clear_module_state->__pyx_kp_s_src_hunter__event_pyx); - Py_CLEAR(clear_module_state->__pyx_n_s_start); - Py_CLEAR(clear_module_state->__pyx_n_s_startswith); - Py_CLEAR(clear_module_state->__pyx_kp_s_string); - Py_CLEAR(clear_module_state->__pyx_n_s_sub); - Py_CLEAR(clear_module_state->__pyx_n_s_test); - Py_CLEAR(clear_module_state->__pyx_n_s_threading); - Py_CLEAR(clear_module_state->__pyx_n_s_threading_support); - Py_CLEAR(clear_module_state->__pyx_n_s_throw); - Py_CLEAR(clear_module_state->__pyx_n_s_tokenize); - Py_CLEAR(clear_module_state->__pyx_n_s_tracer); - Py_CLEAR(clear_module_state->__pyx_n_s_util); - Py_CLEAR(clear_module_state->__pyx_n_s_value_filter); - Py_CLEAR(clear_module_state->__pyx_n_s_values); - Py_CLEAR(clear_module_state->__pyx_n_s_yield_lines); + Py_CLEAR(clear_module_state->__pyx_k_); + for (int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_slice[i]); } + for (int i=0; i<7; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } + for (int i=0; i<45; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<175; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_1); Py_CLEAR(clear_module_state->__pyx_int_10); Py_CLEAR(clear_module_state->__pyx_int_neg_1); - Py_CLEAR(clear_module_state->__pyx_k_); - Py_CLEAR(clear_module_state->__pyx_tuple__2); - Py_CLEAR(clear_module_state->__pyx_tuple__3); - Py_CLEAR(clear_module_state->__pyx_tuple__4); - Py_CLEAR(clear_module_state->__pyx_tuple__8); - Py_CLEAR(clear_module_state->__pyx_slice__11); - Py_CLEAR(clear_module_state->__pyx_tuple__10); - Py_CLEAR(clear_module_state->__pyx_tuple__12); - Py_CLEAR(clear_module_state->__pyx_tuple__13); - Py_CLEAR(clear_module_state->__pyx_tuple__16); - Py_CLEAR(clear_module_state->__pyx_tuple__17); - Py_CLEAR(clear_module_state->__pyx_tuple__18); - Py_CLEAR(clear_module_state->__pyx_tuple__19); - Py_CLEAR(clear_module_state->__pyx_tuple__20); - Py_CLEAR(clear_module_state->__pyx_tuple__21); - Py_CLEAR(clear_module_state->__pyx_codeobj__5); - Py_CLEAR(clear_module_state->__pyx_codeobj__6); - Py_CLEAR(clear_module_state->__pyx_codeobj__15); return 0; } #endif /* #### Code section: module_state_traverse ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { - __pyx_mstate *traverse_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { + __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m); if (!traverse_module_state) return 0; Py_VISIT(traverse_module_state->__pyx_d); Py_VISIT(traverse_module_state->__pyx_b); Py_VISIT(traverse_module_state->__pyx_cython_runtime); - Py_VISIT(traverse_module_state->__pyx_empty_tuple); - Py_VISIT(traverse_module_state->__pyx_empty_bytes); - Py_VISIT(traverse_module_state->__pyx_empty_unicode); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode); #ifdef __Pyx_CyFunction_USED Py_VISIT(traverse_module_state->__pyx_CyFunctionType); #endif @@ -3534,7 +3884,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); @@ -3545,350 +3894,17 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); - Py_VISIT(traverse_module_state->__pyx_n_s_CYTHON_SUFFIX_RE); - Py_VISIT(traverse_module_state->__pyx_n_s_Event); - Py_VISIT(traverse_module_state->__pyx_n_s_Event_clone); - Py_VISIT(traverse_module_state->__pyx_n_s_Event_detach); - Py_VISIT(traverse_module_state->__pyx_kp_s_Event_kind_r_function_r_module); - Py_VISIT(traverse_module_state->__pyx_n_s_LEADING_WHITESPACE_RE); - Py_VISIT(traverse_module_state->__pyx_n_s_MISSING); - Py_VISIT(traverse_module_state->__pyx_kp_s_Missing_argument_calls_required); - Py_VISIT(traverse_module_state->__pyx_kp_s_Missing_argument_depth_required); - Py_VISIT(traverse_module_state->__pyx_kp_s_Missing_argument_threading_suppo); - Py_VISIT(traverse_module_state->__pyx_kp_u_NO_SOURCE); - Py_VISIT(traverse_module_state->__pyx_kp_u_NO_SOURCE_not_reading_binary); - Py_VISIT(traverse_module_state->__pyx_n_s_SITE_PACKAGES_PATHS); - Py_VISIT(traverse_module_state->__pyx_n_s_SYS_PREFIX_PATHS); - Py_VISIT(traverse_module_state->__pyx_n_s_TokenError); - Py_VISIT(traverse_module_state->__pyx_n_s_TypeError); - Py_VISIT(traverse_module_state->__pyx_kp_s__14); - Py_VISIT(traverse_module_state->__pyx_kp_u__14); - Py_VISIT(traverse_module_state->__pyx_kp_s__7); - Py_VISIT(traverse_module_state->__pyx_kp_s__9); - Py_VISIT(traverse_module_state->__pyx_n_s_all); - Py_VISIT(traverse_module_state->__pyx_n_s_amount); - Py_VISIT(traverse_module_state->__pyx_n_s_arg); - Py_VISIT(traverse_module_state->__pyx_n_s_args); - Py_VISIT(traverse_module_state->__pyx_n_s_asyncio_coroutines); - Py_VISIT(traverse_module_state->__pyx_n_s_basename); - Py_VISIT(traverse_module_state->__pyx_n_s_call); - Py_VISIT(traverse_module_state->__pyx_n_s_calls); - Py_VISIT(traverse_module_state->__pyx_n_s_class); - Py_VISIT(traverse_module_state->__pyx_n_s_cline_in_traceback); - Py_VISIT(traverse_module_state->__pyx_n_s_clone); - Py_VISIT(traverse_module_state->__pyx_n_s_close); - Py_VISIT(traverse_module_state->__pyx_n_s_collector); - Py_VISIT(traverse_module_state->__pyx_n_s_const); - Py_VISIT(traverse_module_state->__pyx_n_s_current_thread); - Py_VISIT(traverse_module_state->__pyx_n_s_dedent); - Py_VISIT(traverse_module_state->__pyx_n_s_def); - Py_VISIT(traverse_module_state->__pyx_n_s_depth); - Py_VISIT(traverse_module_state->__pyx_n_s_detach); - Py_VISIT(traverse_module_state->__pyx_kp_u_disable); - Py_VISIT(traverse_module_state->__pyx_kp_u_enable); - Py_VISIT(traverse_module_state->__pyx_n_s_endswith); - Py_VISIT(traverse_module_state->__pyx_n_s_enumerate); - Py_VISIT(traverse_module_state->__pyx_n_s_exception); - Py_VISIT(traverse_module_state->__pyx_n_s_exists); - Py_VISIT(traverse_module_state->__pyx_n_s_f_globals); - Py_VISIT(traverse_module_state->__pyx_n_s_file); - Py_VISIT(traverse_module_state->__pyx_kp_u_file_2); - Py_VISIT(traverse_module_state->__pyx_n_s_filename); - Py_VISIT(traverse_module_state->__pyx_n_s_findall); - Py_VISIT(traverse_module_state->__pyx_n_s_frame); - Py_VISIT(traverse_module_state->__pyx_n_s_function); - Py_VISIT(traverse_module_state->__pyx_n_s_functools); - Py_VISIT(traverse_module_state->__pyx_kp_u_gc); - Py_VISIT(traverse_module_state->__pyx_n_s_generate_tokens); - Py_VISIT(traverse_module_state->__pyx_n_s_get); - Py_VISIT(traverse_module_state->__pyx_n_s_get_func_in_mro); - Py_VISIT(traverse_module_state->__pyx_n_s_get_main_thread); - Py_VISIT(traverse_module_state->__pyx_n_s_getline); - Py_VISIT(traverse_module_state->__pyx_n_s_getlines); - Py_VISIT(traverse_module_state->__pyx_n_s_globals); - Py_VISIT(traverse_module_state->__pyx_n_s_hunter__event); - Py_VISIT(traverse_module_state->__pyx_n_s_ident); - Py_VISIT(traverse_module_state->__pyx_n_s_if_same_code); - Py_VISIT(traverse_module_state->__pyx_n_s_import); - Py_VISIT(traverse_module_state->__pyx_n_s_is_coroutine); - Py_VISIT(traverse_module_state->__pyx_kp_u_isenabled); - Py_VISIT(traverse_module_state->__pyx_n_s_items); - Py_VISIT(traverse_module_state->__pyx_n_s_join); - Py_VISIT(traverse_module_state->__pyx_n_s_kind); - Py_VISIT(traverse_module_state->__pyx_n_s_lambda); - Py_VISIT(traverse_module_state->__pyx_n_s_limit); - Py_VISIT(traverse_module_state->__pyx_n_s_line); - Py_VISIT(traverse_module_state->__pyx_n_s_linecache); - Py_VISIT(traverse_module_state->__pyx_n_s_lineno); - Py_VISIT(traverse_module_state->__pyx_n_s_locals); - Py_VISIT(traverse_module_state->__pyx_n_s_main); - Py_VISIT(traverse_module_state->__pyx_n_s_module); - Py_VISIT(traverse_module_state->__pyx_n_s_module_2); - Py_VISIT(traverse_module_state->__pyx_kp_s_module_3); - Py_VISIT(traverse_module_state->__pyx_n_s_module_globals); - Py_VISIT(traverse_module_state->__pyx_n_s_name); - Py_VISIT(traverse_module_state->__pyx_n_s_name_2); - Py_VISIT(traverse_module_state->__pyx_n_s_namedtuple); - Py_VISIT(traverse_module_state->__pyx_n_s_next); - Py_VISIT(traverse_module_state->__pyx_n_s_object); - Py_VISIT(traverse_module_state->__pyx_n_s_os_path); - Py_VISIT(traverse_module_state->__pyx_n_s_partial); - Py_VISIT(traverse_module_state->__pyx_n_s_pkg_resources); - Py_VISIT(traverse_module_state->__pyx_kp_s_py); - Py_VISIT(traverse_module_state->__pyx_kp_s_pyc); - Py_VISIT(traverse_module_state->__pyx_kp_s_pyd); - Py_VISIT(traverse_module_state->__pyx_kp_s_pyo); - Py_VISIT(traverse_module_state->__pyx_kp_s_pyx); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_vtable); - Py_VISIT(traverse_module_state->__pyx_n_s_return); - Py_VISIT(traverse_module_state->__pyx_n_s_self); - Py_VISIT(traverse_module_state->__pyx_n_s_send); - Py_VISIT(traverse_module_state->__pyx_n_s_site); - Py_VISIT(traverse_module_state->__pyx_kp_s_so); - Py_VISIT(traverse_module_state->__pyx_n_s_split); - Py_VISIT(traverse_module_state->__pyx_n_s_splitext); - Py_VISIT(traverse_module_state->__pyx_kp_s_src_hunter__event_pyx); - Py_VISIT(traverse_module_state->__pyx_n_s_start); - Py_VISIT(traverse_module_state->__pyx_n_s_startswith); - Py_VISIT(traverse_module_state->__pyx_kp_s_string); - Py_VISIT(traverse_module_state->__pyx_n_s_sub); - Py_VISIT(traverse_module_state->__pyx_n_s_test); - Py_VISIT(traverse_module_state->__pyx_n_s_threading); - Py_VISIT(traverse_module_state->__pyx_n_s_threading_support); - Py_VISIT(traverse_module_state->__pyx_n_s_throw); - Py_VISIT(traverse_module_state->__pyx_n_s_tokenize); - Py_VISIT(traverse_module_state->__pyx_n_s_tracer); - Py_VISIT(traverse_module_state->__pyx_n_s_util); - Py_VISIT(traverse_module_state->__pyx_n_s_value_filter); - Py_VISIT(traverse_module_state->__pyx_n_s_values); - Py_VISIT(traverse_module_state->__pyx_n_s_yield_lines); - Py_VISIT(traverse_module_state->__pyx_int_1); - Py_VISIT(traverse_module_state->__pyx_int_10); - Py_VISIT(traverse_module_state->__pyx_int_neg_1); Py_VISIT(traverse_module_state->__pyx_k_); - Py_VISIT(traverse_module_state->__pyx_tuple__2); - Py_VISIT(traverse_module_state->__pyx_tuple__3); - Py_VISIT(traverse_module_state->__pyx_tuple__4); - Py_VISIT(traverse_module_state->__pyx_tuple__8); - Py_VISIT(traverse_module_state->__pyx_slice__11); - Py_VISIT(traverse_module_state->__pyx_tuple__10); - Py_VISIT(traverse_module_state->__pyx_tuple__12); - Py_VISIT(traverse_module_state->__pyx_tuple__13); - Py_VISIT(traverse_module_state->__pyx_tuple__16); - Py_VISIT(traverse_module_state->__pyx_tuple__17); - Py_VISIT(traverse_module_state->__pyx_tuple__18); - Py_VISIT(traverse_module_state->__pyx_tuple__19); - Py_VISIT(traverse_module_state->__pyx_tuple__20); - Py_VISIT(traverse_module_state->__pyx_tuple__21); - Py_VISIT(traverse_module_state->__pyx_codeobj__5); - Py_VISIT(traverse_module_state->__pyx_codeobj__6); - Py_VISIT(traverse_module_state->__pyx_codeobj__15); + for (int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_slice[i]); } + for (int i=0; i<7; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } + for (int i=0; i<45; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<175; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_10); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_neg_1); return 0; } #endif -/* #### Code section: module_state_defines ### */ -#define __pyx_d __pyx_mstate_global->__pyx_d -#define __pyx_b __pyx_mstate_global->__pyx_b -#define __pyx_cython_runtime __pyx_mstate_global->__pyx_cython_runtime -#define __pyx_empty_tuple __pyx_mstate_global->__pyx_empty_tuple -#define __pyx_empty_bytes __pyx_mstate_global->__pyx_empty_bytes -#define __pyx_empty_unicode __pyx_mstate_global->__pyx_empty_unicode -#ifdef __Pyx_CyFunction_USED -#define __pyx_CyFunctionType __pyx_mstate_global->__pyx_CyFunctionType -#endif -#ifdef __Pyx_FusedFunction_USED -#define __pyx_FusedFunctionType __pyx_mstate_global->__pyx_FusedFunctionType -#endif -#ifdef __Pyx_Generator_USED -#define __pyx_GeneratorType __pyx_mstate_global->__pyx_GeneratorType -#endif -#ifdef __Pyx_IterableCoroutine_USED -#define __pyx_IterableCoroutineType __pyx_mstate_global->__pyx_IterableCoroutineType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineAwaitType __pyx_mstate_global->__pyx_CoroutineAwaitType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineType __pyx_mstate_global->__pyx_CoroutineType -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_7cpython_4type_type __pyx_mstate_global->__pyx_ptype_7cpython_4type_type -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_6hunter_7_tracer_FrameType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_FrameType -#define __pyx_ptype_6hunter_7_tracer_CodeType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType -#define __pyx_ptype_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address -#if CYTHON_USE_MODULE_STATE -#define __pyx_type_6hunter_6_event_Event __pyx_mstate_global->__pyx_type_6hunter_6_event_Event -#define __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines __pyx_mstate_global->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines -#endif -#define __pyx_ptype_6hunter_6_event_Event __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event -#define __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines __pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines -#define __pyx_n_s_CYTHON_SUFFIX_RE __pyx_mstate_global->__pyx_n_s_CYTHON_SUFFIX_RE -#define __pyx_n_s_Event __pyx_mstate_global->__pyx_n_s_Event -#define __pyx_n_s_Event_clone __pyx_mstate_global->__pyx_n_s_Event_clone -#define __pyx_n_s_Event_detach __pyx_mstate_global->__pyx_n_s_Event_detach -#define __pyx_kp_s_Event_kind_r_function_r_module __pyx_mstate_global->__pyx_kp_s_Event_kind_r_function_r_module -#define __pyx_n_s_LEADING_WHITESPACE_RE __pyx_mstate_global->__pyx_n_s_LEADING_WHITESPACE_RE -#define __pyx_n_s_MISSING __pyx_mstate_global->__pyx_n_s_MISSING -#define __pyx_kp_s_Missing_argument_calls_required __pyx_mstate_global->__pyx_kp_s_Missing_argument_calls_required -#define __pyx_kp_s_Missing_argument_depth_required __pyx_mstate_global->__pyx_kp_s_Missing_argument_depth_required -#define __pyx_kp_s_Missing_argument_threading_suppo __pyx_mstate_global->__pyx_kp_s_Missing_argument_threading_suppo -#define __pyx_kp_u_NO_SOURCE __pyx_mstate_global->__pyx_kp_u_NO_SOURCE -#define __pyx_kp_u_NO_SOURCE_not_reading_binary __pyx_mstate_global->__pyx_kp_u_NO_SOURCE_not_reading_binary -#define __pyx_n_s_SITE_PACKAGES_PATHS __pyx_mstate_global->__pyx_n_s_SITE_PACKAGES_PATHS -#define __pyx_n_s_SYS_PREFIX_PATHS __pyx_mstate_global->__pyx_n_s_SYS_PREFIX_PATHS -#define __pyx_n_s_TokenError __pyx_mstate_global->__pyx_n_s_TokenError -#define __pyx_n_s_TypeError __pyx_mstate_global->__pyx_n_s_TypeError -#define __pyx_kp_s__14 __pyx_mstate_global->__pyx_kp_s__14 -#define __pyx_kp_u__14 __pyx_mstate_global->__pyx_kp_u__14 -#define __pyx_kp_s__7 __pyx_mstate_global->__pyx_kp_s__7 -#define __pyx_kp_s__9 __pyx_mstate_global->__pyx_kp_s__9 -#define __pyx_n_s_all __pyx_mstate_global->__pyx_n_s_all -#define __pyx_n_s_amount __pyx_mstate_global->__pyx_n_s_amount -#define __pyx_n_s_arg __pyx_mstate_global->__pyx_n_s_arg -#define __pyx_n_s_args __pyx_mstate_global->__pyx_n_s_args -#define __pyx_n_s_asyncio_coroutines __pyx_mstate_global->__pyx_n_s_asyncio_coroutines -#define __pyx_n_s_basename __pyx_mstate_global->__pyx_n_s_basename -#define __pyx_n_s_call __pyx_mstate_global->__pyx_n_s_call -#define __pyx_n_s_calls __pyx_mstate_global->__pyx_n_s_calls -#define __pyx_n_s_class __pyx_mstate_global->__pyx_n_s_class -#define __pyx_n_s_cline_in_traceback __pyx_mstate_global->__pyx_n_s_cline_in_traceback -#define __pyx_n_s_clone __pyx_mstate_global->__pyx_n_s_clone -#define __pyx_n_s_close __pyx_mstate_global->__pyx_n_s_close -#define __pyx_n_s_collector __pyx_mstate_global->__pyx_n_s_collector -#define __pyx_n_s_const __pyx_mstate_global->__pyx_n_s_const -#define __pyx_n_s_current_thread __pyx_mstate_global->__pyx_n_s_current_thread -#define __pyx_n_s_dedent __pyx_mstate_global->__pyx_n_s_dedent -#define __pyx_n_s_def __pyx_mstate_global->__pyx_n_s_def -#define __pyx_n_s_depth __pyx_mstate_global->__pyx_n_s_depth -#define __pyx_n_s_detach __pyx_mstate_global->__pyx_n_s_detach -#define __pyx_kp_u_disable __pyx_mstate_global->__pyx_kp_u_disable -#define __pyx_kp_u_enable __pyx_mstate_global->__pyx_kp_u_enable -#define __pyx_n_s_endswith __pyx_mstate_global->__pyx_n_s_endswith -#define __pyx_n_s_enumerate __pyx_mstate_global->__pyx_n_s_enumerate -#define __pyx_n_s_exception __pyx_mstate_global->__pyx_n_s_exception -#define __pyx_n_s_exists __pyx_mstate_global->__pyx_n_s_exists -#define __pyx_n_s_f_globals __pyx_mstate_global->__pyx_n_s_f_globals -#define __pyx_n_s_file __pyx_mstate_global->__pyx_n_s_file -#define __pyx_kp_u_file_2 __pyx_mstate_global->__pyx_kp_u_file_2 -#define __pyx_n_s_filename __pyx_mstate_global->__pyx_n_s_filename -#define __pyx_n_s_findall __pyx_mstate_global->__pyx_n_s_findall -#define __pyx_n_s_frame __pyx_mstate_global->__pyx_n_s_frame -#define __pyx_n_s_function __pyx_mstate_global->__pyx_n_s_function -#define __pyx_n_s_functools __pyx_mstate_global->__pyx_n_s_functools -#define __pyx_kp_u_gc __pyx_mstate_global->__pyx_kp_u_gc -#define __pyx_n_s_generate_tokens __pyx_mstate_global->__pyx_n_s_generate_tokens -#define __pyx_n_s_get __pyx_mstate_global->__pyx_n_s_get -#define __pyx_n_s_get_func_in_mro __pyx_mstate_global->__pyx_n_s_get_func_in_mro -#define __pyx_n_s_get_main_thread __pyx_mstate_global->__pyx_n_s_get_main_thread -#define __pyx_n_s_getline __pyx_mstate_global->__pyx_n_s_getline -#define __pyx_n_s_getlines __pyx_mstate_global->__pyx_n_s_getlines -#define __pyx_n_s_globals __pyx_mstate_global->__pyx_n_s_globals -#define __pyx_n_s_hunter__event __pyx_mstate_global->__pyx_n_s_hunter__event -#define __pyx_n_s_ident __pyx_mstate_global->__pyx_n_s_ident -#define __pyx_n_s_if_same_code __pyx_mstate_global->__pyx_n_s_if_same_code -#define __pyx_n_s_import __pyx_mstate_global->__pyx_n_s_import -#define __pyx_n_s_is_coroutine __pyx_mstate_global->__pyx_n_s_is_coroutine -#define __pyx_kp_u_isenabled __pyx_mstate_global->__pyx_kp_u_isenabled -#define __pyx_n_s_items __pyx_mstate_global->__pyx_n_s_items -#define __pyx_n_s_join __pyx_mstate_global->__pyx_n_s_join -#define __pyx_n_s_kind __pyx_mstate_global->__pyx_n_s_kind -#define __pyx_n_s_lambda __pyx_mstate_global->__pyx_n_s_lambda -#define __pyx_n_s_limit __pyx_mstate_global->__pyx_n_s_limit -#define __pyx_n_s_line __pyx_mstate_global->__pyx_n_s_line -#define __pyx_n_s_linecache __pyx_mstate_global->__pyx_n_s_linecache -#define __pyx_n_s_lineno __pyx_mstate_global->__pyx_n_s_lineno -#define __pyx_n_s_locals __pyx_mstate_global->__pyx_n_s_locals -#define __pyx_n_s_main __pyx_mstate_global->__pyx_n_s_main -#define __pyx_n_s_module __pyx_mstate_global->__pyx_n_s_module -#define __pyx_n_s_module_2 __pyx_mstate_global->__pyx_n_s_module_2 -#define __pyx_kp_s_module_3 __pyx_mstate_global->__pyx_kp_s_module_3 -#define __pyx_n_s_module_globals __pyx_mstate_global->__pyx_n_s_module_globals -#define __pyx_n_s_name __pyx_mstate_global->__pyx_n_s_name -#define __pyx_n_s_name_2 __pyx_mstate_global->__pyx_n_s_name_2 -#define __pyx_n_s_namedtuple __pyx_mstate_global->__pyx_n_s_namedtuple -#define __pyx_n_s_next __pyx_mstate_global->__pyx_n_s_next -#define __pyx_n_s_object __pyx_mstate_global->__pyx_n_s_object -#define __pyx_n_s_os_path __pyx_mstate_global->__pyx_n_s_os_path -#define __pyx_n_s_partial __pyx_mstate_global->__pyx_n_s_partial -#define __pyx_n_s_pkg_resources __pyx_mstate_global->__pyx_n_s_pkg_resources -#define __pyx_kp_s_py __pyx_mstate_global->__pyx_kp_s_py -#define __pyx_kp_s_pyc __pyx_mstate_global->__pyx_kp_s_pyc -#define __pyx_kp_s_pyd __pyx_mstate_global->__pyx_kp_s_pyd -#define __pyx_kp_s_pyo __pyx_mstate_global->__pyx_kp_s_pyo -#define __pyx_kp_s_pyx __pyx_mstate_global->__pyx_kp_s_pyx -#define __pyx_n_s_pyx_vtable __pyx_mstate_global->__pyx_n_s_pyx_vtable -#define __pyx_n_s_return __pyx_mstate_global->__pyx_n_s_return -#define __pyx_n_s_self __pyx_mstate_global->__pyx_n_s_self -#define __pyx_n_s_send __pyx_mstate_global->__pyx_n_s_send -#define __pyx_n_s_site __pyx_mstate_global->__pyx_n_s_site -#define __pyx_kp_s_so __pyx_mstate_global->__pyx_kp_s_so -#define __pyx_n_s_split __pyx_mstate_global->__pyx_n_s_split -#define __pyx_n_s_splitext __pyx_mstate_global->__pyx_n_s_splitext -#define __pyx_kp_s_src_hunter__event_pyx __pyx_mstate_global->__pyx_kp_s_src_hunter__event_pyx -#define __pyx_n_s_start __pyx_mstate_global->__pyx_n_s_start -#define __pyx_n_s_startswith __pyx_mstate_global->__pyx_n_s_startswith -#define __pyx_kp_s_string __pyx_mstate_global->__pyx_kp_s_string -#define __pyx_n_s_sub __pyx_mstate_global->__pyx_n_s_sub -#define __pyx_n_s_test __pyx_mstate_global->__pyx_n_s_test -#define __pyx_n_s_threading __pyx_mstate_global->__pyx_n_s_threading -#define __pyx_n_s_threading_support __pyx_mstate_global->__pyx_n_s_threading_support -#define __pyx_n_s_throw __pyx_mstate_global->__pyx_n_s_throw -#define __pyx_n_s_tokenize __pyx_mstate_global->__pyx_n_s_tokenize -#define __pyx_n_s_tracer __pyx_mstate_global->__pyx_n_s_tracer -#define __pyx_n_s_util __pyx_mstate_global->__pyx_n_s_util -#define __pyx_n_s_value_filter __pyx_mstate_global->__pyx_n_s_value_filter -#define __pyx_n_s_values __pyx_mstate_global->__pyx_n_s_values -#define __pyx_n_s_yield_lines __pyx_mstate_global->__pyx_n_s_yield_lines -#define __pyx_int_1 __pyx_mstate_global->__pyx_int_1 -#define __pyx_int_10 __pyx_mstate_global->__pyx_int_10 -#define __pyx_int_neg_1 __pyx_mstate_global->__pyx_int_neg_1 -#define __pyx_k_ __pyx_mstate_global->__pyx_k_ -#define __pyx_tuple__2 __pyx_mstate_global->__pyx_tuple__2 -#define __pyx_tuple__3 __pyx_mstate_global->__pyx_tuple__3 -#define __pyx_tuple__4 __pyx_mstate_global->__pyx_tuple__4 -#define __pyx_tuple__8 __pyx_mstate_global->__pyx_tuple__8 -#define __pyx_slice__11 __pyx_mstate_global->__pyx_slice__11 -#define __pyx_tuple__10 __pyx_mstate_global->__pyx_tuple__10 -#define __pyx_tuple__12 __pyx_mstate_global->__pyx_tuple__12 -#define __pyx_tuple__13 __pyx_mstate_global->__pyx_tuple__13 -#define __pyx_tuple__16 __pyx_mstate_global->__pyx_tuple__16 -#define __pyx_tuple__17 __pyx_mstate_global->__pyx_tuple__17 -#define __pyx_tuple__18 __pyx_mstate_global->__pyx_tuple__18 -#define __pyx_tuple__19 __pyx_mstate_global->__pyx_tuple__19 -#define __pyx_tuple__20 __pyx_mstate_global->__pyx_tuple__20 -#define __pyx_tuple__21 __pyx_mstate_global->__pyx_tuple__21 -#define __pyx_codeobj__5 __pyx_mstate_global->__pyx_codeobj__5 -#define __pyx_codeobj__6 __pyx_mstate_global->__pyx_codeobj__6 -#define __pyx_codeobj__15 __pyx_mstate_global->__pyx_codeobj__15 /* #### Code section: module_code ### */ /* "hunter/_event.pyx":36 @@ -3897,7 +3913,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { * cdef inline PyObject** make_kind_names(list strings): # <<<<<<<<<<<<<< * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) * cdef object name - */ +*/ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject *__pyx_v_strings) { PyObject **__pyx_v_array; @@ -3905,7 +3921,7 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject Py_ssize_t __pyx_v_i; PyObject *__pyx_v_string = NULL; PyObject **__pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations Py_ssize_t __pyx_t_1; void *__pyx_t_2; @@ -3915,8 +3931,9 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("make_kind_names", 1); - __Pyx_TraceCall("make_kind_names", __pyx_f[0], 36, 0, __PYX_ERR(0, 36, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) + __Pyx_RefNannySetupContext("make_kind_names", 0); + __Pyx_TraceStartFunc("make_kind_names", __pyx_f[0], 36, 0, 0, 0, __PYX_ERR(0, 36, __pyx_L1_error)); /* "hunter/_event.pyx":37 * @@ -3924,54 +3941,53 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) # <<<<<<<<<<<<<< * cdef object name * for i, string in enumerate(strings): - */ - __Pyx_TraceLine(37,0,__PYX_ERR(0, 37, __pyx_L1_error)) +*/ + __Pyx_TraceLine(37,9,0,__PYX_ERR(0, 37, __pyx_L1_error)) if (unlikely(__pyx_v_strings == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); __PYX_ERR(0, 37, __pyx_L1_error) } __pyx_t_1 = __Pyx_PyList_GET_SIZE(__pyx_v_strings); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 37, __pyx_L1_error) - __pyx_t_2 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_6hunter_6_event_mem->__pyx_vtab)->alloc(__pyx_v_6hunter_6_event_mem, __pyx_t_1, (sizeof(PyObject *))); if (unlikely(__pyx_t_2 == ((void *)NULL))) __PYX_ERR(0, 37, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_6hunter_6_event_mem->__pyx_vtab)->alloc(__pyx_v_6hunter_6_event_mem, __pyx_t_1, (sizeof(PyObject *))); if (unlikely(__pyx_t_2 == ((void *)0))) __PYX_ERR(0, 37, __pyx_L1_error) __pyx_v_array = ((PyObject **)__pyx_t_2); /* "hunter/_event.pyx":39 * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) * cdef object name * for i, string in enumerate(strings): # <<<<<<<<<<<<<< - * name = intern(string) + * name = intern(string) # TODO * Py_XINCREF( name) - */ - __Pyx_TraceLine(39,0,__PYX_ERR(0, 39, __pyx_L1_error)) +*/ + __Pyx_TraceLine(39,11,0,__PYX_ERR(0, 39, __pyx_L1_error)) __pyx_t_1 = 0; __pyx_t_3 = __pyx_v_strings; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3); - #if !CYTHON_ASSUME_SAFE_MACROS + #if !CYTHON_ASSUME_SAFE_SIZE if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 39, __pyx_L1_error) #endif if (__pyx_t_4 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely((0 < 0))) __PYX_ERR(0, 39, __pyx_L1_error) - #else - __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 39, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyList_GetItemRef(__pyx_t_3, __pyx_t_4); + ++__pyx_t_4; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - #endif __Pyx_XDECREF_SET(__pyx_v_string, __pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceLine(39,11,0,__PYX_ERR(0, 39, __pyx_L1_error)) __pyx_v_i = __pyx_t_1; __pyx_t_1 = (__pyx_t_1 + 1); /* "hunter/_event.pyx":40 * cdef object name * for i, string in enumerate(strings): - * name = intern(string) # <<<<<<<<<<<<<< + * name = intern(string) # TODO # <<<<<<<<<<<<<< * Py_XINCREF( name) * array[i] = name - */ - __Pyx_TraceLine(40,0,__PYX_ERR(0, 40, __pyx_L1_error)) +*/ + __Pyx_TraceLine(40,19,0,__PYX_ERR(0, 40, __pyx_L1_error)) __pyx_t_5 = __Pyx_Intern(__pyx_v_string); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_XDECREF_SET(__pyx_v_name, __pyx_t_5); @@ -3979,32 +3995,32 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject /* "hunter/_event.pyx":41 * for i, string in enumerate(strings): - * name = intern(string) + * name = intern(string) # TODO * Py_XINCREF( name) # <<<<<<<<<<<<<< * array[i] = name * return array - */ - __Pyx_TraceLine(41,0,__PYX_ERR(0, 41, __pyx_L1_error)) +*/ + __Pyx_TraceLine(41,22,0,__PYX_ERR(0, 41, __pyx_L1_error)) Py_XINCREF(((PyObject *)__pyx_v_name)); /* "hunter/_event.pyx":42 - * name = intern(string) + * name = intern(string) # TODO * Py_XINCREF( name) * array[i] = name # <<<<<<<<<<<<<< * return array * - */ - __Pyx_TraceLine(42,0,__PYX_ERR(0, 42, __pyx_L1_error)) +*/ + __Pyx_TraceLine(42,27,0,__PYX_ERR(0, 42, __pyx_L1_error)) (__pyx_v_array[__pyx_v_i]) = ((PyObject *)__pyx_v_name); /* "hunter/_event.pyx":39 * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) * cdef object name * for i, string in enumerate(strings): # <<<<<<<<<<<<<< - * name = intern(string) + * name = intern(string) # TODO * Py_XINCREF( name) - */ - __Pyx_TraceLine(39,0,__PYX_ERR(0, 39, __pyx_L1_error)) +*/ + __Pyx_TraceLine(39,11,0,__PYX_ERR(0, 39, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -4014,9 +4030,10 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject * return array # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(43,0,__PYX_ERR(0, 43, __pyx_L1_error)) +*/ + __Pyx_TraceLine(43,31,0,__PYX_ERR(0, 43, __pyx_L1_error)) __pyx_r = ((PyObject **)__pyx_v_array); + __Pyx_TraceReturnValue(Py_None, 30, 0, __PYX_ERR(0, 43, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":36 @@ -4025,18 +4042,24 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject * cdef inline PyObject** make_kind_names(list strings): # <<<<<<<<<<<<<< * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) * cdef object name - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 36, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.make_kind_names", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; + __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_name); __Pyx_XDECREF(__pyx_v_string); - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4047,12 +4070,12 @@ static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, # <<<<<<<<<<<<<< * object threading_support=MISSING): * if tracer is None: - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyFrameObject *__pyx_v_frame = 0; + FrameType __pyx_v_frame = 0; int __pyx_v_kind; PyObject *__pyx_v_arg = 0; struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_tracer = 0; @@ -4068,119 +4091,93 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_frame,&__pyx_n_s_kind,&__pyx_n_s_arg,&__pyx_n_s_tracer,&__pyx_n_s_depth,&__pyx_n_s_calls,&__pyx_n_s_threading_support,0}; - values[3] = __Pyx_Arg_NewRef_VARARGS((PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None)); - values[4] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); - values[5] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); - values[6] = __Pyx_Arg_NewRef_VARARGS(__pyx_k_); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,&__pyx_mstate_global->__pyx_n_u_tracer,&__pyx_mstate_global->__pyx_n_u_depth,&__pyx_mstate_global->__pyx_n_u_calls,&__pyx_mstate_global->__pyx_n_u_threading_support,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 61, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 7: values[6] = __Pyx_Arg_VARARGS(__pyx_args, 6); + case 7: + values[6] = __Pyx_ArgRef_VARARGS(__pyx_args, 6); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 6: values[5] = __Pyx_Arg_VARARGS(__pyx_args, 5); + case 6: + values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 5: values[4] = __Pyx_Arg_VARARGS(__pyx_args, 4); + case 5: + values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 4: values[3] = __Pyx_Arg_VARARGS(__pyx_args, 3); + case 4: + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_frame)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_kind)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, 1); __PYX_ERR(0, 61, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_arg)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, 2); __PYX_ERR(0, 61, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 3: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_tracer); - if (value) { values[3] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 4: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_depth); - if (value) { values[4] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 5: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_calls); - if (value) { values[5] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 6: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_threading_support); - if (value) { values[6] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(0, 61, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 61, __pyx_L3_error) + if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None)); + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[6]) values[6] = __Pyx_NewRef(__pyx_mstate_global->__pyx_k_); + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, i); __PYX_ERR(0, 61, __pyx_L3_error) } } } else { switch (__pyx_nargs) { - case 7: values[6] = __Pyx_Arg_VARARGS(__pyx_args, 6); + case 7: + values[6] = __Pyx_ArgRef_VARARGS(__pyx_args, 6); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 6: values[5] = __Pyx_Arg_VARARGS(__pyx_args, 5); + case 6: + values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 5: values[4] = __Pyx_Arg_VARARGS(__pyx_args, 4); + case 5: + values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 4: values[3] = __Pyx_Arg_VARARGS(__pyx_args, 3); + case 4: + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 61, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); - values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 61, __pyx_L3_error) + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 61, __pyx_L3_error) + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 61, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } + if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None)); + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[6]) values[6] = __Pyx_NewRef(__pyx_mstate_global->__pyx_k_); } - __pyx_v_frame = ((PyFrameObject *)values[0]); - __pyx_v_kind = __Pyx_PyInt_As_int(values[1]); if (unlikely((__pyx_v_kind == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) + __pyx_v_frame = ((FrameType)values[0]); + __pyx_v_kind = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_kind == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) __pyx_v_arg = values[2]; __pyx_v_tracer = ((struct __pyx_obj_6hunter_7_tracer_Tracer *)values[3]); __pyx_v_depth = values[4]; @@ -4193,47 +4190,49 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._event.Event.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_frame), __pyx_ptype_6hunter_7_tracer_FrameType, 1, "frame", 0))) __PYX_ERR(0, 61, __pyx_L1_error) - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tracer), __pyx_ptype_6hunter_7_tracer_Tracer, 1, "tracer", 0))) __PYX_ERR(0, 61, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tracer), __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, 1, "tracer", 0))) __PYX_ERR(0, 61, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_6_event_5Event___init__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v_frame, __pyx_v_kind, __pyx_v_arg, __pyx_v_tracer, __pyx_v_depth, __pyx_v_calls, __pyx_v_threading_support); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = -1; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyFrameObject *__pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg, struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_tracer, PyObject *__pyx_v_depth, PyObject *__pyx_v_calls, PyObject *__pyx_v_threading_support) { +static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, FrameType __pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg, struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_tracer, PyObject *__pyx_v_depth, PyObject *__pyx_v_calls, PyObject *__pyx_v_threading_support) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + size_t __pyx_t_5; + int __pyx_t_6; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceCall("__init__", __pyx_f[0], 61, 0, __PYX_ERR(0, 61, __pyx_L1_error)); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 61, 0, 0, 0, __PYX_ERR(0, 61, __pyx_L1_error)); __Pyx_INCREF(__pyx_v_depth); __Pyx_INCREF(__pyx_v_calls); __Pyx_INCREF(__pyx_v_threading_support); @@ -4244,8 +4243,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if tracer is None: # <<<<<<<<<<<<<< * if depth is None: * raise TypeError('Missing argument: depth (required because tracer was not given).') - */ - __Pyx_TraceLine(63,0,__PYX_ERR(0, 63, __pyx_L1_error)) +*/ + __Pyx_TraceLine(63,8,0,__PYX_ERR(0, 63, __pyx_L1_error)) __pyx_t_1 = (((PyObject *)__pyx_v_tracer) == Py_None); if (__pyx_t_1) { @@ -4255,8 +4254,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if depth is None: # <<<<<<<<<<<<<< * raise TypeError('Missing argument: depth (required because tracer was not given).') * if calls is None: - */ - __Pyx_TraceLine(64,0,__PYX_ERR(0, 64, __pyx_L1_error)) +*/ + __Pyx_TraceLine(64,12,0,__PYX_ERR(0, 64, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_depth == Py_None); if (unlikely(__pyx_t_1)) { @@ -4266,10 +4265,20 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * raise TypeError('Missing argument: depth (required because tracer was not given).') # <<<<<<<<<<<<<< * if calls is None: * raise TypeError('Missing argument: calls (required because tracer was not given).') - */ - __Pyx_TraceLine(65,0,__PYX_ERR(0, 65, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 65, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); +*/ + __Pyx_TraceLine(65,15,0,__PYX_ERR(0, 65, __pyx_L1_error)) + __pyx_t_3 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_4 = __pyx_builtin_TypeError; + __pyx_t_5 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_Missing_argument_depth_required}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 65, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + } __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __PYX_ERR(0, 65, __pyx_L1_error) @@ -4280,7 +4289,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if depth is None: # <<<<<<<<<<<<<< * raise TypeError('Missing argument: depth (required because tracer was not given).') * if calls is None: - */ +*/ } /* "hunter/_event.pyx":66 @@ -4289,8 +4298,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if calls is None: # <<<<<<<<<<<<<< * raise TypeError('Missing argument: calls (required because tracer was not given).') * if threading_support is MISSING: - */ - __Pyx_TraceLine(66,0,__PYX_ERR(0, 66, __pyx_L1_error)) +*/ + __Pyx_TraceLine(66,20,0,__PYX_ERR(0, 66, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_calls == Py_None); if (unlikely(__pyx_t_1)) { @@ -4300,10 +4309,20 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * raise TypeError('Missing argument: calls (required because tracer was not given).') # <<<<<<<<<<<<<< * if threading_support is MISSING: * raise TypeError('Missing argument: threading_support (required because tracer was not given).') - */ - __Pyx_TraceLine(67,0,__PYX_ERR(0, 67, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 67, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); +*/ + __Pyx_TraceLine(67,23,0,__PYX_ERR(0, 67, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_3 = __pyx_builtin_TypeError; + __pyx_t_5 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Missing_argument_calls_required}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 67, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + } __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __PYX_ERR(0, 67, __pyx_L1_error) @@ -4314,7 +4333,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if calls is None: # <<<<<<<<<<<<<< * raise TypeError('Missing argument: calls (required because tracer was not given).') * if threading_support is MISSING: - */ +*/ } /* "hunter/_event.pyx":68 @@ -4323,9 +4342,9 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if threading_support is MISSING: # <<<<<<<<<<<<<< * raise TypeError('Missing argument: threading_support (required because tracer was not given).') * else: - */ - __Pyx_TraceLine(68,0,__PYX_ERR(0, 68, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_MISSING); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 68, __pyx_L1_error) +*/ + __Pyx_TraceLine(68,28,0,__PYX_ERR(0, 68, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = (__pyx_v_threading_support == __pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -4337,10 +4356,20 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * raise TypeError('Missing argument: threading_support (required because tracer was not given).') # <<<<<<<<<<<<<< * else: * depth = tracer.depth - */ - __Pyx_TraceLine(69,0,__PYX_ERR(0, 69, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 69, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); +*/ + __Pyx_TraceLine(69,31,0,__PYX_ERR(0, 69, __pyx_L1_error)) + __pyx_t_3 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_4 = __pyx_builtin_TypeError; + __pyx_t_5 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_Missing_argument_threading_suppo}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 69, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + } __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __PYX_ERR(0, 69, __pyx_L1_error) @@ -4351,7 +4380,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if threading_support is MISSING: # <<<<<<<<<<<<<< * raise TypeError('Missing argument: threading_support (required because tracer was not given).') * else: - */ +*/ } /* "hunter/_event.pyx":63 @@ -4360,7 +4389,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * if tracer is None: # <<<<<<<<<<<<<< * if depth is None: * raise TypeError('Missing argument: depth (required because tracer was not given).') - */ +*/ goto __pyx_L3; } @@ -4370,10 +4399,10 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * depth = tracer.depth # <<<<<<<<<<<<<< * calls = tracer.calls * threading_support = tracer.threading_support - */ - __Pyx_TraceLine(71,0,__PYX_ERR(0, 71, __pyx_L1_error)) +*/ + __Pyx_TraceLine(71,33,0,__PYX_ERR(0, 71, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_tracer->depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 71, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_tracer->depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 71, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_depth, __pyx_t_2); __pyx_t_2 = 0; @@ -4384,9 +4413,9 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * calls = tracer.calls # <<<<<<<<<<<<<< * threading_support = tracer.threading_support * - */ - __Pyx_TraceLine(72,0,__PYX_ERR(0, 72, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_tracer->calls); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) +*/ + __Pyx_TraceLine(72,38,0,__PYX_ERR(0, 72, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_tracer->calls); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_calls, __pyx_t_2); __pyx_t_2 = 0; @@ -4397,8 +4426,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * threading_support = tracer.threading_support # <<<<<<<<<<<<<< * * self.arg = arg - */ - __Pyx_TraceLine(73,0,__PYX_ERR(0, 73, __pyx_L1_error)) +*/ + __Pyx_TraceLine(73,41,0,__PYX_ERR(0, 73, __pyx_L1_error)) __pyx_t_2 = __pyx_v_tracer->threading_support; __Pyx_INCREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_threading_support, __pyx_t_2); @@ -4412,8 +4441,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.arg = arg # <<<<<<<<<<<<<< * self.frame = frame * self.kind = KIND_NAMES[kind] - */ - __Pyx_TraceLine(75,0,__PYX_ERR(0, 75, __pyx_L1_error)) +*/ + __Pyx_TraceLine(75,42,0,__PYX_ERR(0, 75, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_arg); __Pyx_GIVEREF(__pyx_v_arg); __Pyx_GOTREF(__pyx_v_self->arg); @@ -4426,12 +4455,12 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.frame = frame # <<<<<<<<<<<<<< * self.kind = KIND_NAMES[kind] * self.depth = depth - */ - __Pyx_TraceLine(76,0,__PYX_ERR(0, 76, __pyx_L1_error)) - __Pyx_INCREF((PyObject *)__pyx_v_frame); - __Pyx_GIVEREF((PyObject *)__pyx_v_frame); - __Pyx_GOTREF((PyObject *)__pyx_v_self->frame); - __Pyx_DECREF((PyObject *)__pyx_v_self->frame); +*/ + __Pyx_TraceLine(76,45,0,__PYX_ERR(0, 76, __pyx_L1_error)) + __Pyx_INCREF(__pyx_v_frame); + __Pyx_GIVEREF(__pyx_v_frame); + __Pyx_GOTREF(__pyx_v_self->frame); + __Pyx_DECREF(__pyx_v_self->frame); __pyx_v_self->frame = __pyx_v_frame; /* "hunter/_event.pyx":77 @@ -4440,8 +4469,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.kind = KIND_NAMES[kind] # <<<<<<<<<<<<<< * self.depth = depth * self.calls = calls - */ - __Pyx_TraceLine(77,0,__PYX_ERR(0, 77, __pyx_L1_error)) +*/ + __Pyx_TraceLine(77,50,0,__PYX_ERR(0, 77, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)(__pyx_v_6hunter_6_event_KIND_NAMES[__pyx_v_kind])); __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -4456,10 +4485,10 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.depth = depth # <<<<<<<<<<<<<< * self.calls = calls * self.threading_support = threading_support - */ - __Pyx_TraceLine(78,0,__PYX_ERR(0, 78, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_depth); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 78, __pyx_L1_error) - __pyx_v_self->depth = __pyx_t_3; +*/ + __Pyx_TraceLine(78,56,0,__PYX_ERR(0, 78, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyLong_As_int(__pyx_v_depth); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 78, __pyx_L1_error) + __pyx_v_self->depth = __pyx_t_6; /* "hunter/_event.pyx":79 * self.kind = KIND_NAMES[kind] @@ -4467,10 +4496,10 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.calls = calls # <<<<<<<<<<<<<< * self.threading_support = threading_support * self.detached = False - */ - __Pyx_TraceLine(79,0,__PYX_ERR(0, 79, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_calls); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 79, __pyx_L1_error) - __pyx_v_self->calls = __pyx_t_3; +*/ + __Pyx_TraceLine(79,59,0,__PYX_ERR(0, 79, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyLong_As_int(__pyx_v_calls); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 79, __pyx_L1_error) + __pyx_v_self->calls = __pyx_t_6; /* "hunter/_event.pyx":80 * self.depth = depth @@ -4478,8 +4507,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.threading_support = threading_support # <<<<<<<<<<<<<< * self.detached = False * self.builtin = kind > 3 - */ - __Pyx_TraceLine(80,0,__PYX_ERR(0, 80, __pyx_L1_error)) +*/ + __Pyx_TraceLine(80,62,0,__PYX_ERR(0, 80, __pyx_L1_error)) __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_threading_support); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 80, __pyx_L1_error) __pyx_v_self->threading_support = __pyx_t_1; @@ -4489,8 +4518,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.detached = False # <<<<<<<<<<<<<< * self.builtin = kind > 3 * - */ - __Pyx_TraceLine(81,0,__PYX_ERR(0, 81, __pyx_L1_error)) +*/ + __Pyx_TraceLine(81,63,0,__PYX_ERR(0, 81, __pyx_L1_error)) __pyx_v_self->detached = 0; /* "hunter/_event.pyx":82 @@ -4499,8 +4528,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self.builtin = kind > 3 # <<<<<<<<<<<<<< * * self._code = UNSET - */ - __Pyx_TraceLine(82,0,__PYX_ERR(0, 82, __pyx_L1_error)) +*/ + __Pyx_TraceLine(82,69,0,__PYX_ERR(0, 82, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyBool_FromLong((__pyx_v_kind > 3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -4515,8 +4544,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._code = UNSET # <<<<<<<<<<<<<< * self._filename = UNSET * self._fullsource = UNSET - */ - __Pyx_TraceLine(84,0,__PYX_ERR(0, 84, __pyx_L1_error)) +*/ + __Pyx_TraceLine(84,71,0,__PYX_ERR(0, 84, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_code); @@ -4529,8 +4558,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._filename = UNSET # <<<<<<<<<<<<<< * self._fullsource = UNSET * self._function_object = UNSET - */ - __Pyx_TraceLine(85,0,__PYX_ERR(0, 85, __pyx_L1_error)) +*/ + __Pyx_TraceLine(85,74,0,__PYX_ERR(0, 85, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_filename); @@ -4543,8 +4572,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._fullsource = UNSET # <<<<<<<<<<<<<< * self._function_object = UNSET * self._function = UNSET - */ - __Pyx_TraceLine(86,0,__PYX_ERR(0, 86, __pyx_L1_error)) +*/ + __Pyx_TraceLine(86,77,0,__PYX_ERR(0, 86, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_fullsource); @@ -4557,8 +4586,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._function_object = UNSET # <<<<<<<<<<<<<< * self._function = UNSET * self._globals = UNSET - */ - __Pyx_TraceLine(87,0,__PYX_ERR(0, 87, __pyx_L1_error)) +*/ + __Pyx_TraceLine(87,80,0,__PYX_ERR(0, 87, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_function_object); @@ -4571,8 +4600,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._function = UNSET # <<<<<<<<<<<<<< * self._globals = UNSET * self._lineno = UNSET - */ - __Pyx_TraceLine(88,0,__PYX_ERR(0, 88, __pyx_L1_error)) +*/ + __Pyx_TraceLine(88,83,0,__PYX_ERR(0, 88, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_function); @@ -4585,8 +4614,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._globals = UNSET # <<<<<<<<<<<<<< * self._lineno = UNSET * self._locals = UNSET - */ - __Pyx_TraceLine(89,0,__PYX_ERR(0, 89, __pyx_L1_error)) +*/ + __Pyx_TraceLine(89,86,0,__PYX_ERR(0, 89, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_globals); @@ -4599,8 +4628,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._lineno = UNSET # <<<<<<<<<<<<<< * self._locals = UNSET * self._module = UNSET - */ - __Pyx_TraceLine(90,0,__PYX_ERR(0, 90, __pyx_L1_error)) +*/ + __Pyx_TraceLine(90,89,0,__PYX_ERR(0, 90, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_lineno); @@ -4613,8 +4642,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._locals = UNSET # <<<<<<<<<<<<<< * self._module = UNSET * self._source = UNSET - */ - __Pyx_TraceLine(91,0,__PYX_ERR(0, 91, __pyx_L1_error)) +*/ + __Pyx_TraceLine(91,92,0,__PYX_ERR(0, 91, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_locals); @@ -4627,8 +4656,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._module = UNSET # <<<<<<<<<<<<<< * self._source = UNSET * self._stdlib = UNSET - */ - __Pyx_TraceLine(92,0,__PYX_ERR(0, 92, __pyx_L1_error)) +*/ + __Pyx_TraceLine(92,95,0,__PYX_ERR(0, 92, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_module); @@ -4641,8 +4670,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._source = UNSET # <<<<<<<<<<<<<< * self._stdlib = UNSET * self._threadidn = UNSET - */ - __Pyx_TraceLine(93,0,__PYX_ERR(0, 93, __pyx_L1_error)) +*/ + __Pyx_TraceLine(93,98,0,__PYX_ERR(0, 93, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_source); @@ -4655,8 +4684,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._stdlib = UNSET # <<<<<<<<<<<<<< * self._threadidn = UNSET * self._threadname = UNSET - */ - __Pyx_TraceLine(94,0,__PYX_ERR(0, 94, __pyx_L1_error)) +*/ + __Pyx_TraceLine(94,101,0,__PYX_ERR(0, 94, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_stdlib); @@ -4669,8 +4698,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._threadidn = UNSET # <<<<<<<<<<<<<< * self._threadname = UNSET * self._thread = UNSET - */ - __Pyx_TraceLine(95,0,__PYX_ERR(0, 95, __pyx_L1_error)) +*/ + __Pyx_TraceLine(95,104,0,__PYX_ERR(0, 95, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_threadidn); @@ -4683,8 +4712,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._threadname = UNSET # <<<<<<<<<<<<<< * self._thread = UNSET * self._instruction = UNSET - */ - __Pyx_TraceLine(96,0,__PYX_ERR(0, 96, __pyx_L1_error)) +*/ + __Pyx_TraceLine(96,107,0,__PYX_ERR(0, 96, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_threadname); @@ -4697,8 +4726,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._thread = UNSET # <<<<<<<<<<<<<< * self._instruction = UNSET * - */ - __Pyx_TraceLine(97,0,__PYX_ERR(0, 97, __pyx_L1_error)) +*/ + __Pyx_TraceLine(97,110,0,__PYX_ERR(0, 97, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_thread); @@ -4711,8 +4740,8 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * self._instruction = UNSET # <<<<<<<<<<<<<< * * def __repr__(self): - */ - __Pyx_TraceLine(98,0,__PYX_ERR(0, 98, __pyx_L1_error)) +*/ + __Pyx_TraceLine(98,113,0,__PYX_ERR(0, 98, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_instruction); @@ -4725,20 +4754,29 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, # <<<<<<<<<<<<<< * object threading_support=MISSING): * if tracer is None: - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 61, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 61, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_XDECREF(__pyx_v_depth); __Pyx_XDECREF(__pyx_v_calls); __Pyx_XDECREF(__pyx_v_threading_support); - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4749,7 +4787,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * self.kind, self.function, self.module, self.filename, self.lineno - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_3__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -4768,18 +4806,21 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_3__repr__(PyObject *__pyx_v_sel static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7[11]; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[0], 100, 0, __PYX_ERR(0, 100, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 100, 0, 0, 0, __PYX_ERR(0, 100, __pyx_L1_error)); /* "hunter/_event.pyx":101 * @@ -4787,8 +4828,8 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun * return '' % ( # <<<<<<<<<<<<<< * self.kind, self.function, self.module, self.filename, self.lineno * ) - */ - __Pyx_TraceLine(101,0,__PYX_ERR(0, 101, __pyx_L1_error)) +*/ + __Pyx_TraceLine(101,1,0,__PYX_ERR(0, 101, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_event.pyx":102 @@ -4797,33 +4838,41 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun * self.kind, self.function, self.module, self.filename, self.lineno # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(102,0,__PYX_ERR(0, 102, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_function); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error) +*/ + __Pyx_TraceLine(102,4,0,__PYX_ERR(0, 102, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->kind), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_module); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_function_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_lineno); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_v_self->kind); - __Pyx_GIVEREF(__pyx_v_self->kind); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->kind)) __PYX_ERR(0, 102, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_3 = 0; - __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_Event_kind; + __pyx_t_7[1] = __pyx_t_1; + __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_function; + __pyx_t_7[3] = __pyx_t_3; + __pyx_t_7[4] = __pyx_mstate_global->__pyx_kp_u_module; + __pyx_t_7[5] = __pyx_t_4; + __pyx_t_7[6] = __pyx_mstate_global->__pyx_kp_u_filename; + __pyx_t_7[7] = __pyx_t_5; + __pyx_t_7[8] = __pyx_mstate_global->__pyx_kp_u_lineno; + __pyx_t_7[9] = __pyx_t_6; + __pyx_t_7[10] = __pyx_mstate_global->__pyx_kp_u__2; /* "hunter/_event.pyx":101 * @@ -4831,13 +4880,19 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun * return '' % ( # <<<<<<<<<<<<<< * self.kind, self.function, self.module, self.filename, self.lineno * ) - */ - __Pyx_TraceLine(101,0,__PYX_ERR(0, 101, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Event_kind_r_function_r_module, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 101, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); +*/ + __Pyx_TraceLine(101,2,0,__PYX_ERR(0, 101, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyUnicode_Join(__pyx_t_7, 11, 12 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 10 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 8 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 101, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_r = __pyx_t_2; + __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 101, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":100 @@ -4846,7 +4901,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * self.kind, self.function, self.module, self.filename, self.lineno - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -4855,11 +4910,18 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 100, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4870,7 +4932,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun * def __eq__(self, other): # <<<<<<<<<<<<<< * return self is other * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -4889,15 +4951,16 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_5__eq__(PyObject *__pyx_v_self, static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[0], 105, 0, __PYX_ERR(0, 105, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 105, 0, 0, 0, __PYX_ERR(0, 105, __pyx_L1_error)); /* "hunter/_event.pyx":106 * @@ -4905,14 +4968,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte * return self is other # <<<<<<<<<<<<<< * * def detach(self, value_filter=None): - */ - __Pyx_TraceLine(106,0,__PYX_ERR(0, 106, __pyx_L1_error)) +*/ + __Pyx_TraceLine(106,1,0,__PYX_ERR(0, 106, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = (((PyObject *)__pyx_v_self) == __pyx_v_other); __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 106, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":105 @@ -4921,16 +4985,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte * def __eq__(self, other): # <<<<<<<<<<<<<< * return self is other * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 105, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4941,7 +5011,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_7detach(PyObject *__pyx_v_self, @@ -4951,7 +5021,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_7detach = {"detach", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_7detach, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_7detach = {"detach", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_7detach, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_6_event_5Event_7detach(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -4972,7 +5042,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("detach (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -4980,36 +5050,31 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_value_filter,0}; - values[0] = __Pyx_Arg_NewRef_FASTCALL(((PyObject *)Py_None)); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_value_filter,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 108, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 108, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_value_filter); - if (value) { values[0] = __Pyx_Arg_NewRef_FASTCALL(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 108, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "detach") < 0)) __PYX_ERR(0, 108, __pyx_L3_error) - } + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "detach", 0) < 0) __PYX_ERR(0, 108, __pyx_L3_error) + if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); } else { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 108, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } + if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); } __pyx_v_value_filter = values[0]; } @@ -5019,11 +5084,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._event.Event.detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -5032,11 +5094,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6_event_5Event_6detach(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v_value_filter); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -5044,15 +5103,15 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v_value_filter) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__5) - __Pyx_RefNannySetupContext("detach", 1); - __Pyx_TraceCall("detach", __pyx_f[0], 108, 0, __PYX_ERR(0, 108, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) + __Pyx_RefNannySetupContext("detach", 0); + __Pyx_TraceStartFunc("detach", __pyx_f[0], 108, 0, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); /* "hunter/_event.pyx":109 * @@ -5060,13 +5119,14 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte * return fast_detach(self, value_filter) # <<<<<<<<<<<<<< * * def clone(self): - */ - __Pyx_TraceLine(109,0,__PYX_ERR(0, 109, __pyx_L1_error)) +*/ + __Pyx_TraceLine(109,2,0,__PYX_ERR(0, 109, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_self, __pyx_v_value_filter)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 2, 0, __PYX_ERR(0, 109, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":108 @@ -5075,16 +5135,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5095,7 +5161,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte * def clone(self): # <<<<<<<<<<<<<< * return fast_clone(self) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_9clone(PyObject *__pyx_v_self, @@ -5105,7 +5171,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_9clone = {"clone", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_9clone, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_9clone = {"clone", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_9clone, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_6_event_5Event_9clone(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -5121,16 +5187,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("clone (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("clone", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "clone", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("clone", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("clone", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_6_event_5Event_8clone(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); /* function exit code */ @@ -5140,15 +5207,15 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__6) - __Pyx_RefNannySetupContext("clone", 1); - __Pyx_TraceCall("clone", __pyx_f[0], 111, 0, __PYX_ERR(0, 111, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) + __Pyx_RefNannySetupContext("clone", 0); + __Pyx_TraceStartFunc("clone", __pyx_f[0], 111, 0, 0, 0, __PYX_ERR(0, 111, __pyx_L1_error)); /* "hunter/_event.pyx":112 * @@ -5156,13 +5223,14 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter * return fast_clone(self) # <<<<<<<<<<<<<< * * cdef inline instruction_getter(self): - */ - __Pyx_TraceLine(112,0,__PYX_ERR(0, 112, __pyx_L1_error)) +*/ + __Pyx_TraceLine(112,1,0,__PYX_ERR(0, 112, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 112, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 112, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":111 @@ -5171,16 +5239,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter * def clone(self): # <<<<<<<<<<<<<< * return fast_clone(self) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 111, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.clone", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5191,13 +5265,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< * cdef int position * - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { int __pyx_v_position; PyObject *__pyx_v_co_code = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -5206,41 +5280,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("instruction_getter", 1); - __Pyx_TraceCall("instruction_getter", __pyx_f[0], 114, 0, __PYX_ERR(0, 114, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) + __Pyx_RefNannySetupContext("instruction_getter", 0); + __Pyx_TraceStartFunc("instruction_getter", __pyx_f[0], 114, 0, 0, 0, __PYX_ERR(0, 114, __pyx_L1_error)); /* "hunter/_event.pyx":117 * cdef int position * * if self._instruction is UNSET: # <<<<<<<<<<<<<< - * position = PyFrame_GetLasti(self.frame) + * position = PyFrame_GetLasti( self.frame) * co_code = PyCode_GetCode(self.code_getter()) - */ - __Pyx_TraceLine(117,0,__PYX_ERR(0, 117, __pyx_L1_error)) +*/ + __Pyx_TraceLine(117,5,0,__PYX_ERR(0, 117, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_instruction == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { /* "hunter/_event.pyx":118 * * if self._instruction is UNSET: - * position = PyFrame_GetLasti(self.frame) # <<<<<<<<<<<<<< + * position = PyFrame_GetLasti( self.frame) # <<<<<<<<<<<<<< * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: - */ - __Pyx_TraceLine(118,0,__PYX_ERR(0, 118, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); - __Pyx_INCREF(__pyx_t_2); - __pyx_v_position = PyFrame_GetLasti(((PyFrameObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; +*/ + __Pyx_TraceLine(118,8,0,__PYX_ERR(0, 118, __pyx_L1_error)) + __pyx_v_position = PyFrame_GetLasti(((PyFrameObject *)__pyx_v_self->frame)); /* "hunter/_event.pyx":119 * if self._instruction is UNSET: - * position = PyFrame_GetLasti(self.frame) + * position = PyFrame_GetLasti( self.frame) * co_code = PyCode_GetCode(self.code_getter()) # <<<<<<<<<<<<<< * if co_code and position >= 0: * self._instruction = co_code[position] - */ - __Pyx_TraceLine(119,0,__PYX_ERR(0, 119, __pyx_L1_error)) +*/ + __Pyx_TraceLine(119,17,0,__PYX_ERR(0, 119, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = PyCode_GetCode(((PyCodeObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 119, __pyx_L1_error) @@ -5250,13 +5322,13 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_t_3 = 0; /* "hunter/_event.pyx":120 - * position = PyFrame_GetLasti(self.frame) + * position = PyFrame_GetLasti( self.frame) * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] * else: - */ - __Pyx_TraceLine(120,0,__PYX_ERR(0, 120, __pyx_L1_error)) +*/ + __Pyx_TraceLine(120,19,0,__PYX_ERR(0, 120, __pyx_L1_error)) __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_co_code); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 120, __pyx_L1_error) if (__pyx_t_4) { } else { @@ -5274,9 +5346,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * self._instruction = co_code[position] # <<<<<<<<<<<<<< * else: * self._instruction = None - */ - __Pyx_TraceLine(121,0,__PYX_ERR(0, 121, __pyx_L1_error)) - __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 121, __pyx_L1_error) +*/ + __Pyx_TraceLine(121,27,0,__PYX_ERR(0, 121, __pyx_L1_error)) + __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_instruction); @@ -5285,12 +5357,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_t_3 = 0; /* "hunter/_event.pyx":120 - * position = PyFrame_GetLasti(self.frame) + * position = PyFrame_GetLasti( self.frame) * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] * else: - */ +*/ goto __pyx_L4; } @@ -5300,8 +5372,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * self._instruction = None # <<<<<<<<<<<<<< * return self._instruction * - */ - __Pyx_TraceLine(123,0,__PYX_ERR(0, 123, __pyx_L1_error)) +*/ + __Pyx_TraceLine(123,31,0,__PYX_ERR(0, 123, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); @@ -5315,9 +5387,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * cdef int position * * if self._instruction is UNSET: # <<<<<<<<<<<<<< - * position = PyFrame_GetLasti(self.frame) + * position = PyFrame_GetLasti( self.frame) * co_code = PyCode_GetCode(self.code_getter()) - */ +*/ } /* "hunter/_event.pyx":124 @@ -5326,11 +5398,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * return self._instruction # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(124,0,__PYX_ERR(0, 124, __pyx_L1_error)) +*/ + __Pyx_TraceLine(124,32,0,__PYX_ERR(0, 124, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_instruction); __pyx_r = __pyx_v_self->_instruction; + __Pyx_TraceReturnValue(__pyx_r, 32, 0, __PYX_ERR(0, 124, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":114 @@ -5339,18 +5412,24 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< * cdef int position * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 114, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.instruction_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_co_code); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5361,7 +5440,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * @property # <<<<<<<<<<<<<< * def instruction(self): * return self.instruction_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_11instruction_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -5380,14 +5459,15 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_11instruction_1__get__(PyObject static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 126, 0, __PYX_ERR(0, 126, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 126, 0, 0, 0, __PYX_ERR(0, 126, __pyx_L1_error)); /* "hunter/_event.pyx":128 * @property @@ -5395,13 +5475,14 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ * return self.instruction_getter() # <<<<<<<<<<<<<< * * cdef inline threadid_getter(self): - */ - __Pyx_TraceLine(128,0,__PYX_ERR(0, 128, __pyx_L1_error)) +*/ + __Pyx_TraceLine(128,1,0,__PYX_ERR(0, 128, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 128, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":126 @@ -5410,16 +5491,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ * @property # <<<<<<<<<<<<<< * def instruction(self): * return self.instruction_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 126, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.instruction.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5430,25 +5517,26 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< * cdef long current * - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { long __pyx_v_current; PyObject *__pyx_v_main = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_5; int __pyx_t_6; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("threadid_getter", 1); - __Pyx_TraceCall("threadid_getter", __pyx_f[0], 130, 0, __PYX_ERR(0, 130, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) + __Pyx_RefNannySetupContext("threadid_getter", 0); + __Pyx_TraceStartFunc("threadid_getter", __pyx_f[0], 130, 0, 0, 0, __PYX_ERR(0, 130, __pyx_L1_error)); /* "hunter/_event.pyx":133 * cdef long current @@ -5456,8 +5544,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * if self._threadidn is UNSET: # <<<<<<<<<<<<<< * current = PyThread_get_thread_ident() * main = get_main_thread() - */ - __Pyx_TraceLine(133,0,__PYX_ERR(0, 133, __pyx_L1_error)) +*/ + __Pyx_TraceLine(133,5,0,__PYX_ERR(0, 133, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_threadidn == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { @@ -5467,8 +5555,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * current = PyThread_get_thread_ident() # <<<<<<<<<<<<<< * main = get_main_thread() * if main is not None and current == main.ident: - */ - __Pyx_TraceLine(134,0,__PYX_ERR(0, 134, __pyx_L1_error)) +*/ + __Pyx_TraceLine(134,8,0,__PYX_ERR(0, 134, __pyx_L1_error)) __pyx_v_current = PyThread_get_thread_ident(); /* "hunter/_event.pyx":135 @@ -5477,31 +5565,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * main = get_main_thread() # <<<<<<<<<<<<<< * if main is not None and current == main.ident: * self._threadidn = None - */ - __Pyx_TraceLine(135,0,__PYX_ERR(0, 135, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_get_main_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 135, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(135,11,0,__PYX_ERR(0, 135, __pyx_L1_error)) + __pyx_t_3 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 135, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); + assert(__pyx_t_3); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_4, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v_main = __pyx_t_2; __pyx_t_2 = 0; @@ -5512,23 +5599,23 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * if main is not None and current == main.ident: # <<<<<<<<<<<<<< * self._threadidn = None * else: - */ - __Pyx_TraceLine(136,0,__PYX_ERR(0, 136, __pyx_L1_error)) +*/ + __Pyx_TraceLine(136,15,0,__PYX_ERR(0, 136, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_main != Py_None); if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyInt_From_long(__pyx_v_current); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_main, __pyx_n_s_ident); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 136, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main, __pyx_mstate_global->__pyx_n_u_ident); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 136, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 136, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __pyx_t_6; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { @@ -5539,8 +5626,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * self._threadidn = None # <<<<<<<<<<<<<< * else: * self._threadidn = current - */ - __Pyx_TraceLine(137,0,__PYX_ERR(0, 137, __pyx_L1_error)) +*/ + __Pyx_TraceLine(137,21,0,__PYX_ERR(0, 137, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threadidn); @@ -5553,7 +5640,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * if main is not None and current == main.ident: # <<<<<<<<<<<<<< * self._threadidn = None * else: - */ +*/ goto __pyx_L4; } @@ -5563,16 +5650,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * self._threadidn = current # <<<<<<<<<<<<<< * return self._threadidn * - */ - __Pyx_TraceLine(139,0,__PYX_ERR(0, 139, __pyx_L1_error)) +*/ + __Pyx_TraceLine(139,26,0,__PYX_ERR(0, 139, __pyx_L1_error)) /*else*/ { - __pyx_t_4 = __Pyx_PyInt_From_long(__pyx_v_current); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 139, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 139, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_threadidn); __Pyx_DECREF(__pyx_v_self->_threadidn); - __pyx_v_self->_threadidn = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_v_self->_threadidn = __pyx_t_3; + __pyx_t_3 = 0; } __pyx_L4:; @@ -5582,7 +5669,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * if self._threadidn is UNSET: # <<<<<<<<<<<<<< * current = PyThread_get_thread_ident() * main = get_main_thread() - */ +*/ } /* "hunter/_event.pyx":140 @@ -5591,11 +5678,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * return self._threadidn # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(140,0,__PYX_ERR(0, 140, __pyx_L1_error)) +*/ + __Pyx_TraceLine(140,27,0,__PYX_ERR(0, 140, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threadidn); __pyx_r = __pyx_v_self->_threadidn; + __Pyx_TraceReturnValue(__pyx_r, 27, 0, __PYX_ERR(0, 140, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":130 @@ -5604,19 +5692,25 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< * cdef long current * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 130, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.threadid_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_main); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5627,7 +5721,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj * @property # <<<<<<<<<<<<<< * def threadid(self): * return self.threadid_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8threadid_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -5646,14 +5740,15 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_8threadid_1__get__(PyObject *__ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 142, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 142, 0, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); /* "hunter/_event.pyx":144 * @property @@ -5661,13 +5756,14 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ * return self.threadid_getter() # <<<<<<<<<<<<<< * * cdef inline threadname_getter(self): - */ - __Pyx_TraceLine(144,0,__PYX_ERR(0, 144, __pyx_L1_error)) +*/ + __Pyx_TraceLine(144,1,0,__PYX_ERR(0, 144, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 144, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":142 @@ -5676,16 +5772,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ * @property # <<<<<<<<<<<<<< * def threadid(self): * return self.threadid_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.threadid.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5696,22 +5798,23 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< * if self._threadname is UNSET: * if self._thread is UNSET: - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_5; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("threadname_getter", 1); - __Pyx_TraceCall("threadname_getter", __pyx_f[0], 146, 0, __PYX_ERR(0, 146, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) + __Pyx_RefNannySetupContext("threadname_getter", 0); + __Pyx_TraceStartFunc("threadname_getter", __pyx_f[0], 146, 0, 0, 0, __PYX_ERR(0, 146, __pyx_L1_error)); /* "hunter/_event.pyx":147 * @@ -5719,8 +5822,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * if self._threadname is UNSET: # <<<<<<<<<<<<<< * if self._thread is UNSET: * self._thread = current_thread() - */ - __Pyx_TraceLine(147,0,__PYX_ERR(0, 147, __pyx_L1_error)) +*/ + __Pyx_TraceLine(147,5,0,__PYX_ERR(0, 147, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_threadname == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { @@ -5730,8 +5833,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * if self._thread is UNSET: # <<<<<<<<<<<<<< * self._thread = current_thread() * self._threadname = self._thread.name - */ - __Pyx_TraceLine(148,0,__PYX_ERR(0, 148, __pyx_L1_error)) +*/ + __Pyx_TraceLine(148,10,0,__PYX_ERR(0, 148, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_thread == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { @@ -5741,31 +5844,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * self._thread = current_thread() # <<<<<<<<<<<<<< * self._threadname = self._thread.name * return self._threadname - */ - __Pyx_TraceLine(149,0,__PYX_ERR(0, 149, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_current_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 149, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(149,14,0,__PYX_ERR(0, 149, __pyx_L1_error)) + __pyx_t_3 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 149, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); + assert(__pyx_t_3); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_4, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_thread); @@ -5779,7 +5881,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * if self._thread is UNSET: # <<<<<<<<<<<<<< * self._thread = current_thread() * self._threadname = self._thread.name - */ +*/ } /* "hunter/_event.pyx":150 @@ -5788,9 +5890,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * self._threadname = self._thread.name # <<<<<<<<<<<<<< * return self._threadname * - */ - __Pyx_TraceLine(150,0,__PYX_ERR(0, 150, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->_thread, __pyx_n_s_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 150, __pyx_L1_error) +*/ + __Pyx_TraceLine(150,19,0,__PYX_ERR(0, 150, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->_thread, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 150, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_threadname); @@ -5804,7 +5906,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * if self._threadname is UNSET: # <<<<<<<<<<<<<< * if self._thread is UNSET: * self._thread = current_thread() - */ +*/ } /* "hunter/_event.pyx":151 @@ -5813,11 +5915,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * return self._threadname # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(151,0,__PYX_ERR(0, 151, __pyx_L1_error)) +*/ + __Pyx_TraceLine(151,20,0,__PYX_ERR(0, 151, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threadname); __pyx_r = __pyx_v_self->_threadname; + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 151, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":146 @@ -5826,18 +5929,24 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< * if self._threadname is UNSET: * if self._thread is UNSET: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 146, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.threadname_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5848,7 +5957,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o * @property # <<<<<<<<<<<<<< * def threadname(self): * return self.threadname_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_10threadname_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -5867,14 +5976,15 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_10threadname_1__get__(PyObject static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 153, 0, __PYX_ERR(0, 153, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 153, 0, 0, 0, __PYX_ERR(0, 153, __pyx_L1_error)); /* "hunter/_event.pyx":155 * @property @@ -5882,13 +5992,14 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p * return self.threadname_getter() # <<<<<<<<<<<<<< * * cdef inline locals_getter(self): - */ - __Pyx_TraceLine(155,0,__PYX_ERR(0, 155, __pyx_L1_error)) +*/ + __Pyx_TraceLine(155,1,0,__PYX_ERR(0, 155, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 155, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":153 @@ -5897,16 +6008,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p * @property # <<<<<<<<<<<<<< * def threadname(self): * return self.threadname_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 153, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.threadname.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5917,20 +6034,20 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p * cdef inline locals_getter(self): # <<<<<<<<<<<<<< * if self._locals is UNSET: * if self.builtin: - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("locals_getter", 1); - __Pyx_TraceCall("locals_getter", __pyx_f[0], 157, 0, __PYX_ERR(0, 157, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) + __Pyx_RefNannySetupContext("locals_getter", 0); + __Pyx_TraceStartFunc("locals_getter", __pyx_f[0], 157, 0, 0, 0, __PYX_ERR(0, 157, __pyx_L1_error)); /* "hunter/_event.pyx":158 * @@ -5938,8 +6055,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 * if self._locals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} - */ - __Pyx_TraceLine(158,0,__PYX_ERR(0, 158, __pyx_L1_error)) +*/ + __Pyx_TraceLine(158,5,0,__PYX_ERR(0, 158, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_locals == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { @@ -5949,8 +6066,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: - */ - __Pyx_TraceLine(159,0,__PYX_ERR(0, 159, __pyx_L1_error)) +*/ + __Pyx_TraceLine(159,8,0,__PYX_ERR(0, 159, __pyx_L1_error)) __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 159, __pyx_L1_error) if (__pyx_t_1) { @@ -5959,9 +6076,9 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 * if self.builtin: * self._locals = {} # <<<<<<<<<<<<<< * else: - * PyFrame_FastToLocals(self.frame) - */ - __Pyx_TraceLine(160,0,__PYX_ERR(0, 160, __pyx_L1_error)) + * self._locals = PyFrame_GetLocals( self.frame) +*/ + __Pyx_TraceLine(160,11,0,__PYX_ERR(0, 160, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 160, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -5976,42 +6093,26 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: - */ +*/ goto __pyx_L4; } /* "hunter/_event.pyx":162 * self._locals = {} * else: - * PyFrame_FastToLocals(self.frame) # <<<<<<<<<<<<<< - * self._locals = PyFrame_GetLocals(self.frame) - * return self._locals - */ - __Pyx_TraceLine(162,0,__PYX_ERR(0, 162, __pyx_L1_error)) - /*else*/ { - __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); - __Pyx_INCREF(__pyx_t_2); - PyFrame_FastToLocals(((PyFrameObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/_event.pyx":163 - * else: - * PyFrame_FastToLocals(self.frame) - * self._locals = PyFrame_GetLocals(self.frame) # <<<<<<<<<<<<<< + * self._locals = PyFrame_GetLocals( self.frame) # <<<<<<<<<<<<<< * return self._locals * - */ - __Pyx_TraceLine(163,0,__PYX_ERR(0, 163, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = PyFrame_GetLocals(((PyFrameObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 163, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GIVEREF(__pyx_t_3); +*/ + __Pyx_TraceLine(162,15,0,__PYX_ERR(0, 162, __pyx_L1_error)) + /*else*/ { + __pyx_t_2 = PyFrame_GetLocals(((PyFrameObject *)__pyx_v_self->frame)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 162, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_locals); __Pyx_DECREF(__pyx_v_self->_locals); - __pyx_v_self->_locals = __pyx_t_3; - __pyx_t_3 = 0; + __pyx_v_self->_locals = __pyx_t_2; + __pyx_t_2 = 0; } __pyx_L4:; @@ -6021,20 +6122,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 * if self._locals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} - */ +*/ } - /* "hunter/_event.pyx":164 - * PyFrame_FastToLocals(self.frame) - * self._locals = PyFrame_GetLocals(self.frame) + /* "hunter/_event.pyx":163 + * else: + * self._locals = PyFrame_GetLocals( self.frame) * return self._locals # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(164,0,__PYX_ERR(0, 164, __pyx_L1_error)) +*/ + __Pyx_TraceLine(163,19,0,__PYX_ERR(0, 163, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_locals); __pyx_r = __pyx_v_self->_locals; + __Pyx_TraceReturnValue(__pyx_r, 19, 0, __PYX_ERR(0, 163, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":157 @@ -6043,28 +6145,33 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 * cdef inline locals_getter(self): # <<<<<<<<<<<<<< * if self._locals is UNSET: * if self.builtin: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 157, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.locals_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":166 +/* "hunter/_event.pyx":165 * return self._locals * * @property # <<<<<<<<<<<<<< * def locals(self): * return self.locals_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6locals_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6083,102 +6190,110 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_6locals_1__get__(PyObject *__py static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 166, 0, __PYX_ERR(0, 166, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 165, 0, 0, 0, __PYX_ERR(0, 165, __pyx_L1_error)); - /* "hunter/_event.pyx":168 + /* "hunter/_event.pyx":167 * @property * def locals(self): * return self.locals_getter() # <<<<<<<<<<<<<< * * cdef inline globals_getter(self): - */ - __Pyx_TraceLine(168,0,__PYX_ERR(0, 168, __pyx_L1_error)) +*/ + __Pyx_TraceLine(167,1,0,__PYX_ERR(0, 167, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_locals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 168, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_locals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 167, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 167, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":166 + /* "hunter/_event.pyx":165 * return self._locals * * @property # <<<<<<<<<<<<<< * def locals(self): * return self.locals_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 165, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.locals.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":170 +/* "hunter/_event.pyx":169 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< * if self._globals is UNSET: * if self.builtin: - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("globals_getter", 1); - __Pyx_TraceCall("globals_getter", __pyx_f[0], 170, 0, __PYX_ERR(0, 170, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) + __Pyx_RefNannySetupContext("globals_getter", 0); + __Pyx_TraceStartFunc("globals_getter", __pyx_f[0], 169, 0, 0, 0, __PYX_ERR(0, 169, __pyx_L1_error)); - /* "hunter/_event.pyx":171 + /* "hunter/_event.pyx":170 * * cdef inline globals_getter(self): * if self._globals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} - */ - __Pyx_TraceLine(171,0,__PYX_ERR(0, 171, __pyx_L1_error)) +*/ + __Pyx_TraceLine(170,5,0,__PYX_ERR(0, 170, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_globals == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":172 + /* "hunter/_event.pyx":171 * cdef inline globals_getter(self): * if self._globals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: - */ - __Pyx_TraceLine(172,0,__PYX_ERR(0, 172, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 172, __pyx_L1_error) +*/ + __Pyx_TraceLine(171,8,0,__PYX_ERR(0, 171, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 171, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":173 + /* "hunter/_event.pyx":172 * if self._globals is UNSET: * if self.builtin: * self._locals = {} # <<<<<<<<<<<<<< * else: - * self._globals = PyFrame_GetGlobals(self.frame) - */ - __Pyx_TraceLine(173,0,__PYX_ERR(0, 173, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 173, __pyx_L1_error) + * self._globals = PyFrame_GetGlobals( self.frame) +*/ + __Pyx_TraceLine(172,11,0,__PYX_ERR(0, 172, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_locals); @@ -6186,88 +6301,91 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ __pyx_v_self->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":172 + /* "hunter/_event.pyx":171 * cdef inline globals_getter(self): * if self._globals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":175 + /* "hunter/_event.pyx":174 * self._locals = {} * else: - * self._globals = PyFrame_GetGlobals(self.frame) # <<<<<<<<<<<<<< + * self._globals = PyFrame_GetGlobals( self.frame) # <<<<<<<<<<<<<< * return self._globals * - */ - __Pyx_TraceLine(175,0,__PYX_ERR(0, 175, __pyx_L1_error)) +*/ + __Pyx_TraceLine(174,15,0,__PYX_ERR(0, 174, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = PyFrame_GetGlobals(((PyFrameObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 175, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GIVEREF(__pyx_t_3); + __pyx_t_2 = PyFrame_GetGlobals(((PyFrameObject *)__pyx_v_self->frame)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 174, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_globals); __Pyx_DECREF(__pyx_v_self->_globals); - __pyx_v_self->_globals = __pyx_t_3; - __pyx_t_3 = 0; + __pyx_v_self->_globals = __pyx_t_2; + __pyx_t_2 = 0; } __pyx_L4:; - /* "hunter/_event.pyx":171 + /* "hunter/_event.pyx":170 * * cdef inline globals_getter(self): * if self._globals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} - */ +*/ } - /* "hunter/_event.pyx":176 + /* "hunter/_event.pyx":175 * else: - * self._globals = PyFrame_GetGlobals(self.frame) + * self._globals = PyFrame_GetGlobals( self.frame) * return self._globals # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(176,0,__PYX_ERR(0, 176, __pyx_L1_error)) +*/ + __Pyx_TraceLine(175,19,0,__PYX_ERR(0, 175, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_globals); __pyx_r = __pyx_v_self->_globals; + __Pyx_TraceReturnValue(__pyx_r, 19, 0, __PYX_ERR(0, 175, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":170 + /* "hunter/_event.pyx":169 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< * if self._globals is UNSET: * if self.builtin: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 169, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.globals_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":178 +/* "hunter/_event.pyx":177 * return self._globals * * @property # <<<<<<<<<<<<<< * def globals(self): * return self.globals_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_7globals_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6286,61 +6404,69 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_7globals_1__get__(PyObject *__p static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 178, 0, __PYX_ERR(0, 178, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 177, 0, 0, 0, __PYX_ERR(0, 177, __pyx_L1_error)); - /* "hunter/_event.pyx":180 + /* "hunter/_event.pyx":179 * @property * def globals(self): * return self.globals_getter() # <<<<<<<<<<<<<< * * cdef inline function_getter(self): - */ - __Pyx_TraceLine(180,0,__PYX_ERR(0, 180, __pyx_L1_error)) +*/ + __Pyx_TraceLine(179,1,0,__PYX_ERR(0, 179, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_globals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 180, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_globals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 179, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 179, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":178 + /* "hunter/_event.pyx":177 * return self._globals * * @property # <<<<<<<<<<<<<< * def globals(self): * return self.globals_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 177, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.globals.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":182 +/* "hunter/_event.pyx":181 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< * if self._function is UNSET: * if self.builtin: - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -6348,40 +6474,41 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("function_getter", 1); - __Pyx_TraceCall("function_getter", __pyx_f[0], 182, 0, __PYX_ERR(0, 182, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])) + __Pyx_RefNannySetupContext("function_getter", 0); + __Pyx_TraceStartFunc("function_getter", __pyx_f[0], 181, 0, 0, 0, __PYX_ERR(0, 181, __pyx_L1_error)); - /* "hunter/_event.pyx":183 + /* "hunter/_event.pyx":182 * * cdef inline function_getter(self): * if self._function is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._function = self.arg.__name__ - */ - __Pyx_TraceLine(183,0,__PYX_ERR(0, 183, __pyx_L1_error)) +*/ + __Pyx_TraceLine(182,5,0,__PYX_ERR(0, 182, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_function == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":184 + /* "hunter/_event.pyx":183 * cdef inline function_getter(self): * if self._function is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._function = self.arg.__name__ * else: - */ - __Pyx_TraceLine(184,0,__PYX_ERR(0, 184, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 184, __pyx_L1_error) +*/ + __Pyx_TraceLine(183,8,0,__PYX_ERR(0, 183, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 183, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":185 + /* "hunter/_event.pyx":184 * if self._function is UNSET: * if self.builtin: * self._function = self.arg.__name__ # <<<<<<<<<<<<<< * else: * self._function = self.code_getter().co_name - */ - __Pyx_TraceLine(185,0,__PYX_ERR(0, 185, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_n_s_name_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 185, __pyx_L1_error) +*/ + __Pyx_TraceLine(184,13,0,__PYX_ERR(0, 184, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_name_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_function); @@ -6389,26 +6516,26 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj __pyx_v_self->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":184 + /* "hunter/_event.pyx":183 * cdef inline function_getter(self): * if self._function is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._function = self.arg.__name__ * else: - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":187 + /* "hunter/_event.pyx":186 * self._function = self.arg.__name__ * else: * self._function = self.code_getter().co_name # <<<<<<<<<<<<<< * return self._function * - */ - __Pyx_TraceLine(187,0,__PYX_ERR(0, 187, __pyx_L1_error)) +*/ + __Pyx_TraceLine(186,19,0,__PYX_ERR(0, 186, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 187, __pyx_L1_error) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = ((PyCodeObject *)__pyx_t_2)->co_name; __Pyx_INCREF(__pyx_t_3); @@ -6421,56 +6548,63 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj } __pyx_L4:; - /* "hunter/_event.pyx":183 + /* "hunter/_event.pyx":182 * * cdef inline function_getter(self): * if self._function is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._function = self.arg.__name__ - */ +*/ } - /* "hunter/_event.pyx":188 + /* "hunter/_event.pyx":187 * else: * self._function = self.code_getter().co_name * return self._function # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(188,0,__PYX_ERR(0, 188, __pyx_L1_error)) +*/ + __Pyx_TraceLine(187,20,0,__PYX_ERR(0, 187, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_function); __pyx_r = __pyx_v_self->_function; + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 187, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":182 + /* "hunter/_event.pyx":181 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< * if self._function is UNSET: * if self.builtin: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 181, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.function_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":190 +/* "hunter/_event.pyx":189 * return self._function * * @property # <<<<<<<<<<<<<< * def function(self): * return self.function_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8function_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6489,57 +6623,65 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_8function_1__get__(PyObject *__ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 190, 0, __PYX_ERR(0, 190, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 189, 0, 0, 0, __PYX_ERR(0, 189, __pyx_L1_error)); - /* "hunter/_event.pyx":192 + /* "hunter/_event.pyx":191 * @property * def function(self): * return self.function_getter() # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(192,0,__PYX_ERR(0, 192, __pyx_L1_error)) +*/ + __Pyx_TraceLine(191,1,0,__PYX_ERR(0, 191, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 191, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":190 + /* "hunter/_event.pyx":189 * return self._function * * @property # <<<<<<<<<<<<<< * def function(self): * return self.function_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 189, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.function.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":194 +/* "hunter/_event.pyx":193 * return self.function_getter() * * @property # <<<<<<<<<<<<<< * def function_object(self): * cdef CodeType code - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_15function_object_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6563,194 +6705,183 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc PyObject *__pyx_v_first_arg = NULL; PyObject *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_5; int __pyx_t_6; PyObject *__pyx_t_7 = NULL; - Py_ssize_t __pyx_t_8; + PyObject *__pyx_t_8 = NULL; Py_ssize_t __pyx_t_9; - int __pyx_t_10; + Py_ssize_t __pyx_t_10; + int __pyx_t_11; + int __pyx_t_12; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 194, 0, __PYX_ERR(0, 194, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 193, 0, 0, 0, __PYX_ERR(0, 193, __pyx_L1_error)); - /* "hunter/_event.pyx":197 + /* "hunter/_event.pyx":196 * def function_object(self): * cdef CodeType code * if self.builtin: # <<<<<<<<<<<<<< * return self.builtin * elif self._function_object is UNSET: - */ - __Pyx_TraceLine(197,0,__PYX_ERR(0, 197, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 197, __pyx_L1_error) +*/ + __Pyx_TraceLine(196,3,0,__PYX_ERR(0, 196, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 196, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":198 + /* "hunter/_event.pyx":197 * cdef CodeType code * if self.builtin: * return self.builtin # <<<<<<<<<<<<<< * elif self._function_object is UNSET: * code = self.code_getter() - */ - __Pyx_TraceLine(198,0,__PYX_ERR(0, 198, __pyx_L1_error)) +*/ + __Pyx_TraceLine(197,4,0,__PYX_ERR(0, 197, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; + __Pyx_TraceReturnValue(__pyx_r, 4, 0, __PYX_ERR(0, 197, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":197 + /* "hunter/_event.pyx":196 * def function_object(self): * cdef CodeType code * if self.builtin: # <<<<<<<<<<<<<< * return self.builtin * elif self._function_object is UNSET: - */ +*/ } - /* "hunter/_event.pyx":199 + /* "hunter/_event.pyx":198 * if self.builtin: * return self.builtin * elif self._function_object is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * if code.co_name is None: - */ - __Pyx_TraceLine(199,0,__PYX_ERR(0, 199, __pyx_L1_error)) +*/ + __Pyx_TraceLine(198,10,0,__PYX_ERR(0, 198, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_function_object == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":200 + /* "hunter/_event.pyx":199 * return self.builtin * elif self._function_object is UNSET: * code = self.code_getter() # <<<<<<<<<<<<<< * if code.co_name is None: * return None - */ - __Pyx_TraceLine(200,0,__PYX_ERR(0, 200, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 200, __pyx_L1_error) +*/ + __Pyx_TraceLine(199,14,0,__PYX_ERR(0, 199, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 199, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_code = ((PyCodeObject *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":201 + /* "hunter/_event.pyx":200 * elif self._function_object is UNSET: * code = self.code_getter() * if code.co_name is None: # <<<<<<<<<<<<<< * return None * # First, try to find the function in globals - */ - __Pyx_TraceLine(201,0,__PYX_ERR(0, 201, __pyx_L1_error)) +*/ + __Pyx_TraceLine(200,19,0,__PYX_ERR(0, 200, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_code->co_name == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":202 + /* "hunter/_event.pyx":201 * code = self.code_getter() * if code.co_name is None: * return None # <<<<<<<<<<<<<< * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) - */ - __Pyx_TraceLine(202,0,__PYX_ERR(0, 202, __pyx_L1_error)) +*/ + __Pyx_TraceLine(201,20,0,__PYX_ERR(0, 201, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; - /* "hunter/_event.pyx":201 + /* "hunter/_event.pyx":200 * elif self._function_object is UNSET: * code = self.code_getter() * if code.co_name is None: # <<<<<<<<<<<<<< * return None * # First, try to find the function in globals - */ +*/ } - /* "hunter/_event.pyx":204 + /* "hunter/_event.pyx":203 * return None * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) # <<<<<<<<<<<<<< * func = if_same_code(candidate, code) * # If that failed, as will be the case with class and instance methods, try - */ - __Pyx_TraceLine(204,0,__PYX_ERR(0, 204, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 204, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 204, __pyx_L1_error) +*/ + __Pyx_TraceLine(203,24,0,__PYX_ERR(0, 203, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = NULL; + __pyx_t_3 = __pyx_t_4; + __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } - } - #endif { PyObject *__pyx_callargs[3] = {__pyx_t_3, __pyx_v_code->co_name, Py_None}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 204, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } __pyx_v_candidate = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":205 + /* "hunter/_event.pyx":204 * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) * func = if_same_code(candidate, code) # <<<<<<<<<<<<<< * # If that failed, as will be the case with class and instance methods, try * # to look up the function from the first argument. In the case of class/instance - */ - __Pyx_TraceLine(205,0,__PYX_ERR(0, 205, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_if_same_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 205, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = NULL; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(204,32,0,__PYX_ERR(0, 204, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 204, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_3))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_3, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_3, __pyx_v_candidate, ((PyObject *)__pyx_v_code)}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 205, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_v_candidate, ((PyObject *)__pyx_v_code)}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 204, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } __pyx_v_func = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":210 + /* "hunter/_event.pyx":209 * # methods, this should be the class (or an instance of the class) on which our * # method is defined. * if func is None and code.co_argcount >= 1: # <<<<<<<<<<<<<< * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) - */ - __Pyx_TraceLine(210,0,__PYX_ERR(0, 210, __pyx_L1_error)) +*/ + __Pyx_TraceLine(209,38,0,__PYX_ERR(0, 209, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_func == Py_None); if (__pyx_t_6) { } else { @@ -6762,286 +6893,271 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_L6_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":211 + /* "hunter/_event.pyx":210 * # method is defined. * if func is None and code.co_argcount >= 1: * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) # <<<<<<<<<<<<<< * func = get_func_in_mro(first_arg, code) * # If we still can't find the function, as will be the case with static methods, - */ - __Pyx_TraceLine(211,0,__PYX_ERR(0, 211, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 211, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyCode_GetVarnames(__pyx_v_code); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 211, __pyx_L1_error) +*/ + __Pyx_TraceLine(210,46,0,__PYX_ERR(0, 210, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 211, __pyx_L1_error) + __pyx_t_3 = __pyx_t_4; + __Pyx_INCREF(__pyx_t_3); + __pyx_t_7 = PyCode_GetVarnames(__pyx_v_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = NULL; + __pyx_t_8 = __Pyx_GetItemInt(__pyx_t_7, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 210, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_7}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_8}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v_first_arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":212 + /* "hunter/_event.pyx":211 * if func is None and code.co_argcount >= 1: * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) # <<<<<<<<<<<<<< * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. - */ - __Pyx_TraceLine(212,0,__PYX_ERR(0, 212, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 212, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = NULL; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(211,56,0,__PYX_ERR(0, 211, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 211, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_8))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_8); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_8); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_8, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_7, __pyx_v_first_arg, ((PyObject *)__pyx_v_code)}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 212, __pyx_L1_error) + PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_v_first_arg, ((PyObject *)__pyx_v_code)}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":210 + /* "hunter/_event.pyx":209 * # methods, this should be the class (or an instance of the class) on which our * # method is defined. * if func is None and code.co_argcount >= 1: # <<<<<<<<<<<<<< * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) - */ +*/ } - /* "hunter/_event.pyx":215 + /* "hunter/_event.pyx":214 * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. * if func is None: # <<<<<<<<<<<<<< * for v in self.globals.values(): * if not isinstance(v, type): - */ - __Pyx_TraceLine(215,0,__PYX_ERR(0, 215, __pyx_L1_error)) +*/ + __Pyx_TraceLine(214,62,0,__PYX_ERR(0, 214, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_func == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":216 + /* "hunter/_event.pyx":215 * # try looking at classes in global scope. * if func is None: * for v in self.globals.values(): # <<<<<<<<<<<<<< * if not isinstance(v, type): * continue - */ - __Pyx_TraceLine(216,0,__PYX_ERR(0, 216, __pyx_L1_error)) - __pyx_t_8 = 0; - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 216, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (unlikely(__pyx_t_3 == Py_None)) { +*/ + __Pyx_TraceLine(215,63,0,__PYX_ERR(0, 215, __pyx_L1_error)) + __pyx_t_9 = 0; + __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 215, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + if (unlikely(__pyx_t_8 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "values"); - __PYX_ERR(0, 216, __pyx_L1_error) + __PYX_ERR(0, 215, __pyx_L1_error) } - __pyx_t_7 = __Pyx_dict_iterator(__pyx_t_3, 0, __pyx_n_s_values, (&__pyx_t_9), (&__pyx_t_5)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 216, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_4 = __Pyx_dict_iterator(__pyx_t_8, 0, __pyx_mstate_global->__pyx_n_u_values, (&__pyx_t_10), (&__pyx_t_11)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 215, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_2); - __pyx_t_2 = __pyx_t_7; - __pyx_t_7 = 0; + __pyx_t_2 = __pyx_t_4; + __pyx_t_4 = 0; while (1) { - __pyx_t_10 = __Pyx_dict_iter_next(__pyx_t_2, __pyx_t_9, &__pyx_t_8, NULL, &__pyx_t_7, NULL, __pyx_t_5); - if (unlikely(__pyx_t_10 == 0)) break; - if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(0, 216, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_7); - __pyx_t_7 = 0; + __pyx_t_12 = __Pyx_dict_iter_next(__pyx_t_2, __pyx_t_10, &__pyx_t_9, NULL, &__pyx_t_4, NULL, __pyx_t_11); + if (unlikely(__pyx_t_12 == 0)) break; + if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(0, 215, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_4); + __pyx_t_4 = 0; - /* "hunter/_event.pyx":217 + /* "hunter/_event.pyx":216 * if func is None: * for v in self.globals.values(): * if not isinstance(v, type): # <<<<<<<<<<<<<< * continue * func = get_func_in_mro(v, code) - */ - __Pyx_TraceLine(217,0,__PYX_ERR(0, 217, __pyx_L1_error)) +*/ + __Pyx_TraceLine(216,74,0,__PYX_ERR(0, 216, __pyx_L1_error)) __pyx_t_1 = PyType_Check(__pyx_v_v); __pyx_t_6 = (!__pyx_t_1); if (__pyx_t_6) { - /* "hunter/_event.pyx":218 + /* "hunter/_event.pyx":217 * for v in self.globals.values(): * if not isinstance(v, type): * continue # <<<<<<<<<<<<<< * func = get_func_in_mro(v, code) * if func is not None: - */ - __Pyx_TraceLine(218,0,__PYX_ERR(0, 218, __pyx_L1_error)) +*/ + __Pyx_TraceLine(217,75,0,__PYX_ERR(0, 217, __pyx_L1_error)) goto __pyx_L9_continue; - /* "hunter/_event.pyx":217 + /* "hunter/_event.pyx":216 * if func is None: * for v in self.globals.values(): * if not isinstance(v, type): # <<<<<<<<<<<<<< * continue * func = get_func_in_mro(v, code) - */ +*/ } - /* "hunter/_event.pyx":219 + /* "hunter/_event.pyx":218 * if not isinstance(v, type): * continue * func = get_func_in_mro(v, code) # <<<<<<<<<<<<<< * if func is not None: * break - */ - __Pyx_TraceLine(219,0,__PYX_ERR(0, 219, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 219, __pyx_L1_error) +*/ + __Pyx_TraceLine(218,78,0,__PYX_ERR(0, 218, __pyx_L1_error)) + __pyx_t_8 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_10 = 0; + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_10 = 1; - } + __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3); + assert(__pyx_t_8); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3); + __Pyx_INCREF(__pyx_t_8); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_3, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_v_v, ((PyObject *)__pyx_v_code)}; - __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_10, 2+__pyx_t_10); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 219, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); + PyObject *__pyx_callargs[3] = {__pyx_t_8, __pyx_v_v, ((PyObject *)__pyx_v_code)}; + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 218, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); } - __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_7); - __pyx_t_7 = 0; + __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_4); + __pyx_t_4 = 0; - /* "hunter/_event.pyx":220 + /* "hunter/_event.pyx":219 * continue * func = get_func_in_mro(v, code) * if func is not None: # <<<<<<<<<<<<<< * break * self._function_object = func - */ - __Pyx_TraceLine(220,0,__PYX_ERR(0, 220, __pyx_L1_error)) +*/ + __Pyx_TraceLine(219,84,0,__PYX_ERR(0, 219, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_func != Py_None); if (__pyx_t_6) { - /* "hunter/_event.pyx":221 + /* "hunter/_event.pyx":220 * func = get_func_in_mro(v, code) * if func is not None: * break # <<<<<<<<<<<<<< * self._function_object = func * return self._function_object - */ - __Pyx_TraceLine(221,0,__PYX_ERR(0, 221, __pyx_L1_error)) +*/ + __Pyx_TraceLine(220,85,0,__PYX_ERR(0, 220, __pyx_L1_error)) goto __pyx_L10_break; - /* "hunter/_event.pyx":220 + /* "hunter/_event.pyx":219 * continue * func = get_func_in_mro(v, code) * if func is not None: # <<<<<<<<<<<<<< * break * self._function_object = func - */ +*/ } __pyx_L9_continue:; } __pyx_L10_break:; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":215 + /* "hunter/_event.pyx":214 * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. * if func is None: # <<<<<<<<<<<<<< * for v in self.globals.values(): * if not isinstance(v, type): - */ +*/ } - /* "hunter/_event.pyx":222 + /* "hunter/_event.pyx":221 * if func is not None: * break * self._function_object = func # <<<<<<<<<<<<<< * return self._function_object * - */ - __Pyx_TraceLine(222,0,__PYX_ERR(0, 222, __pyx_L1_error)) +*/ + __Pyx_TraceLine(221,86,0,__PYX_ERR(0, 221, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_func); __Pyx_GIVEREF(__pyx_v_func); __Pyx_GOTREF(__pyx_v_self->_function_object); __Pyx_DECREF(__pyx_v_self->_function_object); __pyx_v_self->_function_object = __pyx_v_func; - /* "hunter/_event.pyx":199 + /* "hunter/_event.pyx":198 * if self.builtin: * return self.builtin * elif self._function_object is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * if code.co_name is None: - */ +*/ } - /* "hunter/_event.pyx":223 + /* "hunter/_event.pyx":222 * break * self._function_object = func * return self._function_object # <<<<<<<<<<<<<< * * cdef inline module_getter(self): - */ - __Pyx_TraceLine(223,0,__PYX_ERR(0, 223, __pyx_L1_error)) +*/ + __Pyx_TraceLine(222,89,0,__PYX_ERR(0, 222, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_function_object); __pyx_r = __pyx_v_self->_function_object; + __Pyx_TraceReturnValue(__pyx_r, 89, 0, __PYX_ERR(0, 222, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":194 + /* "hunter/_event.pyx":193 * return self.function_getter() * * @property # <<<<<<<<<<<<<< * def function_object(self): * cdef CodeType code - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -7049,6 +7165,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 193, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.function_object.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; @@ -7058,23 +7181,23 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_XDECREF(__pyx_v_first_arg); __Pyx_XDECREF(__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":225 +/* "hunter/_event.pyx":224 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< * if self._module is UNSET: * if self.builtin: - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_v_module = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -7082,69 +7205,70 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("module_getter", 1); - __Pyx_TraceCall("module_getter", __pyx_f[0], 225, 0, __PYX_ERR(0, 225, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])) + __Pyx_RefNannySetupContext("module_getter", 0); + __Pyx_TraceStartFunc("module_getter", __pyx_f[0], 224, 0, 0, 0, __PYX_ERR(0, 224, __pyx_L1_error)); - /* "hunter/_event.pyx":226 + /* "hunter/_event.pyx":225 * * cdef inline module_getter(self): * if self._module is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * module = self.arg.__module__ - */ - __Pyx_TraceLine(226,0,__PYX_ERR(0, 226, __pyx_L1_error)) +*/ + __Pyx_TraceLine(225,5,0,__PYX_ERR(0, 225, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_module == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":227 + /* "hunter/_event.pyx":226 * cdef inline module_getter(self): * if self._module is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * module = self.arg.__module__ * else: - */ - __Pyx_TraceLine(227,0,__PYX_ERR(0, 227, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 227, __pyx_L1_error) +*/ + __Pyx_TraceLine(226,8,0,__PYX_ERR(0, 226, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 226, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":228 + /* "hunter/_event.pyx":227 * if self._module is UNSET: * if self.builtin: * module = self.arg.__module__ # <<<<<<<<<<<<<< * else: * module = self.globals.get('__name__', '') - */ - __Pyx_TraceLine(228,0,__PYX_ERR(0, 228, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_n_s_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 228, __pyx_L1_error) +*/ + __Pyx_TraceLine(227,12,0,__PYX_ERR(0, 227, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_module_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":227 + /* "hunter/_event.pyx":226 * cdef inline module_getter(self): * if self._module is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * module = self.arg.__module__ * else: - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":230 + /* "hunter/_event.pyx":229 * module = self.arg.__module__ * else: * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< * if module is None: * module = '?' - */ - __Pyx_TraceLine(230,0,__PYX_ERR(0, 230, __pyx_L1_error)) +*/ + __Pyx_TraceLine(229,17,0,__PYX_ERR(0, 229, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 230, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_v_module = __pyx_t_2; @@ -7152,102 +7276,109 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":231 + /* "hunter/_event.pyx":230 * else: * module = self.globals.get('__name__', '') * if module is None: # <<<<<<<<<<<<<< * module = '?' * self._module = module - */ - __Pyx_TraceLine(231,0,__PYX_ERR(0, 231, __pyx_L1_error)) +*/ + __Pyx_TraceLine(230,23,0,__PYX_ERR(0, 230, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_module == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":232 + /* "hunter/_event.pyx":231 * module = self.globals.get('__name__', '') * if module is None: * module = '?' # <<<<<<<<<<<<<< * self._module = module * return self._module - */ - __Pyx_TraceLine(232,0,__PYX_ERR(0, 232, __pyx_L1_error)) - __Pyx_INCREF(__pyx_kp_s__9); - __Pyx_DECREF_SET(__pyx_v_module, __pyx_kp_s__9); +*/ + __Pyx_TraceLine(231,25,0,__PYX_ERR(0, 231, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__4); + __Pyx_DECREF_SET(__pyx_v_module, __pyx_mstate_global->__pyx_kp_u__4); - /* "hunter/_event.pyx":231 + /* "hunter/_event.pyx":230 * else: * module = self.globals.get('__name__', '') * if module is None: # <<<<<<<<<<<<<< * module = '?' * self._module = module - */ +*/ } - /* "hunter/_event.pyx":233 + /* "hunter/_event.pyx":232 * if module is None: * module = '?' * self._module = module # <<<<<<<<<<<<<< * return self._module * - */ - __Pyx_TraceLine(233,0,__PYX_ERR(0, 233, __pyx_L1_error)) +*/ + __Pyx_TraceLine(232,26,0,__PYX_ERR(0, 232, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_module); __Pyx_GIVEREF(__pyx_v_module); __Pyx_GOTREF(__pyx_v_self->_module); __Pyx_DECREF(__pyx_v_self->_module); __pyx_v_self->_module = __pyx_v_module; - /* "hunter/_event.pyx":226 + /* "hunter/_event.pyx":225 * * cdef inline module_getter(self): * if self._module is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * module = self.arg.__module__ - */ +*/ } - /* "hunter/_event.pyx":234 + /* "hunter/_event.pyx":233 * module = '?' * self._module = module * return self._module # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(234,0,__PYX_ERR(0, 234, __pyx_L1_error)) +*/ + __Pyx_TraceLine(233,29,0,__PYX_ERR(0, 233, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_module); __pyx_r = __pyx_v_self->_module; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(0, 233, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":225 + /* "hunter/_event.pyx":224 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< * if self._module is UNSET: * if self.builtin: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 224, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.module_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_module); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":236 +/* "hunter/_event.pyx":235 * return self._module * * @property # <<<<<<<<<<<<<< * def module(self): * return self.module_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6module_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -7266,57 +7397,65 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_6module_1__get__(PyObject *__py static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 236, 0, __PYX_ERR(0, 236, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 235, 0, 0, 0, __PYX_ERR(0, 235, __pyx_L1_error)); - /* "hunter/_event.pyx":238 + /* "hunter/_event.pyx":237 * @property * def module(self): * return self.module_getter() # <<<<<<<<<<<<<< * * cdef inline filename_getter(self): - */ - __Pyx_TraceLine(238,0,__PYX_ERR(0, 238, __pyx_L1_error)) +*/ + __Pyx_TraceLine(237,1,0,__PYX_ERR(0, 237, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 238, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 237, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 237, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":236 + /* "hunter/_event.pyx":235 * return self._module * * @property # <<<<<<<<<<<<<< * def module(self): * return self.module_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 235, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.module.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":240 +/* "hunter/_event.pyx":239 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< * cdef CodeType code * if self._filename is UNSET: - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyCodeObject *__pyx_v_code = 0; @@ -7325,392 +7464,352 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj PyObject *__pyx_v_ext = NULL; PyObject *__pyx_v_cyfilename = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; int __pyx_t_3; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - Py_ssize_t __pyx_t_7; - PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_6; + PyObject *__pyx_t_7 = NULL; + Py_ssize_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("filename_getter", 1); - __Pyx_TraceCall("filename_getter", __pyx_f[0], 240, 0, __PYX_ERR(0, 240, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])) + __Pyx_RefNannySetupContext("filename_getter", 0); + __Pyx_TraceStartFunc("filename_getter", __pyx_f[0], 239, 0, 0, 0, __PYX_ERR(0, 239, __pyx_L1_error)); - /* "hunter/_event.pyx":242 + /* "hunter/_event.pyx":241 * cdef inline filename_getter(self): * cdef CodeType code * if self._filename is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * filename = code.co_filename - */ - __Pyx_TraceLine(242,0,__PYX_ERR(0, 242, __pyx_L1_error)) +*/ + __Pyx_TraceLine(241,5,0,__PYX_ERR(0, 241, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_filename == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":243 + /* "hunter/_event.pyx":242 * cdef CodeType code * if self._filename is UNSET: * code = self.code_getter() # <<<<<<<<<<<<<< * filename = code.co_filename * if not filename: - */ - __Pyx_TraceLine(243,0,__PYX_ERR(0, 243, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 243, __pyx_L1_error) +*/ + __Pyx_TraceLine(242,9,0,__PYX_ERR(0, 242, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 242, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_code = ((PyCodeObject *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":244 + /* "hunter/_event.pyx":243 * if self._filename is UNSET: * code = self.code_getter() * filename = code.co_filename # <<<<<<<<<<<<<< * if not filename: * filename = self.globals.get('__file__') - */ - __Pyx_TraceLine(244,0,__PYX_ERR(0, 244, __pyx_L1_error)) +*/ + __Pyx_TraceLine(243,12,0,__PYX_ERR(0, 243, __pyx_L1_error)) __pyx_t_2 = __pyx_v_code->co_filename; __Pyx_INCREF(__pyx_t_2); __pyx_v_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":245 + /* "hunter/_event.pyx":244 * code = self.code_getter() * filename = code.co_filename * if not filename: # <<<<<<<<<<<<<< * filename = self.globals.get('__file__') * if not filename: - */ - __Pyx_TraceLine(245,0,__PYX_ERR(0, 245, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 245, __pyx_L1_error) +*/ + __Pyx_TraceLine(244,15,0,__PYX_ERR(0, 244, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 244, __pyx_L1_error) __pyx_t_3 = (!__pyx_t_1); if (__pyx_t_3) { - /* "hunter/_event.pyx":246 + /* "hunter/_event.pyx":245 * filename = code.co_filename * if not filename: * filename = self.globals.get('__file__') # <<<<<<<<<<<<<< * if not filename: * filename = '?' - */ - __Pyx_TraceLine(246,0,__PYX_ERR(0, 246, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 246, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 246, __pyx_L1_error) +*/ + __Pyx_TraceLine(245,18,0,__PYX_ERR(0, 245, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = NULL; + __pyx_t_4 = __pyx_t_5; + __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_n_s_file}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_n_u_file}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 246, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 245, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":245 + /* "hunter/_event.pyx":244 * code = self.code_getter() * filename = code.co_filename * if not filename: # <<<<<<<<<<<<<< * filename = self.globals.get('__file__') * if not filename: - */ +*/ } - /* "hunter/_event.pyx":247 + /* "hunter/_event.pyx":246 * if not filename: * filename = self.globals.get('__file__') * if not filename: # <<<<<<<<<<<<<< * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): - */ - __Pyx_TraceLine(247,0,__PYX_ERR(0, 247, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 247, __pyx_L1_error) +*/ + __Pyx_TraceLine(246,24,0,__PYX_ERR(0, 246, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 246, __pyx_L1_error) __pyx_t_1 = (!__pyx_t_3); if (__pyx_t_1) { - /* "hunter/_event.pyx":248 + /* "hunter/_event.pyx":247 * filename = self.globals.get('__file__') * if not filename: * filename = '?' # <<<<<<<<<<<<<< * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] - */ - __Pyx_TraceLine(248,0,__PYX_ERR(0, 248, __pyx_L1_error)) - __Pyx_INCREF(__pyx_kp_s__9); - __Pyx_DECREF_SET(__pyx_v_filename, __pyx_kp_s__9); +*/ + __Pyx_TraceLine(247,26,0,__PYX_ERR(0, 247, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__4); + __Pyx_DECREF_SET(__pyx_v_filename, __pyx_mstate_global->__pyx_kp_u__4); - /* "hunter/_event.pyx":247 + /* "hunter/_event.pyx":246 * if not filename: * filename = self.globals.get('__file__') * if not filename: # <<<<<<<<<<<<<< * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): - */ +*/ goto __pyx_L5; } - /* "hunter/_event.pyx":249 + /* "hunter/_event.pyx":248 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): - */ - __Pyx_TraceLine(249,0,__PYX_ERR(0, 249, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_filename, __pyx_n_s_endswith); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = NULL; +*/ + __Pyx_TraceLine(248,27,0,__PYX_ERR(0, 248, __pyx_L1_error)) + __pyx_t_5 = __pyx_v_filename; + __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_tuple__10}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_tuple[1]}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 248, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 249, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 248, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":250 + /* "hunter/_event.pyx":249 * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) - */ - __Pyx_TraceLine(250,0,__PYX_ERR(0, 250, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_slice__11, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error) +*/ + __Pyx_TraceLine(249,34,0,__PYX_ERR(0, 249, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_mstate_global->__pyx_slice[0], 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":249 + /* "hunter/_event.pyx":248 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): - */ +*/ goto __pyx_L5; } - /* "hunter/_event.pyx":251 + /* "hunter/_event.pyx":250 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): - */ - __Pyx_TraceLine(251,0,__PYX_ERR(0, 251, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_filename, __pyx_n_s_endswith); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = NULL; +*/ + __Pyx_TraceLine(250,36,0,__PYX_ERR(0, 250, __pyx_L1_error)) + __pyx_t_5 = __pyx_v_filename; + __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_tuple__12}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_tuple[2]}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 251, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 250, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":252 + /* "hunter/_event.pyx":251 * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) # <<<<<<<<<<<<<< * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext - */ - __Pyx_TraceLine(252,0,__PYX_ERR(0, 252, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 252, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sub); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 252, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(251,44,0,__PYX_ERR(0, 251, __pyx_L1_error)) __pyx_t_5 = NULL; - __pyx_t_6 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 251, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_sub); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 251, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_7))) { + __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); + assert(__pyx_t_5); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_7); + __Pyx_INCREF(__pyx_t_5); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_7, __pyx__function); + __pyx_t_6 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_kp_s__7, __pyx_v_filename}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 2+__pyx_t_6); + PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_mstate_global->__pyx_kp_u__3, __pyx_v_filename}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_7, __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; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __pyx_v_cybasename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":253 + /* "hunter/_event.pyx":252 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): - */ - __Pyx_TraceLine(253,0,__PYX_ERR(0, 253, __pyx_L1_error)) - __pyx_t_2 = __pyx_tuple__13; __Pyx_INCREF(__pyx_t_2); - __pyx_t_7 = 0; +*/ + __Pyx_TraceLine(252,49,0,__PYX_ERR(0, 252, __pyx_L1_error)) + __pyx_t_2 = __pyx_mstate_global->__pyx_tuple[3]; __Pyx_INCREF(__pyx_t_2); + __pyx_t_8 = 0; for (;;) { - if (__pyx_t_7 >= 2) break; + if (__pyx_t_8 >= 2) break; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; if (unlikely((0 < 0))) __PYX_ERR(0, 253, __pyx_L1_error) + __pyx_t_7 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_8)); #else - __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 253, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); + __pyx_t_7 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_8); #endif - __Pyx_XDECREF_SET(__pyx_v_ext, __pyx_t_4); - __pyx_t_4 = 0; + ++__pyx_t_8; + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 252, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_XDECREF_SET(__pyx_v_ext, ((PyObject*)__pyx_t_7)); + __pyx_t_7 = 0; + __Pyx_TraceLine(252,47,0,__PYX_ERR(0, 252, __pyx_L1_error)) - /* "hunter/_event.pyx":254 + /* "hunter/_event.pyx":253 * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext # <<<<<<<<<<<<<< * if exists(cyfilename): * filename = cyfilename - */ - __Pyx_TraceLine(254,0,__PYX_ERR(0, 254, __pyx_L1_error)) - __pyx_t_4 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 254, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_XDECREF_SET(__pyx_v_cyfilename, __pyx_t_4); - __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(253,54,0,__PYX_ERR(0, 253, __pyx_L1_error)) + __pyx_t_7 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 253, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_XDECREF_SET(__pyx_v_cyfilename, __pyx_t_7); + __pyx_t_7 = 0; - /* "hunter/_event.pyx":255 + /* "hunter/_event.pyx":254 * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< * filename = cyfilename * break - */ - __Pyx_TraceLine(255,0,__PYX_ERR(0, 255, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_exists); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 255, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_8 = NULL; - __pyx_t_6 = 0; +*/ + __Pyx_TraceLine(254,58,0,__PYX_ERR(0, 254, __pyx_L1_error)) + __pyx_t_5 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 254, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_8)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); + assert(__pyx_t_5); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_5); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_4, __pyx__function); + __pyx_t_6 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_v_cyfilename}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 255, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_cyfilename}; + __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__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_7)) __PYX_ERR(0, 254, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 255, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 254, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":256 + /* "hunter/_event.pyx":255 * cyfilename = cybasename + ext * if exists(cyfilename): * filename = cyfilename # <<<<<<<<<<<<<< * break * - */ - __Pyx_TraceLine(256,0,__PYX_ERR(0, 256, __pyx_L1_error)) +*/ + __Pyx_TraceLine(255,61,0,__PYX_ERR(0, 255, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_cyfilename); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_v_cyfilename); - /* "hunter/_event.pyx":257 + /* "hunter/_event.pyx":256 * if exists(cyfilename): * filename = cyfilename * break # <<<<<<<<<<<<<< * * self._filename = filename - */ - __Pyx_TraceLine(257,0,__PYX_ERR(0, 257, __pyx_L1_error)) +*/ + __Pyx_TraceLine(256,62,0,__PYX_ERR(0, 256, __pyx_L1_error)) goto __pyx_L7_break; - /* "hunter/_event.pyx":255 + /* "hunter/_event.pyx":254 * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< * filename = cyfilename * break - */ +*/ } - /* "hunter/_event.pyx":253 + /* "hunter/_event.pyx":252 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): - */ - __Pyx_TraceLine(253,0,__PYX_ERR(0, 253, __pyx_L1_error)) +*/ + __Pyx_TraceLine(252,47,0,__PYX_ERR(0, 252, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L9_for_end; @@ -7719,66 +7818,73 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L9_for_end; __pyx_L9_for_end:; - /* "hunter/_event.pyx":251 + /* "hunter/_event.pyx":250 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): - */ +*/ } __pyx_L5:; - /* "hunter/_event.pyx":259 + /* "hunter/_event.pyx":258 * break * * self._filename = filename # <<<<<<<<<<<<<< * return self._filename * - */ - __Pyx_TraceLine(259,0,__PYX_ERR(0, 259, __pyx_L1_error)) +*/ + __Pyx_TraceLine(258,63,0,__PYX_ERR(0, 258, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_filename); __Pyx_GIVEREF(__pyx_v_filename); __Pyx_GOTREF(__pyx_v_self->_filename); __Pyx_DECREF(__pyx_v_self->_filename); __pyx_v_self->_filename = __pyx_v_filename; - /* "hunter/_event.pyx":242 + /* "hunter/_event.pyx":241 * cdef inline filename_getter(self): * cdef CodeType code * if self._filename is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * filename = code.co_filename - */ +*/ } - /* "hunter/_event.pyx":260 + /* "hunter/_event.pyx":259 * * self._filename = filename * return self._filename # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(260,0,__PYX_ERR(0, 260, __pyx_L1_error)) +*/ + __Pyx_TraceLine(259,66,0,__PYX_ERR(0, 259, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_filename); __pyx_r = __pyx_v_self->_filename; + __Pyx_TraceReturnValue(__pyx_r, 66, 0, __PYX_ERR(0, 259, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":240 + /* "hunter/_event.pyx":239 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< * cdef CodeType code * if self._filename is UNSET: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_8); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 239, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.filename_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; @@ -7788,18 +7894,18 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __Pyx_XDECREF(__pyx_v_ext); __Pyx_XDECREF(__pyx_v_cyfilename); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":262 +/* "hunter/_event.pyx":261 * return self._filename * * @property # <<<<<<<<<<<<<< * def filename(self): * return self.filename_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8filename_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -7818,151 +7924,162 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_8filename_1__get__(PyObject *__ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 262, 0, __PYX_ERR(0, 262, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 261, 0, 0, 0, __PYX_ERR(0, 261, __pyx_L1_error)); - /* "hunter/_event.pyx":264 + /* "hunter/_event.pyx":263 * @property * def filename(self): * return self.filename_getter() # <<<<<<<<<<<<<< * * cdef inline lineno_getter(self): - */ - __Pyx_TraceLine(264,0,__PYX_ERR(0, 264, __pyx_L1_error)) +*/ + __Pyx_TraceLine(263,1,0,__PYX_ERR(0, 263, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 264, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 263, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":262 + /* "hunter/_event.pyx":261 * return self._filename * * @property # <<<<<<<<<<<<<< * def filename(self): * return self.filename_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 261, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.filename.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":266 +/* "hunter/_event.pyx":265 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber(self.frame) - */ + * self._lineno = PyFrame_GetLineNumber( self.frame) +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lineno_getter", 1); - __Pyx_TraceCall("lineno_getter", __pyx_f[0], 266, 0, __PYX_ERR(0, 266, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])) + __Pyx_RefNannySetupContext("lineno_getter", 0); + __Pyx_TraceStartFunc("lineno_getter", __pyx_f[0], 265, 0, 0, 0, __PYX_ERR(0, 265, __pyx_L1_error)); - /* "hunter/_event.pyx":267 + /* "hunter/_event.pyx":266 * * cdef inline lineno_getter(self): * if self._lineno is UNSET: # <<<<<<<<<<<<<< - * self._lineno = PyFrame_GetLineNumber(self.frame) + * self._lineno = PyFrame_GetLineNumber( self.frame) * return self._lineno - */ - __Pyx_TraceLine(267,0,__PYX_ERR(0, 267, __pyx_L1_error)) +*/ + __Pyx_TraceLine(266,5,0,__PYX_ERR(0, 266, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_lineno == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":268 + /* "hunter/_event.pyx":267 * cdef inline lineno_getter(self): * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber(self.frame) # <<<<<<<<<<<<<< + * self._lineno = PyFrame_GetLineNumber( self.frame) # <<<<<<<<<<<<<< * return self._lineno * - */ - __Pyx_TraceLine(268,0,__PYX_ERR(0, 268, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyInt_From_int(PyFrame_GetLineNumber(((PyFrameObject *)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 268, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GIVEREF(__pyx_t_3); +*/ + __Pyx_TraceLine(267,9,0,__PYX_ERR(0, 267, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyLong_From_int(PyFrame_GetLineNumber(((PyFrameObject *)__pyx_v_self->frame))); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 267, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_lineno); __Pyx_DECREF(__pyx_v_self->_lineno); - __pyx_v_self->_lineno = __pyx_t_3; - __pyx_t_3 = 0; + __pyx_v_self->_lineno = __pyx_t_2; + __pyx_t_2 = 0; - /* "hunter/_event.pyx":267 + /* "hunter/_event.pyx":266 * * cdef inline lineno_getter(self): * if self._lineno is UNSET: # <<<<<<<<<<<<<< - * self._lineno = PyFrame_GetLineNumber(self.frame) + * self._lineno = PyFrame_GetLineNumber( self.frame) * return self._lineno - */ +*/ } - /* "hunter/_event.pyx":269 + /* "hunter/_event.pyx":268 * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber(self.frame) + * self._lineno = PyFrame_GetLineNumber( self.frame) * return self._lineno # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(269,0,__PYX_ERR(0, 269, __pyx_L1_error)) +*/ + __Pyx_TraceLine(268,13,0,__PYX_ERR(0, 268, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_lineno); __pyx_r = __pyx_v_self->_lineno; + __Pyx_TraceReturnValue(__pyx_r, 13, 0, __PYX_ERR(0, 268, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":266 + /* "hunter/_event.pyx":265 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber(self.frame) - */ + * self._lineno = PyFrame_GetLineNumber( self.frame) +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 265, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.lineno_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":271 +/* "hunter/_event.pyx":270 * return self._lineno * * @property # <<<<<<<<<<<<<< * def lineno(self): * return self.lineno_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6lineno_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -7981,153 +8098,165 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_6lineno_1__get__(PyObject *__py static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 271, 0, __PYX_ERR(0, 271, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 270, 0, 0, 0, __PYX_ERR(0, 270, __pyx_L1_error)); - /* "hunter/_event.pyx":273 + /* "hunter/_event.pyx":272 * @property * def lineno(self): * return self.lineno_getter() # <<<<<<<<<<<<<< * * cdef inline CodeType code_getter(self): - */ - __Pyx_TraceLine(273,0,__PYX_ERR(0, 273, __pyx_L1_error)) +*/ + __Pyx_TraceLine(272,1,0,__PYX_ERR(0, 272, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 273, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 272, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":271 + /* "hunter/_event.pyx":270 * return self._lineno * * @property # <<<<<<<<<<<<<< * def lineno(self): * return self.lineno_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 270, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.lineno.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":275 +/* "hunter/_event.pyx":274 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: - * return PyFrame_GetCode(self.frame) - */ + * return PyFrame_GetCode( self.frame) +*/ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyCodeObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("code_getter", 1); - __Pyx_TraceCall("code_getter", __pyx_f[0], 275, 0, __PYX_ERR(0, 275, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])) + __Pyx_RefNannySetupContext("code_getter", 0); + __Pyx_TraceStartFunc("code_getter", __pyx_f[0], 274, 0, 0, 0, __PYX_ERR(0, 274, __pyx_L1_error)); - /* "hunter/_event.pyx":276 + /* "hunter/_event.pyx":275 * * cdef inline CodeType code_getter(self): * if self._code is UNSET: # <<<<<<<<<<<<<< - * return PyFrame_GetCode(self.frame) + * return PyFrame_GetCode( self.frame) * else: - */ - __Pyx_TraceLine(276,0,__PYX_ERR(0, 276, __pyx_L1_error)) +*/ + __Pyx_TraceLine(275,5,0,__PYX_ERR(0, 275, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_code == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":277 + /* "hunter/_event.pyx":276 * cdef inline CodeType code_getter(self): * if self._code is UNSET: - * return PyFrame_GetCode(self.frame) # <<<<<<<<<<<<<< + * return PyFrame_GetCode( self.frame) # <<<<<<<<<<<<<< * else: * return self._code - */ - __Pyx_TraceLine(277,0,__PYX_ERR(0, 277, __pyx_L1_error)) +*/ + __Pyx_TraceLine(276,6,0,__PYX_ERR(0, 276, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); - __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = ((PyObject *)PyFrame_GetCode(((PyFrameObject *)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 277, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = ((PyCodeObject *)__pyx_t_3); - __pyx_t_3 = 0; + __pyx_t_2 = ((PyObject *)PyFrame_GetCode(((PyFrameObject *)__pyx_v_self->frame))); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 276, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_r = ((PyCodeObject *)__pyx_t_2); + __pyx_t_2 = 0; + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 6, 0, __PYX_ERR(0, 276, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":276 + /* "hunter/_event.pyx":275 * * cdef inline CodeType code_getter(self): * if self._code is UNSET: # <<<<<<<<<<<<<< - * return PyFrame_GetCode(self.frame) + * return PyFrame_GetCode( self.frame) * else: - */ +*/ } - /* "hunter/_event.pyx":279 - * return PyFrame_GetCode(self.frame) + /* "hunter/_event.pyx":278 + * return PyFrame_GetCode( self.frame) * else: * return self._code # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(279,0,__PYX_ERR(0, 279, __pyx_L1_error)) +*/ + __Pyx_TraceLine(278,12,0,__PYX_ERR(0, 278, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF((PyObject *)__pyx_r); - if (!(likely(((__pyx_v_self->_code) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self->_code, __pyx_ptype_6hunter_7_tracer_CodeType))))) __PYX_ERR(0, 279, __pyx_L1_error) + if (!(likely(((__pyx_v_self->_code) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self->_code, __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType))))) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_INCREF(__pyx_v_self->_code); __pyx_r = ((PyCodeObject *)__pyx_v_self->_code); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 12, 0, __PYX_ERR(0, 278, __pyx_L1_error)); goto __pyx_L0; } - /* "hunter/_event.pyx":275 + /* "hunter/_event.pyx":274 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: - * return PyFrame_GetCode(self.frame) - */ + * return PyFrame_GetCode( self.frame) +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 274, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.code_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":281 +/* "hunter/_event.pyx":280 * return self._code * * @property # <<<<<<<<<<<<<< * def code(self): * return self.code_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_4code_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -8146,383 +8275,336 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_4code_1__get__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 281, 0, __PYX_ERR(0, 281, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 280, 0, 0, 0, __PYX_ERR(0, 280, __pyx_L1_error)); - /* "hunter/_event.pyx":283 + /* "hunter/_event.pyx":282 * @property * def code(self): * return self.code_getter() # <<<<<<<<<<<<<< * * cdef inline stdlib_getter(self): - */ - __Pyx_TraceLine(283,0,__PYX_ERR(0, 283, __pyx_L1_error)) +*/ + __Pyx_TraceLine(282,1,0,__PYX_ERR(0, 282, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 283, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 282, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":281 + /* "hunter/_event.pyx":280 * return self._code * * @property # <<<<<<<<<<<<<< * def code(self): * return self.code_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 280, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.code.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":285 +/* "hunter/_event.pyx":284 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< * if self._stdlib is UNSET: * module_parts = self.module.split('.') - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_v_module_parts = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_5; int __pyx_t_6; PyObject *__pyx_t_7 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("stdlib_getter", 1); - __Pyx_TraceCall("stdlib_getter", __pyx_f[0], 285, 0, __PYX_ERR(0, 285, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])) + __Pyx_RefNannySetupContext("stdlib_getter", 0); + __Pyx_TraceStartFunc("stdlib_getter", __pyx_f[0], 284, 0, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); - /* "hunter/_event.pyx":286 + /* "hunter/_event.pyx":285 * * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: # <<<<<<<<<<<<<< * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: - */ - __Pyx_TraceLine(286,0,__PYX_ERR(0, 286, __pyx_L1_error)) +*/ + __Pyx_TraceLine(285,5,0,__PYX_ERR(0, 285, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_stdlib == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":287 + /* "hunter/_event.pyx":286 * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: * module_parts = self.module.split('.') # <<<<<<<<<<<<<< * if 'pkg_resources' in module_parts: * # skip this over-vendored module - */ - __Pyx_TraceLine(287,0,__PYX_ERR(0, 287, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_module); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 287, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_split); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 287, __pyx_L1_error) +*/ + __Pyx_TraceLine(286,8,0,__PYX_ERR(0, 286, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = NULL; + __pyx_t_3 = __pyx_t_4; + __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_kp_s__14}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u__5}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_split, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 287, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 286, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } __pyx_v_module_parts = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":288 + /* "hunter/_event.pyx":287 * if self._stdlib is UNSET: * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: # <<<<<<<<<<<<<< * # skip this over-vendored module * self._stdlib = True - */ - __Pyx_TraceLine(288,0,__PYX_ERR(0, 288, __pyx_L1_error)) - __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_n_s_pkg_resources, __pyx_v_module_parts, Py_EQ)); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 288, __pyx_L1_error) +*/ + __Pyx_TraceLine(287,15,0,__PYX_ERR(0, 287, __pyx_L1_error)) + __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_pkg_resources, __pyx_v_module_parts, Py_EQ)); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 287, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":290 + /* "hunter/_event.pyx":289 * if 'pkg_resources' in module_parts: * # skip this over-vendored module * self._stdlib = True # <<<<<<<<<<<<<< * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): * # skip namedtuple exec garbage - */ - __Pyx_TraceLine(290,0,__PYX_ERR(0, 290, __pyx_L1_error)) +*/ + __Pyx_TraceLine(289,16,0,__PYX_ERR(0, 289, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":288 + /* "hunter/_event.pyx":287 * if self._stdlib is UNSET: * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: # <<<<<<<<<<<<<< * # skip this over-vendored module * self._stdlib = True - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":291 + /* "hunter/_event.pyx":290 * # skip this over-vendored module * self._stdlib = True * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): # <<<<<<<<<<<<<< * # skip namedtuple exec garbage * self._stdlib = True - */ - __Pyx_TraceLine(291,0,__PYX_ERR(0, 291, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 291, __pyx_L1_error) +*/ + __Pyx_TraceLine(290,20,0,__PYX_ERR(0, 290, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_t_2, __pyx_kp_s_string, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_string, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_module); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 291, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_startswith); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = NULL; + __pyx_t_4 = __pyx_t_3; + __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_n_s_namedtuple}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_n_u_namedtuple}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 291, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_module); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_t_2, __pyx_n_s_site, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_site, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_1 = __pyx_t_6; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":293 + /* "hunter/_event.pyx":292 * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): * # skip namedtuple exec garbage * self._stdlib = True # <<<<<<<<<<<<<< * elif self.filename.startswith(SITE_PACKAGES_PATHS): * # if in site-packages then definitely not stdlib - */ - __Pyx_TraceLine(293,0,__PYX_ERR(0, 293, __pyx_L1_error)) +*/ + __Pyx_TraceLine(292,34,0,__PYX_ERR(0, 292, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":291 + /* "hunter/_event.pyx":290 * # skip this over-vendored module * self._stdlib = True * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): # <<<<<<<<<<<<<< * # skip namedtuple exec garbage * self._stdlib = True - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":294 + /* "hunter/_event.pyx":293 * # skip namedtuple exec garbage * self._stdlib = True * elif self.filename.startswith(SITE_PACKAGES_PATHS): # <<<<<<<<<<<<<< * # if in site-packages then definitely not stdlib * self._stdlib = False - */ - __Pyx_TraceLine(294,0,__PYX_ERR(0, 294, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 294, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_startswith); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 294, __pyx_L1_error) +*/ + __Pyx_TraceLine(293,38,0,__PYX_ERR(0, 293, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 294, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = NULL; + __pyx_t_3 = __pyx_t_4; + __Pyx_INCREF(__pyx_t_3); + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_3}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 294, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_7}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 294, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 293, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":296 + /* "hunter/_event.pyx":295 * elif self.filename.startswith(SITE_PACKAGES_PATHS): * # if in site-packages then definitely not stdlib * self._stdlib = False # <<<<<<<<<<<<<< * elif self.filename.startswith(SYS_PREFIX_PATHS): * self._stdlib = True - */ - __Pyx_TraceLine(296,0,__PYX_ERR(0, 296, __pyx_L1_error)) +*/ + __Pyx_TraceLine(295,42,0,__PYX_ERR(0, 295, __pyx_L1_error)) __Pyx_INCREF(Py_False); __Pyx_GIVEREF(Py_False); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_False; - /* "hunter/_event.pyx":294 + /* "hunter/_event.pyx":293 * # skip namedtuple exec garbage * self._stdlib = True * elif self.filename.startswith(SITE_PACKAGES_PATHS): # <<<<<<<<<<<<<< * # if in site-packages then definitely not stdlib * self._stdlib = False - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":297 + /* "hunter/_event.pyx":296 * # if in site-packages then definitely not stdlib * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): # <<<<<<<<<<<<<< * self._stdlib = True * else: - */ - __Pyx_TraceLine(297,0,__PYX_ERR(0, 297, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_startswith); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 297, __pyx_L1_error) +*/ + __Pyx_TraceLine(296,46,0,__PYX_ERR(0, 296, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 296, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_4 = __pyx_t_7; + __Pyx_INCREF(__pyx_t_4); + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 296, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = NULL; __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_4}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 297, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_3}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 296, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 297, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 296, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":298 + /* "hunter/_event.pyx":297 * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): * self._stdlib = True # <<<<<<<<<<<<<< * else: * self._stdlib = False - */ - __Pyx_TraceLine(298,0,__PYX_ERR(0, 298, __pyx_L1_error)) +*/ + __Pyx_TraceLine(297,50,0,__PYX_ERR(0, 297, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":297 + /* "hunter/_event.pyx":296 * # if in site-packages then definitely not stdlib * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): # <<<<<<<<<<<<<< * self._stdlib = True * else: - */ +*/ goto __pyx_L4; } - /* "hunter/_event.pyx":300 + /* "hunter/_event.pyx":299 * self._stdlib = True * else: * self._stdlib = False # <<<<<<<<<<<<<< * return self._stdlib * - */ - __Pyx_TraceLine(300,0,__PYX_ERR(0, 300, __pyx_L1_error)) +*/ + __Pyx_TraceLine(299,55,0,__PYX_ERR(0, 299, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_False); __Pyx_GIVEREF(Py_False); @@ -8532,35 +8614,36 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":286 + /* "hunter/_event.pyx":285 * * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: # <<<<<<<<<<<<<< * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: - */ +*/ } - /* "hunter/_event.pyx":301 + /* "hunter/_event.pyx":300 * else: * self._stdlib = False * return self._stdlib # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(301,0,__PYX_ERR(0, 301, __pyx_L1_error)) +*/ + __Pyx_TraceLine(300,56,0,__PYX_ERR(0, 300, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_stdlib); __pyx_r = __pyx_v_self->_stdlib; + __Pyx_TraceReturnValue(__pyx_r, 56, 0, __PYX_ERR(0, 300, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":285 + /* "hunter/_event.pyx":284 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< * if self._stdlib is UNSET: * module_parts = self.module.split('.') - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -8568,23 +8651,29 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.stdlib_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_module_parts); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":303 +/* "hunter/_event.pyx":302 * return self._stdlib * * @property # <<<<<<<<<<<<<< * def stdlib(self): * return self.stdlib_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6stdlib_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -8603,57 +8692,65 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_6stdlib_1__get__(PyObject *__py static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 303, 0, __PYX_ERR(0, 303, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 302, 0, 0, 0, __PYX_ERR(0, 302, __pyx_L1_error)); - /* "hunter/_event.pyx":305 + /* "hunter/_event.pyx":304 * @property * def stdlib(self): * return self.stdlib_getter() # <<<<<<<<<<<<<< * * cdef inline fullsource_getter(self): - */ - __Pyx_TraceLine(305,0,__PYX_ERR(0, 305, __pyx_L1_error)) +*/ + __Pyx_TraceLine(304,1,0,__PYX_ERR(0, 304, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 305, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 304, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 304, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":303 + /* "hunter/_event.pyx":302 * return self._stdlib * * @property # <<<<<<<<<<<<<< * def stdlib(self): * return self.stdlib_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 302, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.stdlib.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":307 +/* "hunter/_event.pyx":306 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< * cdef list lines * cdef CodeType code - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_v_lines = 0; @@ -8662,7 +8759,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o PyObject *__pyx_v_token = NULL; PyObject *__pyx_v_exc = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -8683,40 +8780,45 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o PyObject *__pyx_t_17 = NULL; PyObject *__pyx_t_18 = NULL; PyObject *__pyx_t_19 = NULL; - int __pyx_t_20; - Py_ssize_t __pyx_t_21; - PyObject *(*__pyx_t_22)(PyObject *); - PyObject *(*__pyx_t_23)(PyObject *); - int __pyx_t_24; - char const *__pyx_t_25; - PyObject *__pyx_t_26 = NULL; - PyObject *__pyx_t_27 = NULL; - PyObject *__pyx_t_28 = NULL; + PyObject *__pyx_t_20 = NULL; + PyObject *__pyx_t_21 = NULL; + PyObject *__pyx_t_22 = NULL; + size_t __pyx_t_23; + Py_ssize_t __pyx_t_24; + PyObject *(*__pyx_t_25)(PyObject *); + PyObject *(*__pyx_t_26)(PyObject *); + int __pyx_t_27; + int __pyx_t_28; + char const *__pyx_t_29; + PyObject *__pyx_t_30 = NULL; + PyObject *__pyx_t_31 = NULL; + PyObject *__pyx_t_32 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fullsource_getter", 1); - __Pyx_TraceCall("fullsource_getter", __pyx_f[0], 307, 0, __PYX_ERR(0, 307, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])) + __Pyx_RefNannySetupContext("fullsource_getter", 0); + __Pyx_TraceStartFunc("fullsource_getter", __pyx_f[0], 306, 0, 0, 0, __PYX_ERR(0, 306, __pyx_L1_error)); - /* "hunter/_event.pyx":311 + /* "hunter/_event.pyx":310 * cdef CodeType code * * if self._fullsource is UNSET: # <<<<<<<<<<<<<< * try: * self._fullsource = None - */ - __Pyx_TraceLine(311,0,__PYX_ERR(0, 311, __pyx_L1_error)) +*/ + __Pyx_TraceLine(310,5,0,__PYX_ERR(0, 310, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_fullsource == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":312 + /* "hunter/_event.pyx":311 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< * self._fullsource = None * code = self.code_getter() - */ - __Pyx_TraceLine(312,0,__PYX_ERR(0, 312, __pyx_L1_error)) +*/ + __Pyx_TraceLine(311,6,0,__PYX_ERR(0, 311, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8726,73 +8828,73 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XGOTREF(__pyx_t_4); /*try:*/ { - /* "hunter/_event.pyx":313 + /* "hunter/_event.pyx":312 * if self._fullsource is UNSET: * try: * self._fullsource = None # <<<<<<<<<<<<<< * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': - */ - __Pyx_TraceLine(313,0,__PYX_ERR(0, 313, __pyx_L4_error)) +*/ + __Pyx_TraceLine(312,7,0,__PYX_ERR(0, 312, __pyx_L4_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_fullsource); __Pyx_DECREF(__pyx_v_self->_fullsource); __pyx_v_self->_fullsource = Py_None; - /* "hunter/_event.pyx":314 + /* "hunter/_event.pyx":313 * try: * self._fullsource = None * code = self.code_getter() # <<<<<<<<<<<<<< * if self.kind == 'call' and code.co_name != '': * lines = [] - */ - __Pyx_TraceLine(314,0,__PYX_ERR(0, 314, __pyx_L4_error)) - __pyx_t_5 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 314, __pyx_L4_error) +*/ + __Pyx_TraceLine(313,13,0,__PYX_ERR(0, 313, __pyx_L4_error)) + __pyx_t_5 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 313, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_code = ((PyCodeObject *)__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_event.pyx":315 + /* "hunter/_event.pyx":314 * self._fullsource = None * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': # <<<<<<<<<<<<<< * lines = [] * try: - */ - __Pyx_TraceLine(315,0,__PYX_ERR(0, 315, __pyx_L4_error)) - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_v_self->kind, __pyx_n_s_call, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 315, __pyx_L4_error) +*/ + __Pyx_TraceLine(314,16,0,__PYX_ERR(0, 314, __pyx_L4_error)) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_self->kind, __pyx_mstate_global->__pyx_n_u_call, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 314, __pyx_L4_error) if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L11_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_v_code->co_name, __pyx_kp_s_module_3, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 315, __pyx_L4_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_code->co_name, __pyx_mstate_global->__pyx_kp_u_module_4, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 314, __pyx_L4_error) __pyx_t_1 = __pyx_t_6; __pyx_L11_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":316 + /* "hunter/_event.pyx":315 * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': * lines = [] # <<<<<<<<<<<<<< * try: * for _, token, _, _, _ in generate_tokens( - */ - __Pyx_TraceLine(316,0,__PYX_ERR(0, 316, __pyx_L4_error)) - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 316, __pyx_L4_error) +*/ + __Pyx_TraceLine(315,25,0,__PYX_ERR(0, 315, __pyx_L4_error)) + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 315, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_lines = ((PyObject*)__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":316 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< * for _, token, _, _, _ in generate_tokens( * partial( - */ - __Pyx_TraceLine(317,0,__PYX_ERR(0, 317, __pyx_L4_error)) +*/ + __Pyx_TraceLine(316,26,0,__PYX_ERR(0, 316, __pyx_L4_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8802,261 +8904,265 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XGOTREF(__pyx_t_9); /*try:*/ { - /* "hunter/_event.pyx":318 + /* "hunter/_event.pyx":317 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, - */ - __Pyx_TraceLine(318,0,__PYX_ERR(0, 318, __pyx_L13_error)) - __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_generate_tokens); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 318, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_10); +*/ + __Pyx_TraceLine(317,34,0,__PYX_ERR(0, 317, __pyx_L13_error)) + __pyx_t_10 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_11); - /* "hunter/_event.pyx":319 + /* "hunter/_event.pyx":318 * try: * for _, token, _, _, _ in generate_tokens( * partial( # <<<<<<<<<<<<<< * next, * yield_lines( - */ - __Pyx_TraceLine(319,0,__PYX_ERR(0, 319, __pyx_L13_error)) - __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_partial); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 319, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_12); +*/ + __Pyx_TraceLine(318,36,0,__PYX_ERR(0, 318, __pyx_L13_error)) + __pyx_t_13 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 318, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_14); - /* "hunter/_event.pyx":320 + /* "hunter/_event.pyx":319 * for _, token, _, _, _ in generate_tokens( * partial( * next, # <<<<<<<<<<<<<< * yield_lines( * self.filename, - */ - __Pyx_TraceLine(320,0,__PYX_ERR(0, 320, __pyx_L13_error)) - __pyx_t_13 = __Pyx_GetBuiltinName(__pyx_n_s_next); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 320, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_13); +*/ + __Pyx_TraceLine(319,37,0,__PYX_ERR(0, 319, __pyx_L13_error)) + __pyx_t_15 = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 319, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_15); - /* "hunter/_event.pyx":321 + /* "hunter/_event.pyx":320 * partial( * next, * yield_lines( # <<<<<<<<<<<<<< * self.filename, * self.frame.f_globals, - */ - __Pyx_TraceLine(321,0,__PYX_ERR(0, 321, __pyx_L13_error)) - __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_yield_lines); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 321, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_15); +*/ + __Pyx_TraceLine(320,39,0,__PYX_ERR(0, 320, __pyx_L13_error)) + __pyx_t_17 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_mstate_global->__pyx_n_u_yield_lines); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 320, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_18); - /* "hunter/_event.pyx":322 + /* "hunter/_event.pyx":321 * next, * yield_lines( * self.filename, # <<<<<<<<<<<<<< * self.frame.f_globals, * self.lineno - 1, - */ - __Pyx_TraceLine(322,0,__PYX_ERR(0, 322, __pyx_L13_error)) - __pyx_t_16 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 322, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_16); +*/ + __Pyx_TraceLine(321,41,0,__PYX_ERR(0, 321, __pyx_L13_error)) + __pyx_t_19 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 321, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_19); - /* "hunter/_event.pyx":323 + /* "hunter/_event.pyx":322 * yield_lines( * self.filename, * self.frame.f_globals, # <<<<<<<<<<<<<< * self.lineno - 1, * lines, - */ - __Pyx_TraceLine(323,0,__PYX_ERR(0, 323, __pyx_L13_error)) - __pyx_t_17 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self->frame), __pyx_n_s_f_globals); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 323, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_17); +*/ + __Pyx_TraceLine(322,44,0,__PYX_ERR(0, 322, __pyx_L13_error)) + __pyx_t_20 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self->frame), __pyx_mstate_global->__pyx_n_u_f_globals); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 322, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_20); - /* "hunter/_event.pyx":324 + /* "hunter/_event.pyx":323 * self.filename, * self.frame.f_globals, * self.lineno - 1, # <<<<<<<<<<<<<< * lines, * ), - */ - __Pyx_TraceLine(324,0,__PYX_ERR(0, 324, __pyx_L13_error)) - __pyx_t_18 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_lineno); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 324, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_19 = __Pyx_PyInt_SubtractObjC(__pyx_t_18, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 324, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_19); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; +*/ + __Pyx_TraceLine(323,46,0,__PYX_ERR(0, 323, __pyx_L13_error)) + __pyx_t_21 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 323, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_21); + __pyx_t_22 = __Pyx_PyLong_SubtractObjC(__pyx_t_21, __pyx_mstate_global->__pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 323, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_22); + __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; - /* "hunter/_event.pyx":325 + /* "hunter/_event.pyx":324 * self.frame.f_globals, * self.lineno - 1, * lines, # <<<<<<<<<<<<<< * ), * ) - */ - __Pyx_TraceLine(325,0,__PYX_ERR(0, 325, __pyx_L13_error)) - __pyx_t_18 = NULL; - __pyx_t_20 = 0; +*/ + __Pyx_TraceLine(324,49,0,__PYX_ERR(0, 324, __pyx_L13_error)) + __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_15))) { - __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_15); - if (likely(__pyx_t_18)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15); - __Pyx_INCREF(__pyx_t_18); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_15, function); - __pyx_t_20 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_18))) { + __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_18); + assert(__pyx_t_17); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_18); + __Pyx_INCREF(__pyx_t_17); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_18, __pyx__function); + __pyx_t_23 = 0; } #endif { - PyObject *__pyx_callargs[5] = {__pyx_t_18, __pyx_t_16, __pyx_t_17, __pyx_t_19, __pyx_v_lines}; - __pyx_t_14 = __Pyx_PyObject_FastCall(__pyx_t_15, __pyx_callargs+1-__pyx_t_20, 4+__pyx_t_20); - __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + PyObject *__pyx_callargs[5] = {__pyx_t_17, __pyx_t_19, __pyx_t_20, __pyx_t_22, __pyx_v_lines}; + __pyx_t_16 = __Pyx_PyObject_FastCall(__pyx_t_18, __pyx_callargs+__pyx_t_23, (5-__pyx_t_23) | (__pyx_t_23*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; - if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 321, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; + __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0; + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; + if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 320, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_16); } - __pyx_t_15 = NULL; - __pyx_t_20 = 0; + __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_12))) { - __pyx_t_15 = PyMethod_GET_SELF(__pyx_t_12); - if (likely(__pyx_t_15)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12); - __Pyx_INCREF(__pyx_t_15); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_12, function); - __pyx_t_20 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_14))) { + __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_14); + assert(__pyx_t_13); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_14); + __Pyx_INCREF(__pyx_t_13); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_14, __pyx__function); + __pyx_t_23 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_15, __pyx_t_13, __pyx_t_14}; - __pyx_t_11 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+1-__pyx_t_20, 2+__pyx_t_20); - __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + PyObject *__pyx_callargs[3] = {__pyx_t_13, __pyx_t_15, __pyx_t_16}; + __pyx_t_12 = __Pyx_PyObject_FastCall(__pyx_t_14, __pyx_callargs+__pyx_t_23, (3-__pyx_t_23) | (__pyx_t_23*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 319, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 318, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_12); } - __pyx_t_12 = NULL; - __pyx_t_20 = 0; + __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_10))) { - __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_10); - if (likely(__pyx_t_12)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); - __Pyx_INCREF(__pyx_t_12); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_10, function); - __pyx_t_20 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_11))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_11); + assert(__pyx_t_10); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_11); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_11, __pyx__function); + __pyx_t_23 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_12, __pyx_t_11}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_20, 1+__pyx_t_20); - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_t_12}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_11, __pyx_callargs+__pyx_t_23, (2-__pyx_t_23) | (__pyx_t_23*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 317, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; } - /* "hunter/_event.pyx":318 + /* "hunter/_event.pyx":317 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, - */ - __Pyx_TraceLine(318,0,__PYX_ERR(0, 318, __pyx_L13_error)) +*/ + __Pyx_TraceLine(317,33,0,__PYX_ERR(0, 317, __pyx_L13_error)) if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) { - __pyx_t_10 = __pyx_t_5; __Pyx_INCREF(__pyx_t_10); - __pyx_t_21 = 0; - __pyx_t_22 = NULL; + __pyx_t_11 = __pyx_t_5; __Pyx_INCREF(__pyx_t_11); + __pyx_t_24 = 0; + __pyx_t_25 = NULL; } else { - __pyx_t_21 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 318, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_22 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_10); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 318, __pyx_L13_error) + __pyx_t_24 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_11); + __pyx_t_25 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_11); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 317, __pyx_L13_error) } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; for (;;) { - if (likely(!__pyx_t_22)) { - if (likely(PyList_CheckExact(__pyx_t_10))) { + if (likely(!__pyx_t_25)) { + if (likely(PyList_CheckExact(__pyx_t_11))) { { - Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_10); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 318, __pyx_L13_error) + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_11); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 317, __pyx_L13_error) #endif - if (__pyx_t_21 >= __pyx_temp) break; + if (__pyx_t_24 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_21); __Pyx_INCREF(__pyx_t_5); __pyx_t_21++; if (unlikely((0 < 0))) __PYX_ERR(0, 318, __pyx_L13_error) - #else - __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_10, __pyx_t_21); __pyx_t_21++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_5); - #endif + __pyx_t_5 = __Pyx_PyList_GetItemRef(__pyx_t_11, __pyx_t_24); + ++__pyx_t_24; } else { { - Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_10); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 318, __pyx_L13_error) + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_11); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 317, __pyx_L13_error) #endif - if (__pyx_t_21 >= __pyx_temp) break; + if (__pyx_t_24 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_21); __Pyx_INCREF(__pyx_t_5); __pyx_t_21++; if (unlikely((0 < 0))) __PYX_ERR(0, 318, __pyx_L13_error) + __pyx_t_5 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_24)); #else - __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_10, __pyx_t_21); __pyx_t_21++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_5); + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_24); #endif + ++__pyx_t_24; } + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 317, __pyx_L13_error) } else { - __pyx_t_5 = __pyx_t_22(__pyx_t_10); + __pyx_t_5 = __pyx_t_25(__pyx_t_11); if (unlikely(!__pyx_t_5)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(0, 318, __pyx_L13_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 317, __pyx_L13_error) + PyErr_Clear(); } break; } - __Pyx_GOTREF(__pyx_t_5); } + __Pyx_GOTREF(__pyx_t_5); if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) { PyObject* sequence = __pyx_t_5; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 5)) { if (size > 5) __Pyx_RaiseTooManyValuesError(5); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(0, 318, __pyx_L13_error) + __PYX_ERR(0, 317, __pyx_L13_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_11 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_12 = PyTuple_GET_ITEM(sequence, 1); - __pyx_t_14 = PyTuple_GET_ITEM(sequence, 2); - __pyx_t_13 = PyTuple_GET_ITEM(sequence, 3); - __pyx_t_15 = PyTuple_GET_ITEM(sequence, 4); + __pyx_t_12 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_12); + __pyx_t_10 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_10); + __pyx_t_14 = PyTuple_GET_ITEM(sequence, 2); + __Pyx_INCREF(__pyx_t_14); + __pyx_t_16 = PyTuple_GET_ITEM(sequence, 3); + __Pyx_INCREF(__pyx_t_16); + __pyx_t_15 = PyTuple_GET_ITEM(sequence, 4); + __Pyx_INCREF(__pyx_t_15); } else { - __pyx_t_11 = PyList_GET_ITEM(sequence, 0); - __pyx_t_12 = PyList_GET_ITEM(sequence, 1); - __pyx_t_14 = PyList_GET_ITEM(sequence, 2); - __pyx_t_13 = PyList_GET_ITEM(sequence, 3); - __pyx_t_15 = PyList_GET_ITEM(sequence, 4); + __pyx_t_12 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_XGOTREF(__pyx_t_12); + __pyx_t_10 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_XGOTREF(__pyx_t_10); + __pyx_t_14 = __Pyx_PyList_GetItemRef(sequence, 2); + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_XGOTREF(__pyx_t_14); + __pyx_t_16 = __Pyx_PyList_GetItemRef(sequence, 3); + if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_XGOTREF(__pyx_t_16); + __pyx_t_15 = __Pyx_PyList_GetItemRef(sequence, 4); + if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_XGOTREF(__pyx_t_15); } - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(__pyx_t_12); - __Pyx_INCREF(__pyx_t_14); - __Pyx_INCREF(__pyx_t_13); - __Pyx_INCREF(__pyx_t_15); #else { Py_ssize_t i; - PyObject** temps[5] = {&__pyx_t_11,&__pyx_t_12,&__pyx_t_14,&__pyx_t_13,&__pyx_t_15}; + PyObject** temps[5] = {&__pyx_t_12,&__pyx_t_10,&__pyx_t_14,&__pyx_t_16,&__pyx_t_15}; for (i=0; i < 5; i++) { - PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 318, __pyx_L13_error) + PyObject* item = __Pyx_PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 317, __pyx_L13_error) __Pyx_GOTREF(item); *(temps[i]) = item; } @@ -9065,76 +9171,77 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { Py_ssize_t index = -1; - PyObject** temps[5] = {&__pyx_t_11,&__pyx_t_12,&__pyx_t_14,&__pyx_t_13,&__pyx_t_15}; - __pyx_t_19 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 318, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_19); + PyObject** temps[5] = {&__pyx_t_12,&__pyx_t_10,&__pyx_t_14,&__pyx_t_16,&__pyx_t_15}; + __pyx_t_13 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_23 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_19); + __pyx_t_26 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_13); for (index=0; index < 5; index++) { - PyObject* item = __pyx_t_23(__pyx_t_19); if (unlikely(!item)) goto __pyx_L21_unpacking_failed; + PyObject* item = __pyx_t_26(__pyx_t_13); if (unlikely(!item)) goto __pyx_L21_unpacking_failed; __Pyx_GOTREF(item); *(temps[index]) = item; } - if (__Pyx_IternextUnpackEndCheck(__pyx_t_23(__pyx_t_19), 5) < 0) __PYX_ERR(0, 318, __pyx_L13_error) - __pyx_t_23 = NULL; - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; + if (__Pyx_IternextUnpackEndCheck(__pyx_t_26(__pyx_t_13), 5) < 0) __PYX_ERR(0, 317, __pyx_L13_error) + __pyx_t_26 = NULL; + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; goto __pyx_L22_unpacking_done; __pyx_L21_unpacking_failed:; - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; - __pyx_t_23 = NULL; + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __pyx_t_26 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(0, 318, __pyx_L13_error) + __PYX_ERR(0, 317, __pyx_L13_error) __pyx_L22_unpacking_done:; } - __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_11); - __pyx_t_11 = 0; - __Pyx_XDECREF_SET(__pyx_v_token, __pyx_t_12); + __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_12); __pyx_t_12 = 0; + __Pyx_XDECREF_SET(__pyx_v_token, __pyx_t_10); + __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v__, __pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF_SET(__pyx_v__, __pyx_t_13); - __pyx_t_13 = 0; + __Pyx_DECREF_SET(__pyx_v__, __pyx_t_16); + __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v__, __pyx_t_15); __pyx_t_15 = 0; + __Pyx_TraceLine(317,27,0,__PYX_ERR(0, 317, __pyx_L13_error)) - /* "hunter/_event.pyx":329 + /* "hunter/_event.pyx":328 * ) * ): * if token in ('def', 'class', 'lambda'): # <<<<<<<<<<<<<< * self._fullsource = ''.join(lines) * break - */ - __Pyx_TraceLine(329,0,__PYX_ERR(0, 329, __pyx_L13_error)) +*/ + __Pyx_TraceLine(328,51,0,__PYX_ERR(0, 328, __pyx_L13_error)) __Pyx_INCREF(__pyx_v_token); __pyx_t_5 = __pyx_v_token; - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_def, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 329, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_def, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 328, __pyx_L13_error) if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L24_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_class, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 329, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_class, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 328, __pyx_L13_error) if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L24_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_lambda, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 329, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_lambda, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 328, __pyx_L13_error) __pyx_t_1 = __pyx_t_6; __pyx_L24_bool_binop_done:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __pyx_t_1; if (__pyx_t_6) { - /* "hunter/_event.pyx":330 + /* "hunter/_event.pyx":329 * ): * if token in ('def', 'class', 'lambda'): * self._fullsource = ''.join(lines) # <<<<<<<<<<<<<< * break * except TokenError: - */ - __Pyx_TraceLine(330,0,__PYX_ERR(0, 330, __pyx_L13_error)) - __pyx_t_5 = __Pyx_PyString_Join(__pyx_kp_s__7, __pyx_v_lines); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 330, __pyx_L13_error) +*/ + __Pyx_TraceLine(329,60,0,__PYX_ERR(0, 329, __pyx_L13_error)) + __pyx_t_5 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__3, __pyx_v_lines); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 329, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __Pyx_GOTREF(__pyx_v_self->_fullsource); @@ -9142,48 +9249,48 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_self->_fullsource = __pyx_t_5; __pyx_t_5 = 0; - /* "hunter/_event.pyx":331 + /* "hunter/_event.pyx":330 * if token in ('def', 'class', 'lambda'): * self._fullsource = ''.join(lines) * break # <<<<<<<<<<<<<< * except TokenError: * pass - */ - __Pyx_TraceLine(331,0,__PYX_ERR(0, 331, __pyx_L13_error)) +*/ + __Pyx_TraceLine(330,62,0,__PYX_ERR(0, 330, __pyx_L13_error)) goto __pyx_L20_break; - /* "hunter/_event.pyx":329 + /* "hunter/_event.pyx":328 * ) * ): * if token in ('def', 'class', 'lambda'): # <<<<<<<<<<<<<< * self._fullsource = ''.join(lines) * break - */ +*/ } - /* "hunter/_event.pyx":318 + /* "hunter/_event.pyx":317 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, - */ - __Pyx_TraceLine(318,0,__PYX_ERR(0, 318, __pyx_L13_error)) +*/ + __Pyx_TraceLine(317,27,0,__PYX_ERR(0, 317, __pyx_L13_error)) } - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L27_for_end; __pyx_L20_break:; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L27_for_end; __pyx_L27_for_end:; - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":316 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< * for _, token, _, _, _ in generate_tokens( * partial( - */ +*/ } __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -9200,36 +9307,52 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0; + __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0; + __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0; + __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":332 + /* "hunter/_event.pyx":331 * self._fullsource = ''.join(lines) * break * except TokenError: # <<<<<<<<<<<<<< * pass * if self._fullsource is None: - */ - __Pyx_TraceLine(332,0,__PYX_ERR(0, 332, __pyx_L15_except_error)) - __Pyx_ErrFetch(&__pyx_t_10, &__pyx_t_5, &__pyx_t_15); - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_TokenError); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 332, __pyx_L15_except_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_20 = __Pyx_PyErr_GivenExceptionMatches(__pyx_t_10, __pyx_t_13); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_ErrRestore(__pyx_t_10, __pyx_t_5, __pyx_t_15); - __pyx_t_10 = 0; __pyx_t_5 = 0; __pyx_t_15 = 0; - if (__pyx_t_20) { +*/ + __Pyx_TraceLine(331,0,0,__PYX_ERR(0, 331, __pyx_L15_except_error)) + __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_5, &__pyx_t_15); + __Pyx_GetModuleGlobalName(__pyx_t_16, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 331, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_16); + __pyx_t_27 = __Pyx_PyErr_GivenExceptionMatches(__pyx_t_11, __pyx_t_16); + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + __Pyx_ErrRestore(__pyx_t_11, __pyx_t_5, __pyx_t_15); + __pyx_t_11 = 0; __pyx_t_5 = 0; __pyx_t_15 = 0; + if (__pyx_t_27) { + __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionHandled(0); __Pyx_ErrRestore(0,0,0); + __Pyx_TraceExceptionDone(); + + /* "hunter/_event.pyx":332 + * break + * except TokenError: + * pass # <<<<<<<<<<<<<< + * if self._fullsource is None: + * self._fullsource = getline(self.filename, self.lineno, self.globals) +*/ + __Pyx_TraceLine(332,64,0,__PYX_ERR(0, 332, __pyx_L15_except_error)) goto __pyx_L14_exception_handled; } goto __pyx_L15_except_error; - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":316 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< * for _, token, _, _, _ in generate_tokens( * partial( - */ +*/ __pyx_L15_except_error:; __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_8); @@ -9244,66 +9367,65 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_L18_try_end:; } - /* "hunter/_event.pyx":315 + /* "hunter/_event.pyx":314 * self._fullsource = None * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': # <<<<<<<<<<<<<< * lines = [] * try: - */ +*/ } - /* "hunter/_event.pyx":334 + /* "hunter/_event.pyx":333 * except TokenError: * pass * if self._fullsource is None: # <<<<<<<<<<<<<< * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: - */ - __Pyx_TraceLine(334,0,__PYX_ERR(0, 334, __pyx_L4_error)) +*/ + __Pyx_TraceLine(333,69,0,__PYX_ERR(0, 333, __pyx_L4_error)) __pyx_t_6 = (__pyx_v_self->_fullsource == Py_None); if (__pyx_t_6) { - /* "hunter/_event.pyx":335 + /* "hunter/_event.pyx":334 * pass * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) # <<<<<<<<<<<<<< * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' - */ - __Pyx_TraceLine(335,0,__PYX_ERR(0, 335, __pyx_L4_error)) - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_getline); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 335, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 335, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_lineno); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 335, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 335, __pyx_L4_error) +*/ + __Pyx_TraceLine(334,73,0,__PYX_ERR(0, 334, __pyx_L4_error)) + __pyx_t_5 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 334, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_11); + __pyx_t_16 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 334, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_16); + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 334, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_12 = NULL; - __pyx_t_20 = 0; + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 334, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_10); + __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_12)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_12); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_20 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_11))) { + __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_11); + assert(__pyx_t_5); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_11); + __Pyx_INCREF(__pyx_t_5); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_11, __pyx__function); + __pyx_t_23 = 0; } #endif { - PyObject *__pyx_callargs[4] = {__pyx_t_12, __pyx_t_10, __pyx_t_13, __pyx_t_14}; - __pyx_t_15 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_20, 3+__pyx_t_20); - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + PyObject *__pyx_callargs[4] = {__pyx_t_5, __pyx_t_16, __pyx_t_14, __pyx_t_10}; + __pyx_t_15 = __Pyx_PyObject_FastCall(__pyx_t_11, __pyx_callargs+__pyx_t_23, (4-__pyx_t_23) | (__pyx_t_23*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 335, __pyx_L4_error) + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 334, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_GIVEREF(__pyx_t_15); __Pyx_GOTREF(__pyx_v_self->_fullsource); @@ -9311,22 +9433,22 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_self->_fullsource = __pyx_t_15; __pyx_t_15 = 0; - /* "hunter/_event.pyx":334 + /* "hunter/_event.pyx":333 * except TokenError: * pass * if self._fullsource is None: # <<<<<<<<<<<<<< * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: - */ +*/ } - /* "hunter/_event.pyx":312 + /* "hunter/_event.pyx":311 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< * self._fullsource = None * code = self.code_getter() - */ +*/ } __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -9343,115 +9465,125 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0; + __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0; + __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0; + __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":336 + /* "hunter/_event.pyx":335 * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource - */ - __Pyx_TraceLine(336,0,__PYX_ERR(0, 336, __pyx_L6_except_error)) - __pyx_t_20 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); - if (__pyx_t_20) { +*/ + __Pyx_TraceLine(335,81,0,__PYX_ERR(0, 335, __pyx_L6_except_error)) + __pyx_t_27 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); + if (__pyx_t_27) { __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_5, &__pyx_t_14) < 0) __PYX_ERR(0, 336, __pyx_L6_except_error) + __Pyx_TraceExceptionHandled(80); + if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_11, &__pyx_t_10) < 0) __PYX_ERR(0, 335, __pyx_L6_except_error) __Pyx_XGOTREF(__pyx_t_15); - __Pyx_XGOTREF(__pyx_t_5); - __Pyx_XGOTREF(__pyx_t_14); - __Pyx_INCREF(__pyx_t_5); - __pyx_v_exc = __pyx_t_5; + __Pyx_XGOTREF(__pyx_t_11); + __Pyx_XGOTREF(__pyx_t_10); + __Pyx_TraceExceptionDone(); + __Pyx_INCREF(__pyx_t_11); + __pyx_v_exc = __pyx_t_11; /*try:*/ { - /* "hunter/_event.pyx":337 + /* "hunter/_event.pyx":336 * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' # <<<<<<<<<<<<<< * return self._fullsource * - */ - __Pyx_TraceLine(337,0,__PYX_ERR(0, 337, __pyx_L34_error)) - __pyx_t_13 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 337, __pyx_L34_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_10 = __Pyx_PyUnicode_Concat(__pyx_kp_u_NO_SOURCE, __pyx_t_13); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 337, __pyx_L34_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_GIVEREF(__pyx_t_10); +*/ + __Pyx_TraceLine(336,86,0,__PYX_ERR(0, 336, __pyx_L36_error)) + __pyx_t_14 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 336, __pyx_L36_error) + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 336, __pyx_L36_error) + __Pyx_GOTREF(__pyx_t_16); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_GIVEREF(__pyx_t_16); __Pyx_GOTREF(__pyx_v_self->_fullsource); __Pyx_DECREF(__pyx_v_self->_fullsource); - __pyx_v_self->_fullsource = __pyx_t_10; - __pyx_t_10 = 0; + __pyx_v_self->_fullsource = __pyx_t_16; + __pyx_t_16 = 0; } - /* "hunter/_event.pyx":336 + /* "hunter/_event.pyx":335 * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource - */ - __Pyx_TraceLine(336,0,__PYX_ERR(0, 336, __pyx_L34_error)) +*/ + __Pyx_TraceLine(335,80,0,__PYX_ERR(0, 335, __pyx_L36_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; - goto __pyx_L35; + goto __pyx_L37; } - __pyx_L34_error:; + __pyx_L36_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_TraceExceptionHandled(80); __Pyx_PyThreadState_assign - __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_30 = 0; __pyx_t_31 = 0; __pyx_t_32 = 0; __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0; - if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_26, &__pyx_t_27, &__pyx_t_28); - if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7); + __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0; + __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0; + __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0; + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_ExceptionSwap(&__pyx_t_30, &__pyx_t_31, &__pyx_t_32); + if ( unlikely(__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0)) __Pyx_ErrFetch(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7); __Pyx_XGOTREF(__pyx_t_9); __Pyx_XGOTREF(__pyx_t_8); __Pyx_XGOTREF(__pyx_t_7); - __Pyx_XGOTREF(__pyx_t_26); - __Pyx_XGOTREF(__pyx_t_27); - __Pyx_XGOTREF(__pyx_t_28); - __pyx_t_20 = __pyx_lineno; __pyx_t_24 = __pyx_clineno; __pyx_t_25 = __pyx_filename; + __Pyx_XGOTREF(__pyx_t_30); + __Pyx_XGOTREF(__pyx_t_31); + __Pyx_XGOTREF(__pyx_t_32); + __pyx_t_27 = __pyx_lineno; __pyx_t_28 = __pyx_clineno; __pyx_t_29 = __pyx_filename; { __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; } - if (PY_MAJOR_VERSION >= 3) { - __Pyx_XGIVEREF(__pyx_t_26); - __Pyx_XGIVEREF(__pyx_t_27); - __Pyx_XGIVEREF(__pyx_t_28); - __Pyx_ExceptionReset(__pyx_t_26, __pyx_t_27, __pyx_t_28); - } + __Pyx_XGIVEREF(__pyx_t_30); + __Pyx_XGIVEREF(__pyx_t_31); + __Pyx_XGIVEREF(__pyx_t_32); + __Pyx_ExceptionReset(__pyx_t_30, __pyx_t_31, __pyx_t_32); __Pyx_XGIVEREF(__pyx_t_9); __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_7); __Pyx_ErrRestore(__pyx_t_9, __pyx_t_8, __pyx_t_7); - __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; - __pyx_lineno = __pyx_t_20; __pyx_clineno = __pyx_t_24; __pyx_filename = __pyx_t_25; + __pyx_t_9 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_30 = 0; __pyx_t_31 = 0; __pyx_t_32 = 0; + __pyx_lineno = __pyx_t_27; __pyx_clineno = __pyx_t_28; __pyx_filename = __pyx_t_29; + __Pyx_TraceException(80, 1, 0); goto __pyx_L6_except_error; } - __pyx_L35:; + __pyx_L37:; } __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L5_exception_handled; } goto __pyx_L6_except_error; - /* "hunter/_event.pyx":312 + /* "hunter/_event.pyx":311 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< * self._fullsource = None * code = self.code_getter() - */ +*/ __pyx_L6_except_error:; __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_3); @@ -9466,35 +9598,36 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_L9_try_end:; } - /* "hunter/_event.pyx":311 + /* "hunter/_event.pyx":310 * cdef CodeType code * * if self._fullsource is UNSET: # <<<<<<<<<<<<<< * try: * self._fullsource = None - */ +*/ } - /* "hunter/_event.pyx":338 + /* "hunter/_event.pyx":337 * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(338,0,__PYX_ERR(0, 338, __pyx_L1_error)) +*/ + __Pyx_TraceLine(337,88,0,__PYX_ERR(0, 337, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_fullsource); __pyx_r = __pyx_v_self->_fullsource; + __Pyx_TraceReturnValue(__pyx_r, 88, 0, __PYX_ERR(0, 337, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":307 + /* "hunter/_event.pyx":306 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< * cdef list lines * cdef CodeType code - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -9509,6 +9642,15 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_17); __Pyx_XDECREF(__pyx_t_18); __Pyx_XDECREF(__pyx_t_19); + __Pyx_XDECREF(__pyx_t_20); + __Pyx_XDECREF(__pyx_t_21); + __Pyx_XDECREF(__pyx_t_22); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 306, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; @@ -9518,18 +9660,18 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_v_token); __Pyx_XDECREF(__pyx_v_exc); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":340 +/* "hunter/_event.pyx":339 * return self._fullsource * * @property # <<<<<<<<<<<<<< * def fullsource(self): * return self.fullsource_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_10fullsource_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9548,374 +9690,318 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_10fullsource_1__get__(PyObject static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 340, 0, __PYX_ERR(0, 340, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 339, 0, 0, 0, __PYX_ERR(0, 339, __pyx_L1_error)); - /* "hunter/_event.pyx":342 + /* "hunter/_event.pyx":341 * @property * def fullsource(self): * return self.fullsource_getter() # <<<<<<<<<<<<<< * * cdef inline source_getter(self): - */ - __Pyx_TraceLine(342,0,__PYX_ERR(0, 342, __pyx_L1_error)) +*/ + __Pyx_TraceLine(341,1,0,__PYX_ERR(0, 341, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 342, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 341, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":340 + /* "hunter/_event.pyx":339 * return self._fullsource * * @property # <<<<<<<<<<<<<< * def fullsource(self): * return self.fullsource_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 339, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.fullsource.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":344 +/* "hunter/_event.pyx":343 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): - */ +*/ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_v_exc = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - Py_ssize_t __pyx_t_6; - Py_UCS4 __pyx_t_7; + size_t __pyx_t_5; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7[3]; PyObject *__pyx_t_8 = NULL; PyObject *__pyx_t_9 = NULL; PyObject *__pyx_t_10 = NULL; PyObject *__pyx_t_11 = NULL; PyObject *__pyx_t_12 = NULL; - PyObject *__pyx_t_13 = NULL; - PyObject *__pyx_t_14 = NULL; - int __pyx_t_15; - char const *__pyx_t_16; + int __pyx_t_13; + int __pyx_t_14; + char const *__pyx_t_15; + PyObject *__pyx_t_16 = NULL; PyObject *__pyx_t_17 = NULL; PyObject *__pyx_t_18 = NULL; PyObject *__pyx_t_19 = NULL; PyObject *__pyx_t_20 = NULL; PyObject *__pyx_t_21 = NULL; - PyObject *__pyx_t_22 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("source_getter", 1); - __Pyx_TraceCall("source_getter", __pyx_f[0], 344, 0, __PYX_ERR(0, 344, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])) + __Pyx_RefNannySetupContext("source_getter", 0); + __Pyx_TraceStartFunc("source_getter", __pyx_f[0], 343, 0, 0, 0, __PYX_ERR(0, 343, __pyx_L1_error)); - /* "hunter/_event.pyx":345 + /* "hunter/_event.pyx":344 * * cdef inline source_getter(self): * if self._source is UNSET: # <<<<<<<<<<<<<< * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' - */ - __Pyx_TraceLine(345,0,__PYX_ERR(0, 345, __pyx_L1_error)) +*/ + __Pyx_TraceLine(344,5,0,__PYX_ERR(0, 344, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_source == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":346 + /* "hunter/_event.pyx":345 * cdef inline source_getter(self): * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: - */ - __Pyx_TraceLine(346,0,__PYX_ERR(0, 346, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_endswith); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error) +*/ + __Pyx_TraceLine(345,8,0,__PYX_ERR(0, 345, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = NULL; + __pyx_t_3 = __pyx_t_4; + __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_tuple__12}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_tuple[2]}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 346, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 345, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 346, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":347 + /* "hunter/_event.pyx":346 * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' # <<<<<<<<<<<<<< * try: * self._source = getline(self.filename, self.lineno, self.globals) - */ - __Pyx_TraceLine(347,0,__PYX_ERR(0, 347, __pyx_L1_error)) - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 347, __pyx_L1_error) +*/ + __Pyx_TraceLine(346,17,0,__PYX_ERR(0, 346, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = 0; - __pyx_t_7 = 127; - __Pyx_INCREF(__pyx_kp_u_NO_SOURCE_not_reading_binary); - __pyx_t_6 += 34; - __Pyx_GIVEREF(__pyx_kp_u_NO_SOURCE_not_reading_binary); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_u_NO_SOURCE_not_reading_binary); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_basename); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_9))) { - __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_9); - if (likely(__pyx_t_11)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_9, function); - __pyx_t_5 = 1; - } - } - #endif - { - PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_t_10}; - __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - } - __pyx_t_9 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_9)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_9); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif - { - PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_t_8}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_4, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 347, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_FormatSimple(__pyx_t_3, __pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) > __pyx_t_7) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) : __pyx_t_7; - __pyx_t_6 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4); - __pyx_t_4 = 0; - __Pyx_INCREF(__pyx_kp_u_file_2); - __pyx_t_6 += 5; - __Pyx_GIVEREF(__pyx_kp_u_file_2); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_kp_u_file_2); - __pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_2, 3, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 347, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GIVEREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_6, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_NO_SOURCE_not_reading_binary; + __pyx_t_7[1] = __pyx_t_3; + __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_file_2; + __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_7, 3, 34 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 5, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3)); + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GIVEREF(__pyx_t_6); __Pyx_GOTREF(__pyx_v_self->_source); __Pyx_DECREF(__pyx_v_self->_source); - __pyx_v_self->_source = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_v_self->_source = __pyx_t_6; + __pyx_t_6 = 0; - /* "hunter/_event.pyx":346 + /* "hunter/_event.pyx":345 * cdef inline source_getter(self): * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: - */ +*/ } - /* "hunter/_event.pyx":348 + /* "hunter/_event.pyx":347 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: - */ - __Pyx_TraceLine(348,0,__PYX_ERR(0, 348, __pyx_L1_error)) +*/ + __Pyx_TraceLine(347,25,0,__PYX_ERR(0, 347, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_12, &__pyx_t_13, &__pyx_t_14); - __Pyx_XGOTREF(__pyx_t_12); - __Pyx_XGOTREF(__pyx_t_13); - __Pyx_XGOTREF(__pyx_t_14); + __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10); + __Pyx_XGOTREF(__pyx_t_8); + __Pyx_XGOTREF(__pyx_t_9); + __Pyx_XGOTREF(__pyx_t_10); /*try:*/ { - /* "hunter/_event.pyx":349 + /* "hunter/_event.pyx":348 * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: * self._source = getline(self.filename, self.lineno, self.globals) # <<<<<<<<<<<<<< * except Exception as exc: * self._source = f'??? NO SOURCE: {exc!r}' - */ - __Pyx_TraceLine(349,0,__PYX_ERR(0, 349, __pyx_L5_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_getline); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 349, __pyx_L5_error) +*/ + __Pyx_TraceLine(348,29,0,__PYX_ERR(0, 348, __pyx_L5_error)) + __pyx_t_3 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 348, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_filename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 349, __pyx_L5_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_lineno); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 349, __pyx_L5_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 349, __pyx_L5_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_10 = NULL; - __pyx_t_5 = 0; + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 348, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 348, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_11); + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 348, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_12); + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_2))) { - __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_2); - if (likely(__pyx_t_10)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); - __Pyx_INCREF(__pyx_t_10); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_2, function); - __pyx_t_5 = 1; - } + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); + assert(__pyx_t_3); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_2); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_2, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[4] = {__pyx_t_10, __pyx_t_3, __pyx_t_8, __pyx_t_9}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_5, 3+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 349, __pyx_L5_error) - __Pyx_GOTREF(__pyx_t_4); + PyObject *__pyx_callargs[4] = {__pyx_t_3, __pyx_t_4, __pyx_t_11, __pyx_t_12}; + __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_5, (4-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 348, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_6); } - __Pyx_GIVEREF(__pyx_t_4); + __Pyx_GIVEREF(__pyx_t_6); __Pyx_GOTREF(__pyx_v_self->_source); __Pyx_DECREF(__pyx_v_self->_source); - __pyx_v_self->_source = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_v_self->_source = __pyx_t_6; + __pyx_t_6 = 0; - /* "hunter/_event.pyx":348 + /* "hunter/_event.pyx":347 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: - */ +*/ } - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L10_try_end; __pyx_L5_error:; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":350 + /* "hunter/_event.pyx":349 * try: * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: {exc!r}' * - */ - __Pyx_TraceLine(350,0,__PYX_ERR(0, 350, __pyx_L7_except_error)) - __pyx_t_5 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); - if (__pyx_t_5) { +*/ + __Pyx_TraceLine(349,37,0,__PYX_ERR(0, 349, __pyx_L7_except_error)) + __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); + if (__pyx_t_13) { __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_2, &__pyx_t_9) < 0) __PYX_ERR(0, 350, __pyx_L7_except_error) - __Pyx_XGOTREF(__pyx_t_4); + __Pyx_TraceExceptionHandled(36); + if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_12) < 0) __PYX_ERR(0, 349, __pyx_L7_except_error) + __Pyx_XGOTREF(__pyx_t_6); __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_9); + __Pyx_XGOTREF(__pyx_t_12); + __Pyx_TraceExceptionDone(); __Pyx_INCREF(__pyx_t_2); __pyx_v_exc = __pyx_t_2; /*try:*/ { - /* "hunter/_event.pyx":351 + /* "hunter/_event.pyx":350 * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: * self._source = f'??? NO SOURCE: {exc!r}' # <<<<<<<<<<<<<< * * return self._source - */ - __Pyx_TraceLine(351,0,__PYX_ERR(0, 351, __pyx_L16_error)) - __pyx_t_8 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 351, __pyx_L16_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_3 = __Pyx_PyUnicode_Concat(__pyx_kp_u_NO_SOURCE, __pyx_t_8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 351, __pyx_L16_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_GIVEREF(__pyx_t_3); +*/ + __Pyx_TraceLine(350,42,0,__PYX_ERR(0, 350, __pyx_L16_error)) + __pyx_t_11 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 350, __pyx_L16_error) + __Pyx_GOTREF(__pyx_t_11); + __pyx_t_4 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_11); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 350, __pyx_L16_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_GIVEREF(__pyx_t_4); __Pyx_GOTREF(__pyx_v_self->_source); __Pyx_DECREF(__pyx_v_self->_source); - __pyx_v_self->_source = __pyx_t_3; - __pyx_t_3 = 0; + __pyx_v_self->_source = __pyx_t_4; + __pyx_t_4 = 0; } - /* "hunter/_event.pyx":350 + /* "hunter/_event.pyx":349 * try: * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: {exc!r}' * - */ - __Pyx_TraceLine(350,0,__PYX_ERR(0, 350, __pyx_L16_error)) +*/ + __Pyx_TraceLine(349,36,0,__PYX_ERR(0, 349, __pyx_L16_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; @@ -9924,124 +10010,130 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_L16_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_TraceExceptionHandled(36); __Pyx_PyThreadState_assign - __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); - if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19) < 0)) __Pyx_ErrFetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_ExceptionSwap(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); + if ( unlikely(__Pyx_GetException(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18) < 0)) __Pyx_ErrFetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); + __Pyx_XGOTREF(__pyx_t_16); __Pyx_XGOTREF(__pyx_t_17); __Pyx_XGOTREF(__pyx_t_18); __Pyx_XGOTREF(__pyx_t_19); __Pyx_XGOTREF(__pyx_t_20); __Pyx_XGOTREF(__pyx_t_21); - __Pyx_XGOTREF(__pyx_t_22); - __pyx_t_5 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename; + __pyx_t_13 = __pyx_lineno; __pyx_t_14 = __pyx_clineno; __pyx_t_15 = __pyx_filename; { __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; } - if (PY_MAJOR_VERSION >= 3) { - __Pyx_XGIVEREF(__pyx_t_20); - __Pyx_XGIVEREF(__pyx_t_21); - __Pyx_XGIVEREF(__pyx_t_22); - __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22); - } + __Pyx_XGIVEREF(__pyx_t_19); + __Pyx_XGIVEREF(__pyx_t_20); + __Pyx_XGIVEREF(__pyx_t_21); + __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21); + __Pyx_XGIVEREF(__pyx_t_16); __Pyx_XGIVEREF(__pyx_t_17); __Pyx_XGIVEREF(__pyx_t_18); - __Pyx_XGIVEREF(__pyx_t_19); - __Pyx_ErrRestore(__pyx_t_17, __pyx_t_18, __pyx_t_19); - __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; - __pyx_lineno = __pyx_t_5; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16; + __Pyx_ErrRestore(__pyx_t_16, __pyx_t_17, __pyx_t_18); + __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; + __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_14; __pyx_filename = __pyx_t_15; + __Pyx_TraceException(36, 1, 0); goto __pyx_L7_except_error; } __pyx_L17:; } - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; goto __pyx_L6_exception_handled; } goto __pyx_L7_except_error; - /* "hunter/_event.pyx":348 + /* "hunter/_event.pyx":347 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: - */ +*/ __pyx_L7_except_error:; - __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_XGIVEREF(__pyx_t_13); - __Pyx_XGIVEREF(__pyx_t_14); - __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14); + __Pyx_XGIVEREF(__pyx_t_8); + __Pyx_XGIVEREF(__pyx_t_9); + __Pyx_XGIVEREF(__pyx_t_10); + __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10); goto __pyx_L1_error; __pyx_L6_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_XGIVEREF(__pyx_t_13); - __Pyx_XGIVEREF(__pyx_t_14); - __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14); + __Pyx_XGIVEREF(__pyx_t_8); + __Pyx_XGIVEREF(__pyx_t_9); + __Pyx_XGIVEREF(__pyx_t_10); + __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10); __pyx_L10_try_end:; } - /* "hunter/_event.pyx":345 + /* "hunter/_event.pyx":344 * * cdef inline source_getter(self): * if self._source is UNSET: # <<<<<<<<<<<<<< * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' - */ +*/ } - /* "hunter/_event.pyx":353 + /* "hunter/_event.pyx":352 * self._source = f'??? NO SOURCE: {exc!r}' * * return self._source # <<<<<<<<<<<<<< * * @property - */ - __Pyx_TraceLine(353,0,__PYX_ERR(0, 353, __pyx_L1_error)) +*/ + __Pyx_TraceLine(352,44,0,__PYX_ERR(0, 352, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_source); __pyx_r = __pyx_v_self->_source; + __Pyx_TraceReturnValue(__pyx_r, 44, 0, __PYX_ERR(0, 352, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":343 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); + __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_11); + __Pyx_XDECREF(__pyx_t_12); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 343, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_exc); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":355 +/* "hunter/_event.pyx":354 * return self._source * * @property # <<<<<<<<<<<<<< * def source(self): * return self.source_getter() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_6source_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10060,57 +10152,65 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_6source_1__get__(PyObject *__py static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[0], 355, 0, __PYX_ERR(0, 355, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 354, 0, 0, 0, __PYX_ERR(0, 354, __pyx_L1_error)); - /* "hunter/_event.pyx":357 + /* "hunter/_event.pyx":356 * @property * def source(self): * return self.source_getter() # <<<<<<<<<<<<<< * * def __getitem__(self, item): - */ - __Pyx_TraceLine(357,0,__PYX_ERR(0, 357, __pyx_L1_error)) +*/ + __Pyx_TraceLine(356,1,0,__PYX_ERR(0, 356, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 357, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 356, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":355 + /* "hunter/_event.pyx":354 * return self._source * * @property # <<<<<<<<<<<<<< * def source(self): * return self.source_getter() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 354, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.source.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":359 +/* "hunter/_event.pyx":358 * return self.source_getter() * * def __getitem__(self, item): # <<<<<<<<<<<<<< * return getattr(self, item) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_11__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item); /*proto*/ @@ -10129,57 +10229,65 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_11__getitem__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v_item) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__getitem__", 1); - __Pyx_TraceCall("__getitem__", __pyx_f[0], 359, 0, __PYX_ERR(0, 359, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])) + __Pyx_RefNannySetupContext("__getitem__", 0); + __Pyx_TraceStartFunc("__getitem__", __pyx_f[0], 358, 0, 0, 0, __PYX_ERR(0, 358, __pyx_L1_error)); - /* "hunter/_event.pyx":360 + /* "hunter/_event.pyx":359 * * def __getitem__(self, item): * return getattr(self, item) # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(360,0,__PYX_ERR(0, 360, __pyx_L1_error)) +*/ + __Pyx_TraceLine(359,1,0,__PYX_ERR(0, 359, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetAttr(((PyObject *)__pyx_v_self), __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 360, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetAttr(((PyObject *)__pyx_v_self), __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 359, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 359, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":359 + /* "hunter/_event.pyx":358 * return self.source_getter() * * def __getitem__(self, item): # <<<<<<<<<<<<<< * return getattr(self, item) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 358, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":15 +/* "hunter/_event.pxd":14 * cdef class Event: * cdef: * readonly FrameType frame # <<<<<<<<<<<<<< * readonly str kind * readonly object arg - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5frame_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10198,36 +10306,44 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_5frame_1__get__(PyObject *__pyx static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 15, 0, __PYX_ERR(1, 15, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 14, 0, 0, 0, __PYX_ERR(1, 14, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_self->frame); + __Pyx_INCREF(__pyx_v_self->frame); __pyx_r = ((PyObject *)__pyx_v_self->frame); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 14, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 14, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.frame.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":16 +/* "hunter/_event.pxd":15 * cdef: * readonly FrameType frame * readonly str kind # <<<<<<<<<<<<<< * readonly object arg * readonly int depth - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_4kind_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10246,36 +10362,44 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_4kind_1__get__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 16, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 15, 0, 0, 0, __PYX_ERR(1, 15, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->kind); __pyx_r = __pyx_v_self->kind; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 15, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.kind.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":17 +/* "hunter/_event.pxd":16 * readonly FrameType frame * readonly str kind * readonly object arg # <<<<<<<<<<<<<< * readonly int depth * readonly int calls - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_3arg_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10294,36 +10418,44 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_3arg_1__get__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 17, 0, __PYX_ERR(1, 17, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->arg); __pyx_r = __pyx_v_self->arg; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.arg.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":18 +/* "hunter/_event.pxd":17 * readonly str kind * readonly object arg * readonly int depth # <<<<<<<<<<<<<< * readonly int calls * readonly bint threading_support - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5depth_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10342,40 +10474,48 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_5depth_1__get__(PyObject *__pyx static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 18, 0, __PYX_ERR(1, 18, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 17, 0, 0, 0, __PYX_ERR(1, 17, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 18, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 17, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 17, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":19 +/* "hunter/_event.pxd":18 * readonly object arg * readonly int depth * readonly int calls # <<<<<<<<<<<<<< * readonly bint threading_support * readonly bint detached - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_5calls_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10394,40 +10534,48 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_5calls_1__get__(PyObject *__pyx static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 19, 0, __PYX_ERR(1, 19, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 18, 0, 0, 0, __PYX_ERR(1, 18, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 19, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 18, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 18, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":20 +/* "hunter/_event.pxd":19 * readonly int depth * readonly int calls * readonly bint threading_support # <<<<<<<<<<<<<< * readonly bint detached * readonly object builtin - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_17threading_support_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10446,40 +10594,48 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_17threading_support_1__get__(Py static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 20, 0, __PYX_ERR(1, 20, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 19, 0, 0, 0, __PYX_ERR(1, 19, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 20, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 19, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 19, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.threading_support.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":21 +/* "hunter/_event.pxd":20 * readonly int calls * readonly bint threading_support * readonly bint detached # <<<<<<<<<<<<<< * readonly object builtin * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_8detached_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10498,40 +10654,48 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_8detached_1__get__(PyObject *__ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 21, 0, __PYX_ERR(1, 21, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 20, 0, 0, 0, __PYX_ERR(1, 20, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 21, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 20, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 20, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.detached.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pxd":22 +/* "hunter/_event.pxd":21 * readonly bint threading_support * readonly bint detached * readonly object builtin # <<<<<<<<<<<<<< * * object _code - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_5Event_7builtin_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10550,37 +10714,45 @@ static PyObject *__pyx_pw_6hunter_6_event_5Event_7builtin_1__get__(PyObject *__p static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[1], 22, 0, __PYX_ERR(1, 22, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 21, 0, 0, 0, __PYX_ERR(1, 21, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 21, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 21, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.Event.builtin.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_event.pyx":363 +/* "hunter/_event.pyx":362 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, @@ -10590,7 +10762,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_1yield_lines = {"yield_lines", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_1yield_lines, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_6_event_1yield_lines = {"yield_lines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_1yield_lines, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -10615,7 +10787,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("yield_lines (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -10623,86 +10795,59 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_filename,&__pyx_n_s_module_globals,&__pyx_n_s_start,&__pyx_n_s_collector,&__pyx_n_s_limit,0}; - values[4] = __Pyx_Arg_NewRef_FASTCALL(((PyObject *)((PyObject *)__pyx_int_10))); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_filename_2,&__pyx_mstate_global->__pyx_n_u_module_globals,&__pyx_mstate_global->__pyx_n_u_start,&__pyx_mstate_global->__pyx_n_u_collector,&__pyx_mstate_global->__pyx_n_u_limit,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 362, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 5: values[4] = __Pyx_Arg_FASTCALL(__pyx_args, 4); + case 5: + values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 362, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 4: values[3] = __Pyx_Arg_FASTCALL(__pyx_args, 3); + case 4: + values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 362, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 362, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 362, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 362, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_filename)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_module_globals)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, 1); __PYX_ERR(0, 363, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_start)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, 2); __PYX_ERR(0, 363, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 3: - if (likely((values[3] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_collector)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[3]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, 3); __PYX_ERR(0, 363, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 4: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_limit); - if (value) { values[4] = __Pyx_Arg_NewRef_FASTCALL(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 363, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "yield_lines") < 0)) __PYX_ERR(0, 363, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "yield_lines", 0) < 0) __PYX_ERR(0, 362, __pyx_L3_error) + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); + for (Py_ssize_t i = __pyx_nargs; i < 4; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, i); __PYX_ERR(0, 362, __pyx_L3_error) } } } else { switch (__pyx_nargs) { - case 5: values[4] = __Pyx_Arg_FASTCALL(__pyx_args, 4); + case 5: + values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 362, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 4: values[3] = __Pyx_Arg_FASTCALL(__pyx_args, 3); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 4: + values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 362, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 362, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 362, __pyx_L3_error) + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 362, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); } __pyx_v_filename = values[0]; __pyx_v_module_globals = values[1]; @@ -10712,34 +10857,33 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 363, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 362, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_collector), (&PyList_Type), 1, "collector", 1))) __PYX_ERR(0, 363, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_collector), (&PyList_Type), 1, "collector", 1))) __PYX_ERR(0, 362, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_6_event_yield_lines(__pyx_self, __pyx_v_filename, __pyx_v_module_globals, __pyx_v_start, __pyx_v_collector, __pyx_v_limit); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10752,11 +10896,11 @@ static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__ const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("yield_lines", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(__pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 363, __pyx_L1_error) + __PYX_ERR(0, 362, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -10776,7 +10920,7 @@ static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__ __Pyx_INCREF(__pyx_cur_scope->__pyx_v_limit); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_limit); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_6_event_2generator, __pyx_codeobj__15, (PyObject *) __pyx_cur_scope, __pyx_n_s_yield_lines, __pyx_n_s_yield_lines, __pyx_n_s_hunter__event); if (unlikely(!gen)) __PYX_ERR(0, 363, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_6_event_2generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_hunter__event); if (unlikely(!gen)) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -10796,405 +10940,398 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py { struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_generator->closure); PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; + size_t __pyx_t_4; Py_ssize_t __pyx_t_5; PyObject *(*__pyx_t_6)(PyObject *); int __pyx_t_7; PyObject *__pyx_t_8 = NULL; - Py_ssize_t __pyx_t_9; - int __pyx_t_10; + PyObject *__pyx_t_9 = NULL; + Py_ssize_t __pyx_t_10; int __pyx_t_11; + int __pyx_t_12; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("yield_lines", 0); - __Pyx_TraceFrameInit(__pyx_codeobj__15) - __Pyx_TraceCall("yield_lines", __pyx_f[0], 363, 0, __PYX_ERR(0, 363, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L7_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 362, 0, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 363, __pyx_L1_error) + __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 362, 0, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); + if (unlikely(__pyx_sent_value != Py_None)) { + if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator"); + __PYX_ERR(0, 362, __pyx_L1_error) + } - /* "hunter/_event.pyx":365 + /* "hunter/_event.pyx":364 * def yield_lines(filename, module_globals, start, list collector, * limit=10): * dedent = None # <<<<<<<<<<<<<< * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: - */ - __Pyx_TraceLine(365,0,__PYX_ERR(0, 365, __pyx_L1_error)) +*/ + __Pyx_TraceLine(364,0,0,__PYX_ERR(0, 364, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __pyx_cur_scope->__pyx_v_dedent = Py_None; - /* "hunter/_event.pyx":366 + /* "hunter/_event.pyx":365 * limit=10): * dedent = None * amount = 0 # <<<<<<<<<<<<<< * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: - */ - __Pyx_TraceLine(366,0,__PYX_ERR(0, 366, __pyx_L1_error)) +*/ + __Pyx_TraceLine(365,0,0,__PYX_ERR(0, 365, __pyx_L1_error)) __pyx_cur_scope->__pyx_v_amount = 0; - /* "hunter/_event.pyx":367 + /* "hunter/_event.pyx":366 * dedent = None * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: # <<<<<<<<<<<<<< * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) - */ - __Pyx_TraceLine(367,0,__PYX_ERR(0, 367, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = NULL; - __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(366,0,0,__PYX_ERR(0, 366, __pyx_L1_error)) + __pyx_t_2 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_2))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_2, function); - __pyx_t_4 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_3))) { + __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); + assert(__pyx_t_2); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_3); + __Pyx_INCREF(__pyx_t_2); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_3, __pyx__function); + __pyx_t_4 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_3, __pyx_cur_scope->__pyx_v_filename, __pyx_cur_scope->__pyx_v_module_globals}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 2+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 367, __pyx_L1_error) + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_filename, __pyx_cur_scope->__pyx_v_module_globals}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 366, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } - __pyx_t_2 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetSlice(__pyx_t_1, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_t_2, NULL, 0, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) + __pyx_t_3 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_1, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_t_3, NULL, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (likely(PyList_CheckExact(__pyx_t_3)) || PyTuple_CheckExact(__pyx_t_3)) { - __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (likely(PyList_CheckExact(__pyx_t_2)) || PyTuple_CheckExact(__pyx_t_2)) { + __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0; __pyx_t_6 = NULL; } else { - __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 367, __pyx_L1_error) + __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 366, __pyx_L1_error) } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; for (;;) { if (likely(!__pyx_t_6)) { - if (likely(PyList_CheckExact(__pyx_t_2))) { + if (likely(PyList_CheckExact(__pyx_t_3))) { { - Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 367, __pyx_L1_error) + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 366, __pyx_L1_error) #endif if (__pyx_t_5 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely((0 < 0))) __PYX_ERR(0, 367, __pyx_L1_error) - #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - #endif + __pyx_t_2 = __Pyx_PyList_GetItemRef(__pyx_t_3, __pyx_t_5); + ++__pyx_t_5; } else { { - Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 367, __pyx_L1_error) + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_3); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 366, __pyx_L1_error) #endif if (__pyx_t_5 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely((0 < 0))) __PYX_ERR(0, 367, __pyx_L1_error) + __pyx_t_2 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_5)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 367, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_2 = __Pyx_PySequence_ITEM(__pyx_t_3, __pyx_t_5); #endif + ++__pyx_t_5; } + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) } else { - __pyx_t_3 = __pyx_t_6(__pyx_t_2); - if (unlikely(!__pyx_t_3)) { + __pyx_t_2 = __pyx_t_6(__pyx_t_3); + if (unlikely(!__pyx_t_2)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(0, 367, __pyx_L1_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 366, __pyx_L1_error) + PyErr_Clear(); } break; } - __Pyx_GOTREF(__pyx_t_3); } + __Pyx_GOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_line, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_line, __pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __pyx_t_2 = 0; + __Pyx_TraceLine(366,0,0,__PYX_ERR(0, 366, __pyx_L1_error)) - /* "hunter/_event.pyx":368 + /* "hunter/_event.pyx":367 * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: # <<<<<<<<<<<<<< * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' - */ - __Pyx_TraceLine(368,0,__PYX_ERR(0, 368, __pyx_L1_error)) +*/ + __Pyx_TraceLine(367,0,0,__PYX_ERR(0, 367, __pyx_L1_error)) __pyx_t_7 = (__pyx_cur_scope->__pyx_v_dedent == Py_None); if (__pyx_t_7) { - /* "hunter/_event.pyx":369 + /* "hunter/_event.pyx":368 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) # <<<<<<<<<<<<<< * dedent = dedent[0] if dedent else '' * amount = len(dedent) - */ - __Pyx_TraceLine(369,0,__PYX_ERR(0, 369, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 369, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_findall); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 369, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; +*/ + __Pyx_TraceLine(368,0,0,__PYX_ERR(0, 368, __pyx_L1_error)) __pyx_t_1 = NULL; - __pyx_t_4 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 368, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_findall); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 368, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_1)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); - __pyx_t_4 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_9))) { + __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_9); + assert(__pyx_t_1); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_9); + __Pyx_INCREF(__pyx_t_1); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_9, __pyx__function); + __pyx_t_4 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_line}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 369, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_dedent); - __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_dedent, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_dedent, __pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __pyx_t_2 = 0; - /* "hunter/_event.pyx":370 + /* "hunter/_event.pyx":369 * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' # <<<<<<<<<<<<<< * amount = len(dedent) * elif not line.startswith(dedent): - */ - __Pyx_TraceLine(370,0,__PYX_ERR(0, 370, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_dedent); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 370, __pyx_L1_error) +*/ + __Pyx_TraceLine(369,0,0,__PYX_ERR(0, 369, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_dedent); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 369, __pyx_L1_error) if (__pyx_t_7) { - __pyx_t_8 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_dedent, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 370, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_3 = __pyx_t_8; - __pyx_t_8 = 0; + __pyx_t_9 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_dedent, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 369, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_2 = __pyx_t_9; + __pyx_t_9 = 0; } else { - __Pyx_INCREF(__pyx_kp_s__7); - __pyx_t_3 = __pyx_kp_s__7; + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); + __pyx_t_2 = __pyx_mstate_global->__pyx_kp_u__3; } __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_dedent); - __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_dedent, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_dedent, __pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __pyx_t_2 = 0; - /* "hunter/_event.pyx":371 + /* "hunter/_event.pyx":370 * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' * amount = len(dedent) # <<<<<<<<<<<<<< * elif not line.startswith(dedent): * break - */ - __Pyx_TraceLine(371,0,__PYX_ERR(0, 371, __pyx_L1_error)) - __pyx_t_9 = PyObject_Length(__pyx_cur_scope->__pyx_v_dedent); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 371, __pyx_L1_error) - __pyx_cur_scope->__pyx_v_amount = __pyx_t_9; +*/ + __Pyx_TraceLine(370,0,0,__PYX_ERR(0, 370, __pyx_L1_error)) + __pyx_t_10 = PyObject_Length(__pyx_cur_scope->__pyx_v_dedent); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 370, __pyx_L1_error) + __pyx_cur_scope->__pyx_v_amount = __pyx_t_10; - /* "hunter/_event.pyx":368 + /* "hunter/_event.pyx":367 * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: # <<<<<<<<<<<<<< * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' - */ +*/ goto __pyx_L6; } - /* "hunter/_event.pyx":372 + /* "hunter/_event.pyx":371 * dedent = dedent[0] if dedent else '' * amount = len(dedent) * elif not line.startswith(dedent): # <<<<<<<<<<<<<< * break * collector.append(line) - */ - __Pyx_TraceLine(372,0,__PYX_ERR(0, 372, __pyx_L1_error)) - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s_startswith); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 372, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = NULL; +*/ + __Pyx_TraceLine(371,0,0,__PYX_ERR(0, 371, __pyx_L1_error)) + __pyx_t_9 = __pyx_cur_scope->__pyx_v_line; + __Pyx_INCREF(__pyx_t_9); __pyx_t_4 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_1)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); - __pyx_t_4 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_dedent}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 372, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_cur_scope->__pyx_v_dedent}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 372, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_10 = (!__pyx_t_7); - if (__pyx_t_10) { + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 371, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_11 = (!__pyx_t_7); + if (__pyx_t_11) { - /* "hunter/_event.pyx":373 + /* "hunter/_event.pyx":372 * amount = len(dedent) * elif not line.startswith(dedent): * break # <<<<<<<<<<<<<< * collector.append(line) * yield line[amount:] - */ - __Pyx_TraceLine(373,0,__PYX_ERR(0, 373, __pyx_L1_error)) +*/ + __Pyx_TraceLine(372,0,0,__PYX_ERR(0, 372, __pyx_L1_error)) goto __pyx_L5_break; - /* "hunter/_event.pyx":372 + /* "hunter/_event.pyx":371 * dedent = dedent[0] if dedent else '' * amount = len(dedent) * elif not line.startswith(dedent): # <<<<<<<<<<<<<< * break * collector.append(line) - */ +*/ } __pyx_L6:; - /* "hunter/_event.pyx":374 + /* "hunter/_event.pyx":373 * elif not line.startswith(dedent): * break * collector.append(line) # <<<<<<<<<<<<<< * yield line[amount:] * - */ - __Pyx_TraceLine(374,0,__PYX_ERR(0, 374, __pyx_L1_error)) +*/ + __Pyx_TraceLine(373,0,0,__PYX_ERR(0, 373, __pyx_L1_error)) if (unlikely(__pyx_cur_scope->__pyx_v_collector == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "append"); - __PYX_ERR(0, 374, __pyx_L1_error) + __PYX_ERR(0, 373, __pyx_L1_error) } - __pyx_t_11 = __Pyx_PyList_Append(__pyx_cur_scope->__pyx_v_collector, __pyx_cur_scope->__pyx_v_line); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(0, 374, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyList_Append(__pyx_cur_scope->__pyx_v_collector, __pyx_cur_scope->__pyx_v_line); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(0, 373, __pyx_L1_error) - /* "hunter/_event.pyx":375 + /* "hunter/_event.pyx":374 * break * collector.append(line) * yield line[amount:] # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(375,0,__PYX_ERR(0, 375, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_line, __pyx_cur_scope->__pyx_v_amount, 0, NULL, NULL, NULL, 1, 0, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 375, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - __Pyx_XGIVEREF(__pyx_t_2); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_2; +*/ + __Pyx_TraceLine(374,0,0,__PYX_ERR(0, 374, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_line, __pyx_cur_scope->__pyx_v_amount, 0, NULL, NULL, NULL, 1, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 374, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __pyx_t_2 = 0; + __Pyx_XGIVEREF(__pyx_t_3); + __pyx_cur_scope->__pyx_t_0 = __pyx_t_3; __pyx_cur_scope->__pyx_t_1 = __pyx_t_5; __pyx_cur_scope->__pyx_t_2 = __pyx_t_6; + __Pyx_TraceYield(__pyx_r, 0, __PYX_ERR(0, 374, __pyx_L1_error)); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); __Pyx_Coroutine_ResetAndClearException(__pyx_generator); /* return from generator, yielding value */ __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L7_resume_from_yield:; - __pyx_t_2 = __pyx_cur_scope->__pyx_t_0; + __Pyx_TraceResumeGen("yield_lines", __pyx_f[0], 362, 0, __PYX_ERR(0, 374, __pyx_L1_error)); + __pyx_t_3 = __pyx_cur_scope->__pyx_t_0; __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_2); + __Pyx_XGOTREF(__pyx_t_3); __pyx_t_5 = __pyx_cur_scope->__pyx_t_1; __pyx_t_6 = __pyx_cur_scope->__pyx_t_2; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 375, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 374, __pyx_L1_error) - /* "hunter/_event.pyx":367 + /* "hunter/_event.pyx":366 * dedent = None * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: # <<<<<<<<<<<<<< * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) - */ - __Pyx_TraceLine(367,0,__PYX_ERR(0, 367, __pyx_L1_error)) +*/ + __Pyx_TraceLine(366,0,0,__PYX_ERR(0, 366, __pyx_L1_error)) } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L8_for_end; __pyx_L5_break:; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L8_for_end; __pyx_L8_for_end:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); - /* "hunter/_event.pyx":363 + /* "hunter/_event.pyx":362 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None - */ +*/ /* function exit code */ - PyErr_SetNone(PyExc_StopIteration); + __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_Generator_Replace_StopIteration(0); __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_XDECREF(__pyx_t_9); + if (__Pyx_PyErr_Occurred()) { + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_AddTraceback("yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionUnwind(0, 0); + } __pyx_L0:; - __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); #if !CYTHON_USE_EXC_INFO_STACK __Pyx_Coroutine_ResetAndClearException(__pyx_generator); #endif __pyx_generator->resume_label = -1; __Pyx_Coroutine_clear((PyObject*)__pyx_generator); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":378 +/* "hunter/_event.pyx":377 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * - */ +*/ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_event_fast_detach(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v_value_filter) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = NULL; @@ -11203,7 +11340,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e PyObject *__pyx_8genexpr1__pyx_v_key = NULL; PyObject *__pyx_8genexpr1__pyx_v_value = NULL; struct __pyx_obj_6hunter_6_event_Event *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -11215,21 +11352,23 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e PyObject *__pyx_t_8 = NULL; int __pyx_t_9; PyObject *__pyx_t_10 = NULL; + size_t __pyx_t_11; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_detach", 1); - __Pyx_TraceCall("fast_detach", __pyx_f[0], 378, 0, __PYX_ERR(0, 378, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])) + __Pyx_RefNannySetupContext("fast_detach", 0); + __Pyx_TraceStartFunc("fast_detach", __pyx_f[0], 377, 0, 0, 0, __PYX_ERR(0, 377, __pyx_L1_error)); - /* "hunter/_event.pyx":379 + /* "hunter/_event.pyx":378 * * cdef inline Event fast_detach(Event self, object value_filter): * event = Event.__new__(Event) # <<<<<<<<<<<<<< * * event._code = self.code_getter() - */ - __Pyx_TraceLine(379,0,__PYX_ERR(0, 379, __pyx_L1_error)) - __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 379, __pyx_L1_error) +*/ + __Pyx_TraceLine(378,5,0,__PYX_ERR(0, 378, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 378, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); __pyx_t_2 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_2); @@ -11237,15 +11376,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":381 + /* "hunter/_event.pyx":380 * event = Event.__new__(Event) * * event._code = self.code_getter() # <<<<<<<<<<<<<< * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() - */ - __Pyx_TraceLine(381,0,__PYX_ERR(0, 381, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 381, __pyx_L1_error) +*/ + __Pyx_TraceLine(380,11,0,__PYX_ERR(0, 380, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_code); @@ -11253,15 +11392,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_code = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":382 + /* "hunter/_event.pyx":381 * * event._code = self.code_getter() * event._filename = self.filename_getter() # <<<<<<<<<<<<<< * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object - */ - __Pyx_TraceLine(382,0,__PYX_ERR(0, 382, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 382, __pyx_L1_error) +*/ + __Pyx_TraceLine(381,16,0,__PYX_ERR(0, 381, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 381, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_filename); @@ -11269,15 +11408,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":383 + /* "hunter/_event.pyx":382 * event._code = self.code_getter() * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() # <<<<<<<<<<<<<< * event._function_object = self._function_object * event._function = self.function_getter() - */ - __Pyx_TraceLine(383,0,__PYX_ERR(0, 383, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 383, __pyx_L1_error) +*/ + __Pyx_TraceLine(382,21,0,__PYX_ERR(0, 382, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 382, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_fullsource); @@ -11285,14 +11424,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_fullsource = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":384 + /* "hunter/_event.pyx":383 * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object # <<<<<<<<<<<<<< * event._function = self.function_getter() * event._lineno = self.lineno_getter() - */ - __Pyx_TraceLine(384,0,__PYX_ERR(0, 384, __pyx_L1_error)) +*/ + __Pyx_TraceLine(383,25,0,__PYX_ERR(0, 383, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function_object; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11301,15 +11440,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function_object = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":385 + /* "hunter/_event.pyx":384 * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object * event._function = self.function_getter() # <<<<<<<<<<<<<< * event._lineno = self.lineno_getter() * event._module = self.module_getter() - */ - __Pyx_TraceLine(385,0,__PYX_ERR(0, 385, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 385, __pyx_L1_error) +*/ + __Pyx_TraceLine(384,30,0,__PYX_ERR(0, 384, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 384, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_function); @@ -11317,15 +11456,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":386 + /* "hunter/_event.pyx":385 * event._function_object = self._function_object * event._function = self.function_getter() * event._lineno = self.lineno_getter() # <<<<<<<<<<<<<< * event._module = self.module_getter() * event._source = self.source_getter() - */ - __Pyx_TraceLine(386,0,__PYX_ERR(0, 386, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 386, __pyx_L1_error) +*/ + __Pyx_TraceLine(385,35,0,__PYX_ERR(0, 385, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_lineno); @@ -11333,15 +11472,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_lineno = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":387 + /* "hunter/_event.pyx":386 * event._function = self.function_getter() * event._lineno = self.lineno_getter() * event._module = self.module_getter() # <<<<<<<<<<<<<< * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() - */ - __Pyx_TraceLine(387,0,__PYX_ERR(0, 387, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 387, __pyx_L1_error) +*/ + __Pyx_TraceLine(386,40,0,__PYX_ERR(0, 386, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_module); @@ -11349,15 +11488,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":388 + /* "hunter/_event.pyx":387 * event._lineno = self.lineno_getter() * event._module = self.module_getter() * event._source = self.source_getter() # <<<<<<<<<<<<<< * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() - */ - __Pyx_TraceLine(388,0,__PYX_ERR(0, 388, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 388, __pyx_L1_error) +*/ + __Pyx_TraceLine(387,45,0,__PYX_ERR(0, 387, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_source); @@ -11365,15 +11504,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_source = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":389 + /* "hunter/_event.pyx":388 * event._module = self.module_getter() * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() # <<<<<<<<<<<<<< * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() - */ - __Pyx_TraceLine(389,0,__PYX_ERR(0, 389, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 389, __pyx_L1_error) +*/ + __Pyx_TraceLine(388,50,0,__PYX_ERR(0, 388, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 388, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_stdlib); @@ -11381,15 +11520,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_stdlib = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":390 + /* "hunter/_event.pyx":389 * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() # <<<<<<<<<<<<<< * event._threadname = self.threadname_getter() * event._instruction = self.instruction_getter() - */ - __Pyx_TraceLine(390,0,__PYX_ERR(0, 390, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 390, __pyx_L1_error) +*/ + __Pyx_TraceLine(389,55,0,__PYX_ERR(0, 389, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 389, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_threadidn); @@ -11397,15 +11536,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadidn = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":391 + /* "hunter/_event.pyx":390 * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() # <<<<<<<<<<<<<< * event._instruction = self.instruction_getter() * - */ - __Pyx_TraceLine(391,0,__PYX_ERR(0, 391, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 391, __pyx_L1_error) +*/ + __Pyx_TraceLine(390,60,0,__PYX_ERR(0, 390, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 390, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_threadname); @@ -11413,15 +11552,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":392 + /* "hunter/_event.pyx":391 * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() * event._instruction = self.instruction_getter() # <<<<<<<<<<<<<< * * if value_filter: - */ - __Pyx_TraceLine(392,0,__PYX_ERR(0, 392, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 392, __pyx_L1_error) +*/ + __Pyx_TraceLine(391,65,0,__PYX_ERR(0, 391, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_instruction); @@ -11429,36 +11568,36 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_instruction = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":394 + /* "hunter/_event.pyx":393 * event._instruction = self.instruction_getter() * * if value_filter: # <<<<<<<<<<<<<< * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} - */ - __Pyx_TraceLine(394,0,__PYX_ERR(0, 394, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_value_filter); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 394, __pyx_L1_error) +*/ + __Pyx_TraceLine(393,67,0,__PYX_ERR(0, 393, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_value_filter); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 393, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_event.pyx":395 + /* "hunter/_event.pyx":394 * * if value_filter: * event._globals = {key: value_filter(value) for key, value in self.globals.items()} # <<<<<<<<<<<<<< * event._locals = {key: value_filter(value) for key, value in self.locals.items()} * event.arg = value_filter(self.arg) - */ - __Pyx_TraceLine(395,0,__PYX_ERR(0, 395, __pyx_L1_error)) +*/ + __Pyx_TraceLine(394,70,0,__PYX_ERR(0, 394, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 395, __pyx_L6_error) + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 394, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_globals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 395, __pyx_L6_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 394, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_7); if (unlikely(__pyx_t_7 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items"); - __PYX_ERR(0, 395, __pyx_L6_error) + __PYX_ERR(0, 394, __pyx_L6_error) } - __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_n_s_items, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 395, __pyx_L6_error) + __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 394, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_1); @@ -11467,37 +11606,37 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e while (1) { __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_5, &__pyx_t_4, &__pyx_t_8, &__pyx_t_7, NULL, __pyx_t_6); if (unlikely(__pyx_t_9 == 0)) break; - if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 395, __pyx_L6_error) + if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 394, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_key, __pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_value, __pyx_t_7); __pyx_t_7 = 0; + __pyx_t_8 = NULL; __Pyx_INCREF(__pyx_v_value_filter); - __pyx_t_8 = __pyx_v_value_filter; __pyx_t_10 = NULL; - __pyx_t_9 = 0; + __pyx_t_10 = __pyx_v_value_filter; + __pyx_t_11 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_10)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_10); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); - __pyx_t_9 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_10))) { + __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_10); + assert(__pyx_t_8); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_10); + __Pyx_INCREF(__pyx_t_8); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_10, __pyx__function); + __pyx_t_11 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_7genexpr__pyx_v_value}; - __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_9, 1+__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 395, __pyx_L6_error) + PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_7genexpr__pyx_v_value}; + __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 394, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } - if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_7genexpr__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 395, __pyx_L6_error) + if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_7genexpr__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 394, __pyx_L6_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11516,64 +11655,64 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":396 + /* "hunter/_event.pyx":395 * if value_filter: * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} # <<<<<<<<<<<<<< * event.arg = value_filter(self.arg) * else: - */ - __Pyx_TraceLine(396,0,__PYX_ERR(0, 396, __pyx_L1_error)) +*/ + __Pyx_TraceLine(395,84,0,__PYX_ERR(0, 395, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 396, __pyx_L12_error) + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 395, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_locals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 396, __pyx_L12_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 395, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_7); if (unlikely(__pyx_t_7 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items"); - __PYX_ERR(0, 396, __pyx_L12_error) + __PYX_ERR(0, 395, __pyx_L12_error) } - __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_n_s_items, (&__pyx_t_4), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 396, __pyx_L12_error) - __Pyx_GOTREF(__pyx_t_8); + __pyx_t_10 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_4), (&__pyx_t_6)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 395, __pyx_L12_error) + __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_1); - __pyx_t_1 = __pyx_t_8; - __pyx_t_8 = 0; + __pyx_t_1 = __pyx_t_10; + __pyx_t_10 = 0; while (1) { - __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_4, &__pyx_t_5, &__pyx_t_8, &__pyx_t_7, NULL, __pyx_t_6); + __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_4, &__pyx_t_5, &__pyx_t_10, &__pyx_t_7, NULL, __pyx_t_6); if (unlikely(__pyx_t_9 == 0)) break; - if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 396, __pyx_L12_error) - __Pyx_GOTREF(__pyx_t_8); + if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 395, __pyx_L12_error) + __Pyx_GOTREF(__pyx_t_10); __Pyx_GOTREF(__pyx_t_7); - __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_key, __pyx_t_8); - __pyx_t_8 = 0; + __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_key, __pyx_t_10); + __pyx_t_10 = 0; __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_value, __pyx_t_7); __pyx_t_7 = 0; + __pyx_t_10 = NULL; __Pyx_INCREF(__pyx_v_value_filter); - __pyx_t_8 = __pyx_v_value_filter; __pyx_t_10 = NULL; - __pyx_t_9 = 0; + __pyx_t_8 = __pyx_v_value_filter; + __pyx_t_11 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_10)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_10); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); - __pyx_t_9 = 1; - } + assert(__pyx_t_10); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_8); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_8, __pyx__function); + __pyx_t_11 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_8genexpr1__pyx_v_value}; - __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_9, 1+__pyx_t_9); + __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 396, __pyx_L12_error) - __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 395, __pyx_L12_error) + __Pyx_GOTREF(__pyx_t_7); } - if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 396, __pyx_L12_error) + if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 395, __pyx_L12_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11592,36 +11731,36 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":397 + /* "hunter/_event.pyx":396 * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} * event.arg = value_filter(self.arg) # <<<<<<<<<<<<<< * else: * event._globals = {} - */ - __Pyx_TraceLine(397,0,__PYX_ERR(0, 397, __pyx_L1_error)) +*/ + __Pyx_TraceLine(396,99,0,__PYX_ERR(0, 396, __pyx_L1_error)) + __pyx_t_1 = NULL; __Pyx_INCREF(__pyx_v_value_filter); - __pyx_t_1 = __pyx_v_value_filter; __pyx_t_7 = NULL; - __pyx_t_6 = 0; + __pyx_t_7 = __pyx_v_value_filter; + __pyx_t_11 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_7))) { + __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); + assert(__pyx_t_1); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_7); + __Pyx_INCREF(__pyx_t_1); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_7, __pyx__function); + __pyx_t_11 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_v_self->arg}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 397, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_v_self->arg}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 396, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->arg); @@ -11629,26 +11768,26 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":394 + /* "hunter/_event.pyx":393 * event._instruction = self.instruction_getter() * * if value_filter: # <<<<<<<<<<<<<< * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} - */ +*/ goto __pyx_L3; } - /* "hunter/_event.pyx":399 + /* "hunter/_event.pyx":398 * event.arg = value_filter(self.arg) * else: * event._globals = {} # <<<<<<<<<<<<<< * event._locals = {} * event.arg = None - */ - __Pyx_TraceLine(399,0,__PYX_ERR(0, 399, __pyx_L1_error)) +*/ + __Pyx_TraceLine(398,102,0,__PYX_ERR(0, 398, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 399, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_globals); @@ -11656,15 +11795,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":400 + /* "hunter/_event.pyx":399 * else: * event._globals = {} * event._locals = {} # <<<<<<<<<<<<<< * event.arg = None * - */ - __Pyx_TraceLine(400,0,__PYX_ERR(0, 400, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 400, __pyx_L1_error) +*/ + __Pyx_TraceLine(399,107,0,__PYX_ERR(0, 399, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_locals); @@ -11672,14 +11811,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":401 + /* "hunter/_event.pyx":400 * event._globals = {} * event._locals = {} * event.arg = None # <<<<<<<<<<<<<< * * event.builtin = self.builtin - */ - __Pyx_TraceLine(401,0,__PYX_ERR(0, 401, __pyx_L1_error)) +*/ + __Pyx_TraceLine(400,108,0,__PYX_ERR(0, 400, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_event->arg); @@ -11688,14 +11827,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e } __pyx_L3:; - /* "hunter/_event.pyx":403 + /* "hunter/_event.pyx":402 * event.arg = None * * event.builtin = self.builtin # <<<<<<<<<<<<<< * event.calls = self.calls * event.depth = self.depth - */ - __Pyx_TraceLine(403,0,__PYX_ERR(0, 403, __pyx_L1_error)) +*/ + __Pyx_TraceLine(402,114,0,__PYX_ERR(0, 402, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->builtin; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11704,46 +11843,46 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->builtin = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":404 + /* "hunter/_event.pyx":403 * * event.builtin = self.builtin * event.calls = self.calls # <<<<<<<<<<<<<< * event.depth = self.depth * event.detached = True - */ - __Pyx_TraceLine(404,0,__PYX_ERR(0, 404, __pyx_L1_error)) +*/ + __Pyx_TraceLine(403,118,0,__PYX_ERR(0, 403, __pyx_L1_error)) __pyx_t_6 = __pyx_v_self->calls; __pyx_v_event->calls = __pyx_t_6; - /* "hunter/_event.pyx":405 + /* "hunter/_event.pyx":404 * event.builtin = self.builtin * event.calls = self.calls * event.depth = self.depth # <<<<<<<<<<<<<< * event.detached = True * event.kind = self.kind - */ - __Pyx_TraceLine(405,0,__PYX_ERR(0, 405, __pyx_L1_error)) +*/ + __Pyx_TraceLine(404,122,0,__PYX_ERR(0, 404, __pyx_L1_error)) __pyx_t_6 = __pyx_v_self->depth; __pyx_v_event->depth = __pyx_t_6; - /* "hunter/_event.pyx":406 + /* "hunter/_event.pyx":405 * event.calls = self.calls * event.depth = self.depth * event.detached = True # <<<<<<<<<<<<<< * event.kind = self.kind * event.threading_support = self.threading_support - */ - __Pyx_TraceLine(406,0,__PYX_ERR(0, 406, __pyx_L1_error)) +*/ + __Pyx_TraceLine(405,123,0,__PYX_ERR(0, 405, __pyx_L1_error)) __pyx_v_event->detached = 1; - /* "hunter/_event.pyx":407 + /* "hunter/_event.pyx":406 * event.depth = self.depth * event.detached = True * event.kind = self.kind # <<<<<<<<<<<<<< * event.threading_support = self.threading_support * - */ - __Pyx_TraceLine(407,0,__PYX_ERR(0, 407, __pyx_L1_error)) +*/ + __Pyx_TraceLine(406,129,0,__PYX_ERR(0, 406, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->kind; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11752,37 +11891,38 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->kind = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":408 + /* "hunter/_event.pyx":407 * event.detached = True * event.kind = self.kind * event.threading_support = self.threading_support # <<<<<<<<<<<<<< * * return event - */ - __Pyx_TraceLine(408,0,__PYX_ERR(0, 408, __pyx_L1_error)) +*/ + __Pyx_TraceLine(407,133,0,__PYX_ERR(0, 407, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->threading_support; __pyx_v_event->threading_support = __pyx_t_3; - /* "hunter/_event.pyx":410 + /* "hunter/_event.pyx":409 * event.threading_support = self.threading_support * * return event # <<<<<<<<<<<<<< * * cdef inline Event fast_clone(Event self): - */ - __Pyx_TraceLine(410,0,__PYX_ERR(0, 410, __pyx_L1_error)) +*/ + __Pyx_TraceLine(409,134,0,__PYX_ERR(0, 409, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_event); __pyx_r = __pyx_v_event; + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 134, 0, __PYX_ERR(0, 409, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":378 + /* "hunter/_event.pyx":377 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -11791,6 +11931,12 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); __Pyx_XDECREF(__pyx_t_10); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 377, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.fast_detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; @@ -11800,23 +11946,23 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_key); __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_value); __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":412 +/* "hunter/_event.pyx":411 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * event.arg = self.arg - */ +*/ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_event_fast_clone(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = NULL; struct __pyx_obj_6hunter_6_event_Event *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -11825,18 +11971,19 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_clone", 1); - __Pyx_TraceCall("fast_clone", __pyx_f[0], 412, 0, __PYX_ERR(0, 412, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])) + __Pyx_RefNannySetupContext("fast_clone", 0); + __Pyx_TraceStartFunc("fast_clone", __pyx_f[0], 411, 0, 0, 0, __PYX_ERR(0, 411, __pyx_L1_error)); - /* "hunter/_event.pyx":413 + /* "hunter/_event.pyx":412 * * cdef inline Event fast_clone(Event self): * event = Event.__new__(Event) # <<<<<<<<<<<<<< * event.arg = self.arg * event.builtin = self.builtin - */ - __Pyx_TraceLine(413,0,__PYX_ERR(0, 413, __pyx_L1_error)) - __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 413, __pyx_L1_error) +*/ + __Pyx_TraceLine(412,5,0,__PYX_ERR(0, 412, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 412, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); __pyx_t_2 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_2); @@ -11844,14 +11991,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":414 + /* "hunter/_event.pyx":413 * cdef inline Event fast_clone(Event self): * event = Event.__new__(Event) * event.arg = self.arg # <<<<<<<<<<<<<< * event.builtin = self.builtin * event.calls = self.calls - */ - __Pyx_TraceLine(414,0,__PYX_ERR(0, 414, __pyx_L1_error)) +*/ + __Pyx_TraceLine(413,10,0,__PYX_ERR(0, 413, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->arg; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11860,14 +12007,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":415 + /* "hunter/_event.pyx":414 * event = Event.__new__(Event) * event.arg = self.arg * event.builtin = self.builtin # <<<<<<<<<<<<<< * event.calls = self.calls * event.depth = self.depth - */ - __Pyx_TraceLine(415,0,__PYX_ERR(0, 415, __pyx_L1_error)) +*/ + __Pyx_TraceLine(414,14,0,__PYX_ERR(0, 414, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->builtin; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11876,62 +12023,62 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->builtin = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":416 + /* "hunter/_event.pyx":415 * event.arg = self.arg * event.builtin = self.builtin * event.calls = self.calls # <<<<<<<<<<<<<< * event.depth = self.depth * event.detached = False - */ - __Pyx_TraceLine(416,0,__PYX_ERR(0, 416, __pyx_L1_error)) +*/ + __Pyx_TraceLine(415,18,0,__PYX_ERR(0, 415, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->calls; __pyx_v_event->calls = __pyx_t_3; - /* "hunter/_event.pyx":417 + /* "hunter/_event.pyx":416 * event.builtin = self.builtin * event.calls = self.calls * event.depth = self.depth # <<<<<<<<<<<<<< * event.detached = False * event.frame = self.frame - */ - __Pyx_TraceLine(417,0,__PYX_ERR(0, 417, __pyx_L1_error)) +*/ + __Pyx_TraceLine(416,22,0,__PYX_ERR(0, 416, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->depth; __pyx_v_event->depth = __pyx_t_3; - /* "hunter/_event.pyx":418 + /* "hunter/_event.pyx":417 * event.calls = self.calls * event.depth = self.depth * event.detached = False # <<<<<<<<<<<<<< * event.frame = self.frame * event.kind = self.kind - */ - __Pyx_TraceLine(418,0,__PYX_ERR(0, 418, __pyx_L1_error)) +*/ + __Pyx_TraceLine(417,23,0,__PYX_ERR(0, 417, __pyx_L1_error)) __pyx_v_event->detached = 0; - /* "hunter/_event.pyx":419 + /* "hunter/_event.pyx":418 * event.depth = self.depth * event.detached = False * event.frame = self.frame # <<<<<<<<<<<<<< * event.kind = self.kind * event.threading_support = self.threading_support - */ - __Pyx_TraceLine(419,0,__PYX_ERR(0, 419, __pyx_L1_error)) +*/ + __Pyx_TraceLine(418,29,0,__PYX_ERR(0, 418, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); - __Pyx_GOTREF((PyObject *)__pyx_v_event->frame); - __Pyx_DECREF((PyObject *)__pyx_v_event->frame); - __pyx_v_event->frame = ((PyFrameObject *)__pyx_t_2); + __Pyx_GOTREF(__pyx_v_event->frame); + __Pyx_DECREF(__pyx_v_event->frame); + __pyx_v_event->frame = ((FrameType)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":420 + /* "hunter/_event.pyx":419 * event.detached = False * event.frame = self.frame * event.kind = self.kind # <<<<<<<<<<<<<< * event.threading_support = self.threading_support * event._code = self._code - */ - __Pyx_TraceLine(420,0,__PYX_ERR(0, 420, __pyx_L1_error)) +*/ + __Pyx_TraceLine(419,33,0,__PYX_ERR(0, 419, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->kind; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11940,25 +12087,25 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->kind = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":421 + /* "hunter/_event.pyx":420 * event.frame = self.frame * event.kind = self.kind * event.threading_support = self.threading_support # <<<<<<<<<<<<<< * event._code = self._code * event._filename = self._filename - */ - __Pyx_TraceLine(421,0,__PYX_ERR(0, 421, __pyx_L1_error)) +*/ + __Pyx_TraceLine(420,37,0,__PYX_ERR(0, 420, __pyx_L1_error)) __pyx_t_4 = __pyx_v_self->threading_support; __pyx_v_event->threading_support = __pyx_t_4; - /* "hunter/_event.pyx":422 + /* "hunter/_event.pyx":421 * event.kind = self.kind * event.threading_support = self.threading_support * event._code = self._code # <<<<<<<<<<<<<< * event._filename = self._filename * event._fullsource = self._fullsource - */ - __Pyx_TraceLine(422,0,__PYX_ERR(0, 422, __pyx_L1_error)) +*/ + __Pyx_TraceLine(421,41,0,__PYX_ERR(0, 421, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_code; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11967,14 +12114,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_code = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":423 + /* "hunter/_event.pyx":422 * event.threading_support = self.threading_support * event._code = self._code * event._filename = self._filename # <<<<<<<<<<<<<< * event._fullsource = self._fullsource * event._function_object = self._function_object - */ - __Pyx_TraceLine(423,0,__PYX_ERR(0, 423, __pyx_L1_error)) +*/ + __Pyx_TraceLine(422,45,0,__PYX_ERR(0, 422, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_filename; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11983,14 +12130,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":424 + /* "hunter/_event.pyx":423 * event._code = self._code * event._filename = self._filename * event._fullsource = self._fullsource # <<<<<<<<<<<<<< * event._function_object = self._function_object * event._function = self._function - */ - __Pyx_TraceLine(424,0,__PYX_ERR(0, 424, __pyx_L1_error)) +*/ + __Pyx_TraceLine(423,49,0,__PYX_ERR(0, 423, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_fullsource; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11999,14 +12146,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_fullsource = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":425 + /* "hunter/_event.pyx":424 * event._filename = self._filename * event._fullsource = self._fullsource * event._function_object = self._function_object # <<<<<<<<<<<<<< * event._function = self._function * event._globals = self._globals - */ - __Pyx_TraceLine(425,0,__PYX_ERR(0, 425, __pyx_L1_error)) +*/ + __Pyx_TraceLine(424,53,0,__PYX_ERR(0, 424, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function_object; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12015,14 +12162,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function_object = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":426 + /* "hunter/_event.pyx":425 * event._fullsource = self._fullsource * event._function_object = self._function_object * event._function = self._function # <<<<<<<<<<<<<< * event._globals = self._globals * event._lineno = self._lineno - */ - __Pyx_TraceLine(426,0,__PYX_ERR(0, 426, __pyx_L1_error)) +*/ + __Pyx_TraceLine(425,57,0,__PYX_ERR(0, 425, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12031,14 +12178,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":427 + /* "hunter/_event.pyx":426 * event._function_object = self._function_object * event._function = self._function * event._globals = self._globals # <<<<<<<<<<<<<< * event._lineno = self._lineno * event._locals = self._locals - */ - __Pyx_TraceLine(427,0,__PYX_ERR(0, 427, __pyx_L1_error)) +*/ + __Pyx_TraceLine(426,61,0,__PYX_ERR(0, 426, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_globals; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12047,14 +12194,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":428 + /* "hunter/_event.pyx":427 * event._function = self._function * event._globals = self._globals * event._lineno = self._lineno # <<<<<<<<<<<<<< * event._locals = self._locals * event._module = self._module - */ - __Pyx_TraceLine(428,0,__PYX_ERR(0, 428, __pyx_L1_error)) +*/ + __Pyx_TraceLine(427,65,0,__PYX_ERR(0, 427, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_lineno; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12063,14 +12210,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_lineno = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":429 + /* "hunter/_event.pyx":428 * event._globals = self._globals * event._lineno = self._lineno * event._locals = self._locals # <<<<<<<<<<<<<< * event._module = self._module * event._source = self._source - */ - __Pyx_TraceLine(429,0,__PYX_ERR(0, 429, __pyx_L1_error)) +*/ + __Pyx_TraceLine(428,69,0,__PYX_ERR(0, 428, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_locals; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12079,14 +12226,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":430 + /* "hunter/_event.pyx":429 * event._lineno = self._lineno * event._locals = self._locals * event._module = self._module # <<<<<<<<<<<<<< * event._source = self._source * event._stdlib = self._stdlib - */ - __Pyx_TraceLine(430,0,__PYX_ERR(0, 430, __pyx_L1_error)) +*/ + __Pyx_TraceLine(429,73,0,__PYX_ERR(0, 429, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_module; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12095,14 +12242,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":431 + /* "hunter/_event.pyx":430 * event._locals = self._locals * event._module = self._module * event._source = self._source # <<<<<<<<<<<<<< * event._stdlib = self._stdlib * event._threadidn = self._threadidn - */ - __Pyx_TraceLine(431,0,__PYX_ERR(0, 431, __pyx_L1_error)) +*/ + __Pyx_TraceLine(430,77,0,__PYX_ERR(0, 430, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_source; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12111,14 +12258,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_source = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":432 + /* "hunter/_event.pyx":431 * event._module = self._module * event._source = self._source * event._stdlib = self._stdlib # <<<<<<<<<<<<<< * event._threadidn = self._threadidn * event._threadname = self._threadname - */ - __Pyx_TraceLine(432,0,__PYX_ERR(0, 432, __pyx_L1_error)) +*/ + __Pyx_TraceLine(431,81,0,__PYX_ERR(0, 431, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_stdlib; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12127,14 +12274,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_stdlib = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":433 + /* "hunter/_event.pyx":432 * event._source = self._source * event._stdlib = self._stdlib * event._threadidn = self._threadidn # <<<<<<<<<<<<<< * event._threadname = self._threadname * event._thread = self._thread - */ - __Pyx_TraceLine(433,0,__PYX_ERR(0, 433, __pyx_L1_error)) +*/ + __Pyx_TraceLine(432,85,0,__PYX_ERR(0, 432, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_threadidn; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12143,14 +12290,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadidn = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":434 + /* "hunter/_event.pyx":433 * event._stdlib = self._stdlib * event._threadidn = self._threadidn * event._threadname = self._threadname # <<<<<<<<<<<<<< * event._thread = self._thread * event._instruction = self._instruction - */ - __Pyx_TraceLine(434,0,__PYX_ERR(0, 434, __pyx_L1_error)) +*/ + __Pyx_TraceLine(433,89,0,__PYX_ERR(0, 433, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_threadname; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12159,14 +12306,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":435 + /* "hunter/_event.pyx":434 * event._threadidn = self._threadidn * event._threadname = self._threadname * event._thread = self._thread # <<<<<<<<<<<<<< * event._instruction = self._instruction * return event - */ - __Pyx_TraceLine(435,0,__PYX_ERR(0, 435, __pyx_L1_error)) +*/ + __Pyx_TraceLine(434,93,0,__PYX_ERR(0, 434, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_thread; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12175,13 +12322,13 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_thread = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":436 + /* "hunter/_event.pyx":435 * event._threadname = self._threadname * event._thread = self._thread * event._instruction = self._instruction # <<<<<<<<<<<<<< * return event - */ - __Pyx_TraceLine(436,0,__PYX_ERR(0, 436, __pyx_L1_error)) +*/ + __Pyx_TraceLine(435,97,0,__PYX_ERR(0, 435, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_instruction; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12190,38 +12337,46 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_instruction = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":437 + /* "hunter/_event.pyx":436 * event._thread = self._thread * event._instruction = self._instruction * return event # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(437,0,__PYX_ERR(0, 437, __pyx_L1_error)) +*/ + __Pyx_TraceLine(436,98,0,__PYX_ERR(0, 436, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_event); __pyx_r = __pyx_v_event; + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 98, 0, __PYX_ERR(0, 436, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":412 + /* "hunter/_event.pyx":411 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * event.arg = self.arg - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 411, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._event.fast_clone", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF((PyObject *)__pyx_v_event); __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } +/* #### Code section: module_exttypes ### */ static struct __pyx_vtabstruct_6hunter_6_event_Event __pyx_vtable_6hunter_6_event_Event; static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { @@ -12236,7 +12391,7 @@ static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, CYTHON_UNUS #endif p = ((struct __pyx_obj_6hunter_6_event_Event *)o); p->__pyx_vtab = __pyx_vtabptr_6hunter_6_event_Event; - p->frame = ((PyFrameObject *)Py_None); Py_INCREF(Py_None); + p->frame = ((FrameType)Py_None); Py_INCREF(Py_None); p->kind = ((PyObject*)Py_None); Py_INCREF(Py_None); p->arg = Py_None; Py_INCREF(Py_None); p->builtin = Py_None; Py_INCREF(Py_None); @@ -12280,7 +12435,7 @@ static void __pyx_tp_dealloc_6hunter_6_event_Event(PyObject *o) { Py_CLEAR(p->_threadidn); Py_CLEAR(p->_threadname); Py_CLEAR(p->_instruction); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -12293,6 +12448,10 @@ static void __pyx_tp_dealloc_6hunter_6_event_Event(PyObject *o) { static int __pyx_tp_traverse_6hunter_6_event_Event(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->frame) { e = (*v)(((PyObject *)p->frame), a); if (e) return e; } @@ -12354,7 +12513,7 @@ static int __pyx_tp_clear_6hunter_6_event_Event(PyObject *o) { PyObject* tmp; struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; tmp = ((PyObject*)p->frame); - p->frame = ((PyFrameObject *)Py_None); Py_INCREF(Py_None); + p->frame = ((FrameType)Py_None); Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->arg); p->arg = Py_None; Py_INCREF(Py_None); @@ -12409,10 +12568,15 @@ static int __pyx_tp_clear_6hunter_6_event_Event(PyObject *o) { Py_XDECREF(tmp); return 0; } + static PyObject *__pyx_sq_item_6hunter_6_event_Event(PyObject *o, Py_ssize_t i) { PyObject *r; - PyObject *x = PyInt_FromSsize_t(i); if(!x) return 0; + PyObject *x = PyLong_FromSsize_t(i); if(!x) return 0; + #if CYTHON_USE_TYPE_SLOTS || (!CYTHON_USE_TYPE_SPECS && __PYX_LIMITED_VERSION_HEX < 0x030A0000) r = Py_TYPE(o)->tp_as_mapping->mp_subscript(o, x); + #else + r = ((binaryfunc)PyType_GetSlot(Py_TYPE(o), Py_mp_subscript))(o, x); + #endif Py_DECREF(x); return r; } @@ -12528,40 +12692,35 @@ static PyObject *__pyx_getprop_6hunter_6_event_5Event_builtin(PyObject *o, CYTHO return __pyx_pw_6hunter_6_event_5Event_7builtin_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_6_event_5Event_3__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_6_event_5Event_3__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_6_event_Event[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_6_event_5Event_3__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"detach", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_7detach, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"clone", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_9clone, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"detach", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_7detach, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"clone", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_9clone, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_6_event_Event[] = { - {(char *)"instruction", __pyx_getprop_6hunter_6_event_5Event_instruction, 0, (char *)0, 0}, - {(char *)"threadid", __pyx_getprop_6hunter_6_event_5Event_threadid, 0, (char *)0, 0}, - {(char *)"threadname", __pyx_getprop_6hunter_6_event_5Event_threadname, 0, (char *)0, 0}, - {(char *)"locals", __pyx_getprop_6hunter_6_event_5Event_locals, 0, (char *)0, 0}, - {(char *)"globals", __pyx_getprop_6hunter_6_event_5Event_globals, 0, (char *)0, 0}, - {(char *)"function", __pyx_getprop_6hunter_6_event_5Event_function, 0, (char *)0, 0}, - {(char *)"function_object", __pyx_getprop_6hunter_6_event_5Event_function_object, 0, (char *)0, 0}, - {(char *)"module", __pyx_getprop_6hunter_6_event_5Event_module, 0, (char *)0, 0}, - {(char *)"filename", __pyx_getprop_6hunter_6_event_5Event_filename, 0, (char *)0, 0}, - {(char *)"lineno", __pyx_getprop_6hunter_6_event_5Event_lineno, 0, (char *)0, 0}, - {(char *)"code", __pyx_getprop_6hunter_6_event_5Event_code, 0, (char *)0, 0}, - {(char *)"stdlib", __pyx_getprop_6hunter_6_event_5Event_stdlib, 0, (char *)0, 0}, - {(char *)"fullsource", __pyx_getprop_6hunter_6_event_5Event_fullsource, 0, (char *)0, 0}, - {(char *)"source", __pyx_getprop_6hunter_6_event_5Event_source, 0, (char *)0, 0}, - {(char *)"frame", __pyx_getprop_6hunter_6_event_5Event_frame, 0, (char *)0, 0}, - {(char *)"kind", __pyx_getprop_6hunter_6_event_5Event_kind, 0, (char *)0, 0}, - {(char *)"arg", __pyx_getprop_6hunter_6_event_5Event_arg, 0, (char *)0, 0}, - {(char *)"depth", __pyx_getprop_6hunter_6_event_5Event_depth, 0, (char *)0, 0}, - {(char *)"calls", __pyx_getprop_6hunter_6_event_5Event_calls, 0, (char *)0, 0}, - {(char *)"threading_support", __pyx_getprop_6hunter_6_event_5Event_threading_support, 0, (char *)0, 0}, - {(char *)"detached", __pyx_getprop_6hunter_6_event_5Event_detached, 0, (char *)0, 0}, - {(char *)"builtin", __pyx_getprop_6hunter_6_event_5Event_builtin, 0, (char *)0, 0}, + {"instruction", __pyx_getprop_6hunter_6_event_5Event_instruction, 0, 0, 0}, + {"threadid", __pyx_getprop_6hunter_6_event_5Event_threadid, 0, 0, 0}, + {"threadname", __pyx_getprop_6hunter_6_event_5Event_threadname, 0, 0, 0}, + {"locals", __pyx_getprop_6hunter_6_event_5Event_locals, 0, 0, 0}, + {"globals", __pyx_getprop_6hunter_6_event_5Event_globals, 0, 0, 0}, + {"function", __pyx_getprop_6hunter_6_event_5Event_function, 0, 0, 0}, + {"function_object", __pyx_getprop_6hunter_6_event_5Event_function_object, 0, 0, 0}, + {"module", __pyx_getprop_6hunter_6_event_5Event_module, 0, 0, 0}, + {"filename", __pyx_getprop_6hunter_6_event_5Event_filename, 0, 0, 0}, + {"lineno", __pyx_getprop_6hunter_6_event_5Event_lineno, 0, 0, 0}, + {"code", __pyx_getprop_6hunter_6_event_5Event_code, 0, 0, 0}, + {"stdlib", __pyx_getprop_6hunter_6_event_5Event_stdlib, 0, 0, 0}, + {"fullsource", __pyx_getprop_6hunter_6_event_5Event_fullsource, 0, 0, 0}, + {"source", __pyx_getprop_6hunter_6_event_5Event_source, 0, 0, 0}, + {"frame", __pyx_getprop_6hunter_6_event_5Event_frame, 0, 0, 0}, + {"kind", __pyx_getprop_6hunter_6_event_5Event_kind, 0, 0, 0}, + {"arg", __pyx_getprop_6hunter_6_event_5Event_arg, 0, 0, 0}, + {"depth", __pyx_getprop_6hunter_6_event_5Event_depth, 0, 0, 0}, + {"calls", __pyx_getprop_6hunter_6_event_5Event_calls, 0, 0, 0}, + {"threading_support", __pyx_getprop_6hunter_6_event_5Event_threading_support, 0, 0, 0}, + {"detached", __pyx_getprop_6hunter_6_event_5Event_detached, 0, 0, 0}, + {"builtin", __pyx_getprop_6hunter_6_event_5Event_builtin, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -12622,12 +12781,7 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_6_event_5Event_3__repr__, /*tp_repr*/ 0, /*tp_as_number*/ &__pyx_tp_as_sequence_Event, /*tp_as_sequence*/ @@ -12668,13 +12822,11 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -12684,17 +12836,15 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[8]; -static int __pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -12702,8 +12852,8 @@ static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(Py o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { - o = (PyObject*)__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[--__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[--__pyx_mstate_global->__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -12736,12 +12886,12 @@ static void __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines(PyO Py_CLEAR(p->__pyx_v_start); Py_CLEAR(p->__pyx_t_0); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { - __pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines++] = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_6_event___pyx_scope_struct__yield_lines[__pyx_mstate_global->__pyx_freecount_6hunter_6_event___pyx_scope_struct__yield_lines++] = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -12755,6 +12905,10 @@ static void __pyx_tp_dealloc_6hunter_6_event___pyx_scope_struct__yield_lines(PyO static int __pyx_tp_traverse_6hunter_6_event___pyx_scope_struct__yield_lines(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *p = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_v_collector) { e = (*v)(p->__pyx_v_collector, a); if (e) return e; } @@ -12811,12 +12965,7 @@ static PyTypeObject __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines = #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -12857,13 +13006,11 @@ static PyTypeObject __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines = 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -12873,6 +13020,9 @@ static PyTypeObject __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines = #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -12882,329 +13032,24 @@ static PyTypeObject __pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines = static PyMethodDef __pyx_methods[] = { {0, 0, 0, 0} }; -#ifndef CYTHON_SMALL_CODE -#if defined(__clang__) - #define CYTHON_SMALL_CODE -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - #define CYTHON_SMALL_CODE __attribute__((cold)) -#else - #define CYTHON_SMALL_CODE -#endif -#endif -/* #### Code section: pystring_table ### */ - -static int __Pyx_CreateStringTabAndInitStrings(void) { - __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_n_s_CYTHON_SUFFIX_RE, __pyx_k_CYTHON_SUFFIX_RE, sizeof(__pyx_k_CYTHON_SUFFIX_RE), 0, 0, 1, 1}, - {&__pyx_n_s_Event, __pyx_k_Event, sizeof(__pyx_k_Event), 0, 0, 1, 1}, - {&__pyx_n_s_Event_clone, __pyx_k_Event_clone, sizeof(__pyx_k_Event_clone), 0, 0, 1, 1}, - {&__pyx_n_s_Event_detach, __pyx_k_Event_detach, sizeof(__pyx_k_Event_detach), 0, 0, 1, 1}, - {&__pyx_kp_s_Event_kind_r_function_r_module, __pyx_k_Event_kind_r_function_r_module, sizeof(__pyx_k_Event_kind_r_function_r_module), 0, 0, 1, 0}, - {&__pyx_n_s_LEADING_WHITESPACE_RE, __pyx_k_LEADING_WHITESPACE_RE, sizeof(__pyx_k_LEADING_WHITESPACE_RE), 0, 0, 1, 1}, - {&__pyx_n_s_MISSING, __pyx_k_MISSING, sizeof(__pyx_k_MISSING), 0, 0, 1, 1}, - {&__pyx_kp_s_Missing_argument_calls_required, __pyx_k_Missing_argument_calls_required, sizeof(__pyx_k_Missing_argument_calls_required), 0, 0, 1, 0}, - {&__pyx_kp_s_Missing_argument_depth_required, __pyx_k_Missing_argument_depth_required, sizeof(__pyx_k_Missing_argument_depth_required), 0, 0, 1, 0}, - {&__pyx_kp_s_Missing_argument_threading_suppo, __pyx_k_Missing_argument_threading_suppo, sizeof(__pyx_k_Missing_argument_threading_suppo), 0, 0, 1, 0}, - {&__pyx_kp_u_NO_SOURCE, __pyx_k_NO_SOURCE, sizeof(__pyx_k_NO_SOURCE), 0, 1, 0, 0}, - {&__pyx_kp_u_NO_SOURCE_not_reading_binary, __pyx_k_NO_SOURCE_not_reading_binary, sizeof(__pyx_k_NO_SOURCE_not_reading_binary), 0, 1, 0, 0}, - {&__pyx_n_s_SITE_PACKAGES_PATHS, __pyx_k_SITE_PACKAGES_PATHS, sizeof(__pyx_k_SITE_PACKAGES_PATHS), 0, 0, 1, 1}, - {&__pyx_n_s_SYS_PREFIX_PATHS, __pyx_k_SYS_PREFIX_PATHS, sizeof(__pyx_k_SYS_PREFIX_PATHS), 0, 0, 1, 1}, - {&__pyx_n_s_TokenError, __pyx_k_TokenError, sizeof(__pyx_k_TokenError), 0, 0, 1, 1}, - {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, - {&__pyx_kp_s__14, __pyx_k__14, sizeof(__pyx_k__14), 0, 0, 1, 0}, - {&__pyx_kp_u__14, __pyx_k__14, sizeof(__pyx_k__14), 0, 1, 0, 0}, - {&__pyx_kp_s__7, __pyx_k__7, sizeof(__pyx_k__7), 0, 0, 1, 0}, - {&__pyx_kp_s__9, __pyx_k__9, sizeof(__pyx_k__9), 0, 0, 1, 0}, - {&__pyx_n_s_all, __pyx_k_all, sizeof(__pyx_k_all), 0, 0, 1, 1}, - {&__pyx_n_s_amount, __pyx_k_amount, sizeof(__pyx_k_amount), 0, 0, 1, 1}, - {&__pyx_n_s_arg, __pyx_k_arg, sizeof(__pyx_k_arg), 0, 0, 1, 1}, - {&__pyx_n_s_args, __pyx_k_args, sizeof(__pyx_k_args), 0, 0, 1, 1}, - {&__pyx_n_s_asyncio_coroutines, __pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 0, 1, 1}, - {&__pyx_n_s_basename, __pyx_k_basename, sizeof(__pyx_k_basename), 0, 0, 1, 1}, - {&__pyx_n_s_call, __pyx_k_call, sizeof(__pyx_k_call), 0, 0, 1, 1}, - {&__pyx_n_s_calls, __pyx_k_calls, sizeof(__pyx_k_calls), 0, 0, 1, 1}, - {&__pyx_n_s_class, __pyx_k_class, sizeof(__pyx_k_class), 0, 0, 1, 1}, - {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, - {&__pyx_n_s_clone, __pyx_k_clone, sizeof(__pyx_k_clone), 0, 0, 1, 1}, - {&__pyx_n_s_close, __pyx_k_close, sizeof(__pyx_k_close), 0, 0, 1, 1}, - {&__pyx_n_s_collector, __pyx_k_collector, sizeof(__pyx_k_collector), 0, 0, 1, 1}, - {&__pyx_n_s_const, __pyx_k_const, sizeof(__pyx_k_const), 0, 0, 1, 1}, - {&__pyx_n_s_current_thread, __pyx_k_current_thread, sizeof(__pyx_k_current_thread), 0, 0, 1, 1}, - {&__pyx_n_s_dedent, __pyx_k_dedent, sizeof(__pyx_k_dedent), 0, 0, 1, 1}, - {&__pyx_n_s_def, __pyx_k_def, sizeof(__pyx_k_def), 0, 0, 1, 1}, - {&__pyx_n_s_depth, __pyx_k_depth, sizeof(__pyx_k_depth), 0, 0, 1, 1}, - {&__pyx_n_s_detach, __pyx_k_detach, sizeof(__pyx_k_detach), 0, 0, 1, 1}, - {&__pyx_kp_u_disable, __pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0, 0}, - {&__pyx_kp_u_enable, __pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0, 0}, - {&__pyx_n_s_endswith, __pyx_k_endswith, sizeof(__pyx_k_endswith), 0, 0, 1, 1}, - {&__pyx_n_s_enumerate, __pyx_k_enumerate, sizeof(__pyx_k_enumerate), 0, 0, 1, 1}, - {&__pyx_n_s_exception, __pyx_k_exception, sizeof(__pyx_k_exception), 0, 0, 1, 1}, - {&__pyx_n_s_exists, __pyx_k_exists, sizeof(__pyx_k_exists), 0, 0, 1, 1}, - {&__pyx_n_s_f_globals, __pyx_k_f_globals, sizeof(__pyx_k_f_globals), 0, 0, 1, 1}, - {&__pyx_n_s_file, __pyx_k_file, sizeof(__pyx_k_file), 0, 0, 1, 1}, - {&__pyx_kp_u_file_2, __pyx_k_file_2, sizeof(__pyx_k_file_2), 0, 1, 0, 0}, - {&__pyx_n_s_filename, __pyx_k_filename, sizeof(__pyx_k_filename), 0, 0, 1, 1}, - {&__pyx_n_s_findall, __pyx_k_findall, sizeof(__pyx_k_findall), 0, 0, 1, 1}, - {&__pyx_n_s_frame, __pyx_k_frame, sizeof(__pyx_k_frame), 0, 0, 1, 1}, - {&__pyx_n_s_function, __pyx_k_function, sizeof(__pyx_k_function), 0, 0, 1, 1}, - {&__pyx_n_s_functools, __pyx_k_functools, sizeof(__pyx_k_functools), 0, 0, 1, 1}, - {&__pyx_kp_u_gc, __pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0, 0}, - {&__pyx_n_s_generate_tokens, __pyx_k_generate_tokens, sizeof(__pyx_k_generate_tokens), 0, 0, 1, 1}, - {&__pyx_n_s_get, __pyx_k_get, sizeof(__pyx_k_get), 0, 0, 1, 1}, - {&__pyx_n_s_get_func_in_mro, __pyx_k_get_func_in_mro, sizeof(__pyx_k_get_func_in_mro), 0, 0, 1, 1}, - {&__pyx_n_s_get_main_thread, __pyx_k_get_main_thread, sizeof(__pyx_k_get_main_thread), 0, 0, 1, 1}, - {&__pyx_n_s_getline, __pyx_k_getline, sizeof(__pyx_k_getline), 0, 0, 1, 1}, - {&__pyx_n_s_getlines, __pyx_k_getlines, sizeof(__pyx_k_getlines), 0, 0, 1, 1}, - {&__pyx_n_s_globals, __pyx_k_globals, sizeof(__pyx_k_globals), 0, 0, 1, 1}, - {&__pyx_n_s_hunter__event, __pyx_k_hunter__event, sizeof(__pyx_k_hunter__event), 0, 0, 1, 1}, - {&__pyx_n_s_ident, __pyx_k_ident, sizeof(__pyx_k_ident), 0, 0, 1, 1}, - {&__pyx_n_s_if_same_code, __pyx_k_if_same_code, sizeof(__pyx_k_if_same_code), 0, 0, 1, 1}, - {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, - {&__pyx_n_s_is_coroutine, __pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 0, 1, 1}, - {&__pyx_kp_u_isenabled, __pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0, 0}, - {&__pyx_n_s_items, __pyx_k_items, sizeof(__pyx_k_items), 0, 0, 1, 1}, - {&__pyx_n_s_join, __pyx_k_join, sizeof(__pyx_k_join), 0, 0, 1, 1}, - {&__pyx_n_s_kind, __pyx_k_kind, sizeof(__pyx_k_kind), 0, 0, 1, 1}, - {&__pyx_n_s_lambda, __pyx_k_lambda, sizeof(__pyx_k_lambda), 0, 0, 1, 1}, - {&__pyx_n_s_limit, __pyx_k_limit, sizeof(__pyx_k_limit), 0, 0, 1, 1}, - {&__pyx_n_s_line, __pyx_k_line, sizeof(__pyx_k_line), 0, 0, 1, 1}, - {&__pyx_n_s_linecache, __pyx_k_linecache, sizeof(__pyx_k_linecache), 0, 0, 1, 1}, - {&__pyx_n_s_lineno, __pyx_k_lineno, sizeof(__pyx_k_lineno), 0, 0, 1, 1}, - {&__pyx_n_s_locals, __pyx_k_locals, sizeof(__pyx_k_locals), 0, 0, 1, 1}, - {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, - {&__pyx_n_s_module, __pyx_k_module, sizeof(__pyx_k_module), 0, 0, 1, 1}, - {&__pyx_n_s_module_2, __pyx_k_module_2, sizeof(__pyx_k_module_2), 0, 0, 1, 1}, - {&__pyx_kp_s_module_3, __pyx_k_module_3, sizeof(__pyx_k_module_3), 0, 0, 1, 0}, - {&__pyx_n_s_module_globals, __pyx_k_module_globals, sizeof(__pyx_k_module_globals), 0, 0, 1, 1}, - {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, - {&__pyx_n_s_name_2, __pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 0, 1, 1}, - {&__pyx_n_s_namedtuple, __pyx_k_namedtuple, sizeof(__pyx_k_namedtuple), 0, 0, 1, 1}, - {&__pyx_n_s_next, __pyx_k_next, sizeof(__pyx_k_next), 0, 0, 1, 1}, - {&__pyx_n_s_object, __pyx_k_object, sizeof(__pyx_k_object), 0, 0, 1, 1}, - {&__pyx_n_s_os_path, __pyx_k_os_path, sizeof(__pyx_k_os_path), 0, 0, 1, 1}, - {&__pyx_n_s_partial, __pyx_k_partial, sizeof(__pyx_k_partial), 0, 0, 1, 1}, - {&__pyx_n_s_pkg_resources, __pyx_k_pkg_resources, sizeof(__pyx_k_pkg_resources), 0, 0, 1, 1}, - {&__pyx_kp_s_py, __pyx_k_py, sizeof(__pyx_k_py), 0, 0, 1, 0}, - {&__pyx_kp_s_pyc, __pyx_k_pyc, sizeof(__pyx_k_pyc), 0, 0, 1, 0}, - {&__pyx_kp_s_pyd, __pyx_k_pyd, sizeof(__pyx_k_pyd), 0, 0, 1, 0}, - {&__pyx_kp_s_pyo, __pyx_k_pyo, sizeof(__pyx_k_pyo), 0, 0, 1, 0}, - {&__pyx_kp_s_pyx, __pyx_k_pyx, sizeof(__pyx_k_pyx), 0, 0, 1, 0}, - {&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1}, - {&__pyx_n_s_return, __pyx_k_return, sizeof(__pyx_k_return), 0, 0, 1, 1}, - {&__pyx_n_s_self, __pyx_k_self, sizeof(__pyx_k_self), 0, 0, 1, 1}, - {&__pyx_n_s_send, __pyx_k_send, sizeof(__pyx_k_send), 0, 0, 1, 1}, - {&__pyx_n_s_site, __pyx_k_site, sizeof(__pyx_k_site), 0, 0, 1, 1}, - {&__pyx_kp_s_so, __pyx_k_so, sizeof(__pyx_k_so), 0, 0, 1, 0}, - {&__pyx_n_s_split, __pyx_k_split, sizeof(__pyx_k_split), 0, 0, 1, 1}, - {&__pyx_n_s_splitext, __pyx_k_splitext, sizeof(__pyx_k_splitext), 0, 0, 1, 1}, - {&__pyx_kp_s_src_hunter__event_pyx, __pyx_k_src_hunter__event_pyx, sizeof(__pyx_k_src_hunter__event_pyx), 0, 0, 1, 0}, - {&__pyx_n_s_start, __pyx_k_start, sizeof(__pyx_k_start), 0, 0, 1, 1}, - {&__pyx_n_s_startswith, __pyx_k_startswith, sizeof(__pyx_k_startswith), 0, 0, 1, 1}, - {&__pyx_kp_s_string, __pyx_k_string, sizeof(__pyx_k_string), 0, 0, 1, 0}, - {&__pyx_n_s_sub, __pyx_k_sub, sizeof(__pyx_k_sub), 0, 0, 1, 1}, - {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, - {&__pyx_n_s_threading, __pyx_k_threading, sizeof(__pyx_k_threading), 0, 0, 1, 1}, - {&__pyx_n_s_threading_support, __pyx_k_threading_support, sizeof(__pyx_k_threading_support), 0, 0, 1, 1}, - {&__pyx_n_s_throw, __pyx_k_throw, sizeof(__pyx_k_throw), 0, 0, 1, 1}, - {&__pyx_n_s_tokenize, __pyx_k_tokenize, sizeof(__pyx_k_tokenize), 0, 0, 1, 1}, - {&__pyx_n_s_tracer, __pyx_k_tracer, sizeof(__pyx_k_tracer), 0, 0, 1, 1}, - {&__pyx_n_s_util, __pyx_k_util, sizeof(__pyx_k_util), 0, 0, 1, 1}, - {&__pyx_n_s_value_filter, __pyx_k_value_filter, sizeof(__pyx_k_value_filter), 0, 0, 1, 1}, - {&__pyx_n_s_values, __pyx_k_values, sizeof(__pyx_k_values), 0, 0, 1, 1}, - {&__pyx_n_s_yield_lines, __pyx_k_yield_lines, sizeof(__pyx_k_yield_lines), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} - }; - return __Pyx_InitStrings(__pyx_string_tab); -} -/* #### Code section: cached_builtins ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_n_s_object); if (!__pyx_builtin_object) __PYX_ERR(0, 31, __pyx_L1_error) - __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 39, __pyx_L1_error) - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 65, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: cached_constants ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - - /* "hunter/_event.pyx":65 - * if tracer is None: - * if depth is None: - * raise TypeError('Missing argument: depth (required because tracer was not given).') # <<<<<<<<<<<<<< - * if calls is None: - * raise TypeError('Missing argument: calls (required because tracer was not given).') - */ - __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_s_Missing_argument_depth_required); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 65, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__2); - __Pyx_GIVEREF(__pyx_tuple__2); - - /* "hunter/_event.pyx":67 - * raise TypeError('Missing argument: depth (required because tracer was not given).') - * if calls is None: - * raise TypeError('Missing argument: calls (required because tracer was not given).') # <<<<<<<<<<<<<< - * if threading_support is MISSING: - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') - */ - __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_s_Missing_argument_calls_required); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 67, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__3); - __Pyx_GIVEREF(__pyx_tuple__3); - - /* "hunter/_event.pyx":69 - * raise TypeError('Missing argument: calls (required because tracer was not given).') - * if threading_support is MISSING: - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') # <<<<<<<<<<<<<< - * else: - * depth = tracer.depth - */ - __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_s_Missing_argument_threading_suppo); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 69, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__4); - __Pyx_GIVEREF(__pyx_tuple__4); - - /* "hunter/_event.pyx":230 - * module = self.arg.__module__ - * else: - * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< - * if module is None: - * module = '?' - */ - __pyx_tuple__8 = PyTuple_Pack(2, __pyx_n_s_name_2, __pyx_kp_s__7); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 230, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__8); - __Pyx_GIVEREF(__pyx_tuple__8); - - /* "hunter/_event.pyx":249 - * if not filename: - * filename = '?' - * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< - * filename = filename[:-1] - * elif filename.endswith(('.so', '.pyd')): - */ - __pyx_tuple__10 = PyTuple_Pack(2, __pyx_kp_s_pyc, __pyx_kp_s_pyo); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__10); - __Pyx_GIVEREF(__pyx_tuple__10); - - /* "hunter/_event.pyx":250 - * filename = '?' - * elif filename.endswith(('.pyc', '.pyo')): - * filename = filename[:-1] # <<<<<<<<<<<<<< - * elif filename.endswith(('.so', '.pyd')): - * cybasename = CYTHON_SUFFIX_RE.sub('', filename) - */ - __pyx_slice__11 = PySlice_New(Py_None, __pyx_int_neg_1, Py_None); if (unlikely(!__pyx_slice__11)) __PYX_ERR(0, 250, __pyx_L1_error) - __Pyx_GOTREF(__pyx_slice__11); - __Pyx_GIVEREF(__pyx_slice__11); - - /* "hunter/_event.pyx":251 - * elif filename.endswith(('.pyc', '.pyo')): - * filename = filename[:-1] - * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< - * cybasename = CYTHON_SUFFIX_RE.sub('', filename) - * for ext in ('.pyx', '.py'): - */ - __pyx_tuple__12 = PyTuple_Pack(2, __pyx_kp_s_so, __pyx_kp_s_pyd); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__12); - __Pyx_GIVEREF(__pyx_tuple__12); - - /* "hunter/_event.pyx":253 - * elif filename.endswith(('.so', '.pyd')): - * cybasename = CYTHON_SUFFIX_RE.sub('', filename) - * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< - * cyfilename = cybasename + ext - * if exists(cyfilename): - */ - __pyx_tuple__13 = PyTuple_Pack(2, __pyx_kp_s_pyx, __pyx_kp_s_py); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 253, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__13); - __Pyx_GIVEREF(__pyx_tuple__13); - - /* "hunter/_event.pyx":29 - * from .util import if_same_code - * - * __all__ = 'Event', # <<<<<<<<<<<<<< - * - * cdef object UNSET = object() - */ - __pyx_tuple__16 = PyTuple_Pack(1, __pyx_n_s_Event); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 29, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__16); - __Pyx_GIVEREF(__pyx_tuple__16); - - /* "hunter/_event.pyx":108 - * return self is other - * - * def detach(self, value_filter=None): # <<<<<<<<<<<<<< - * return fast_detach(self, value_filter) - * - */ - __pyx_tuple__17 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value_filter); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__17); - __Pyx_GIVEREF(__pyx_tuple__17); - __pyx_codeobj__5 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__17, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__event_pyx, __pyx_n_s_detach, 108, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__5)) __PYX_ERR(0, 108, __pyx_L1_error) - __pyx_tuple__18 = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__18); - __Pyx_GIVEREF(__pyx_tuple__18); - - /* "hunter/_event.pyx":111 - * return fast_detach(self, value_filter) - * - * def clone(self): # <<<<<<<<<<<<<< - * return fast_clone(self) - * - */ - __pyx_tuple__19 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 111, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__19); - __Pyx_GIVEREF(__pyx_tuple__19); - __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__19, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__event_pyx, __pyx_n_s_clone, 111, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 111, __pyx_L1_error) - - /* "hunter/_event.pyx":363 - * - * - * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< - * limit=10): - * dedent = None - */ - __pyx_tuple__20 = PyTuple_Pack(8, __pyx_n_s_filename, __pyx_n_s_module_globals, __pyx_n_s_start, __pyx_n_s_collector, __pyx_n_s_limit, __pyx_n_s_dedent, __pyx_n_s_amount, __pyx_n_s_line); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(0, 363, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__20); - __Pyx_GIVEREF(__pyx_tuple__20); - __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(5, 0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__20, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__event_pyx, __pyx_n_s_yield_lines, 363, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 363, __pyx_L1_error) - __pyx_tuple__21 = PyTuple_Pack(1, ((PyObject *)__pyx_int_10)); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 363, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__21); - __Pyx_GIVEREF(__pyx_tuple__21); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} -/* #### Code section: init_constants ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitConstants(void) { - if (__Pyx_CreateStringTabAndInitStrings() < 0) __PYX_ERR(0, 1, __pyx_L1_error); - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_10 = PyInt_FromLong(10); if (unlikely(!__pyx_int_10)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: init_globals ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { - return 0; -} +/* #### Code section: initfunc_declarations ### */ +static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate); /*proto*/ /* #### Code section: init_module ### */ -static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ - -static int __Pyx_modinit_global_init_code(void) { +static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); /*--- Global init code ---*/ __pyx_v_6hunter_6_event_UNSET = Py_None; Py_INCREF(Py_None); @@ -13213,16 +13058,18 @@ static int __Pyx_modinit_global_init_code(void) { return 0; } -static int __Pyx_modinit_variable_export_code(void) { +static int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); /*--- Variable export code ---*/ __Pyx_RefNannyFinishContext(); return 0; } -static int __Pyx_modinit_function_export_code(void) { +static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -13237,8 +13084,9 @@ static int __Pyx_modinit_function_export_code(void) { return -1; } -static int __Pyx_modinit_type_init_code(void) { +static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -13259,46 +13107,38 @@ static int __Pyx_modinit_type_init_code(void) { __pyx_vtable_6hunter_6_event_Event.threadname_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_threadname_getter; __pyx_vtable_6hunter_6_event_Event.instruction_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_instruction_getter; #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6_event_Event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event_Event_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6_event_Event)) __PYX_ERR(0, 47, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event_Event_spec, __pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event_Event_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event)) __PYX_ERR(0, 46, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event_Event_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) #else - __pyx_ptype_6hunter_6_event_Event = &__pyx_type_6hunter_6_event_Event; + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = &__pyx_type_6hunter_6_event_Event; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6_event_Event->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6_event_Event->tp_dictoffset && __pyx_ptype_6hunter_6_event_Event->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6_event_Event->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_getattro = PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_ptype_6hunter_6_event_Event, __pyx_vtabptr_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Event, (PyObject *) __pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 47, __pyx_L1_error) + if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event, __pyx_vtabptr_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Event, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 363, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 363, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 362, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 362, __pyx_L1_error) #else - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; + __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 363, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 362, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_dictoffset && __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro = PyObject_GenericGetAttr; } #endif __Pyx_RefNannyFinishContext(); @@ -13308,8 +13148,9 @@ static int __Pyx_modinit_type_init_code(void) { return -1; } -static int __Pyx_modinit_type_import_code(void) { +static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; @@ -13319,34 +13160,81 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 19, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyFrameObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(3, 19, __pyx_L1_error) - __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyCodeObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) - __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 36, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #else + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #endif + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 35, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter._tracer", "Tracer", sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_7_tracer_Tracer),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(3, 36, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._tracer", "Tracer", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + #else + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(3, 35, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyImport_ImportModule("hunter.vendor._cymem.cymem"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyMalloc", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) __PYX_ERR(4, 5, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc*)__Pyx_GetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(4, 5, __pyx_L1_error) - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyFree", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) __PYX_ERR(4, 11, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree*)__Pyx_GetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(4, 11, __pyx_L1_error) - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "Pool", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) __PYX_ERR(4, 17, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool*)__Pyx_GetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(4, 17, __pyx_L1_error) - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter.vendor._cymem.cymem", "Address", sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) __PYX_ERR(4, 29, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyMalloc", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), + #else + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) __PYX_ERR(4, 5, __pyx_L1_error) + __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(4, 5, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyFree", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), + #else + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) __PYX_ERR(4, 11, __pyx_L1_error) + __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(4, 11, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "Pool", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), + #else + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) __PYX_ERR(4, 17, __pyx_L1_error) + __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(4, 17, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "Address", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), + #else + sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) __PYX_ERR(4, 29, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -13357,30 +13245,36 @@ static int __Pyx_modinit_type_import_code(void) { return -1; } -static int __Pyx_modinit_variable_import_code(void) { +static int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); /*--- Variable import code ---*/ __Pyx_RefNannyFinishContext(); return 0; } -static int __Pyx_modinit_function_import_code(void) { +static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); /*--- Function import code ---*/ __Pyx_RefNannyFinishContext(); return 0; } - -#if PY_MAJOR_VERSION >= 3 #if CYTHON_PEP489_MULTI_PHASE_INIT static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ static int __pyx_pymod_exec__event(PyObject* module); /*proto*/ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec__event}, + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + {Py_mod_gil, Py_MOD_GIL_USED}, + #endif + #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE + {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, + #endif {0, NULL} }; #endif @@ -13395,12 +13289,10 @@ namespace { PyModuleDef_HEAD_INIT, "_event", 0, /* m_doc */ - #if CYTHON_PEP489_MULTI_PHASE_INIT - 0, /* m_size */ - #elif CYTHON_USE_MODULE_STATE - sizeof(__pyx_mstate), /* m_size */ + #if CYTHON_USE_MODULE_STATE + sizeof(__pyx_mstatetype), /* m_size */ #else - -1, /* m_size */ + (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1, /* m_size */ #endif __pyx_methods /* m_methods */, #if CYTHON_PEP489_MULTI_PHASE_INIT @@ -13421,51 +13313,71 @@ namespace { #ifdef __cplusplus } /* anonymous namespace */ #endif -#endif +/* PyModInitFuncType */ #ifndef CYTHON_NO_PYINIT_EXPORT -#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC -#elif PY_MAJOR_VERSION < 3 -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" void -#else -#define __Pyx_PyMODINIT_FUNC void -#endif -#else -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * + #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC #else -#define __Pyx_PyMODINIT_FUNC PyObject * -#endif + #ifdef __cplusplus + #define __Pyx_PyMODINIT_FUNC extern "C" PyObject * + #else + #define __Pyx_PyMODINIT_FUNC PyObject * + #endif #endif - -#if PY_MAJOR_VERSION < 3 -__Pyx_PyMODINIT_FUNC init_event(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC init_event(void) -#else __Pyx_PyMODINIT_FUNC PyInit__event(void) CYTHON_SMALL_CODE; /*proto*/ __Pyx_PyMODINIT_FUNC PyInit__event(void) #if CYTHON_PEP489_MULTI_PHASE_INIT { return PyModuleDef_Init(&__pyx_moduledef); } +/* ModuleCreationPEP489 */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 +static PY_INT64_T __Pyx_GetCurrentInterpreterId(void) { + { + PyObject *module = PyImport_ImportModule("_interpreters"); // 3.13+ I think + if (!module) { + PyErr_Clear(); // just try the 3.8-3.12 version + module = PyImport_ImportModule("_xxsubinterpreters"); + if (!module) goto bad; + } + PyObject *current = PyObject_CallMethod(module, "get_current", NULL); + Py_DECREF(module); + if (!current) goto bad; + if (PyTuple_Check(current)) { + PyObject *new_current = PySequence_GetItem(current, 0); + Py_DECREF(current); + current = new_current; + if (!new_current) goto bad; + } + long long as_c_int = PyLong_AsLongLong(current); + Py_DECREF(current); + return as_c_int; + } + bad: + PySys_WriteStderr("__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n"); + return -1; +} +#endif +#if !CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { - #if PY_VERSION_HEX >= 0x030700A1 static PY_INT64_T main_interpreter_id = -1; +#if CYTHON_COMPILING_IN_GRAAL + PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x03090000 + PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API + PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId(); +#else PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); +#endif + if (unlikely(current_id == -1)) { + return -1; + } if (main_interpreter_id == -1) { main_interpreter_id = current_id; - return (unlikely(current_id == -1)) ? -1 : 0; - } else if (unlikely(main_interpreter_id != current_id)) - #else - static PyInterpreterState *main_interpreter = NULL; - PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; - if (!main_interpreter) { - main_interpreter = current_interpreter; - } else if (unlikely(main_interpreter != current_interpreter)) - #endif - { + return 0; + } else if (unlikely(main_interpreter_id != current_id)) { PyErr_SetString( PyExc_ImportError, "Interpreter change detected - this module can only be loaded into one interpreter per process."); @@ -13473,21 +13385,14 @@ static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { } return 0; } -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *module, const char* from_name, const char* to_name, int allow_none) -#else -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) #endif +static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { PyObject *value = PyObject_GetAttrString(spec, from_name); int result = 0; if (likely(value)) { if (allow_none || value != Py_None) { -#if CYTHON_COMPILING_IN_LIMITED_API - result = PyModule_AddObject(module, to_name, value); -#else result = PyDict_SetItemString(moddict, to_name, value); -#endif } Py_DECREF(value); } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { @@ -13500,8 +13405,10 @@ static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) { PyObject *module = NULL, *moddict, *modname; CYTHON_UNUSED_VAR(def); + #if !CYTHON_USE_MODULE_STATE if (__Pyx_check_single_interpreter()) return NULL; + #endif if (__pyx_m) return __Pyx_NewRef(__pyx_m); modname = PyObject_GetAttrString(spec, "name"); @@ -13509,12 +13416,8 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe module = PyModule_NewObject(modname); Py_DECREF(modname); if (unlikely(!module)) goto bad; -#if CYTHON_COMPILING_IN_LIMITED_API - moddict = module; -#else moddict = PyModule_GetDict(module); if (unlikely(!moddict)) goto bad; -#endif if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; @@ -13528,17 +13431,19 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe static CYTHON_SMALL_CODE int __pyx_pymod_exec__event(PyObject *__pyx_pyinit_module) #endif -#endif { int stringtab_initialized = 0; #if CYTHON_USE_MODULE_STATE int pystate_addmodule_run = 0; #endif - __Pyx_TraceDeclarations + __pyx_mstatetype *__pyx_mstate = NULL; + __Pyx_TraceDeclarationsFunc PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; - PyObject **__pyx_t_4; + PyObject *__pyx_t_4 = NULL; + size_t __pyx_t_5; + PyObject **__pyx_t_6; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -13549,36 +13454,37 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__event(PyObject *__pyx_pyinit_modu PyErr_SetString(PyExc_RuntimeError, "Module '_event' has already been imported. Re-initialisation is not supported."); return -1; } - #elif PY_MAJOR_VERSION >= 3 + #else if (__pyx_m) return __Pyx_NewRef(__pyx_m); #endif /*--- Module creation code ---*/ #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_m = __pyx_pyinit_module; - Py_INCREF(__pyx_m); + __pyx_t_1 = __pyx_pyinit_module; + Py_INCREF(__pyx_t_1); #else - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4("_event", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); - if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) - #elif CYTHON_USE_MODULE_STATE __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #if CYTHON_USE_MODULE_STATE { - int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); + int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef); __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "_event" pseudovariable */ if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) pystate_addmodule_run = 1; } #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_m = __pyx_t_1; #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); #endif + __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); - __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_d); - __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) + Py_INCREF(__pyx_mstate->__pyx_d); + __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef("cython_runtime"); if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /* ImportRefnannyAPI */ #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); if (!__Pyx_RefNanny) { @@ -13588,14 +13494,22 @@ if (!__Pyx_RefNanny) { Py_FatalError("failed to import 'refnanny' module"); } #endif - __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit__event(void)", 0); + +__Pyx_RefNannySetupContext("PyInit__event", 0); if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Initialize various global constants etc. ---*/ + if (__Pyx_InitConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + stringtab_initialized = 1; + if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #if 0 || defined(__Pyx_CyFunction_USED) || defined(__Pyx_FusedFunction_USED) || defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED) || defined(__Pyx_AsyncGen_USED) + if (__pyx_CommonTypesMetaclass_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif #ifdef __Pyx_CyFunction_USED if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif @@ -13611,68 +13525,47 @@ if (!__Pyx_RefNanny) { #ifdef __Pyx_AsyncGen_USED if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - #ifdef __Pyx_StopAsyncIteration_USED - if (__pyx_StopAsyncIteration_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - PyEval_InitThreads(); - #endif - /*--- Initialize various global constants etc. ---*/ - if (__Pyx_InitConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - stringtab_initialized = 1; - if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) - if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif if (__pyx_module_is_main_hunter___event) { - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name_2, __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_n_u_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) } - #if PY_MAJOR_VERSION >= 3 { PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) if (!PyDict_GetItemString(modules, "hunter._event")) { if (unlikely((PyDict_SetItemString(modules, "hunter._event", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) } } - #endif /*--- Builtin init code ---*/ - if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_InitCachedBuiltins(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Constants init code ---*/ - if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_InitCachedConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_CreateCodeObjects(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Global type/function init code ---*/ - (void)__Pyx_modinit_global_init_code(); - (void)__Pyx_modinit_variable_export_code(); - if (unlikely((__Pyx_modinit_function_export_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_init_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_import_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - (void)__Pyx_modinit_variable_import_code(); - (void)__Pyx_modinit_function_import_code(); + (void)__Pyx_modinit_global_init_code(__pyx_mstate); + (void)__Pyx_modinit_variable_export_code(__pyx_mstate); + if (unlikely((__Pyx_modinit_function_export_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_init_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + (void)__Pyx_modinit_variable_import_code(__pyx_mstate); + (void)__Pyx_modinit_function_import_code(__pyx_mstate); /*--- Execution code ---*/ - #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - __Pyx_TraceCall("__Pyx_PyMODINIT_FUNC PyInit__event(void)", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 0, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "hunter/_event.pyx":2 * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii * from functools import partial # <<<<<<<<<<<<<< * from linecache import getline * from linecache import getlines - */ - __Pyx_TraceLine(2,0,__PYX_ERR(0, 2, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_TraceLine(2,3,0,__PYX_ERR(0, 2, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_partial); - __Pyx_GIVEREF(__pyx_n_s_partial); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_partial)) __PYX_ERR(0, 2, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_partial, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_partial, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13682,19 +13575,16 @@ if (!__Pyx_RefNanny) { * from linecache import getline # <<<<<<<<<<<<<< * from linecache import getlines * from os.path import basename - */ - __Pyx_TraceLine(3,0,__PYX_ERR(0, 3, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __Pyx_TraceLine(3,6,0,__PYX_ERR(0, 3, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_getline); - __Pyx_GIVEREF(__pyx_n_s_getline); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_getline)) __PYX_ERR(0, 3, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_linecache, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_getline, __pyx_t_3) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getline, __pyx_t_3) < 0) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13704,19 +13594,16 @@ if (!__Pyx_RefNanny) { * from linecache import getlines # <<<<<<<<<<<<<< * from os.path import basename * from os.path import exists - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,9,0,__PYX_ERR(0, 4, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_getlines); - __Pyx_GIVEREF(__pyx_n_s_getlines); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_getlines)) __PYX_ERR(0, 4, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_linecache, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_getlines, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getlines, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13726,19 +13613,16 @@ if (!__Pyx_RefNanny) { * from os.path import basename # <<<<<<<<<<<<<< * from os.path import exists * from os.path import splitext - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,12,0,__PYX_ERR(0, 5, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_basename); - __Pyx_GIVEREF(__pyx_n_s_basename); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_basename)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_basename, __pyx_t_3) < 0) __PYX_ERR(0, 5, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_basename, __pyx_t_3) < 0) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13748,19 +13632,16 @@ if (!__Pyx_RefNanny) { * from os.path import exists # <<<<<<<<<<<<<< * from os.path import splitext * from threading import current_thread - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,15,0,__PYX_ERR(0, 6, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_exists); - __Pyx_GIVEREF(__pyx_n_s_exists); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_exists)) __PYX_ERR(0, 6, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_exists, __pyx_t_2) < 0) __PYX_ERR(0, 6, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_exists, __pyx_t_2) < 0) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13770,19 +13651,16 @@ if (!__Pyx_RefNanny) { * from os.path import splitext # <<<<<<<<<<<<<< * from threading import current_thread * from tokenize import TokenError - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) +*/ + __Pyx_TraceLine(7,18,0,__PYX_ERR(0, 7, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_splitext); - __Pyx_GIVEREF(__pyx_n_s_splitext); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_splitext)) __PYX_ERR(0, 7, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_splitext, __pyx_t_3) < 0) __PYX_ERR(0, 7, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_splitext, __pyx_t_3) < 0) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13792,19 +13670,16 @@ if (!__Pyx_RefNanny) { * from threading import current_thread # <<<<<<<<<<<<<< * from tokenize import TokenError * from tokenize import generate_tokens - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,21,0,__PYX_ERR(0, 8, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_current_thread); - __Pyx_GIVEREF(__pyx_n_s_current_thread); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_current_thread)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_threading, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_threading, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_current_thread, __pyx_t_2) < 0) __PYX_ERR(0, 8, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_current_thread, __pyx_t_2) < 0) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13814,19 +13689,16 @@ if (!__Pyx_RefNanny) { * from tokenize import TokenError # <<<<<<<<<<<<<< * from tokenize import generate_tokens * - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,24,0,__PYX_ERR(0, 9, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_TokenError); - __Pyx_GIVEREF(__pyx_n_s_TokenError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_TokenError)) __PYX_ERR(0, 9, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_tokenize, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_TokenError, __pyx_t_3) < 0) __PYX_ERR(0, 9, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_TokenError, __pyx_t_3) < 0) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13836,19 +13708,16 @@ if (!__Pyx_RefNanny) { * from tokenize import generate_tokens # <<<<<<<<<<<<<< * * from cpython.pythread cimport PyThread_get_thread_ident - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) +*/ + __Pyx_TraceLine(10,27,0,__PYX_ERR(0, 10, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_generate_tokens); - __Pyx_GIVEREF(__pyx_n_s_generate_tokens); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_generate_tokens)) __PYX_ERR(0, 10, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_tokenize, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 10, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_generate_tokens, __pyx_t_2) < 0) __PYX_ERR(0, 10, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_generate_tokens, __pyx_t_2) < 0) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13858,19 +13727,16 @@ if (!__Pyx_RefNanny) { * from .const import SITE_PACKAGES_PATHS # <<<<<<<<<<<<<< * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE - */ - __Pyx_TraceLine(20,0,__PYX_ERR(0, 20, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) +*/ + __Pyx_TraceLine(20,41,0,__PYX_ERR(0, 20, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_SITE_PACKAGES_PATHS); - __Pyx_GIVEREF(__pyx_n_s_SITE_PACKAGES_PATHS); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_SITE_PACKAGES_PATHS)) __PYX_ERR(0, 20, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_SITE_PACKAGES_PATHS, __pyx_t_3) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS, __pyx_t_3) < 0) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13880,19 +13746,16 @@ if (!__Pyx_RefNanny) { * from .const import SYS_PREFIX_PATHS # <<<<<<<<<<<<<< * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE - */ - __Pyx_TraceLine(21,0,__PYX_ERR(0, 21, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) +*/ + __Pyx_TraceLine(21,45,0,__PYX_ERR(0, 21, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_SYS_PREFIX_PATHS); - __Pyx_GIVEREF(__pyx_n_s_SYS_PREFIX_PATHS); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_SYS_PREFIX_PATHS)) __PYX_ERR(0, 21, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_SYS_PREFIX_PATHS, __pyx_t_2) < 0) __PYX_ERR(0, 21, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS, __pyx_t_2) < 0) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13902,19 +13765,16 @@ if (!__Pyx_RefNanny) { * from .util import CYTHON_SUFFIX_RE # <<<<<<<<<<<<<< * from .util import LEADING_WHITESPACE_RE * from .util import MISSING - */ - __Pyx_TraceLine(22,0,__PYX_ERR(0, 22, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) +*/ + __Pyx_TraceLine(22,49,0,__PYX_ERR(0, 22, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_CYTHON_SUFFIX_RE); - __Pyx_GIVEREF(__pyx_n_s_CYTHON_SUFFIX_RE); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_CYTHON_SUFFIX_RE)) __PYX_ERR(0, 22, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_CYTHON_SUFFIX_RE, __pyx_t_3) < 0) __PYX_ERR(0, 22, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE, __pyx_t_3) < 0) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13924,19 +13784,16 @@ if (!__Pyx_RefNanny) { * from .util import LEADING_WHITESPACE_RE # <<<<<<<<<<<<<< * from .util import MISSING * from .util import get_func_in_mro - */ - __Pyx_TraceLine(23,0,__PYX_ERR(0, 23, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) +*/ + __Pyx_TraceLine(23,52,0,__PYX_ERR(0, 23, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_LEADING_WHITESPACE_RE); - __Pyx_GIVEREF(__pyx_n_s_LEADING_WHITESPACE_RE); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_LEADING_WHITESPACE_RE)) __PYX_ERR(0, 23, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_LEADING_WHITESPACE_RE, __pyx_t_2) < 0) __PYX_ERR(0, 23, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE, __pyx_t_2) < 0) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13946,19 +13803,16 @@ if (!__Pyx_RefNanny) { * from .util import MISSING # <<<<<<<<<<<<<< * from .util import get_func_in_mro * from .util import get_main_thread - */ - __Pyx_TraceLine(24,0,__PYX_ERR(0, 24, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) +*/ + __Pyx_TraceLine(24,55,0,__PYX_ERR(0, 24, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_MISSING); - __Pyx_GIVEREF(__pyx_n_s_MISSING); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_MISSING)) __PYX_ERR(0, 24, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_MISSING, __pyx_t_3) < 0) __PYX_ERR(0, 24, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_MISSING, __pyx_t_3) < 0) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -13968,19 +13822,16 @@ if (!__Pyx_RefNanny) { * from .util import get_func_in_mro # <<<<<<<<<<<<<< * from .util import get_main_thread * from .util import if_same_code - */ - __Pyx_TraceLine(25,0,__PYX_ERR(0, 25, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) +*/ + __Pyx_TraceLine(25,58,0,__PYX_ERR(0, 25, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_get_func_in_mro); - __Pyx_GIVEREF(__pyx_n_s_get_func_in_mro); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_get_func_in_mro)) __PYX_ERR(0, 25, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 25, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 25, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_get_func_in_mro); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_func_in_mro, __pyx_t_2) < 0) __PYX_ERR(0, 25, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_func_in_mro, __pyx_t_2) < 0) __PYX_ERR(0, 25, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -13990,19 +13841,16 @@ if (!__Pyx_RefNanny) { * from .util import get_main_thread # <<<<<<<<<<<<<< * from .util import if_same_code * - */ - __Pyx_TraceLine(26,0,__PYX_ERR(0, 26, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) +*/ + __Pyx_TraceLine(26,61,0,__PYX_ERR(0, 26, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_get_main_thread); - __Pyx_GIVEREF(__pyx_n_s_get_main_thread); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_get_main_thread)) __PYX_ERR(0, 26, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_get_main_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_main_thread, __pyx_t_3) < 0) __PYX_ERR(0, 26, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_main_thread, __pyx_t_3) < 0) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -14012,19 +13860,16 @@ if (!__Pyx_RefNanny) { * from .util import if_same_code # <<<<<<<<<<<<<< * * __all__ = 'Event', - */ - __Pyx_TraceLine(27,0,__PYX_ERR(0, 27, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) +*/ + __Pyx_TraceLine(27,64,0,__PYX_ERR(0, 27, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_if_same_code); - __Pyx_GIVEREF(__pyx_n_s_if_same_code); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_if_same_code)) __PYX_ERR(0, 27, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 27, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_if_same_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_if_same_code, __pyx_t_2) < 0) __PYX_ERR(0, 27, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_if_same_code, __pyx_t_2) < 0) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -14034,9 +13879,9 @@ if (!__Pyx_RefNanny) { * __all__ = 'Event', # <<<<<<<<<<<<<< * * cdef object UNSET = object() - */ - __Pyx_TraceLine(29,0,__PYX_ERR(0, 29, __pyx_L1_error)) - if (PyDict_SetItem(__pyx_d, __pyx_n_s_all, __pyx_tuple__16) < 0) __PYX_ERR(0, 29, __pyx_L1_error) +*/ + __Pyx_TraceLine(29,66,0,__PYX_ERR(0, 29, __pyx_L1_error)) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[4]) < 0) __PYX_ERR(0, 29, __pyx_L1_error) /* "hunter/_event.pyx":31 * __all__ = 'Event', @@ -14044,10 +13889,20 @@ if (!__Pyx_RefNanny) { * cdef object UNSET = object() # <<<<<<<<<<<<<< * * cdef Pool mem = Pool() - */ - __Pyx_TraceLine(31,0,__PYX_ERR(0, 31, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_builtin_object); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 31, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); +*/ + __Pyx_TraceLine(31,69,0,__PYX_ERR(0, 31, __pyx_L1_error)) + __pyx_t_2 = NULL; + __Pyx_INCREF(__pyx_builtin_object); + __pyx_t_4 = __pyx_builtin_object; + __pyx_t_5 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 31, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + } __Pyx_XGOTREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_UNSET, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); @@ -14059,13 +13914,23 @@ if (!__Pyx_RefNanny) { * cdef Pool mem = Pool() # <<<<<<<<<<<<<< * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) * - */ - __Pyx_TraceLine(33,0,__PYX_ERR(0, 33, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 33, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); +*/ + __Pyx_TraceLine(33,72,0,__PYX_ERR(0, 33, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); + __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); + __pyx_t_5 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 33, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } __Pyx_XGOTREF((PyObject *)__pyx_v_6hunter_6_event_mem); __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_mem, ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_t_3)); - __Pyx_GIVEREF(__pyx_t_3); + __Pyx_GIVEREF((PyObject *)__pyx_t_3); __pyx_t_3 = 0; /* "hunter/_event.pyx":34 @@ -14074,34 +13939,13 @@ if (!__Pyx_RefNanny) { * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) # <<<<<<<<<<<<<< * * cdef inline PyObject** make_kind_names(list strings): - */ - __Pyx_TraceLine(34,0,__PYX_ERR(0, 34, __pyx_L1_error)) - __pyx_t_3 = PyList_New(7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 34, __pyx_L1_error) +*/ + __Pyx_TraceLine(34,76,0,__PYX_ERR(0, 34, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(7, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_n_u_line, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_n_u_return); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_call); - __Pyx_GIVEREF(__pyx_n_s_call); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_call)) __PYX_ERR(0, 34, __pyx_L1_error); - __Pyx_INCREF(__pyx_n_s_exception); - __Pyx_GIVEREF(__pyx_n_s_exception); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_exception)) __PYX_ERR(0, 34, __pyx_L1_error); - __Pyx_INCREF(__pyx_n_s_line); - __Pyx_GIVEREF(__pyx_n_s_line); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 2, __pyx_n_s_line)) __PYX_ERR(0, 34, __pyx_L1_error); - __Pyx_INCREF(__pyx_n_s_return); - __Pyx_GIVEREF(__pyx_n_s_return); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 3, __pyx_n_s_return)) __PYX_ERR(0, 34, __pyx_L1_error); - __Pyx_INCREF(__pyx_n_s_call); - __Pyx_GIVEREF(__pyx_n_s_call); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_call)) __PYX_ERR(0, 34, __pyx_L1_error); - __Pyx_INCREF(__pyx_n_s_exception); - __Pyx_GIVEREF(__pyx_n_s_exception); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 5, __pyx_n_s_exception)) __PYX_ERR(0, 34, __pyx_L1_error); - __Pyx_INCREF(__pyx_n_s_return); - __Pyx_GIVEREF(__pyx_n_s_return); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 6, __pyx_n_s_return)) __PYX_ERR(0, 34, __pyx_L1_error); - __pyx_t_4 = __pyx_f_6hunter_6_event_make_kind_names(((PyObject*)__pyx_t_3)); if (unlikely(__pyx_t_4 == ((PyObject **)NULL) && PyErr_Occurred())) __PYX_ERR(0, 34, __pyx_L1_error) + __pyx_t_6 = __pyx_f_6hunter_6_event_make_kind_names(((PyObject*)__pyx_t_3)); if (unlikely(__pyx_t_6 == ((PyObject **)0) && PyErr_Occurred())) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_6hunter_6_event_KIND_NAMES = __pyx_t_4; + __pyx_v_6hunter_6_event_KIND_NAMES = __pyx_t_6; /* "hunter/_event.pyx":36 * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) @@ -14109,8 +13953,8 @@ if (!__Pyx_RefNanny) { * cdef inline PyObject** make_kind_names(list strings): # <<<<<<<<<<<<<< * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) * cdef object name - */ - __Pyx_TraceLine(36,0,__PYX_ERR(0, 36, __pyx_L1_error)) +*/ + __Pyx_TraceLine(36,84,0,__PYX_ERR(0, 36, __pyx_L1_error)) /* "hunter/_event.pyx":62 @@ -14119,11 +13963,11 @@ if (!__Pyx_RefNanny) { * object threading_support=MISSING): # <<<<<<<<<<<<<< * if tracer is None: * if depth is None: - */ - __Pyx_TraceLine(62,0,__PYX_ERR(0, 62, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 62, __pyx_L1_error) +*/ + __Pyx_TraceLine(62,0,0,__PYX_ERR(0, 62, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_k_ = __pyx_t_3; + __pyx_mstate_global->__pyx_k_ = __pyx_t_3; __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; @@ -14133,14 +13977,13 @@ if (!__Pyx_RefNanny) { * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * - */ - __Pyx_TraceLine(108,0,__PYX_ERR(0, 108, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Event_detach, NULL, __pyx_n_s_hunter__event, __pyx_d, ((PyObject *)__pyx_codeobj__5)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) +*/ + __Pyx_TraceLine(108,89,0,__PYX_ERR(0, 108, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_detach, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_tuple__18); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_6_event_Event, __pyx_n_s_detach, __pyx_t_3) < 0) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[5]); + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_detach, __pyx_t_3) < 0) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_6_event_Event); /* "hunter/_event.pyx":111 * return fast_detach(self, value_filter) @@ -14148,13 +13991,12 @@ if (!__Pyx_RefNanny) { * def clone(self): # <<<<<<<<<<<<<< * return fast_clone(self) * - */ - __Pyx_TraceLine(111,0,__PYX_ERR(0, 111, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Event_clone, NULL, __pyx_n_s_hunter__event, __pyx_d, ((PyObject *)__pyx_codeobj__6)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) +*/ + __Pyx_TraceLine(111,91,0,__PYX_ERR(0, 111, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_clone, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_6_event_Event, __pyx_n_s_clone, __pyx_t_3) < 0) __PYX_ERR(0, 111, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_clone, __pyx_t_3) < 0) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_6_event_Event); /* "hunter/_event.pyx":114 * return fast_clone(self) @@ -14162,8 +14004,8 @@ if (!__Pyx_RefNanny) { * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< * cdef int position * - */ - __Pyx_TraceLine(114,0,__PYX_ERR(0, 114, __pyx_L1_error)) +*/ + __Pyx_TraceLine(114,92,0,__PYX_ERR(0, 114, __pyx_L1_error)) /* "hunter/_event.pyx":130 @@ -14172,8 +14014,8 @@ if (!__Pyx_RefNanny) { * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< * cdef long current * - */ - __Pyx_TraceLine(130,0,__PYX_ERR(0, 130, __pyx_L1_error)) +*/ + __Pyx_TraceLine(130,94,0,__PYX_ERR(0, 130, __pyx_L1_error)) /* "hunter/_event.pyx":146 @@ -14182,8 +14024,8 @@ if (!__Pyx_RefNanny) { * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< * if self._threadname is UNSET: * if self._thread is UNSET: - */ - __Pyx_TraceLine(146,0,__PYX_ERR(0, 146, __pyx_L1_error)) +*/ + __Pyx_TraceLine(146,96,0,__PYX_ERR(0, 146, __pyx_L1_error)) /* "hunter/_event.pyx":157 @@ -14192,145 +14034,146 @@ if (!__Pyx_RefNanny) { * cdef inline locals_getter(self): # <<<<<<<<<<<<<< * if self._locals is UNSET: * if self.builtin: - */ - __Pyx_TraceLine(157,0,__PYX_ERR(0, 157, __pyx_L1_error)) +*/ + __Pyx_TraceLine(157,98,0,__PYX_ERR(0, 157, __pyx_L1_error)) - /* "hunter/_event.pyx":170 + /* "hunter/_event.pyx":169 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< * if self._globals is UNSET: * if self.builtin: - */ - __Pyx_TraceLine(170,0,__PYX_ERR(0, 170, __pyx_L1_error)) +*/ + __Pyx_TraceLine(169,100,0,__PYX_ERR(0, 169, __pyx_L1_error)) - /* "hunter/_event.pyx":182 + /* "hunter/_event.pyx":181 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< * if self._function is UNSET: * if self.builtin: - */ - __Pyx_TraceLine(182,0,__PYX_ERR(0, 182, __pyx_L1_error)) +*/ + __Pyx_TraceLine(181,102,0,__PYX_ERR(0, 181, __pyx_L1_error)) - /* "hunter/_event.pyx":225 + /* "hunter/_event.pyx":224 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< * if self._module is UNSET: * if self.builtin: - */ - __Pyx_TraceLine(225,0,__PYX_ERR(0, 225, __pyx_L1_error)) +*/ + __Pyx_TraceLine(224,105,0,__PYX_ERR(0, 224, __pyx_L1_error)) - /* "hunter/_event.pyx":240 + /* "hunter/_event.pyx":239 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< * cdef CodeType code * if self._filename is UNSET: - */ - __Pyx_TraceLine(240,0,__PYX_ERR(0, 240, __pyx_L1_error)) +*/ + __Pyx_TraceLine(239,107,0,__PYX_ERR(0, 239, __pyx_L1_error)) - /* "hunter/_event.pyx":266 + /* "hunter/_event.pyx":265 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber(self.frame) - */ - __Pyx_TraceLine(266,0,__PYX_ERR(0, 266, __pyx_L1_error)) + * self._lineno = PyFrame_GetLineNumber( self.frame) +*/ + __Pyx_TraceLine(265,109,0,__PYX_ERR(0, 265, __pyx_L1_error)) - /* "hunter/_event.pyx":275 + /* "hunter/_event.pyx":274 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: - * return PyFrame_GetCode(self.frame) - */ - __Pyx_TraceLine(275,0,__PYX_ERR(0, 275, __pyx_L1_error)) + * return PyFrame_GetCode( self.frame) +*/ + __Pyx_TraceLine(274,111,0,__PYX_ERR(0, 274, __pyx_L1_error)) - /* "hunter/_event.pyx":285 + /* "hunter/_event.pyx":284 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< * if self._stdlib is UNSET: * module_parts = self.module.split('.') - */ - __Pyx_TraceLine(285,0,__PYX_ERR(0, 285, __pyx_L1_error)) +*/ + __Pyx_TraceLine(284,113,0,__PYX_ERR(0, 284, __pyx_L1_error)) - /* "hunter/_event.pyx":307 + /* "hunter/_event.pyx":306 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< * cdef list lines * cdef CodeType code - */ - __Pyx_TraceLine(307,0,__PYX_ERR(0, 307, __pyx_L1_error)) +*/ + __Pyx_TraceLine(306,115,0,__PYX_ERR(0, 306, __pyx_L1_error)) - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":343 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): - */ - __Pyx_TraceLine(344,0,__PYX_ERR(0, 344, __pyx_L1_error)) +*/ + __Pyx_TraceLine(343,117,0,__PYX_ERR(0, 343, __pyx_L1_error)) - /* "hunter/_event.pyx":363 + /* "hunter/_event.pyx":362 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None - */ - __Pyx_TraceLine(363,0,__PYX_ERR(0, 363, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_1yield_lines, 0, __pyx_n_s_yield_lines, NULL, __pyx_n_s_hunter__event, __pyx_d, ((PyObject *)__pyx_codeobj__15)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 363, __pyx_L1_error) +*/ + __Pyx_TraceLine(362,120,0,__PYX_ERR(0, 362, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_1yield_lines, 0, __pyx_mstate_global->__pyx_n_u_yield_lines, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_tuple__21); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_yield_lines, __pyx_t_3) < 0) __PYX_ERR(0, 363, __pyx_L1_error) + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[6]); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_t_3) < 0) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":378 + /* "hunter/_event.pyx":377 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * - */ - __Pyx_TraceLine(378,0,__PYX_ERR(0, 378, __pyx_L1_error)) +*/ + __Pyx_TraceLine(377,122,0,__PYX_ERR(0, 377, __pyx_L1_error)) - /* "hunter/_event.pyx":412 + /* "hunter/_event.pyx":411 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * event.arg = self.arg - */ - __Pyx_TraceLine(412,0,__PYX_ERR(0, 412, __pyx_L1_error)) +*/ + __Pyx_TraceLine(411,123,0,__PYX_ERR(0, 411, __pyx_L1_error)) /* "hunter/_event.pyx":1 * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii # <<<<<<<<<<<<<< * from functools import partial * from linecache import getline - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) +*/ + __Pyx_TraceLine(1,0,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -14338,8 +14181,11 @@ if (!__Pyx_RefNanny) { __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_TraceExceptionUnwind(0, 0); if (__pyx_m) { - if (__pyx_d && stringtab_initialized) { + if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._event", __pyx_clineno, __pyx_lineno, __pyx_filename); } #if !CYTHON_USE_MODULE_STATE @@ -14360,12 +14206,624 @@ if (!__Pyx_RefNanny) { __Pyx_RefNannyFinishContext(); #if CYTHON_PEP489_MULTI_PHASE_INIT return (__pyx_m != NULL) ? 0 : -1; - #elif PY_MAJOR_VERSION >= 3 - return __pyx_m; #else - return; + return __pyx_m; #endif } +/* #### Code section: pystring_table ### */ + +typedef struct { + const char *s; +#if 179 <= 65535 + const unsigned short n; +#elif 179 / 2 < INT_MAX + const unsigned int n; +#elif 179 / 2 < LONG_MAX + const unsigned long n; +#else + const Py_ssize_t n; +#endif +#if 1 <= 31 + const unsigned int encoding : 5; +#elif 1 <= 255 + const unsigned char encoding; +#elif 1 <= 65535 + const unsigned short encoding; +#else + const Py_ssize_t encoding; +#endif + const unsigned int is_unicode : 1; + const unsigned int intern : 1; +} __Pyx_StringTabEntry; +static const char * const __pyx_string_tab_encodings[] = { 0 }; +static const __Pyx_StringTabEntry __pyx_string_tab[] = { + {__pyx_k_CYTHON_SUFFIX_RE, sizeof(__pyx_k_CYTHON_SUFFIX_RE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_CYTHON_SUFFIX_RE */ + {__pyx_k_Event, sizeof(__pyx_k_Event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event */ + {__pyx_k_Event_clone, sizeof(__pyx_k_Event_clone), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_clone */ + {__pyx_k_Event_detach, sizeof(__pyx_k_Event_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_detach */ + {__pyx_k_Event_kind, sizeof(__pyx_k_Event_kind), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Event_kind */ + {__pyx_k_KIND_NAMES, sizeof(__pyx_k_KIND_NAMES), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KIND_NAMES */ + {__pyx_k_LEADING_WHITESPACE_RE, sizeof(__pyx_k_LEADING_WHITESPACE_RE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LEADING_WHITESPACE_RE */ + {__pyx_k_MISSING, sizeof(__pyx_k_MISSING), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MISSING */ + {__pyx_k_Missing_argument_calls_required, sizeof(__pyx_k_Missing_argument_calls_required), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Missing_argument_calls_required */ + {__pyx_k_Missing_argument_depth_required, sizeof(__pyx_k_Missing_argument_depth_required), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Missing_argument_depth_required */ + {__pyx_k_Missing_argument_threading_suppo, sizeof(__pyx_k_Missing_argument_threading_suppo), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Missing_argument_threading_suppo */ + {__pyx_k_NO_SOURCE, sizeof(__pyx_k_NO_SOURCE), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_NO_SOURCE */ + {__pyx_k_NO_SOURCE_not_reading_binary, sizeof(__pyx_k_NO_SOURCE_not_reading_binary), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_NO_SOURCE_not_reading_binary */ + {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ + {__pyx_k_SITE_PACKAGES_PATHS, sizeof(__pyx_k_SITE_PACKAGES_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SITE_PACKAGES_PATHS */ + {__pyx_k_SYS_PREFIX_PATHS, sizeof(__pyx_k_SYS_PREFIX_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SYS_PREFIX_PATHS */ + {__pyx_k_TokenError, sizeof(__pyx_k_TokenError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TokenError */ + {__pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TypeError */ + {__pyx_k_UNSET, sizeof(__pyx_k_UNSET), 0, 1, 1}, /* PyObject cname: __pyx_n_u_UNSET */ + {__pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__2 */ + {__pyx_k__3, sizeof(__pyx_k__3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__3 */ + {__pyx_k__4, sizeof(__pyx_k__4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__4 */ + {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__5 */ + {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */ + {__pyx_k_all, sizeof(__pyx_k_all), 0, 1, 1}, /* PyObject cname: __pyx_n_u_all */ + {__pyx_k_amount, sizeof(__pyx_k_amount), 0, 1, 1}, /* PyObject cname: __pyx_n_u_amount */ + {__pyx_k_arg, sizeof(__pyx_k_arg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_arg */ + {__pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asyncio_coroutines */ + {__pyx_k_basename, sizeof(__pyx_k_basename), 0, 1, 1}, /* PyObject cname: __pyx_n_u_basename */ + {__pyx_k_builtin, sizeof(__pyx_k_builtin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_builtin */ + {__pyx_k_call, sizeof(__pyx_k_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_call */ + {__pyx_k_calls, sizeof(__pyx_k_calls), 0, 1, 1}, /* PyObject cname: __pyx_n_u_calls */ + {__pyx_k_candidate, sizeof(__pyx_k_candidate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_candidate */ + {__pyx_k_class, sizeof(__pyx_k_class), 0, 1, 1}, /* PyObject cname: __pyx_n_u_class */ + {__pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cline_in_traceback */ + {__pyx_k_clone, sizeof(__pyx_k_clone), 0, 1, 1}, /* PyObject cname: __pyx_n_u_clone */ + {__pyx_k_close, sizeof(__pyx_k_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_close */ + {__pyx_k_code, sizeof(__pyx_k_code), 0, 1, 1}, /* PyObject cname: __pyx_n_u_code */ + {__pyx_k_code_2, sizeof(__pyx_k_code_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_code_2 */ + {__pyx_k_code_getter, sizeof(__pyx_k_code_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_code_getter */ + {__pyx_k_collector, sizeof(__pyx_k_collector), 0, 1, 1}, /* PyObject cname: __pyx_n_u_collector */ + {__pyx_k_const, sizeof(__pyx_k_const), 0, 1, 1}, /* PyObject cname: __pyx_n_u_const */ + {__pyx_k_current_thread, sizeof(__pyx_k_current_thread), 0, 1, 1}, /* PyObject cname: __pyx_n_u_current_thread */ + {__pyx_k_dedent, sizeof(__pyx_k_dedent), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dedent */ + {__pyx_k_def, sizeof(__pyx_k_def), 0, 1, 1}, /* PyObject cname: __pyx_n_u_def */ + {__pyx_k_depth, sizeof(__pyx_k_depth), 0, 1, 1}, /* PyObject cname: __pyx_n_u_depth */ + {__pyx_k_detach, sizeof(__pyx_k_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_detach */ + {__pyx_k_detached, sizeof(__pyx_k_detached), 0, 1, 1}, /* PyObject cname: __pyx_n_u_detached */ + {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ + {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ + {__pyx_k_endswith, sizeof(__pyx_k_endswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_endswith */ + {__pyx_k_enumerate, sizeof(__pyx_k_enumerate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enumerate */ + {__pyx_k_eq, sizeof(__pyx_k_eq), 0, 1, 1}, /* PyObject cname: __pyx_n_u_eq */ + {__pyx_k_exception, sizeof(__pyx_k_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exception */ + {__pyx_k_exists, sizeof(__pyx_k_exists), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exists */ + {__pyx_k_f_globals, sizeof(__pyx_k_f_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f_globals */ + {__pyx_k_fast_clone, sizeof(__pyx_k_fast_clone), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_clone */ + {__pyx_k_fast_detach, sizeof(__pyx_k_fast_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_detach */ + {__pyx_k_file, sizeof(__pyx_k_file), 0, 1, 1}, /* PyObject cname: __pyx_n_u_file */ + {__pyx_k_file_2, sizeof(__pyx_k_file_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_file_2 */ + {__pyx_k_filename, sizeof(__pyx_k_filename), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_filename */ + {__pyx_k_filename_2, sizeof(__pyx_k_filename_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_filename_2 */ + {__pyx_k_filename_3, sizeof(__pyx_k_filename_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_filename_3 */ + {__pyx_k_filename_getter, sizeof(__pyx_k_filename_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_filename_getter */ + {__pyx_k_findall, sizeof(__pyx_k_findall), 0, 1, 1}, /* PyObject cname: __pyx_n_u_findall */ + {__pyx_k_first_arg, sizeof(__pyx_k_first_arg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_first_arg */ + {__pyx_k_frame, sizeof(__pyx_k_frame), 0, 1, 1}, /* PyObject cname: __pyx_n_u_frame */ + {__pyx_k_fullsource, sizeof(__pyx_k_fullsource), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fullsource */ + {__pyx_k_fullsource_getter, sizeof(__pyx_k_fullsource_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fullsource_getter */ + {__pyx_k_func, sizeof(__pyx_k_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func */ + {__pyx_k_func_2, sizeof(__pyx_k_func_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func_2 */ + {__pyx_k_function, sizeof(__pyx_k_function), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_function */ + {__pyx_k_function_2, sizeof(__pyx_k_function_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_function_2 */ + {__pyx_k_function_3, sizeof(__pyx_k_function_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_function_3 */ + {__pyx_k_function_getter, sizeof(__pyx_k_function_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_function_getter */ + {__pyx_k_function_object, sizeof(__pyx_k_function_object), 0, 1, 1}, /* PyObject cname: __pyx_n_u_function_object */ + {__pyx_k_functools, sizeof(__pyx_k_functools), 0, 1, 1}, /* PyObject cname: __pyx_n_u_functools */ + {__pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_gc */ + {__pyx_k_generate_tokens, sizeof(__pyx_k_generate_tokens), 0, 1, 1}, /* PyObject cname: __pyx_n_u_generate_tokens */ + {__pyx_k_get, sizeof(__pyx_k_get), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get */ + {__pyx_k_get_2, sizeof(__pyx_k_get_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_2 */ + {__pyx_k_get_func_in_mro, sizeof(__pyx_k_get_func_in_mro), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_func_in_mro */ + {__pyx_k_get_main_thread, sizeof(__pyx_k_get_main_thread), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get_main_thread */ + {__pyx_k_getitem, sizeof(__pyx_k_getitem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getitem */ + {__pyx_k_getline, sizeof(__pyx_k_getline), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getline */ + {__pyx_k_getlines, sizeof(__pyx_k_getlines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getlines */ + {__pyx_k_globals, sizeof(__pyx_k_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals */ + {__pyx_k_globals_2, sizeof(__pyx_k_globals_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals_2 */ + {__pyx_k_globals_getter, sizeof(__pyx_k_globals_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals_getter */ + {__pyx_k_hunter__event, sizeof(__pyx_k_hunter__event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter__event */ + {__pyx_k_ident, sizeof(__pyx_k_ident), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ident */ + {__pyx_k_if_same_code, sizeof(__pyx_k_if_same_code), 0, 1, 1}, /* PyObject cname: __pyx_n_u_if_same_code */ + {__pyx_k_init, sizeof(__pyx_k_init), 0, 1, 1}, /* PyObject cname: __pyx_n_u_init */ + {__pyx_k_instruction, sizeof(__pyx_k_instruction), 0, 1, 1}, /* PyObject cname: __pyx_n_u_instruction */ + {__pyx_k_instruction_getter, sizeof(__pyx_k_instruction_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_instruction_getter */ + {__pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_coroutine */ + {__pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_isenabled */ + {__pyx_k_item, sizeof(__pyx_k_item), 0, 1, 1}, /* PyObject cname: __pyx_n_u_item */ + {__pyx_k_items, sizeof(__pyx_k_items), 0, 1, 1}, /* PyObject cname: __pyx_n_u_items */ + {__pyx_k_kind, sizeof(__pyx_k_kind), 0, 1, 1}, /* PyObject cname: __pyx_n_u_kind */ + {__pyx_k_lambda, sizeof(__pyx_k_lambda), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lambda */ + {__pyx_k_limit, sizeof(__pyx_k_limit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_limit */ + {__pyx_k_line, sizeof(__pyx_k_line), 0, 1, 1}, /* PyObject cname: __pyx_n_u_line */ + {__pyx_k_linecache, sizeof(__pyx_k_linecache), 0, 1, 1}, /* PyObject cname: __pyx_n_u_linecache */ + {__pyx_k_lineno, sizeof(__pyx_k_lineno), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_lineno */ + {__pyx_k_lineno_2, sizeof(__pyx_k_lineno_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lineno_2 */ + {__pyx_k_lineno_3, sizeof(__pyx_k_lineno_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lineno_3 */ + {__pyx_k_lineno_getter, sizeof(__pyx_k_lineno_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lineno_getter */ + {__pyx_k_locals, sizeof(__pyx_k_locals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_locals */ + {__pyx_k_locals_2, sizeof(__pyx_k_locals_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_locals_2 */ + {__pyx_k_locals_getter, sizeof(__pyx_k_locals_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_locals_getter */ + {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */ + {__pyx_k_make_kind_names, sizeof(__pyx_k_make_kind_names), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_kind_names */ + {__pyx_k_mem, sizeof(__pyx_k_mem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_mem */ + {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_module */ + {__pyx_k_module_2, sizeof(__pyx_k_module_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_2 */ + {__pyx_k_module_3, sizeof(__pyx_k_module_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_3 */ + {__pyx_k_module_4, sizeof(__pyx_k_module_4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_module_4 */ + {__pyx_k_module_5, sizeof(__pyx_k_module_5), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_5 */ + {__pyx_k_module_getter, sizeof(__pyx_k_module_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_getter */ + {__pyx_k_module_globals, sizeof(__pyx_k_module_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_globals */ + {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ + {__pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name_2 */ + {__pyx_k_namedtuple, sizeof(__pyx_k_namedtuple), 0, 1, 1}, /* PyObject cname: __pyx_n_u_namedtuple */ + {__pyx_k_next, sizeof(__pyx_k_next), 0, 1, 1}, /* PyObject cname: __pyx_n_u_next */ + {__pyx_k_object, sizeof(__pyx_k_object), 0, 1, 1}, /* PyObject cname: __pyx_n_u_object */ + {__pyx_k_os_path, sizeof(__pyx_k_os_path), 0, 1, 1}, /* PyObject cname: __pyx_n_u_os_path */ + {__pyx_k_other, sizeof(__pyx_k_other), 0, 1, 1}, /* PyObject cname: __pyx_n_u_other */ + {__pyx_k_partial, sizeof(__pyx_k_partial), 0, 1, 1}, /* PyObject cname: __pyx_n_u_partial */ + {__pyx_k_pkg_resources, sizeof(__pyx_k_pkg_resources), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pkg_resources */ + {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ + {__pyx_k_py, sizeof(__pyx_k_py), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_py */ + {__pyx_k_pyc, sizeof(__pyx_k_pyc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyc */ + {__pyx_k_pyd, sizeof(__pyx_k_pyd), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyd */ + {__pyx_k_pyo, sizeof(__pyx_k_pyo), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyo */ + {__pyx_k_pyx, sizeof(__pyx_k_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyx */ + {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ + {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ + {__pyx_k_repr, sizeof(__pyx_k_repr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_repr */ + {__pyx_k_return, sizeof(__pyx_k_return), 0, 1, 1}, /* PyObject cname: __pyx_n_u_return */ + {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ + {__pyx_k_send, sizeof(__pyx_k_send), 0, 1, 1}, /* PyObject cname: __pyx_n_u_send */ + {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ + {__pyx_k_site, sizeof(__pyx_k_site), 0, 1, 1}, /* PyObject cname: __pyx_n_u_site */ + {__pyx_k_so, sizeof(__pyx_k_so), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_so */ + {__pyx_k_source, sizeof(__pyx_k_source), 0, 1, 1}, /* PyObject cname: __pyx_n_u_source */ + {__pyx_k_source_getter, sizeof(__pyx_k_source_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_source_getter */ + {__pyx_k_split, sizeof(__pyx_k_split), 0, 1, 1}, /* PyObject cname: __pyx_n_u_split */ + {__pyx_k_splitext, sizeof(__pyx_k_splitext), 0, 1, 1}, /* PyObject cname: __pyx_n_u_splitext */ + {__pyx_k_src_hunter__event_pxd, sizeof(__pyx_k_src_hunter__event_pxd), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__event_pxd */ + {__pyx_k_src_hunter__event_pyx, sizeof(__pyx_k_src_hunter__event_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__event_pyx */ + {__pyx_k_start, sizeof(__pyx_k_start), 0, 1, 1}, /* PyObject cname: __pyx_n_u_start */ + {__pyx_k_startswith, sizeof(__pyx_k_startswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_startswith */ + {__pyx_k_stdlib, sizeof(__pyx_k_stdlib), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib */ + {__pyx_k_stdlib_getter, sizeof(__pyx_k_stdlib_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib_getter */ + {__pyx_k_string, sizeof(__pyx_k_string), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_string */ + {__pyx_k_strings, sizeof(__pyx_k_strings), 0, 1, 1}, /* PyObject cname: __pyx_n_u_strings */ + {__pyx_k_sub, sizeof(__pyx_k_sub), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sub */ + {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ + {__pyx_k_thread, sizeof(__pyx_k_thread), 0, 1, 1}, /* PyObject cname: __pyx_n_u_thread */ + {__pyx_k_threadid_getter, sizeof(__pyx_k_threadid_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadid_getter */ + {__pyx_k_threadidn, sizeof(__pyx_k_threadidn), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadidn */ + {__pyx_k_threading, sizeof(__pyx_k_threading), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threading */ + {__pyx_k_threading_support, sizeof(__pyx_k_threading_support), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threading_support */ + {__pyx_k_threadname, sizeof(__pyx_k_threadname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadname */ + {__pyx_k_threadname_getter, sizeof(__pyx_k_threadname_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadname_getter */ + {__pyx_k_throw, sizeof(__pyx_k_throw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_throw */ + {__pyx_k_tokenize, sizeof(__pyx_k_tokenize), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tokenize */ + {__pyx_k_tracer, sizeof(__pyx_k_tracer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tracer */ + {__pyx_k_util, sizeof(__pyx_k_util), 0, 1, 1}, /* PyObject cname: __pyx_n_u_util */ + {__pyx_k_v, sizeof(__pyx_k_v), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v */ + {__pyx_k_value, sizeof(__pyx_k_value), 0, 1, 1}, /* PyObject cname: __pyx_n_u_value */ + {__pyx_k_value_filter, sizeof(__pyx_k_value_filter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_value_filter */ + {__pyx_k_values, sizeof(__pyx_k_values), 0, 1, 1}, /* PyObject cname: __pyx_n_u_values */ + {__pyx_k_yield_lines, sizeof(__pyx_k_yield_lines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_yield_lines */ + {0, 0, 0, 0, 0} +}; +/* InitStrings.proto */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names); + +/* #### Code section: cached_builtins ### */ + +static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_object); if (!__pyx_builtin_object) __PYX_ERR(0, 31, __pyx_L1_error) + __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 39, __pyx_L1_error) + __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 65, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: cached_constants ### */ + +static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + + /* "hunter/_event.pyx":229 + * module = self.arg.__module__ + * else: + * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< + * if module is None: + * module = '?' +*/ + __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_kp_u__3); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 229, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); + + /* "hunter/_event.pyx":248 + * if not filename: + * filename = '?' + * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< + * filename = filename[:-1] + * elif filename.endswith(('.so', '.pyd')): +*/ + __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyc, __pyx_mstate_global->__pyx_kp_u_pyo); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 248, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]); + + /* "hunter/_event.pyx":249 + * filename = '?' + * elif filename.endswith(('.pyc', '.pyo')): + * filename = filename[:-1] # <<<<<<<<<<<<<< + * elif filename.endswith(('.so', '.pyd')): + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) +*/ + __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 249, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[0]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]); + + /* "hunter/_event.pyx":250 + * elif filename.endswith(('.pyc', '.pyo')): + * filename = filename[:-1] + * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) + * for ext in ('.pyx', '.py'): +*/ + __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_so, __pyx_mstate_global->__pyx_kp_u_pyd); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 250, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[2]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[2]); + + /* "hunter/_event.pyx":252 + * elif filename.endswith(('.so', '.pyd')): + * cybasename = CYTHON_SUFFIX_RE.sub('', filename) + * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< + * cyfilename = cybasename + ext + * if exists(cyfilename): +*/ + __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyx, __pyx_mstate_global->__pyx_kp_u_py); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 252, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[3]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[3]); + + /* "hunter/_event.pyx":29 + * from .util import if_same_code + * + * __all__ = 'Event', # <<<<<<<<<<<<<< + * + * cdef object UNSET = object() +*/ + __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Event); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(0, 29, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); + + /* "hunter/_event.pyx":108 + * return self is other + * + * def detach(self, value_filter=None): # <<<<<<<<<<<<<< + * return fast_detach(self, value_filter) + * +*/ + __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]); + + /* "hunter/_event.pyx":362 + * + * + * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< + * limit=10): + * dedent = None +*/ + __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(1, ((PyObject*)__pyx_mstate_global->__pyx_int_10)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 362, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]); + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} +/* #### Code section: init_constants ### */ + +static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type; + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop; + if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + __pyx_mstate->__pyx_int_1 = PyLong_FromLong(1); if (unlikely(!__pyx_mstate->__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_10 = PyLong_FromLong(10); if (unlikely(!__pyx_mstate->__pyx_int_10)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_neg_1 = PyLong_FromLong(-1); if (unlikely(!__pyx_mstate->__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: init_codeobjects ### */ +\ + typedef struct { + unsigned int argcount : 4; + unsigned int num_posonly_args : 1; + unsigned int num_kwonly_args : 1; + unsigned int nlocals : 5; + unsigned int flags : 10; + unsigned int first_line : 9; + unsigned int line_table_length : 13; + } __Pyx_PyCode_New_function_description; +/* NewCodeObj.proto */ +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +); + + +static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { + PyObject* tuple_dedup_map = PyDict_New(); + if (unlikely(!tuple_dedup_map)) return -1; + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 36, 73}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_strings, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_mem, __pyx_mstate->__pyx_n_u_KIND_NAMES}; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_make_kind_names, __pyx_k_a_L_6_Qj_Yaq_vQa_q_Qe_q_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {8, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 61, 274}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_tracer, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support}; + __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_LL__rrs_7_Q_vS_iq_vS_iq_A_iq_F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 100, 28}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_t_d_4_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 105, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_uCq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 108, 16}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter}; + __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_detach, __pyx_k_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 111, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_clone, __pyx_k_A_z, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 114, 83}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_instruction_getter, __pyx_k_A_4_S_q_9_Q_nAT_Q_xt9Cq_G1A_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 126, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 130, 70}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadid_getter, __pyx_k_A_4_3a_q_uG5_HCt1_N_N_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 142, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 146, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadname_getter, __pyx_k_A_4_Cq_t9Cq_K_Q_t81_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 153, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 157, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_locals_getter, __pyx_k_A_4y_1_t1_Kq_K_0_1B_a_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 165, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 169, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_globals_getter, __pyx_k_A_4z_A_t1_Kq_L_2_3DD_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 177, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 181, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_function_getter, __pyx_k_A_4_Q_t1_M_T_M_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 189, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 193, 213}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_code_2, __pyx_mstate->__pyx_n_u_candidate, __pyx_mstate->__pyx_n_u_func_2, __pyx_mstate->__pyx_n_u_first_arg, __pyx_mstate->__pyx_n_u_v}; + __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 224, 72}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_module_getter, __pyx_k_A_4y_1_t1_T_XT_a_wc_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 235, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 239, 157}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_filename_getter, __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 261, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 265, 37}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_lineno_getter, __pyx_k_A_4y_1_0_1B_a_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 270, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 274, 34}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_code_getter, __pyx_k_A_4wc_4D_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 280, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 284, 136}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_stdlib_getter, __pyx_k_A_4y_1_4wfAQ_s_Kq_Zs_U_g_X___ggj, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 302, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 306, 212}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fullsource_getter, __pyx_k_A_4_Cq_O1_t_q_4vS_t4y_1_A_Cwc_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 339, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 343, 110}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; + __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_source_getter, __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 354, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 358, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_item}; + __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_getitem, __pyx_k_A_wavQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 14, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 15, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 17, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 18, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 19, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 20, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 21, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 362, 5}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_filename_2, __pyx_mstate->__pyx_n_u_module_globals, __pyx_mstate->__pyx_n_u_start, __pyx_mstate->__pyx_n_u_collector, __pyx_mstate->__pyx_n_u_limit, __pyx_mstate->__pyx_n_u_dedent, __pyx_mstate->__pyx_n_u_amount, __pyx_mstate->__pyx_n_u_line}; + __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_yield_lines, __pyx_k__7, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 377, 311}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_mem, __pyx_mstate->__pyx_n_u_KIND_NAMES}; + __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_detach, __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 411, 228}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_mem, __pyx_mstate->__pyx_n_u_KIND_NAMES}; + __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_clone, __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad; + } + Py_DECREF(tuple_dedup_map); + return 0; + bad: + Py_DECREF(tuple_dedup_map); + return -1; +} +/* #### Code section: init_globals ### */ + +static int __Pyx_InitGlobals(void) { + /* PythonCompatibility.init */ + if (likely(__Pyx_init_co_variables() == 0)); else + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + /* CachedMethodType.init */ + #if CYTHON_COMPILING_IN_LIMITED_API +{ + PyObject *typesModule=NULL; + typesModule = PyImport_ImportModule("types"); + if (typesModule) { + __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + } +} // error handling follows +#endif + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + return 0; + __pyx_L1_error:; + return -1; +} /* #### Code section: cleanup_globals ### */ /* #### Code section: cleanup_module ### */ /* #### Code section: main_method ### */ @@ -14406,11 +14864,9 @@ static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; itp_getattro)) return tp->tp_getattro(obj, attr_name); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_getattr)) - return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); -#endif return PyObject_GetAttr(obj, attr_name); } #endif /* PyObjectGetAttrStrNoError */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -14528,11 +14980,11 @@ static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { #endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 (void) PyObject_GetOptionalAttr(obj, attr_name, &result); return result; #else -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); @@ -14548,113 +15000,137 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P /* GetBuiltinName */ static PyObject *__Pyx_GetBuiltinName(PyObject *name) { - PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_b, name); + PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_b, name); if (unlikely(!result) && !PyErr_Occurred()) { PyErr_Format(PyExc_NameError, -#if PY_MAJOR_VERSION >= 3 "name '%U' is not defined", name); -#else - "name '%.200s' is not defined", PyString_AS_STRING(name)); -#endif } return result; } /* Profile */ -#if CYTHON_PROFILE -static int __Pyx_TraceSetupAndCall(PyCodeObject** code, - PyFrameObject** frame, - PyThreadState* tstate, - const char *funcname, - const char *srcfile, - int firstlineno) { +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_TRACE && !CYTHON_USE_SYS_MONITORING +static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line) { + int ret; PyObject *type, *value, *traceback; - int retval; + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + __Pyx_PyFrame_SetLineNumber(frame, line); + __Pyx_EnterTracing(tstate); + ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); + __Pyx_LeaveTracing(tstate); + if (likely(!ret)) { + __Pyx_ErrRestoreInState(tstate, type, value, traceback); + } else { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + } + return ret; +} +#endif +CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { + PyCodeObject *py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); + if (likely(py_code)) { + py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; + } + return py_code; +} +#if CYTHON_USE_SYS_MONITORING +CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event) { + int ret; + __pyx_monitoring_version_type version = 0; + ret = PyMonitoring_EnterScope(state_array, &version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyFunc_count); + if (unlikely(ret == -1)) return -1; + return skip_event ? 0 : PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyResumeEvent(&state_array[__Pyx_Monitoring_PY_RESUME], code_obj, offset); +} +CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised) { + if (reraised) { + (void) PyMonitoring_FireReraiseEvent(monitoring_state, code_obj, offset); + } else { + (void) PyMonitoring_FireRaiseEvent(monitoring_state, code_obj, offset); + } +} +#if CYTHON_TRACE +CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset) { + int ret; + PyObject *exc = PyErr_GetRaisedException(); + ret = PyMonitoring_FireLineEvent(monitoring_state, code_obj, offset, line); + if (exc) PyErr_SetRaisedException(exc); + return ret; +} +#endif +#else +static int __Pyx_TraceSetupAndCall(PyCodeObject** code, + PyFrameObject** frame, + PyThreadState* tstate, + const char *funcname, + const char *srcfile, + int firstlineno, + int skip_event) { if (*frame == NULL || !CYTHON_PROFILE_REUSE_FRAME) { - if (*code == NULL) { + int needs_new_code_obj = (*code == NULL); + if (needs_new_code_obj) { *code = __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno); if (*code == NULL) return 0; } *frame = PyFrame_New( tstate, /*PyThreadState *tstate*/ *code, /*PyCodeObject *code*/ - __pyx_d, /*PyObject *globals*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals*/ 0 /*PyObject *locals*/ ); + if (needs_new_code_obj && !CYTHON_PROFILE_REUSE_CODEOBJ) + Py_CLEAR(*code); // otherwise the reference is owned externally if (*frame == NULL) return 0; if (CYTHON_TRACE && (*frame)->f_trace == NULL) { Py_INCREF(Py_None); (*frame)->f_trace = Py_None; } -#if PY_VERSION_HEX < 0x030400B1 - } else { - (*frame)->f_tstate = tstate; -#endif } - __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); - retval = 1; - __Pyx_EnterTracing(tstate); - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - #if CYTHON_TRACE - if (tstate->c_tracefunc) - retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; - if (retval && tstate->c_profilefunc) - #endif - retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; - __Pyx_LeaveTracing(tstate); - if (retval) { + if (!skip_event) { + PyObject *type, *value, *traceback; + int retval = 1; + __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); + __Pyx_EnterTracing(tstate); + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + #if CYTHON_TRACE + if (tstate->c_tracefunc) + retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; + if (retval && tstate->c_profilefunc) + #endif + retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; + __Pyx_LeaveTracing(tstate); + if (unlikely(!retval)) { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + return -1; + } __Pyx_ErrRestoreInState(tstate, type, value, traceback); - return __Pyx_IsTracing(tstate, 0, 0) && retval; - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); - return -1; } + return __Pyx_IsTracing(tstate, 0, 0); } -static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { - PyCodeObject *py_code = 0; -#if PY_MAJOR_VERSION >= 3 - py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); - if (likely(py_code)) { - py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; - } -#else - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - py_funcname = PyString_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - py_srcfile = PyString_FromString(srcfile); - if (unlikely(!py_srcfile)) goto bad; - py_code = PyCode_New( - 0, - 0, - 0, - CO_OPTIMIZED | CO_NEWLOCALS, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - firstlineno, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); #endif - return py_code; -} #endif /* RaiseUnexpectedTypeError */ static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj) { - __Pyx_TypeName obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); + __Pyx_TypeName obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); PyErr_Format(PyExc_TypeError, "Expected %s, got " __Pyx_FMT_TYPENAME, expected, obj_type_name); __Pyx_DECREF_TypeName(obj_type_name); @@ -14663,21 +15139,37 @@ __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj) /* Intern */ static PyObject* __Pyx_Intern(PyObject* s) { - if (unlikely(!PyString_CheckExact(s))) { + if (unlikely(!PyUnicode_CheckExact(s))) { __Pyx_RaiseUnexpectedTypeError("str", s); return NULL; } Py_INCREF(s); - #if PY_MAJOR_VERSION >= 3 PyUnicode_InternInPlace(&s); - #else - PyString_InternInPlace(&s); - #endif return s; } /* TupleAndListFromArray */ -#if CYTHON_COMPILING_IN_CPYTHON +#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + Py_ssize_t i; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); + } + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + for (i = 0; i < n; i++) { + if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { + Py_DECREF(res); + return NULL; + } + Py_INCREF(src[i]); + } + return res; +} +#elif CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { PyObject *v; Py_ssize_t i; @@ -14691,8 +15183,7 @@ __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) { PyObject *res; if (n <= 0) { - Py_INCREF(__pyx_empty_tuple); - return __pyx_empty_tuple; + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); } res = PyTuple_New(n); if (unlikely(res == NULL)) return NULL; @@ -14715,7 +15206,8 @@ __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) /* BytesEquals */ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ + !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) return PyObject_RichCompareBool(s1, s2, equals); #else if (s1 == s2) { @@ -14762,55 +15254,39 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq /* UnicodeEquals */ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL return PyObject_RichCompareBool(s1, s2, equals); #else -#if PY_MAJOR_VERSION < 3 - PyObject* owned_ref = NULL; -#endif int s1_is_unicode, s2_is_unicode; if (s1 == s2) { goto return_eq; } s1_is_unicode = PyUnicode_CheckExact(s1); s2_is_unicode = PyUnicode_CheckExact(s2); -#if PY_MAJOR_VERSION < 3 - if ((s1_is_unicode & (!s2_is_unicode)) && PyString_CheckExact(s2)) { - owned_ref = PyUnicode_FromObject(s2); - if (unlikely(!owned_ref)) - return -1; - s2 = owned_ref; - s2_is_unicode = 1; - } else if ((s2_is_unicode & (!s1_is_unicode)) && PyString_CheckExact(s1)) { - owned_ref = PyUnicode_FromObject(s1); - if (unlikely(!owned_ref)) - return -1; - s1 = owned_ref; - s1_is_unicode = 1; - } else if (((!s2_is_unicode) & (!s1_is_unicode))) { - return __Pyx_PyBytes_Equals(s1, s2, equals); - } -#endif if (s1_is_unicode & s2_is_unicode) { - Py_ssize_t length; + Py_ssize_t length, length2; int kind; void *data1, *data2; + #if !CYTHON_COMPILING_IN_LIMITED_API if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) return -1; + #endif length = __Pyx_PyUnicode_GET_LENGTH(s1); - if (length != __Pyx_PyUnicode_GET_LENGTH(s2)) { + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length < 0)) return -1; + #endif + length2 = __Pyx_PyUnicode_GET_LENGTH(s2); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length2 < 0)) return -1; + #endif + if (length != length2) { goto return_ne; } #if CYTHON_USE_UNICODE_INTERNALS { Py_hash_t hash1, hash2; - #if CYTHON_PEP393_ENABLED hash1 = ((PyASCIIObject*)s1)->hash; hash2 = ((PyASCIIObject*)s2)->hash; - #else - hash1 = ((PyUnicodeObject*)s1)->hash; - hash2 = ((PyUnicodeObject*)s2)->hash; - #endif if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { goto return_ne; } @@ -14828,9 +15304,6 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int goto return_eq; } else { int result = memcmp(data1, data2, (size_t)(length * kind)); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_EQ) ? (result == 0) : (result != 0); } } else if ((s1 == Py_None) & s2_is_unicode) { @@ -14840,9 +15313,6 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int } else { int result; PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif if (!py_result) return -1; result = __Pyx_PyObject_IsTrue(py_result); @@ -14850,14 +15320,8 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int return result; } return_eq: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_EQ); return_ne: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_NE); #endif } @@ -14866,14 +15330,25 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #if CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s) { - Py_ssize_t i, n = PyTuple_GET_SIZE(kwnames); + Py_ssize_t i, n = __Pyx_PyTuple_GET_SIZE(kwnames); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(n == -1)) return NULL; + #endif for (i = 0; i < n; i++) { - if (s == PyTuple_GET_ITEM(kwnames, i)) return kwvalues[i]; + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + if (s == namei) return kwvalues[i]; } for (i = 0; i < n; i++) { - int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + int eq = __Pyx_PyUnicode_Equals(s, namei, Py_EQ); if (unlikely(eq != 0)) { if (unlikely(eq < 0)) return NULL; return kwvalues[i]; @@ -14881,15 +15356,26 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO } return NULL; } -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { - Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + Py_ssize_t i, nkwargs; PyObject *dict; +#if !CYTHON_ASSUME_SAFE_SIZE + nkwargs = PyTuple_Size(kwnames); + if (unlikely(nkwargs < 0)) return NULL; +#else + nkwargs = PyTuple_GET_SIZE(kwnames); +#endif dict = PyDict_New(); if (unlikely(!dict)) return NULL; for (i=0; i= 3 "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AsString(kw_name)); - #endif } -/* ParseKeywords */ -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - int kwds_is_tuple = CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds)); - while (1) { - Py_XDECREF(key); key = NULL; - Py_XDECREF(value); value = NULL; - if (kwds_is_tuple) { - Py_ssize_t size; -#if CYTHON_ASSUME_SAFE_MACROS - size = PyTuple_GET_SIZE(kwds); -#else - size = PyTuple_Size(kwds); - if (size < 0) goto bad; -#endif - if (pos >= size) break; -#if CYTHON_AVOID_BORROWED_REFS - key = __Pyx_PySequence_ITEM(kwds, pos); - if (!key) goto bad; -#elif CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kwds, pos); -#else - key = PyTuple_GetItem(kwds, pos); - if (!key) goto bad; -#endif - value = kwvalues[pos]; - pos++; +/* PyFunctionFastCall */ +#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na, + PyObject *globals) { + PyFrameObject *f; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject **fastlocals; + Py_ssize_t i; + PyObject *result; + assert(globals != NULL); + /* XXX Perhaps we should create a specialized + PyFrame_New() that doesn't take locals, but does + take builtins without sanity checking them. + */ + assert(tstate != NULL); + f = PyFrame_New(tstate, co, globals, NULL); + if (f == NULL) { + return NULL; + } + fastlocals = __Pyx_PyFrame_GetLocalsplus(f); + for (i = 0; i < na; i++) { + Py_INCREF(*args); + fastlocals[i] = *args++; + } + result = PyEval_EvalFrameEx(f,0); + ++tstate->recursion_depth; + Py_DECREF(f); + --tstate->recursion_depth; + return result; +} +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs) { + PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); + PyObject *globals = PyFunction_GET_GLOBALS(func); + PyObject *argdefs = PyFunction_GET_DEFAULTS(func); + PyObject *closure; + PyObject *kwdefs; + PyObject *kwtuple, **k; + PyObject **d; + Py_ssize_t nd; + Py_ssize_t nk; + PyObject *result; + assert(kwargs == NULL || PyDict_Check(kwargs)); + nk = kwargs ? PyDict_Size(kwargs) : 0; + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; + } + if ( + co->co_kwonlyargcount == 0 && + likely(kwargs == NULL || nk == 0) && + co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { + if (argdefs == NULL && co->co_argcount == nargs) { + result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); + goto done; } - else - { - if (!PyDict_Next(kwds, &pos, &key, &value)) break; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); -#endif + else if (nargs == 0 && argdefs != NULL + && co->co_argcount == Py_SIZE(argdefs)) { + /* function called with no arguments, but all parameters have + a default value: use default values as arguments .*/ + args = &PyTuple_GET_ITEM(argdefs, 0); + result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); + goto done; } - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(value); - Py_DECREF(key); -#endif - key = NULL; - value = NULL; - continue; + } + if (kwargs != NULL) { + Py_ssize_t pos, i; + kwtuple = PyTuple_New(2 * nk); + if (kwtuple == NULL) { + result = NULL; + goto done; } -#if !CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); -#endif - Py_INCREF(value); - name = first_kw_arg; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_Check(key))) { - while (*name) { - if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) - && _PyString_Eq(**name, key)) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; -#endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - if ((**argname == key) || ( - (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) - && _PyString_Eq(**argname, key))) { - goto arg_passed_twice; - } - argname++; - } - } - } else - #endif - if (likely(PyUnicode_Check(key))) { - while (*name) { - int cmp = ( - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**name, key) - ); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; -#endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - int cmp = (**argname == key) ? 0 : - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**argname, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) goto arg_passed_twice; - argname++; - } - } - } else - goto invalid_keyword_type; - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; + k = &PyTuple_GET_ITEM(kwtuple, 0); + pos = i = 0; + while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { + Py_INCREF(k[i]); + Py_INCREF(k[i+1]); + i += 2; } + nk = i / 2; } - Py_XDECREF(key); - Py_XDECREF(value); - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - Py_XDECREF(key); - Py_XDECREF(value); - return -1; -} - -/* ArgTypeTest */ -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) -{ - __Pyx_TypeName type_name; - __Pyx_TypeName obj_type_name; - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; + else { + kwtuple = NULL; + k = NULL; } - else if (exact) { - #if PY_MAJOR_VERSION == 2 - if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; - #endif + closure = PyFunction_GET_CLOSURE(func); + kwdefs = PyFunction_GET_KW_DEFAULTS(func); + if (argdefs != NULL) { + d = &PyTuple_GET_ITEM(argdefs, 0); + nd = Py_SIZE(argdefs); } else { - if (likely(__Pyx_TypeCheck(obj, type))) return 1; + d = NULL; + nd = 0; } - type_name = __Pyx_PyType_GetName(type); - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); - PyErr_Format(PyExc_TypeError, - "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME - ", got " __Pyx_FMT_TYPENAME ")", name, type_name, obj_type_name); - __Pyx_DECREF_TypeName(type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; + result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, kwdefs, closure); + Py_XDECREF(kwtuple); +done: + Py_LeaveRecursiveCall(); + return result; } +#endif /* PyObjectCall */ #if CYTHON_COMPILING_IN_CPYTHON @@ -15131,13 +15507,8 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg ternaryfunc call = Py_TYPE(func)->tp_call; if (unlikely(!call)) return PyObject_Call(func, arg, kw); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) return NULL; - #endif result = (*call)(func, arg, kw); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -15149,95 +15520,750 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg } #endif -/* RaiseException */ -#if PY_MAJOR_VERSION < 3 -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - __Pyx_PyThreadState_declare - CYTHON_UNUSED_VAR(cause); - Py_XINCREF(type); - if (!value || value == Py_None) - value = NULL; - else - Py_INCREF(value); - if (!tb || tb == Py_None) - tb = NULL; - else { - Py_INCREF(tb); - if (!PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto raise_error; +/* PyObjectCallMethO */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { + PyObject *self, *result; + PyCFunction cfunc; + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + result = cfunc(self, arg); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API +static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs) { + PyObject *argstuple; + PyObject *result = 0; + size_t i; + argstuple = PyTuple_New((Py_ssize_t)nargs); + if (unlikely(!argstuple)) return NULL; + for (i = 0; i < nargs; i++) { + Py_INCREF(args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0)) goto bad; + } + result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: + Py_DECREF(argstuple); + return result; +} +#endif +#if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + #if PY_VERSION_HEX < 0x03090000 + #define __Pyx_PyVectorcall_Function(callable) _PyVectorcall_Function(callable) + #elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) { + PyTypeObject *tp = Py_TYPE(callable); + #if defined(__Pyx_CyFunction_USED) + if (__Pyx_CyFunction_CheckExact(callable)) { + return __Pyx_CyFunction_func_vectorcall(callable); + } + #endif + if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { + return NULL; + } + assert(PyCallable_Check(callable)); + Py_ssize_t offset = tp->tp_vectorcall_offset; + assert(offset > 0); + vectorcallfunc ptr; + memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); + return ptr; +} + #else + #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable) + #endif +#endif +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *const *args, size_t _nargs, PyObject *kwargs) { + Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); +#if CYTHON_COMPILING_IN_CPYTHON + if (nargs == 0 && kwargs == NULL) { + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); + } + else if (nargs == 1 && kwargs == NULL) { + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); + } +#endif + #if PY_VERSION_HEX < 0x030800B1 + #if CYTHON_FAST_PYCCALL + if (PyCFunction_Check(func)) { + if (kwargs) { + return _PyCFunction_FastCallDict(func, args, nargs, kwargs); + } else { + return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); + } + } + if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { + return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); + } + #endif + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); + } + #endif + #endif + if (kwargs == NULL) { + #if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + vectorcallfunc f = __Pyx_PyVectorcall_Function(func); + if (f) { + return f(func, args, _nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, _nargs, NULL); } + #elif CYTHON_COMPILING_IN_LIMITED_API && CYTHON_VECTORCALL + return PyObject_Vectorcall(func, args, _nargs, NULL); + #endif } - if (PyType_Check(type)) { + if (nargs == 0) { + return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs); + } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else + return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif +} + +/* UnpackUnboundCMethod */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { + PyObject *result; + PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); + if (unlikely(!selfless_args)) return NULL; + result = PyObject_Call(method, selfless_args, kwargs); + Py_DECREF(selfless_args); + return result; +} +#elif CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) { + return _PyObject_Vectorcall + (method, args ? args+1 : NULL, nargs ? nargs-1 : 0, kwnames); +} +#else +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { + return +#if PY_VERSION_HEX < 0x03090000 + _PyObject_Vectorcall +#else + PyObject_Vectorcall +#endif + (method, args ? args+1 : NULL, nargs ? (size_t) nargs-1 : 0, kwnames); +} +#endif +static PyMethodDef __Pyx_UnboundCMethod_Def = { + "CythonUnboundCMethod", + __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 + METH_VARARGS | METH_KEYWORDS, +#else + METH_FASTCALL | METH_KEYWORDS, +#endif + NULL +}; +static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { + PyObject *method, *result=NULL; + method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); + if (unlikely(!method)) + return -1; + result = method; +#if CYTHON_COMPILING_IN_CPYTHON + if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) + { + PyMethodDescrObject *descr = (PyMethodDescrObject*) method; + target->func = descr->d_method->ml_meth; + target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); + } else +#endif #if CYTHON_COMPILING_IN_PYPY - if (!value) { - Py_INCREF(Py_None); - value = Py_None; +#else + if (PyCFunction_Check(method)) +#endif + { + PyObject *self; + int self_found; +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + self = PyObject_GetAttrString(method, "__self__"); + if (!self) { + PyErr_Clear(); } +#else + self = PyCFunction_GET_SELF(method); #endif - PyErr_NormalizeException(&type, &value, &tb); - } else { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto raise_error; + self_found = (self && self != Py_None); +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + Py_XDECREF(self); +#endif + if (self_found) { + PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); + if (unlikely(!unbound_method)) return -1; + Py_DECREF(method); + result = unbound_method; } - value = type; - type = (PyObject*) Py_TYPE(type); - Py_INCREF(type); - if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto raise_error; + } +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + if (unlikely(target->method)) { + Py_DECREF(result); + } else +#endif + target->method = result; + return 0; +} + +/* CallUnboundCMethod2 */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { + PyObject *args[2] = {arg1, arg2}; + if (cfunc->flag == METH_FASTCALL) { + return __Pyx_CallCFunctionFast(cfunc, self, args, 2); } + if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL); } - __Pyx_PyThreadState_assign - __Pyx_ErrRestore(type, value, tb); - return; -raise_error: - Py_XDECREF(value); - Py_XDECREF(type); - Py_XDECREF(tb); - return; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 +#endif + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2); + } +#endif + PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; } -#else -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - PyObject* owned_instance = NULL; - if (tb == Py_None) { - tb = 0; - } else if (tb && !PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto bad; +#endif +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ + if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; +#if CYTHON_COMPILING_IN_CPYTHON + if (cfunc->func && (cfunc->flag & METH_VARARGS)) { + PyObject *result = NULL; + PyObject *args = PyTuple_New(2); + if (unlikely(!args)) return NULL; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + if (cfunc->flag & METH_KEYWORDS) + result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); + else + result = __Pyx_CallCFunction(cfunc, self, args); + Py_DECREF(args); + return result; } - if (value == Py_None) - value = 0; - if (PyExceptionInstance_Check(type)) { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); +#endif + { + PyObject *args[4] = {NULL, self, arg1, arg2}; + return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + } +} + +/* ParseKeywords */ +static int __Pyx_ValidateDuplicatePosArgs( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char* function_name) +{ + PyObject ** const *name = argnames; + while (name != first_kw_arg) { + PyObject *key = **name; + int found = PyDict_Contains(kwds, key); + if (unlikely(found)) { + if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key); goto bad; } - value = type; - type = (PyObject*) Py_TYPE(value); - } else if (PyExceptionClass_Check(type)) { - PyObject *instance_class = NULL; - if (value && PyExceptionInstance_Check(value)) { - instance_class = (PyObject*) Py_TYPE(value); - if (instance_class != type) { - int is_subclass = PyObject_IsSubclass(instance_class, type); - if (!is_subclass) { - instance_class = NULL; - } else if (unlikely(is_subclass == -1)) { - goto bad; - } else { - type = instance_class; - } - } - } - if (!instance_class) { - PyObject *args; + name++; + } + return 0; +bad: + return -1; +} +#if CYTHON_USE_UNICODE_INTERNALS +static CYTHON_INLINE int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) { + int kind; + Py_ssize_t len = PyUnicode_GET_LENGTH(s1); + if (len != PyUnicode_GET_LENGTH(s2)) return 0; + kind = PyUnicode_KIND(s1); + if (kind != PyUnicode_KIND(s2)) return 0; + const void *data1 = PyUnicode_DATA(s1); + const void *data2 = PyUnicode_DATA(s2); + return (memcmp(data1, data2, (size_t) len * (size_t) kind) == 0); +} +#endif +static int __Pyx_MatchKeywordArg_str( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + #if CYTHON_USE_UNICODE_INTERNALS + Py_hash_t key_hash = ((PyASCIIObject*)key)->hash; + if (unlikely(key_hash == -1)) { + key_hash = PyObject_Hash(key); + if (unlikely(key_hash == -1)) + goto bad; + } + #endif + name = first_kw_arg; + while (*name) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) { + *index_found = (size_t) (name - argnames); + return 1; + } + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) { + *index_found = (size_t) (name - argnames); + return 1; + } + } + #endif + name++; + } + name = argnames; + while (name != first_kw_arg) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) { + if (__Pyx_UnicodeKeywordsEqual(name_str, key)) + goto arg_passed_twice; + } + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + if (unlikely(name_str == key)) goto arg_passed_twice; + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) goto arg_passed_twice; + } + #endif + name++; + } + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +bad: + return -1; +} +static int __Pyx_MatchKeywordArg_nostr( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; + name = first_kw_arg; + while (*name) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (cmp == 1) { + *index_found = (size_t) (name - argnames); + return 1; + } + if (unlikely(cmp == -1)) goto bad; + name++; + } + name = argnames; + while (name != first_kw_arg) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (unlikely(cmp != 0)) { + if (cmp == 1) goto arg_passed_twice; + else goto bad; + } + name++; + } + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +invalid_keyword_type: + PyErr_Format(PyExc_TypeError, + "%.200s() keywords must be strings", function_name); + goto bad; +bad: + return -1; +} +static CYTHON_INLINE int __Pyx_MatchKeywordArg( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + return likely(PyUnicode_CheckExact(key)) ? + __Pyx_MatchKeywordArg_str(key, argnames, first_kw_arg, index_found, function_name) : + __Pyx_MatchKeywordArg_nostr(key, argnames, first_kw_arg, index_found, function_name); +} +static void __Pyx_RejectUnknownKeyword( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char *function_name) +{ + Py_ssize_t pos = 0; + PyObject *key = NULL; + __Pyx_BEGIN_CRITICAL_SECTION(kwds); + while (PyDict_Next(kwds, &pos, &key, NULL)) { + PyObject** const *name = first_kw_arg; + while (*name && (**name != key)) name++; + if (!*name) { + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); + #endif + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp != 1) { + if (cmp == 0) { + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + #endif + break; + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + #endif + } + } + __Pyx_END_CRITICAL_SECTION(); + assert(PyErr_Occurred()); +} +static int __Pyx_ParseKeywordDict( + PyObject *kwds, + PyObject ** const argnames[], + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t extracted = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + name = first_kw_arg; + while (*name && num_kwargs > extracted) { + PyObject * key = **name; + PyObject *value; + int found = 0; + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + found = PyDict_GetItemRef(kwds, key, &value); + #else + value = PyDict_GetItemWithError(kwds, key); + if (value) { + Py_INCREF(value); + found = 1; + } else { + if (unlikely(PyErr_Occurred())) goto bad; + } + #endif + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + extracted++; + } + name++; + } + if (num_kwargs > extracted) { + if (ignore_unknown_kwargs) { + if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1)) + goto bad; + } else { + __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name); + goto bad; + } + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordDictToDict( + PyObject *kwds, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + const char* function_name) +{ + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t len; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + if (PyDict_Update(kwds2, kwds) < 0) goto bad; + name = first_kw_arg; + while (*name) { + PyObject *key = **name; + PyObject *value; +#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop)) + int found = PyDict_Pop(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + } +#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + int found = PyDict_GetItemRef(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + if (unlikely(PyDict_DelItem(kwds2, key) < 0)) goto bad; + } +#else + #if CYTHON_COMPILING_IN_CPYTHON + value = _PyDict_Pop(kwds2, key, kwds2); + #else + value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2); + #endif + if (value == kwds2) { + Py_DECREF(value); + } else { + if (unlikely(!value)) goto bad; + values[name-argnames] = value; + } +#endif + name++; + } + len = PyDict_Size(kwds2); + if (len > 0) { + return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name); + } else if (unlikely(len == -1)) { + goto bad; + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordsTuple( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject *key = NULL; + PyObject** const * name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) { +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); +#else + key = __Pyx_PyTuple_GET_ITEM(kwds, pos); +#endif +#if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!key)) goto bad; +#endif + name = first_kw_arg; + while (*name && (**name != key)) name++; + if (*name) { + PyObject *value = kwvalues[pos]; + values[name-argnames] = __Pyx_NewRef(value); + } else { + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp == 1) { + PyObject *value = kwvalues[pos]; + values[index_found] = __Pyx_NewRef(value); + } else { + if (unlikely(cmp == -1)) goto bad; + if (kwds2) { + PyObject *value = kwvalues[pos]; + if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; + } else if (!ignore_unknown_kwargs) { + goto invalid_keyword; + } + } + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + key = NULL; + #endif + } + return 0; +invalid_keyword: + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + goto bad; +bad: + #if CYTHON_AVOID_BORROWED_REFS + Py_XDECREF(key); + #endif + return -1; +} +static int __Pyx_ParseKeywords( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) + return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); + else if (kwds2) + return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name); + else + return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); +} + +/* RaiseArgTupleInvalid */ +static void __Pyx_RaiseArgtupleInvalid( + const char* func_name, + int exact, + Py_ssize_t num_min, + Py_ssize_t num_max, + Py_ssize_t num_found) +{ + Py_ssize_t num_expected; + const char *more_or_less; + if (num_found < num_min) { + num_expected = num_min; + more_or_less = "at least"; + } else { + num_expected = num_max; + more_or_less = "at most"; + } + if (exact) { + more_or_less = "exactly"; + } + PyErr_Format(PyExc_TypeError, + "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)", + func_name, more_or_less, num_expected, + (num_expected == 1) ? "" : "s", num_found); +} + +/* ArgTypeTest */ +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) +{ + __Pyx_TypeName type_name; + __Pyx_TypeName obj_type_name; + PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; + int from_annotation_subclass = 0; + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + else if (!exact) { + if (likely(__Pyx_TypeCheck(obj, type))) return 1; + } else if (exact == 2) { + if (__Pyx_TypeCheck(obj, type)) { + from_annotation_subclass = 1; + extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; + } + } + type_name = __Pyx_PyType_GetFullyQualifiedName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + PyErr_Format(PyExc_TypeError, + "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME + ", got " __Pyx_FMT_TYPENAME ")" +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + "%s%U" +#endif + , name, type_name, obj_type_name +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + , (from_annotation_subclass ? ". " : ""), extra_info +#endif + ); +#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + if (exact == 2 && from_annotation_subclass) { + PyObject *res; + PyObject *vargs[2]; + vargs[0] = PyErr_GetRaisedException(); + vargs[1] = extra_info; + res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); + Py_XDECREF(res); + PyErr_SetRaisedException(vargs[0]); + } +#endif + __Pyx_DECREF_TypeName(type_name); + __Pyx_DECREF_TypeName(obj_type_name); + return 0; +} + +/* RaiseException */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { + PyObject* owned_instance = NULL; + if (tb == Py_None) { + tb = 0; + } else if (tb && !PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto bad; + } + if (value == Py_None) + value = 0; + if (PyExceptionInstance_Check(type)) { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto bad; + } + value = type; + type = (PyObject*) Py_TYPE(value); + } else if (PyExceptionClass_Check(type)) { + PyObject *instance_class = NULL; + if (value && PyExceptionInstance_Check(value)) { + instance_class = (PyObject*) Py_TYPE(value); + if (instance_class != type) { + int is_subclass = PyObject_IsSubclass(instance_class, type); + if (!is_subclass) { + instance_class = NULL; + } else if (unlikely(is_subclass == -1)) { + goto bad; + } else { + type = instance_class; + } + } + } + if (!instance_class) { + PyObject *args; if (!value) args = PyTuple_New(0); else if (PyTuple_Check(value)) { @@ -15286,9 +16312,9 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } PyErr_SetObject(type, value); if (tb) { - #if PY_VERSION_HEX >= 0x030C00A6 +#if PY_VERSION_HEX >= 0x030C00A6 PyException_SetTraceback(value, tb); - #elif CYTHON_FAST_THREAD_STATE +#elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -15308,7 +16334,6 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject Py_XDECREF(owned_instance); return; } -#endif /* PyDictVersioning */ #if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS @@ -15344,33 +16369,26 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) #endif { PyObject *result; -#if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 - result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } else if (unlikely(PyErr_Occurred())) { - return NULL; - } -#elif CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API if (unlikely(!__pyx_m)) { + if (!PyErr_Occurred()) + PyErr_SetNone(PyExc_NameError); return NULL; } result = PyObject_GetAttr(__pyx_m, name); if (likely(result)) { return result; } -#else - result = PyDict_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + PyErr_Clear(); +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { - return __Pyx_NewRef(result); + return result; } -#endif #else - result = PyObject_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { return __Pyx_NewRef(result); } @@ -15379,400 +16397,224 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) return __Pyx_GetBuiltinName(name); } -/* KeywordStringCheck */ -static int __Pyx_CheckKeywordStrings( - PyObject *kw, - const char* function_name, - int kw_allowed) -{ - PyObject* key = 0; - Py_ssize_t pos = 0; -#if CYTHON_COMPILING_IN_PYPY - if (!kw_allowed && PyDict_Next(kw, &pos, &key, 0)) - goto invalid_keyword; - return 1; -#else - if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { - Py_ssize_t kwsize; -#if CYTHON_ASSUME_SAFE_MACROS - kwsize = PyTuple_GET_SIZE(kw); -#else - kwsize = PyTuple_Size(kw); - if (kwsize < 0) return 0; -#endif - if (unlikely(kwsize == 0)) - return 1; - if (!kw_allowed) { -#if CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kw, 0); -#else - key = PyTuple_GetItem(kw, pos); - if (!key) return 0; -#endif - goto invalid_keyword; - } -#if PY_VERSION_HEX < 0x03090000 - for (pos = 0; pos < kwsize; pos++) { -#if CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kw, pos); -#else - key = PyTuple_GetItem(kw, pos); - if (!key) return 0; -#endif - if (unlikely(!PyUnicode_Check(key))) - goto invalid_keyword_type; - } -#endif - return 1; - } - while (PyDict_Next(kw, &pos, &key, 0)) { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_Check(key))) - #endif - if (unlikely(!PyUnicode_Check(key))) - goto invalid_keyword_type; - } - if (!kw_allowed && unlikely(key)) - goto invalid_keyword; - return 1; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - return 0; -#endif -invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif - return 0; -} - -/* GetItemInt */ -static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (unlikely(!j)) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, - CYTHON_NCP_UNUSED int wraparound, - CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - Py_ssize_t wrapped_i = i; - if (wraparound & unlikely(i < 0)) { - wrapped_i += PyList_GET_SIZE(o); - } - if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, wrapped_i); - Py_INCREF(r); - return r; - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -#else - return PySequence_GetItem(o, i); -#endif -} -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, - CYTHON_NCP_UNUSED int wraparound, - CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - Py_ssize_t wrapped_i = i; - if (wraparound & unlikely(i < 0)) { - wrapped_i += PyTuple_GET_SIZE(o); - } - if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, wrapped_i); - Py_INCREF(r); - return r; - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -#else - return PySequence_GetItem(o, i); -#endif -} -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, - CYTHON_NCP_UNUSED int wraparound, - CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS - if (is_list || PyList_CheckExact(o)) { - Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o); - if ((!boundscheck) || (likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o))))) { - PyObject *r = PyList_GET_ITEM(o, n); - Py_INCREF(r); - return r; - } - } - else if (PyTuple_CheckExact(o)) { - Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o); - if ((!boundscheck) || likely(__Pyx_is_valid_index(n, PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, n); - Py_INCREF(r); - return r; - } - } else { - PyMappingMethods *mm = Py_TYPE(o)->tp_as_mapping; - PySequenceMethods *sm = Py_TYPE(o)->tp_as_sequence; - if (mm && mm->mp_subscript) { - PyObject *r, *key = PyInt_FromSsize_t(i); - if (unlikely(!key)) return NULL; - r = mm->mp_subscript(o, key); - Py_DECREF(key); - return r; - } - if (likely(sm && sm->sq_item)) { - if (wraparound && unlikely(i < 0) && likely(sm->sq_length)) { - Py_ssize_t l = sm->sq_length(o); - if (likely(l >= 0)) { - i += l; - } else { - if (!PyErr_ExceptionMatches(PyExc_OverflowError)) - return NULL; - PyErr_Clear(); - } - } - return sm->sq_item(o, i); - } - } -#else - if (is_list || !PyMapping_Check(o)) { - return PySequence_GetItem(o, i); - } -#endif - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); +/* PyObjectFormatAndDecref */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { + if (unlikely(!s)) return NULL; + if (likely(PyUnicode_CheckExact(s))) return s; + return __Pyx_PyObject_FormatAndDecref(s, f); } - -/* PyFunctionFastCall */ -#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL -static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, - PyObject *globals) { - PyFrameObject *f; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject **fastlocals; - Py_ssize_t i; +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { PyObject *result; - assert(globals != NULL); - /* XXX Perhaps we should create a specialized - PyFrame_New() that doesn't take locals, but does - take builtins without sanity checking them. - */ - assert(tstate != NULL); - f = PyFrame_New(tstate, co, globals, NULL); - if (f == NULL) { - return NULL; - } - fastlocals = __Pyx_PyFrame_GetLocalsplus(f); - for (i = 0; i < na; i++) { - Py_INCREF(*args); - fastlocals[i] = *args++; - } - result = PyEval_EvalFrameEx(f,0); - ++tstate->recursion_depth; - Py_DECREF(f); - --tstate->recursion_depth; + if (unlikely(!s)) return NULL; + result = PyObject_Format(s, f); + Py_DECREF(s); return result; } -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { - PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); - PyObject *globals = PyFunction_GET_GLOBALS(func); - PyObject *argdefs = PyFunction_GET_DEFAULTS(func); - PyObject *closure; -#if PY_MAJOR_VERSION >= 3 - PyObject *kwdefs; -#endif - PyObject *kwtuple, **k; - PyObject **d; - Py_ssize_t nd; - Py_ssize_t nk; - PyObject *result; - assert(kwargs == NULL || PyDict_Check(kwargs)); - nk = kwargs ? PyDict_Size(kwargs) : 0; - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { - return NULL; - } - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { - return NULL; - } - #endif - if ( -#if PY_MAJOR_VERSION >= 3 - co->co_kwonlyargcount == 0 && -#endif - likely(kwargs == NULL || nk == 0) && - co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { - if (argdefs == NULL && co->co_argcount == nargs) { - result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); - goto done; - } - else if (nargs == 0 && argdefs != NULL - && co->co_argcount == Py_SIZE(argdefs)) { - /* function called with no arguments, but all parameters have - a default value: use default values as arguments .*/ - args = &PyTuple_GET_ITEM(argdefs, 0); - result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); - goto done; - } - } - if (kwargs != NULL) { - Py_ssize_t pos, i; - kwtuple = PyTuple_New(2 * nk); - if (kwtuple == NULL) { - result = NULL; - goto done; - } - k = &PyTuple_GET_ITEM(kwtuple, 0); - pos = i = 0; - while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { - Py_INCREF(k[i]); - Py_INCREF(k[i+1]); - i += 2; + +/* JoinPyUnicode */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char) { +#if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + PyObject *result_uval; + int result_ukind, kind_shift; + Py_ssize_t i, char_pos; + void *result_udata; + if (max_char > 1114111) max_char = 1114111; + result_uval = PyUnicode_New(result_ulength, max_char); + if (unlikely(!result_uval)) return NULL; + result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND; + kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1; + result_udata = PyUnicode_DATA(result_uval); + assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0); + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - result_ulength < 0)) + goto overflow; + char_pos = 0; + for (i=0; i < value_count; i++) { + int ukind; + Py_ssize_t ulength; + void *udata; + PyObject *uval = values[i]; + #if !CYTHON_COMPILING_IN_LIMITED_API + if (__Pyx_PyUnicode_READY(uval) == (-1)) + goto bad; + #endif + ulength = __Pyx_PyUnicode_GET_LENGTH(uval); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(ulength < 0)) goto bad; + #endif + if (unlikely(!ulength)) + continue; + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos)) + goto overflow; + ukind = __Pyx_PyUnicode_KIND(uval); + udata = __Pyx_PyUnicode_DATA(uval); + if (ukind == result_ukind) { + memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); + } else { + #if PY_VERSION_HEX >= 0x030d0000 + if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; + #elif CYTHON_COMPILING_IN_CPYTHON || defined(_PyUnicode_FastCopyCharacters) + _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); + #else + Py_ssize_t j; + for (j=0; j < ulength; j++) { + Py_UCS4 uchar = __Pyx_PyUnicode_READ(ukind, udata, j); + __Pyx_PyUnicode_WRITE(result_ukind, result_udata, char_pos+j, uchar); + } + #endif } - nk = i / 2; - } - else { - kwtuple = NULL; - k = NULL; - } - closure = PyFunction_GET_CLOSURE(func); -#if PY_MAJOR_VERSION >= 3 - kwdefs = PyFunction_GET_KW_DEFAULTS(func); -#endif - if (argdefs != NULL) { - d = &PyTuple_GET_ITEM(argdefs, 0); - nd = Py_SIZE(argdefs); - } - else { - d = NULL; - nd = 0; + char_pos += ulength; } -#if PY_MAJOR_VERSION >= 3 - result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, kwdefs, closure); + return result_uval; +overflow: + PyErr_SetString(PyExc_OverflowError, "join() result is too long for a Python string"); +bad: + Py_DECREF(result_uval); + return NULL; #else - result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, closure); -#endif - Py_XDECREF(kwtuple); -done: - Py_LeaveRecursiveCall(); + Py_ssize_t i; + PyObject *result = NULL; + PyObject *value_tuple = PyTuple_New(value_count); + if (unlikely(!value_tuple)) return NULL; + CYTHON_UNUSED_VAR(max_char); + CYTHON_UNUSED_VAR(result_ulength); + for (i=0; i__pyx_empty_unicode, value_tuple); +bad: + Py_DECREF(value_tuple); return result; -} #endif +} -/* PyObjectCallMethO */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { - PyObject *self, *result; - PyCFunction cfunc; - cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); - self = __Pyx_CyOrPyCFunction_GET_SELF(func); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) - return NULL; - #endif - result = cfunc(self, arg); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); +/* RejectKeywords */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds) { + PyObject *key = NULL; + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) { + key = __Pyx_PySequence_ITEM(kwds, 0); + } else { + Py_ssize_t pos = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return; +#endif + PyDict_Next(kwds, &pos, &key, NULL); + Py_INCREF(key); + } + if (likely(key)) { + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + Py_DECREF(key); } - return result; } -#endif -/* PyObjectFastCall */ -#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API -static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { - PyObject *argstuple; - PyObject *result = 0; - size_t i; - argstuple = PyTuple_New((Py_ssize_t)nargs); - if (unlikely(!argstuple)) return NULL; - for (i = 0; i < nargs; i++) { - Py_INCREF(args[i]); - if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; - } - result = __Pyx_PyObject_Call(func, argstuple, kwargs); - bad: - Py_DECREF(argstuple); - return result; +/* GetItemInt */ +static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { + PyObject *r; + if (unlikely(!j)) return NULL; + r = PyObject_GetItem(o, j); + Py_DECREF(j); + return r; } -#endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { - Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); -#if CYTHON_COMPILING_IN_CPYTHON - if (nargs == 0 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) - return __Pyx_PyObject_CallMethO(func, NULL); +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, + CYTHON_NCP_UNUSED int wraparound, + CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS && !CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + Py_ssize_t wrapped_i = i; + if (wraparound & unlikely(i < 0)) { + wrapped_i += PyList_GET_SIZE(o); } - else if (nargs == 1 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) - return __Pyx_PyObject_CallMethO(func, args[0]); + if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyList_GET_SIZE(o)))) { + PyObject *r = PyList_GET_ITEM(o, wrapped_i); + Py_INCREF(r); + return r; } + return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); +#else + return PySequence_GetItem(o, i); #endif - #if PY_VERSION_HEX < 0x030800B1 - #if CYTHON_FAST_PYCCALL - if (PyCFunction_Check(func)) { - if (kwargs) { - return _PyCFunction_FastCallDict(func, args, nargs, kwargs); - } else { - return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); - } +} +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, + CYTHON_NCP_UNUSED int wraparound, + CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS + Py_ssize_t wrapped_i = i; + if (wraparound & unlikely(i < 0)) { + wrapped_i += PyTuple_GET_SIZE(o); } - #if PY_VERSION_HEX >= 0x030700A1 - if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { - return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); + if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyTuple_GET_SIZE(o)))) { + PyObject *r = PyTuple_GET_ITEM(o, wrapped_i); + Py_INCREF(r); + return r; } - #endif - #endif - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(func)) { - return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); + return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); +#else + return PySequence_GetItem(o, i); +#endif +} +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, + CYTHON_NCP_UNUSED int wraparound, + CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS + if (is_list || PyList_CheckExact(o)) { + Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o); + if ((!boundscheck) || (likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o))))) { + return __Pyx_PyList_GetItemRef(o, n); + } } - #endif - #endif - if (kwargs == NULL) { - #if CYTHON_VECTORCALL - #if PY_VERSION_HEX < 0x03090000 - vectorcallfunc f = _PyVectorcall_Function(func); - #else - vectorcallfunc f = PyVectorcall_Function(func); - #endif - if (f) { - return f(func, args, (size_t)nargs, NULL); + else if (PyTuple_CheckExact(o)) { + Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o); + if ((!boundscheck) || likely(__Pyx_is_valid_index(n, PyTuple_GET_SIZE(o)))) { + PyObject *r = PyTuple_GET_ITEM(o, n); + Py_INCREF(r); + return r; } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, NULL); + } else { + PyMappingMethods *mm = Py_TYPE(o)->tp_as_mapping; + PySequenceMethods *sm = Py_TYPE(o)->tp_as_sequence; + if (mm && mm->mp_subscript) { + PyObject *r, *key = PyLong_FromSsize_t(i); + if (unlikely(!key)) return NULL; + r = mm->mp_subscript(o, key); + Py_DECREF(key); + return r; + } + if (likely(sm && sm->sq_item)) { + if (wraparound && unlikely(i < 0) && likely(sm->sq_length)) { + Py_ssize_t l = sm->sq_length(o); + if (likely(l >= 0)) { + i += l; + } else { + if (!PyErr_ExceptionMatches(PyExc_OverflowError)) + return NULL; + PyErr_Clear(); + } + } + return sm->sq_item(o, i); } - #endif } - if (nargs == 0) { - return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); +#else + if (is_list || !PyMapping_Check(o)) { + return PySequence_GetItem(o, i); } - #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API - return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); - #else - return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); - #endif +#endif + return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); +} + +/* PyObjectFastCallMethod */ +#if !CYTHON_VECTORCALL || PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf) { + PyObject *result; + PyObject *attr = PyObject_GetAttr(args[0], name); + if (unlikely(!attr)) + return NULL; + result = __Pyx_PyObject_FastCall(attr, args+1, nargsf - 1); + Py_DECREF(attr); + return result; } +#endif /* IterFinish */ static CYTHON_INLINE int __Pyx_IterFinish(void) { @@ -15824,18 +16666,12 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me Py_INCREF(descr); #if defined(Py_TPFLAGS_METHOD_DESCRIPTOR) && Py_TPFLAGS_METHOD_DESCRIPTOR if (__Pyx_PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_METHOD_DESCRIPTOR)) -#elif PY_MAJOR_VERSION >= 3 +#else #ifdef __Pyx_CyFunction_USED if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr))) #else if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type))) #endif -#else - #ifdef __Pyx_CyFunction_USED - if (likely(PyFunction_Check(descr) || __Pyx_CyFunction_Check(descr))) - #else - if (likely(PyFunction_Check(descr))) - #endif #endif { meth_found = 1; @@ -15873,15 +16709,10 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me *method = descr; return 0; } - type_name = __Pyx_PyType_GetName(tp); + type_name = __Pyx_PyType_GetFullyQualifiedName(tp); PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", type_name, name); -#else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(name)); -#endif __Pyx_DECREF_TypeName(type_name); return 0; #else @@ -15950,20 +16781,45 @@ static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) { if (t == Py_None) { __Pyx_RaiseNoneNotIterableError(); - } else if (PyTuple_GET_SIZE(t) < index) { - __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(t)); } else { - __Pyx_RaiseTooManyValuesError(index); + Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(t); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(size < 0)) return; + #endif + if (size < index) { + __Pyx_RaiseNeedMoreValuesError(size); + } else { + __Pyx_RaiseTooManyValuesError(index); + } } } /* UnpackTuple2 */ +static CYTHON_INLINE int __Pyx_unpack_tuple2( + PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple) { + if (likely(is_tuple || PyTuple_Check(tuple))) { + Py_ssize_t size; + if (has_known_size) { + return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); + } + size = __Pyx_PyTuple_GET_SIZE(tuple); + if (likely(size == 2)) { + return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); + } + if (size >= 0) { + __Pyx_UnpackTupleError(tuple, 2); + } + return -1; + } else { + return __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple); + } +} static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, int decref_tuple) { PyObject *value1 = NULL, *value2 = NULL; -#if CYTHON_COMPILING_IN_PYPY - value1 = PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; - value2 = PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS + value1 = __Pyx_PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; + value2 = __Pyx_PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; #else value1 = PyTuple_GET_ITEM(tuple, 0); Py_INCREF(value1); value2 = PyTuple_GET_ITEM(tuple, 1); Py_INCREF(value2); @@ -15974,7 +16830,7 @@ static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( *pvalue1 = value1; *pvalue2 = value2; return 0; -#if CYTHON_COMPILING_IN_PYPY +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS bad: Py_XDECREF(value1); Py_XDECREF(value2); @@ -16010,7 +16866,7 @@ static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyOb } /* dict_iter */ -#if CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_PYPY #include #endif static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, @@ -16022,7 +16878,7 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_di *p_orig_length = PyDict_Size(iterable); Py_INCREF(iterable); return iterable; -#elif PY_MAJOR_VERSION >= 3 +#else static PyObject *py_items = NULL, *py_keys = NULL, *py_values = NULL; PyObject **pp = NULL; if (method_name) { @@ -16057,53 +16913,102 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_di } return PyObject_GetIter(iterable); } -static CYTHON_INLINE int __Pyx_dict_iter_next( - PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, - PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { - PyObject* next_item; #if !CYTHON_COMPILING_IN_PYPY - if (source_is_dict) { - PyObject *key, *value; - if (unlikely(orig_length != PyDict_Size(iter_obj))) { - PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); +static CYTHON_INLINE int __Pyx_dict_iter_next_source_is_dict( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem) { + PyObject *key, *value; + if (unlikely(orig_length != PyDict_Size(iter_obj))) { + PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); + return -1; + } + if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { + return 0; + } + if (pitem) { + PyObject* tuple = PyTuple_New(2); + if (unlikely(!tuple)) { return -1; } - if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { - return 0; + Py_INCREF(key); + Py_INCREF(value); + #if CYTHON_ASSUME_SAFE_MACROS + PyTuple_SET_ITEM(tuple, 0, key); + PyTuple_SET_ITEM(tuple, 1, value); + #else + if (unlikely(PyTuple_SetItem(tuple, 0, key) < 0)) { + Py_DECREF(value); + Py_DECREF(tuple); + return -1; } - if (pitem) { - PyObject* tuple = PyTuple_New(2); - if (unlikely(!tuple)) { - return -1; - } + if (unlikely(PyTuple_SetItem(tuple, 1, value) < 0)) { + Py_DECREF(tuple); + return -1; + } + #endif + *pitem = tuple; + } else { + if (pkey) { Py_INCREF(key); + *pkey = key; + } + if (pvalue) { Py_INCREF(value); - PyTuple_SET_ITEM(tuple, 0, key); - PyTuple_SET_ITEM(tuple, 1, value); - *pitem = tuple; - } else { - if (pkey) { - Py_INCREF(key); - *pkey = key; - } - if (pvalue) { - Py_INCREF(value); - *pvalue = value; - } + *pvalue = value; } - return 1; + } + return 1; +} +#endif +static CYTHON_INLINE int __Pyx_dict_iter_next( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { + PyObject* next_item; +#if !CYTHON_COMPILING_IN_PYPY + if (source_is_dict) { + int result; +#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(iter_obj); +#endif + result = __Pyx_dict_iter_next_source_is_dict(iter_obj, orig_length, ppos, pkey, pvalue, pitem); +#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); +#endif + return result; } else if (PyTuple_CheckExact(iter_obj)) { Py_ssize_t pos = *ppos; - if (unlikely(pos >= PyTuple_GET_SIZE(iter_obj))) return 0; + Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(iter_obj); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(tuple_size < 0)) return -1; + #endif + if (unlikely(pos >= tuple_size)) return 0; *ppos = pos + 1; + #if CYTHON_ASSUME_SAFE_MACROS next_item = PyTuple_GET_ITEM(iter_obj, pos); + #else + next_item = PyTuple_GetItem(iter_obj, pos); + if (unlikely(!next_item)) return -1; + #endif Py_INCREF(next_item); } else if (PyList_CheckExact(iter_obj)) { Py_ssize_t pos = *ppos; - if (unlikely(pos >= PyList_GET_SIZE(iter_obj))) return 0; + Py_ssize_t list_size = __Pyx_PyList_GET_SIZE(iter_obj); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(list_size < 0)) return -1; + #endif + if (unlikely(pos >= list_size)) return 0; *ppos = pos + 1; + #if CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + next_item = PyList_GetItemRef(iter_obj, pos); + if (unlikely(!next_item)) return -1; + #elif CYTHON_ASSUME_SAFE_MACROS next_item = PyList_GET_ITEM(iter_obj, pos); Py_INCREF(next_item); + #else + next_item = PyList_GetItem(iter_obj, pos); + if (unlikely(!next_item)) return -1; + Py_INCREF(next_item); + #endif } else #endif { @@ -16129,53 +17034,11 @@ static CYTHON_INLINE int __Pyx_dict_iter_next( static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj, Py_ssize_t cstart, Py_ssize_t cstop, PyObject** _py_start, PyObject** _py_stop, PyObject** _py_slice, - int has_cstart, int has_cstop, int wraparound) { + int has_cstart, int has_cstop, CYTHON_UNUSED int wraparound) { __Pyx_TypeName obj_type_name; #if CYTHON_USE_TYPE_SLOTS - PyMappingMethods* mp; -#if PY_MAJOR_VERSION < 3 - PySequenceMethods* ms = Py_TYPE(obj)->tp_as_sequence; - if (likely(ms && ms->sq_slice)) { - if (!has_cstart) { - if (_py_start && (*_py_start != Py_None)) { - cstart = __Pyx_PyIndex_AsSsize_t(*_py_start); - if ((cstart == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad; - } else - cstart = 0; - } - if (!has_cstop) { - if (_py_stop && (*_py_stop != Py_None)) { - cstop = __Pyx_PyIndex_AsSsize_t(*_py_stop); - if ((cstop == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad; - } else - cstop = PY_SSIZE_T_MAX; - } - if (wraparound && unlikely((cstart < 0) | (cstop < 0)) && likely(ms->sq_length)) { - Py_ssize_t l = ms->sq_length(obj); - if (likely(l >= 0)) { - if (cstop < 0) { - cstop += l; - if (cstop < 0) cstop = 0; - } - if (cstart < 0) { - cstart += l; - if (cstart < 0) cstart = 0; - } - } else { - if (!PyErr_ExceptionMatches(PyExc_OverflowError)) - goto bad; - PyErr_Clear(); - } - } - return ms->sq_slice(obj, cstart, cstop); - } -#else - CYTHON_UNUSED_VAR(wraparound); -#endif - mp = Py_TYPE(obj)->tp_as_mapping; + PyMappingMethods* mp = Py_TYPE(obj)->tp_as_mapping; if (likely(mp && mp->mp_subscript)) -#else - CYTHON_UNUSED_VAR(wraparound); #endif { PyObject* result; @@ -16189,7 +17052,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj, py_start = *_py_start; } else { if (has_cstart) { - owned_start = py_start = PyInt_FromSsize_t(cstart); + owned_start = py_start = PyLong_FromSsize_t(cstart); if (unlikely(!py_start)) goto bad; } else py_start = Py_None; @@ -16198,7 +17061,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj, py_stop = *_py_stop; } else { if (has_cstop) { - owned_stop = py_stop = PyInt_FromSsize_t(cstop); + owned_stop = py_stop = PyLong_FromSsize_t(cstop); if (unlikely(!py_stop)) { Py_XDECREF(owned_start); goto bad; @@ -16221,7 +17084,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj, } return result; } - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); PyErr_Format(PyExc_TypeError, "'" __Pyx_FMT_TYPENAME "' object is unsliceable", obj_type_name); __Pyx_DECREF_TypeName(obj_type_name); @@ -16239,8 +17102,8 @@ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { } if (likely(__Pyx_TypeCheck(obj, type))) return 1; - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); - type_name = __Pyx_PyType_GetName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + type_name = __Pyx_PyType_GetFullyQualifiedName(type); PyErr_Format(PyExc_TypeError, "Cannot convert " __Pyx_FMT_TYPENAME " to " __Pyx_FMT_TYPENAME, obj_type_name, type_name); @@ -16249,7 +17112,39 @@ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { return 0; } +/* IterNextPlain */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 +static PyObject *__Pyx_GetBuiltinNext_LimitedAPI(void) { + if (unlikely(!__pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache)) + __pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); + return __pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache; +} +#endif +static CYTHON_INLINE PyObject *__Pyx_PyIter_Next_Plain(PyObject *iterator) { +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 + PyObject *result; + PyObject *next = __Pyx_GetBuiltinNext_LimitedAPI(); + if (unlikely(!next)) return NULL; + result = PyObject_CallFunctionObjArgs(next, iterator, NULL); + return result; +#else + (void)__Pyx_GetBuiltinName; // only for early limited API + iternextfunc iternext = __Pyx_PyObject_GetIterNextFunc(iterator); + assert(iternext); + return iternext(iterator); +#endif +} + /* IterNext */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03080000 +static PyObject *__Pyx_PyIter_Next2(PyObject *o, PyObject *defval) { + PyObject *result; + PyObject *next = __Pyx_GetBuiltinNext_LimitedAPI(); + if (unlikely(!next)) return NULL; + result = PyObject_CallFunctionObjArgs(next, o, defval, NULL); + return result; +} +#else static PyObject *__Pyx_PyIter_Next2Default(PyObject* defval) { PyObject* exc_type; __Pyx_PyThreadState_declare @@ -16270,220 +17165,168 @@ static PyObject *__Pyx_PyIter_Next2Default(PyObject* defval) { return NULL; } static void __Pyx_PyIter_Next_ErrorNoIterator(PyObject *iterator) { - __Pyx_TypeName iterator_type_name = __Pyx_PyType_GetName(Py_TYPE(iterator)); + __Pyx_TypeName iterator_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(iterator)); PyErr_Format(PyExc_TypeError, __Pyx_FMT_TYPENAME " object is not an iterator", iterator_type_name); __Pyx_DECREF_TypeName(iterator_type_name); } static CYTHON_INLINE PyObject *__Pyx_PyIter_Next2(PyObject* iterator, PyObject* defval) { PyObject* next; - iternextfunc iternext = Py_TYPE(iterator)->tp_iternext; +#if !CYTHON_COMPILING_IN_LIMITED_API + iternextfunc iternext = __Pyx_PyObject_TryGetSlot(iterator, tp_iternext, iternextfunc); if (likely(iternext)) { -#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY next = iternext(iterator); if (likely(next)) return next; -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 if (unlikely(iternext == &_PyObject_NextNotImplemented)) return NULL; + #endif + } else if (CYTHON_USE_TYPE_SLOTS) { + __Pyx_PyIter_Next_ErrorNoIterator(iterator); + return NULL; + } else #endif -#else - next = PyIter_Next(iterator); - if (likely(next)) - return next; -#endif - } else if (CYTHON_USE_TYPE_SLOTS || unlikely(!PyIter_Check(iterator))) { + if (unlikely(!PyIter_Check(iterator))) { __Pyx_PyIter_Next_ErrorNoIterator(iterator); return NULL; - } -#if !CYTHON_USE_TYPE_SLOTS - else { - next = PyIter_Next(iterator); + } else { + next = defval ? PyIter_Next(iterator) : __Pyx_PyIter_Next_Plain(iterator); if (likely(next)) return next; } -#endif return __Pyx_PyIter_Next2Default(defval); } +#endif -/* PyIntBinop */ +/* PyLongBinop */ #if !CYTHON_COMPILING_IN_PYPY -static PyObject* __Pyx_PyInt_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) { - CYTHON_MAYBE_UNUSED_VAR(intval); +static PyObject* __Pyx_Fallback___Pyx_PyLong_SubtractObjC(PyObject *op1, PyObject *op2, int inplace) { + return (inplace ? PyNumber_InPlaceSubtract : PyNumber_Subtract)(op1, op2); +} +#if CYTHON_USE_PYLONG_INTERNALS +static PyObject* __Pyx_Unpacked___Pyx_PyLong_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) { CYTHON_MAYBE_UNUSED_VAR(inplace); CYTHON_UNUSED_VAR(zerodivision_check); - #if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(op1))) { - const long b = intval; - long x; - long a = PyInt_AS_LONG(op1); - - x = (long)((unsigned long)a - (unsigned long)b); - if (likely((x^a) >= 0 || (x^~b) >= 0)) - return PyInt_FromLong(x); - return PyLong_Type.tp_as_number->nb_subtract(op1, op2); - } - #endif - #if CYTHON_USE_PYLONG_INTERNALS - if (likely(PyLong_CheckExact(op1))) { - const long b = intval; - long a, x; + const long b = intval; + long a, x; #ifdef HAVE_LONG_LONG - const PY_LONG_LONG llb = intval; - PY_LONG_LONG lla, llx; + const PY_LONG_LONG llb = intval; + PY_LONG_LONG lla, llx; #endif - if (unlikely(__Pyx_PyLong_IsZero(op1))) { - return PyLong_FromLong(-intval); - } - if (likely(__Pyx_PyLong_IsCompact(op1))) { - a = __Pyx_PyLong_CompactValue(op1); - } else { - const digit* digits = __Pyx_PyLong_Digits(op1); - const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(op1); - switch (size) { - case -2: - if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; - #ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { - lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; - #endif - } - CYTHON_FALLTHROUGH; - case 2: - if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; - #ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { - lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; - #endif - } - CYTHON_FALLTHROUGH; - case -3: - if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; - #ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { - lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; - #endif - } - CYTHON_FALLTHROUGH; - case 3: - if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; - #ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { - lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; - #endif - } - CYTHON_FALLTHROUGH; - case -4: - if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { - a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; - #ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { - lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; - #endif - } - CYTHON_FALLTHROUGH; - case 4: - if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { - a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; - #ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { - lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; - #endif - } - CYTHON_FALLTHROUGH; - default: return PyLong_Type.tp_as_number->nb_subtract(op1, op2); - } + if (unlikely(__Pyx_PyLong_IsZero(op1))) { + return PyLong_FromLong(-intval); + } + if (likely(__Pyx_PyLong_IsCompact(op1))) { + a = __Pyx_PyLong_CompactValue(op1); + } else { + const digit* digits = __Pyx_PyLong_Digits(op1); + const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(op1); + switch (size) { + case -2: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; + #ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { + lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; + #endif + } + CYTHON_FALLTHROUGH; + case 2: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; + #ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { + lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; + #endif + } + CYTHON_FALLTHROUGH; + case -3: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; + #ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { + lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; + #endif + } + CYTHON_FALLTHROUGH; + case 3: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; + #ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { + lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; + #endif + } + CYTHON_FALLTHROUGH; + case -4: + if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; + #ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { + lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; + #endif + } + CYTHON_FALLTHROUGH; + case 4: + if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; + #ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { + lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; + #endif + } + CYTHON_FALLTHROUGH; + default: return PyLong_Type.tp_as_number->nb_subtract(op1, op2); } - x = a - b; - return PyLong_FromLong(x); + } + x = a - b; + return PyLong_FromLong(x); #ifdef HAVE_LONG_LONG - long_long: - llx = lla - llb; - return PyLong_FromLongLong(llx); + long_long: + llx = lla - llb; + return PyLong_FromLongLong(llx); #endif + return __Pyx_Fallback___Pyx_PyLong_SubtractObjC(op1, op2, inplace); + + +} +#endif +static PyObject* __Pyx_Float___Pyx_PyLong_SubtractObjC(PyObject *float_val, long intval, int zerodivision_check) { + CYTHON_UNUSED_VAR(zerodivision_check); + const long b = intval; + double a = __Pyx_PyFloat_AS_DOUBLE(float_val); + double result; - + result = ((double)a) - (double)b; + return PyFloat_FromDouble(result); +} +static CYTHON_INLINE PyObject* __Pyx_PyLong_SubtractObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check) { + CYTHON_MAYBE_UNUSED_VAR(intval); + CYTHON_UNUSED_VAR(zerodivision_check); + #if CYTHON_USE_PYLONG_INTERNALS + if (likely(PyLong_CheckExact(op1))) { + return __Pyx_Unpacked___Pyx_PyLong_SubtractObjC(op1, op2, intval, inplace, zerodivision_check); } #endif if (PyFloat_CheckExact(op1)) { - const long b = intval; -#if CYTHON_COMPILING_IN_LIMITED_API - double a = __pyx_PyFloat_AsDouble(op1); -#else - double a = PyFloat_AS_DOUBLE(op1); -#endif - double result; - - PyFPE_START_PROTECT("subtract", return NULL) - result = ((double)a) - (double)b; - PyFPE_END_PROTECT(result) - return PyFloat_FromDouble(result); - } - return (inplace ? PyNumber_InPlaceSubtract : PyNumber_Subtract)(op1, op2); -} -#endif - -/* PyObjectCall2Args */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { - PyObject *args[3] = {NULL, arg1, arg2}; - return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* PyObjectCallMethod1 */ -#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2) -static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { - PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); - Py_DECREF(method); - return result; -} -#endif -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { -#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2 - PyObject *args[2] = {obj, arg}; - (void) __Pyx_PyObject_GetMethod; - (void) __Pyx_PyObject_CallOneArg; - (void) __Pyx_PyObject_Call2Args; - return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); -#else - PyObject *method = NULL, *result; - int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); - if (likely(is_method)) { - result = __Pyx_PyObject_Call2Args(method, obj, arg); - Py_DECREF(method); - return result; + return __Pyx_Float___Pyx_PyLong_SubtractObjC(op1, intval, zerodivision_check); } - if (unlikely(!method)) return NULL; - return __Pyx__PyObject_CallMethod1(method, arg); -#endif + return __Pyx_Fallback___Pyx_PyLong_SubtractObjC(op1, op2, inplace); } - -/* StringJoin */ -static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values) { - (void) __Pyx_PyObject_CallMethod1; -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION < 3 - return _PyString_Join(sep, values); -#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 - return _PyBytes_Join(sep, values); -#else - return __Pyx_PyObject_CallMethod1(sep, __pyx_n_s_join, values); #endif -} /* GetTopmostException */ #if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE @@ -16608,29 +17451,6 @@ static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, } return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b); } -#if PY_MAJOR_VERSION == 2 -static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { - PyObject *exception, *value, *tb; - int res; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&exception, &value, &tb); - res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - if (!res) { - res = PyObject_IsSubclass(err, exc_type2); - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - } - __Pyx_ErrRestore(exception, value, tb); - return res; -} -#else static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { if (exc_type1) { return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2); @@ -16638,21 +17458,15 @@ static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); } } -#endif static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; assert(PyExceptionClass_Check(exc_type)); n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; i= 0x030C00A6 + #if PY_VERSION_HEX >= 0x030C0000 local_value = tstate->current_exception; tstate->current_exception = 0; - if (likely(local_value)) { - local_type = (PyObject*) Py_TYPE(local_value); - Py_INCREF(local_type); - local_tb = PyException_GetTraceback(local_value); - } #else local_type = tstate->curexc_type; local_value = tstate->curexc_value; @@ -16709,24 +17518,30 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) tstate->curexc_value = 0; tstate->curexc_traceback = 0; #endif +#elif __PYX_LIMITED_VERSION_HEX > 0x030C0000 + local_value = PyErr_GetRaisedException(); #else PyErr_Fetch(&local_type, &local_value, &local_tb); #endif +#if __PYX_LIMITED_VERSION_HEX > 0x030C0000 + if (likely(local_value)) { + local_type = (PyObject*) Py_TYPE(local_value); + Py_INCREF(local_type); + local_tb = PyException_GetTraceback(local_value); + } +#else PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE && PY_VERSION_HEX >= 0x030C00A6 - if (unlikely(tstate->current_exception)) -#elif CYTHON_FAST_THREAD_STATE +#if CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) #endif goto bad; - #if PY_MAJOR_VERSION >= 3 if (local_tb) { if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) goto bad; } - #endif +#endif // __PYX_LIMITED_VERSION_HEX > 0x030C0000 Py_XINCREF(local_tb); Py_XINCREF(local_type); Py_XINCREF(local_value); @@ -16764,10 +17579,16 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + PyErr_SetHandledException(local_value); + Py_XDECREF(local_value); + Py_XDECREF(local_type); + Py_XDECREF(local_tb); #else PyErr_SetExcInfo(local_type, local_value, local_tb); #endif return 0; +#if __PYX_LIMITED_VERSION_HEX <= 0x030C0000 bad: *type = 0; *value = 0; @@ -16776,27 +17597,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) Py_XDECREF(local_value); Py_XDECREF(local_tb); return -1; -} - -/* PyObjectFormatAndDecref */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { - if (unlikely(!s)) return NULL; - if (likely(PyUnicode_CheckExact(s))) return s; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_CheckExact(s))) { - PyObject *result = PyUnicode_FromEncodedObject(s, NULL, "strict"); - Py_DECREF(s); - return result; - } - #endif - return __Pyx_PyObject_FormatAndDecref(s, f); -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { - PyObject *result; - if (unlikely(!s)) return NULL; - result = PyObject_Format(s, f); - Py_DECREF(s); - return result; +#endif } /* SwapException */ @@ -16853,83 +17654,10 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, } #endif -/* JoinPyUnicode */ -static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_count, Py_ssize_t result_ulength, - Py_UCS4 max_char) { -#if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - PyObject *result_uval; - int result_ukind, kind_shift; - Py_ssize_t i, char_pos; - void *result_udata; - CYTHON_MAYBE_UNUSED_VAR(max_char); -#if CYTHON_PEP393_ENABLED - result_uval = PyUnicode_New(result_ulength, max_char); - if (unlikely(!result_uval)) return NULL; - result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND; - kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1; - result_udata = PyUnicode_DATA(result_uval); -#else - result_uval = PyUnicode_FromUnicode(NULL, result_ulength); - if (unlikely(!result_uval)) return NULL; - result_ukind = sizeof(Py_UNICODE); - kind_shift = (result_ukind == 4) ? 2 : result_ukind - 1; - result_udata = PyUnicode_AS_UNICODE(result_uval); -#endif - assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0); - char_pos = 0; - for (i=0; i < value_count; i++) { - int ukind; - Py_ssize_t ulength; - void *udata; - PyObject *uval = PyTuple_GET_ITEM(value_tuple, i); - if (unlikely(__Pyx_PyUnicode_READY(uval))) - goto bad; - ulength = __Pyx_PyUnicode_GET_LENGTH(uval); - if (unlikely(!ulength)) - continue; - if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos)) - goto overflow; - ukind = __Pyx_PyUnicode_KIND(uval); - udata = __Pyx_PyUnicode_DATA(uval); - if (!CYTHON_PEP393_ENABLED || ukind == result_ukind) { - memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); - } else { - #if PY_VERSION_HEX >= 0x030d0000 - if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; - #elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030300F0 || defined(_PyUnicode_FastCopyCharacters) - _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); - #else - Py_ssize_t j; - for (j=0; j < ulength; j++) { - Py_UCS4 uchar = __Pyx_PyUnicode_READ(ukind, udata, j); - __Pyx_PyUnicode_WRITE(result_ukind, result_udata, char_pos+j, uchar); - } - #endif - } - char_pos += ulength; - } - return result_uval; -overflow: - PyErr_SetString(PyExc_OverflowError, "join() result is too long for a Python string"); -bad: - Py_DECREF(result_uval); - return NULL; -#else - CYTHON_UNUSED_VAR(max_char); - CYTHON_UNUSED_VAR(result_ulength); - CYTHON_UNUSED_VAR(value_count); - return PyUnicode_Join(__pyx_empty_unicode, value_tuple); -#endif -} - /* GetAttr */ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { #if CYTHON_USE_TYPE_SLOTS -#if PY_MAJOR_VERSION >= 3 if (likely(PyUnicode_Check(n))) -#else - if (likely(PyString_Check(n))) -#endif return __Pyx_PyObject_GetAttrStr(o, n); #endif return PyObject_GetAttr(o, n); @@ -16937,53 +17665,130 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { /* pep479 */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { - PyObject *exc, *val, *tb, *cur_exc; + PyObject *exc, *val, *tb, *cur_exc, *new_exc; __Pyx_PyThreadState_declare - #ifdef __Pyx_StopAsyncIteration_USED int is_async_stopiteration = 0; - #endif CYTHON_MAYBE_UNUSED_VAR(in_async_gen); - cur_exc = PyErr_Occurred(); + __Pyx_PyThreadState_assign + cur_exc = __Pyx_PyErr_CurrentExceptionType(); if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) { - #ifdef __Pyx_StopAsyncIteration_USED - if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, __Pyx_PyExc_StopAsyncIteration))) { + if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) { is_async_stopiteration = 1; - } else - #endif + } else { return; + } } - __Pyx_PyThreadState_assign __Pyx_GetException(&exc, &val, &tb); Py_XDECREF(exc); - Py_XDECREF(val); Py_XDECREF(tb); - PyErr_SetString(PyExc_RuntimeError, - #ifdef __Pyx_StopAsyncIteration_USED + new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s", is_async_stopiteration ? "async generator raised StopAsyncIteration" : in_async_gen ? "async generator raised StopIteration" : - #endif "generator raised StopIteration"); + if (!new_exc) { + Py_XDECREF(val); + return; + } + PyException_SetCause(new_exc, val); // steals ref to val + PyErr_SetObject(PyExc_RuntimeError, new_exc); +} + +/* CallTypeTraverse */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg) { + #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 + if (__Pyx_get_runtime_version() < 0x03090000) return 0; + #endif + if (!always_call) { + PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*); + unsigned long flags = PyType_GetFlags(base); + if (flags & Py_TPFLAGS_HEAPTYPE) { + return 0; + } + } + Py_VISIT((PyObject*)Py_TYPE(o)); + return 0; +} +#endif + +/* LimitedApiGetTypeDict */ +#if CYTHON_COMPILING_IN_LIMITED_API +static Py_ssize_t __Pyx_GetTypeDictOffset(void) { + PyObject *tp_dictoffset_o; + Py_ssize_t tp_dictoffset; + tp_dictoffset_o = PyObject_GetAttrString((PyObject*)(&PyType_Type), "__dictoffset__"); + if (unlikely(!tp_dictoffset_o)) return -1; + tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o); + Py_DECREF(tp_dictoffset_o); + if (unlikely(tp_dictoffset == 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' doesn't have a dictoffset"); + return -1; + } else if (unlikely(tp_dictoffset < 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' has an unexpected negative dictoffset. " + "Please report this as Cython bug"); + return -1; + } + return tp_dictoffset; +} +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp) { + static Py_ssize_t tp_dictoffset = 0; + if (unlikely(tp_dictoffset == 0)) { + tp_dictoffset = __Pyx_GetTypeDictOffset(); + if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) { + tp_dictoffset = 0; // try again next time? + return NULL; + } + } + return *(PyObject**)((char*)tp + tp_dictoffset); +} +#endif + +/* SetItemOnTypeDict */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; +#else + tp_dict = tp->tp_dict; +#endif + result = PyDict_SetItem(tp_dict, k, v); + if (likely(!result)) { + PyType_Modified(tp); + if (unlikely(PyObject_HasAttr(v, __pyx_mstate_global->__pyx_n_u_set_name))) { + PyObject *setNameResult = PyObject_CallMethodObjArgs(v, __pyx_mstate_global->__pyx_n_u_set_name, (PyObject *) tp, k, NULL); + if (!setNameResult) return -1; + Py_DECREF(setNameResult); + } + } + return result; } /* FixUpExtensionType */ -#if CYTHON_USE_TYPE_SPECS static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { -#if PY_VERSION_HEX > 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API +#if __PYX_LIMITED_VERSION_HEX > 0x030900B1 CYTHON_UNUSED_VAR(spec); CYTHON_UNUSED_VAR(type); + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); #else const PyType_Slot *slot = spec->slots; + int changed = 0; +#if !CYTHON_COMPILING_IN_LIMITED_API while (slot && slot->slot && slot->slot != Py_tp_members) slot++; if (slot && slot->slot == Py_tp_members) { - int changed = 0; -#if !(PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON) +#if !CYTHON_COMPILING_IN_CPYTHON const -#endif +#endif // !CYTHON_COMPILING_IN_CPYTHON) PyMemberDef *memb = (PyMemberDef*) slot->pfunc; while (memb && memb->name) { if (memb->name[0] == '_' && memb->name[1] == '_') { -#if PY_VERSION_HEX < 0x030900b1 if (strcmp(memb->name, "__weaklistoffset__") == 0) { assert(memb->type == T_PYSSIZET); assert(memb->flags == READONLY); @@ -17007,11 +17812,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject #endif changed = 1; } -#endif -#else - if ((0)); -#endif -#if PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON +#endif // CYTHON_METH_FASTCALL else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -17019,37 +17820,68 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject descr = PyDescr_NewMember(type, memb); if (unlikely(!descr)) return -1; - if (unlikely(PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr) < 0)) { - Py_DECREF(descr); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { return -1; } - Py_DECREF(descr); changed = 1; } -#endif } memb++; } - if (changed) - PyType_Modified(type); } -#endif +#endif // !CYTHON_COMPILING_IN_LIMITED_API + slot = spec->slots; + while (slot && slot->slot && slot->slot != Py_tp_getset) + slot++; + if (slot && slot->slot == Py_tp_getset) { + PyGetSetDef *getset = (PyGetSetDef*) slot->pfunc; + while (getset && getset->name) { + if (getset->name[0] == '_' && getset->name[1] == '_' && strcmp(getset->name, "__module__") == 0) { + PyObject *descr = PyDescr_NewGetSet(type, getset); + if (unlikely(!descr)) + return -1; + #if CYTHON_COMPILING_IN_LIMITED_API + PyObject *pyname = PyUnicode_FromString(getset->name); + if (unlikely(!pyname)) { + Py_DECREF(descr); + return -1; + } + int set_item_result = __Pyx_SetItemOnTypeDict(type, pyname, descr); + Py_DECREF(pyname); + #else + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + #endif + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { + return -1; + } + changed = 1; + } + ++getset; + } + } + if (changed) + PyType_Modified(type); +#endif // PY_VERSION_HEX > 0x030900B1 return 0; } -#endif /* ValidateBasesTuple */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { Py_ssize_t i, n; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE n = PyTuple_GET_SIZE(bases); #else n = PyTuple_Size(bases); - if (n < 0) return -1; + if (unlikely(n < 0)) return -1; #endif for (i = 1; i < n; i++) { + PyTypeObject *b; #if CYTHON_AVOID_BORROWED_REFS PyObject *b0 = PySequence_GetItem(bases, i); if (!b0) return -1; @@ -17058,23 +17890,11 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #else PyObject *b0 = PyTuple_GetItem(bases, i); if (!b0) return -1; -#endif - PyTypeObject *b; -#if PY_MAJOR_VERSION < 3 - if (PyClass_Check(b0)) - { - PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", - PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - return -1; - } #endif b = (PyTypeObject*) b0; if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE)) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); @@ -17086,7 +17906,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs if (dictoffset == 0) { Py_ssize_t b_dictoffset = 0; -#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY +#if CYTHON_USE_TYPE_SLOTS b_dictoffset = b->tp_dictoffset; #else PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); @@ -17097,7 +17917,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif if (b_dictoffset) { { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "extension type '%.200s' has no __dict__ slot, " "but base type '" __Pyx_FMT_TYPENAME "' has: " @@ -17106,7 +17926,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs type_name, b_name); __Pyx_DECREF_TypeName(b_name); } -#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) +#if !CYTHON_USE_TYPE_SLOTS dictoffset_return: #endif #if CYTHON_AVOID_BORROWED_REFS @@ -17124,8 +17944,18 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif /* PyType_Ready */ +CYTHON_UNUSED static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) { + while (t) { + PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); + if (bases) { + return 1; + } + t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*); + } + return 0; +} static int __Pyx_PyType_Ready(PyTypeObject *t) { -#if CYTHON_USE_TYPE_SPECS || !(CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API) || defined(PYSTON_MAJOR_VERSION) +#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON || defined(PYSTON_MAJOR_VERSION) (void)__Pyx_PyObject_CallMethod0; #if CYTHON_USE_TYPE_SPECS (void)__Pyx_validate_bases_tuple; @@ -17133,10 +17963,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { return PyType_Ready(t); #else int r; + if (!__Pyx_PyType_HasMultipleInheritance(t)) { + return PyType_Ready(t); + } PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset, bases) == -1)) return -1; -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) { int gc_was_enabled; #if PY_VERSION_HEX >= 0x030A00b1 @@ -17145,12 +17978,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #else PyObject *ret, *py_status; PyObject *gc = NULL; - #if PY_VERSION_HEX >= 0x030700a1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) - gc = PyImport_GetModule(__pyx_kp_u_gc); + #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\ + !CYTHON_COMPILING_IN_GRAAL + gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc); #endif - if (unlikely(!gc)) gc = PyImport_Import(__pyx_kp_u_gc); + if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc); if (unlikely(!gc)) return -1; - py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_isenabled); + py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled); if (unlikely(!py_status)) { Py_DECREF(gc); return -1; @@ -17158,7 +17992,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { gc_was_enabled = __Pyx_PyObject_IsTrue(py_status); Py_DECREF(py_status); if (gc_was_enabled > 0) { - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_disable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable); if (unlikely(!ret)) { Py_DECREF(gc); return -1; @@ -17177,7 +18011,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { (void)__Pyx_PyObject_CallMethod0; #endif r = PyType_Ready(t); -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE; #if PY_VERSION_HEX >= 0x030A00b1 if (gc_was_enabled) @@ -17186,7 +18020,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { if (gc_was_enabled) { PyObject *tp, *v, *tb; PyErr_Fetch(&tp, &v, &tb); - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_enable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable); if (likely(ret || r == -1)) { Py_XDECREF(ret); PyErr_Restore(tp, v, tb); @@ -17205,57 +18039,15 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #endif } -/* PyObject_GenericGetAttrNoDict */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject *__Pyx_RaiseGenericGetAttributeError(PyTypeObject *tp, PyObject *attr_name) { - __Pyx_TypeName type_name = __Pyx_PyType_GetName(tp); - PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", - type_name, attr_name); -#else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(attr_name)); -#endif - __Pyx_DECREF_TypeName(type_name); - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name) { - PyObject *descr; - PyTypeObject *tp = Py_TYPE(obj); - if (unlikely(!PyString_Check(attr_name))) { - return PyObject_GenericGetAttr(obj, attr_name); - } - assert(!tp->tp_dictoffset); - descr = _PyType_Lookup(tp, attr_name); - if (unlikely(!descr)) { - return __Pyx_RaiseGenericGetAttributeError(tp, attr_name); - } - Py_INCREF(descr); - #if PY_MAJOR_VERSION < 3 - if (likely(PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_HAVE_CLASS))) - #endif - { - descrgetfunc f = Py_TYPE(descr)->tp_descr_get; - if (unlikely(f)) { - PyObject *res = f(descr, obj, (PyObject *)tp); - Py_DECREF(descr); - return res; - } - } - return descr; -} -#endif - /* SetVTable */ static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { PyObject *ob = PyCapsule_New(vtable, 0, 0); if (unlikely(!ob)) goto bad; #if CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_n_s_pyx_vtable, ob) < 0)) + if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_mstate_global->__pyx_n_u_pyx_vtable, ob) < 0)) #else - if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_n_s_pyx_vtable, ob) < 0)) + if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable, ob) < 0)) #endif goto bad; Py_DECREF(ob); @@ -17269,9 +18061,9 @@ static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { static void* __Pyx_GetVtable(PyTypeObject *type) { void* ptr; #if CYTHON_COMPILING_IN_LIMITED_API - PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #else - PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #endif if (!ob) goto bad; @@ -17286,29 +18078,49 @@ static void* __Pyx_GetVtable(PyTypeObject *type) { } /* MergeVTables */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_MergeVtables(PyTypeObject *type) { - int i; + int i=0; + Py_ssize_t size; void** base_vtables; - __Pyx_TypeName tp_base_name; - __Pyx_TypeName base_name; + __Pyx_TypeName tp_base_name = NULL; + __Pyx_TypeName base_name = NULL; void* unknown = (void*)-1; - PyObject* bases = type->tp_bases; + PyObject* bases = __Pyx_PyType_GetSlot(type, tp_bases, PyObject*); int base_depth = 0; { - PyTypeObject* base = type->tp_base; + PyTypeObject* base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); while (base) { base_depth += 1; - base = base->tp_base; + base = __Pyx_PyType_GetSlot(base, tp_base, PyTypeObject*); } } - base_vtables = (void**) malloc(sizeof(void*) * (size_t)(base_depth + 1)); + base_vtables = (void**) PyMem_Malloc(sizeof(void*) * (size_t)(base_depth + 1)); base_vtables[0] = unknown; - for (i = 1; i < PyTuple_GET_SIZE(bases); i++) { - void* base_vtable = __Pyx_GetVtable(((PyTypeObject*)PyTuple_GET_ITEM(bases, i))); +#if CYTHON_COMPILING_IN_LIMITED_API + size = PyTuple_Size(bases); + if (size < 0) goto other_failure; +#else + size = PyTuple_GET_SIZE(bases); +#endif + for (i = 1; i < size; i++) { + PyObject *basei; + void* base_vtable; +#if CYTHON_AVOID_BORROWED_REFS + basei = PySequence_GetItem(bases, i); + if (unlikely(!basei)) goto other_failure; +#elif !CYTHON_ASSUME_SAFE_MACROS + basei = PyTuple_GetItem(bases, i); + if (unlikely(!basei)) goto other_failure; +#else + basei = PyTuple_GET_ITEM(bases, i); +#endif + base_vtable = __Pyx_GetVtable((PyTypeObject*)basei); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(basei); +#endif if (base_vtable != NULL) { int j; - PyTypeObject* base = type->tp_base; + PyTypeObject* base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); for (j = 0; j < base_depth; j++) { if (base_vtables[j] == unknown) { base_vtables[j] = __Pyx_GetVtable(base); @@ -17319,33 +18131,53 @@ static int __Pyx_MergeVtables(PyTypeObject *type) { } else if (base_vtables[j] == NULL) { goto bad; } - base = base->tp_base; + base = __Pyx_PyType_GetSlot(base, tp_base, PyTypeObject*); } } } PyErr_Clear(); - free(base_vtables); + PyMem_Free(base_vtables); return 0; bad: - tp_base_name = __Pyx_PyType_GetName(type->tp_base); - base_name = __Pyx_PyType_GetName((PyTypeObject*)PyTuple_GET_ITEM(bases, i)); + { + PyTypeObject* basei = NULL; + PyTypeObject* tp_base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); + tp_base_name = __Pyx_PyType_GetFullyQualifiedName(tp_base); +#if CYTHON_AVOID_BORROWED_REFS + basei = (PyTypeObject*)PySequence_GetItem(bases, i); + if (unlikely(!basei)) goto really_bad; +#elif !CYTHON_ASSUME_SAFE_MACROS + basei = (PyTypeObject*)PyTuple_GetItem(bases, i); + if (unlikely(!basei)) goto really_bad; +#else + basei = (PyTypeObject*)PyTuple_GET_ITEM(bases, i); +#endif + base_name = __Pyx_PyType_GetFullyQualifiedName(basei); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(basei); +#endif + } PyErr_Format(PyExc_TypeError, "multiple bases have vtable conflict: '" __Pyx_FMT_TYPENAME "' and '" __Pyx_FMT_TYPENAME "'", tp_base_name, base_name); +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS +really_bad: // bad has failed! +#endif __Pyx_DECREF_TypeName(tp_base_name); __Pyx_DECREF_TypeName(base_name); - free(base_vtables); +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS +other_failure: +#endif + PyMem_Free(base_vtables); return -1; } -#endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_0_10 -#define __PYX_HAVE_RT_ImportType_3_0_10 -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_2 +#define __PYX_HAVE_RT_ImportType_3_1_2 +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) { PyObject *result = 0; - char warning[200]; Py_ssize_t basicsize; Py_ssize_t itemsize; #if CYTHON_COMPILING_IN_LIMITED_API @@ -17365,6 +18197,9 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul basicsize = ((PyTypeObject *)result)->tp_basicsize; itemsize = ((PyTypeObject *)result)->tp_itemsize; #else + if (size == 0) { + return (PyTypeObject *)result; + } py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); if (!py_basicsize) goto bad; @@ -17396,7 +18231,7 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -17404,12 +18239,13 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { - PyOS_snprintf(warning, sizeof(warning), - "%s.%s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + if (PyErr_WarnFormat(NULL, 0, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize) < 0) { + goto bad; + } } return (PyTypeObject *)result; bad: @@ -17418,61 +18254,53 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul } #endif +/* ListPack */ +static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) { + va_list va; + PyObject *l = PyList_New(n); + va_start(va, n); + if (unlikely(!l)) goto end; + for (Py_ssize_t i=0; i= 3 - if (level == -1) { - if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - #endif - if (!module) { - #if PY_MAJOR_VERSION < 3 - PyObject *py_level = PyInt_FromLong(level); - if (unlikely(!py_level)) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); - Py_DECREF(py_level); - #else + if (level == -1) { + const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); + if (package_sep != (0)) { module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, level); - #endif + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); + if (unlikely(!module)) { + if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) + goto bad; + PyErr_Clear(); + } } + level = 0; + } + if (!module) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); } bad: Py_XDECREF(empty_dict); Py_XDECREF(empty_list); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_import); - #endif return module; } @@ -17489,11 +18317,12 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { if (unlikely(!module_name_str)) { goto modbad; } module_name = PyUnicode_FromString(module_name_str); if (unlikely(!module_name)) { goto modbad; } - module_dot = PyUnicode_Concat(module_name, __pyx_kp_u__14); + module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__5); if (unlikely(!module_dot)) { goto modbad; } full_name = PyUnicode_Concat(module_dot, name); if (unlikely(!full_name)) { goto modbad; } - #if PY_VERSION_HEX < 0x030700A1 || (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) + #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ + CYTHON_COMPILING_IN_GRAAL { PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) @@ -17509,31 +18338,75 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { Py_XDECREF(module_name); } if (unlikely(!value)) { - PyErr_Format(PyExc_ImportError, - #if PY_MAJOR_VERSION < 3 - "cannot import name %.230s", PyString_AS_STRING(name)); - #else - "cannot import name %S", name); - #endif + PyErr_Format(PyExc_ImportError, "cannot import name %S", name); } return value; } /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); + return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); +} + +/* dict_setdefault */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, + int is_safe_type) { + PyObject* value; + CYTHON_MAYBE_UNUSED_VAR(is_safe_type); +#if CYTHON_COMPILING_IN_LIMITED_API + value = PyObject_CallMethod(d, "setdefault", "OO", key, default_value); +#elif PY_VERSION_HEX >= 0x030d0000 + PyDict_SetDefaultRef(d, key, default_value, &value); +#else + value = PyDict_SetDefault(d, key, default_value); + if (unlikely(!value)) return NULL; + Py_INCREF(value); +#endif + return value; } /* FetchCommonType */ +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases); + if (result && metaclass) { + PyObject *old_tp = (PyObject*)Py_TYPE(result); + Py_INCREF((PyObject*)metaclass); +#if __PYX_LIMITED_VERSION_HEX >= 0x03090000 + Py_SET_TYPE(result, metaclass); +#else + result->ob_type = metaclass; +#endif + Py_DECREF(old_tp); + } + return result; +} +#else +#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b) +#endif static int __Pyx_VerifyCachedType(PyObject *cached_type, const char *name, - Py_ssize_t basicsize, Py_ssize_t expected_basicsize) { + Py_ssize_t basicsize; if (!PyType_Check(cached_type)) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s is not a type object", name); return -1; } + if (expected_basicsize == 0) { + return 0; // size is inherited, nothing useful to check + } +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_basicsize; + py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); + if (unlikely(!py_basicsize)) return -1; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = NULL; + if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) return -1; +#else + basicsize = ((PyTypeObject*) cached_type)->tp_basicsize; +#endif if (basicsize != expected_basicsize) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s has the wrong size, try recompiling", @@ -17542,80 +18415,51 @@ static int __Pyx_VerifyCachedType(PyObject *cached_type, } return 0; } -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) { - PyObject* abi_module; - const char* object_name; - PyTypeObject *cached_type = NULL; - abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - object_name = strrchr(type->tp_name, '.'); - object_name = object_name ? object_name+1 : type->tp_name; - cached_type = (PyTypeObject*) PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - if (__Pyx_VerifyCachedType( - (PyObject *)cached_type, - object_name, - cached_type->tp_basicsize, - type->tp_basicsize) < 0) { - goto bad; - } - goto done; - } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); - if (PyType_Ready(type) < 0) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, (PyObject *)type) < 0) - goto bad; - Py_INCREF(type); - cached_type = type; -done: - Py_DECREF(abi_module); - return cached_type; -bad: - Py_XDECREF(cached_type); - cached_type = NULL; - goto done; -} -#else -static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases) { - PyObject *abi_module, *cached_type = NULL; +static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name; + int get_item_ref_result; const char* object_name = strrchr(spec->name, '.'); object_name = object_name ? object_name+1 : spec->name; + py_object_name = PyUnicode_FromString(object_name); + if (!py_object_name) return NULL; abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - cached_type = PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - Py_ssize_t basicsize; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); - if (unlikely(!py_basicsize)) goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad; -#else - basicsize = likely(PyType_Check(cached_type)) ? ((PyTypeObject*) cached_type)->tp_basicsize : -1; -#endif + if (!abi_module) goto done; + abi_module_dict = PyModule_GetDict(abi_module); + if (!abi_module_dict) goto done; + get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type); + if (get_item_ref_result == 1) { if (__Pyx_VerifyCachedType( cached_type, object_name, - basicsize, spec->basicsize) < 0) { goto bad; } goto done; + } else if (unlikely(get_item_ref_result == -1)) { + goto bad; } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); CYTHON_UNUSED_VAR(module); - cached_type = __Pyx_PyType_FromModuleAndSpec(abi_module, spec, bases); + cached_type = __Pyx_PyType_FromMetaclass(metaclass, abi_module, spec, bases); if (unlikely(!cached_type)) goto bad; if (unlikely(__Pyx_fix_up_extension_type_from_spec(spec, (PyTypeObject *) cached_type) < 0)) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, cached_type) < 0) goto bad; + new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type, 1); + if (unlikely(new_cached_type != cached_type)) { + if (unlikely(!new_cached_type)) goto bad; + Py_DECREF(cached_type); + cached_type = new_cached_type; + if (__Pyx_VerifyCachedType( + cached_type, + object_name, + spec->basicsize) < 0) { + goto bad; + } + goto done; + } else { + Py_DECREF(new_cached_type); + } done: - Py_DECREF(abi_module); + Py_XDECREF(abi_module); + Py_DECREF(py_object_name); assert(cached_type == NULL || PyType_Check(cached_type)); return (PyTypeObject *) cached_type; bad: @@ -17623,10 +18467,71 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec cached_type = NULL; goto done; } + +/* CommonTypesMetaclass */ +PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { + return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); +} +static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { + {"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL}, + {0, 0, 0, 0, 0} +}; +static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = { + {Py_tp_getset, (void *)__pyx_CommonTypesMetaclass_getset}, + {0, 0} +}; +static PyType_Spec __pyx_CommonTypesMetaclass_spec = { + __PYX_TYPE_MODULE_PREFIX "_common_types_metatype", + 0, + 0, +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | + Py_TPFLAGS_DISALLOW_INSTANTIATION | +#endif + Py_TPFLAGS_DEFAULT, + __pyx_CommonTypesMetaclass_slots +}; +static int __pyx_CommonTypesMetaclass_init(PyObject *module) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + PyObject *bases = PyTuple_Pack(1, &PyType_Type); + if (unlikely(!bases)) { + return -1; + } + mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases); + if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) { + return -1; + } + return 0; +} + +/* PyMethodNew */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *result; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + { + PyObject *args[] = {func, self}; + result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL); + } + #else + result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL); + #endif + return result; +} +#else +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + return PyMethod_New(func, self); +} #endif /* PyVectorcallFastCallDict */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { PyObject *res = NULL; @@ -17637,7 +18542,12 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector size_t j; PyObject *key, *value; unsigned long keys_are_strings; + #if !CYTHON_ASSUME_SAFE_SIZE + Py_ssize_t nkw = PyDict_Size(kw); + if (unlikely(nkw == -1)) return NULL; + #else Py_ssize_t nkw = PyDict_GET_SIZE(kw); + #endif newargs = (PyObject **)PyMem_Malloc((nargs + (size_t)nkw) * sizeof(args[0])); if (unlikely(newargs == NULL)) { PyErr_NoMemory(); @@ -17653,10 +18563,19 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector pos = i = 0; keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS; while (PyDict_Next(kw, &pos, &key, &value)) { - keys_are_strings &= Py_TYPE(key)->tp_flags; + keys_are_strings &= + #if CYTHON_COMPILING_IN_LIMITED_API + PyType_GetFlags(Py_TYPE(key)); + #else + Py_TYPE(key)->tp_flags; + #endif Py_INCREF(key); Py_INCREF(value); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0)) goto cleanup; + #else PyTuple_SET_ITEM(kwnames, i, key); + #endif kwvalues[i] = value; i++; } @@ -17674,16 +18593,29 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector } static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { - if (likely(kw == NULL) || PyDict_GET_SIZE(kw) == 0) { + Py_ssize_t kw_size = + likely(kw == NULL) ? + 0 : +#if !CYTHON_ASSUME_SAFE_SIZE + PyDict_Size(kw); +#else + PyDict_GET_SIZE(kw); +#endif + if (kw_size == 0) { return vc(func, args, nargs, NULL); } +#if !CYTHON_ASSUME_SAFE_SIZE + else if (unlikely(kw_size == -1)) { + return NULL; + } +#endif return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw); } #endif /* CythonFunctionShared */ #if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func, void (*cfunc)(void)) { if (__Pyx_CyFunction_Check(func)) { return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; } else if (PyCFunction_Check(func)) { @@ -17691,8 +18623,25 @@ static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) } return 0; } +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) { + int result; + PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func); + if (unlikely(!newFunc)) { + PyErr_Clear(); // It's only an optimization, so don't throw an error + return 0; + } + result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc); + Py_DECREF(newFunc); + return result; + } + return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc); +} #else -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if (PyMethod_Check(func)) { + func = PyMethod_GET_FUNCTION(func); + } return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; } #endif @@ -17708,20 +18657,15 @@ static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* #endif } static PyObject * -__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) +__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); if (unlikely(!op->func_doc)) return NULL; #else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { -#if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#else - op->func_doc = PyString_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#endif if (unlikely(op->func_doc == NULL)) return NULL; } else { @@ -17733,6 +18677,15 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(op->func_doc); return op->func_doc; } +static PyObject * +__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { + PyObject *result; + CYTHON_UNUSED_VAR(closure); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_doc_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -17741,20 +18694,19 @@ __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *cont value = Py_None; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_doc, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_name = PyObject_GetAttrString(op->func, "__name__"); -#elif PY_MAJOR_VERSION >= 3 - op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else - op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); + op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #endif if (unlikely(op->func_name == NULL)) return NULL; @@ -17762,53 +18714,60 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_name); return op->func_name; } +static PyObject * +__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +{ + PyObject *result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_name_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__name__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_name, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * __Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); Py_INCREF(op->func_qualname); - return op->func_qualname; + result = op->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static int __Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__qualname__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_qualname, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_dict_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_dict == NULL)) { op->func_dict = PyDict_New(); if (unlikely(op->func_dict == NULL)) @@ -17817,6 +18776,16 @@ __Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_dict); return op->func_dict; } +static PyObject * +__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +{ + CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_dict_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -17832,7 +18801,9 @@ __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *con return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_dict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * @@ -17893,13 +18864,14 @@ __Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value, void PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__defaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_tuple, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_defaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_tuple; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -17911,6 +18883,15 @@ __Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_defaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -17924,13 +18905,14 @@ __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, voi PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__kwdefaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_kwdefaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_kwdict; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -17942,6 +18924,15 @@ __Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_kwdefaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -17953,13 +18944,14 @@ __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, vo return -1; } Py_XINCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_annotations, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->func_annotations; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { result = PyDict_New(); if (unlikely(!result)) return NULL; @@ -17969,16 +18961,19 @@ __Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { return result; } static PyObject * -__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { - int is_coroutine; +__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; CYTHON_UNUSED_VAR(context); - if (op->func_is_coroutine) { - return __Pyx_NewRef(op->func_is_coroutine); - } - is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; -#if PY_VERSION_HEX >= 0x03050000 + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_annotations_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) { + int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; if (is_coroutine) { - PyObject *module, *fromlist, *marker = __pyx_n_s_is_coroutine; + PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine; fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); @@ -17991,20 +18986,68 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { return NULL; } #endif - module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); + module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; - op->func_is_coroutine = __Pyx_PyObject_GetAttrStr(module, marker); + is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker); Py_DECREF(module); - if (likely(op->func_is_coroutine)) { - return __Pyx_NewRef(op->func_is_coroutine); + if (likely(is_coroutine_value)) { + return is_coroutine_value; } ignore: PyErr_Clear(); } + return __Pyx_PyBool_FromLong(is_coroutine); +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; + CYTHON_UNUSED_VAR(context); + if (op->func_is_coroutine) { + return __Pyx_NewRef(op->func_is_coroutine); + } + result = __Pyx_CyFunction_get_is_coroutine_value(op); + if (unlikely(!result)) + return NULL; + __Pyx_BEGIN_CRITICAL_SECTION(op); + if (op->func_is_coroutine) { + Py_DECREF(result); + result = __Pyx_NewRef(op->func_is_coroutine); + } else { + op->func_is_coroutine = __Pyx_NewRef(result); + } + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static void __Pyx_CyFunction_raise_argument_count_error(__pyx_CyFunctionObject *func, const char* message, Py_ssize_t size) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, message, size); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + name, message, size); +#endif +} +static void __Pyx_CyFunction_raise_type_error(__pyx_CyFunctionObject *func, const char* message) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s", + py_name, message); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s", + name, message); #endif - op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); - return __Pyx_NewRef(op->func_is_coroutine); } #if CYTHON_COMPILING_IN_LIMITED_API static PyObject * @@ -18019,24 +19062,24 @@ __Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *c } #endif static PyGetSetDef __pyx_CyFunction_getsets[] = { - {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, - {(char *) "func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, - {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, - {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, + {"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, + {"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, + {"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, + {"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, #if CYTHON_COMPILING_IN_LIMITED_API {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, #endif @@ -18044,23 +19087,19 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { }; static PyMemberDef __pyx_CyFunction_members[] = { #if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, + {"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, #endif -#if CYTHON_USE_TYPE_SPECS - {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, + {"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL -#if CYTHON_BACKPORT_VECTORCALL - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API + {"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else -#if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, -#endif -#endif + {"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, + {"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, #endif #endif {0, 0, 0, 0, 0} @@ -18068,19 +19107,19 @@ static PyMemberDef __pyx_CyFunction_members[] = { static PyObject * __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, PyObject *args) { + PyObject *result = NULL; CYTHON_UNUSED_VAR(args); -#if PY_MAJOR_VERSION >= 3 + __Pyx_BEGIN_CRITICAL_SECTION(m); Py_INCREF(m->func_qualname); - return m->func_qualname; -#else - return PyString_FromString(((PyCFunctionObject*)m)->m_ml->ml_name); -#endif + result = m->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) @@ -18122,8 +19161,6 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef * Py_INCREF(op->func_globals); Py_XINCREF(code); op->func_code = code; - op->defaults_pyobjects = 0; - op->defaults_size = 0; op->defaults = NULL; op->defaults_tuple = NULL; op->defaults_kwdict = NULL; @@ -18185,14 +19222,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) Py_CLEAR(m->defaults_kwdict); Py_CLEAR(m->func_annotations); Py_CLEAR(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_XDECREF(pydefaults[i]); - PyObject_Free(m->defaults); - m->defaults = NULL; - } + Py_CLEAR(m->defaults); return 0; } static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m) @@ -18209,6 +19239,10 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) } static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { + { + int e = __Pyx_call_type_traverse((PyObject*)m, 1, visit, arg); + if (e) return e; + } Py_VISIT(m->func_closure); #if CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(m->func); @@ -18216,40 +19250,33 @@ static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, Py_VISIT(((PyCFunctionObject*)m)->m_module); #endif Py_VISIT(m->func_dict); - Py_VISIT(m->func_name); - Py_VISIT(m->func_qualname); + __Pyx_VISIT_CONST(m->func_name); + __Pyx_VISIT_CONST(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); - Py_VISIT(m->func_code); + __Pyx_VISIT_CONST(m->func_code); #if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); #endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_VISIT(pydefaults[i]); - } + Py_VISIT(m->defaults); return 0; } static PyObject* __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) { -#if PY_MAJOR_VERSION >= 3 - return PyUnicode_FromFormat("", + PyObject *repr; + __Pyx_BEGIN_CRITICAL_SECTION(op); + repr = PyUnicode_FromFormat("", op->func_qualname, (void *)op); -#else - return PyString_FromFormat("", - PyString_AsString(op->func_qualname), (void *)op); -#endif + __Pyx_END_CRITICAL_SECTION(); + return repr; } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { #if CYTHON_COMPILING_IN_LIMITED_API PyObject *f = ((__pyx_CyFunctionObject*)func)->func; - PyObject *py_name = NULL; PyCFunction meth; int flags; meth = PyCFunction_GetFunction(f); @@ -18268,10 +19295,10 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*meth)(self, arg); break; case METH_VARARGS | METH_KEYWORDS: - return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); + return (*(PyCFunctionWithKeywords)(void(*)(void))meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -18279,24 +19306,15 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif if (likely(size == 0)) return (*meth)(self, NULL); -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes no arguments", size); return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -18315,18 +19333,9 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes exactly one argument", size); return NULL; } break; @@ -18334,16 +19343,8 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", - py_name); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", - f->m_ml->ml_name); -#endif + __Pyx_CyFunction_raise_type_error( + (__pyx_CyFunctionObject*)func, "takes no keyword arguments"); return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { @@ -18360,10 +19361,10 @@ static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *a static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func; -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc); if (vc) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw); #else (void) &__Pyx_PyVectorcall_FastCallDict; @@ -18375,11 +19376,11 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE argc = PyTuple_GET_SIZE(args); #else argc = PyTuple_Size(args); - if (unlikely(!argc) < 0) return NULL; + if (unlikely(argc < 0)) return NULL; #endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) @@ -18387,14 +19388,9 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P self = PyTuple_GetItem(args, 0); if (unlikely(!self)) { Py_DECREF(new_args); -#if PY_MAJOR_VERSION > 2 PyErr_Format(PyExc_TypeError, "unbound method %.200S() needs an argument", cyfunc->func_qualname); -#else - PyErr_SetString(PyExc_TypeError, - "unbound method needs an argument"); -#endif return NULL; } result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw); @@ -18404,21 +19400,21 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P } return result; } -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames) { int ret = 0; if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) { if (unlikely(nargs < 1)) { - PyErr_Format(PyExc_TypeError, "%.200s() needs an argument", - ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + __Pyx_CyFunction_raise_type_error( + cyfunc, "needs an argument"); return -1; } ret = 1; } - if (unlikely(kwnames) && unlikely(PyTuple_GET_SIZE(kwnames))) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no keyword arguments", ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) { + __Pyx_CyFunction_raise_type_error( + cyfunc, "takes no keyword arguments"); return -1; } return ret; @@ -18426,13 +19422,18 @@ static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionO static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -18440,29 +19441,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 0)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes no arguments", nargs); return NULL; } - return def->ml_meth(self, NULL); + return meth(self, NULL); } static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -18470,29 +19480,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 1)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes exactly one argument", nargs); return NULL; } - return def->ml_meth(self, args[0]); + return meth(self, args[0]); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -18500,17 +19519,21 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; PyTypeObject *cls = (PyTypeObject *) __Pyx_CyFunction_GetClassObj(cyfunc); #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; @@ -18518,6 +19541,12 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -18525,15 +19554,19 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCMethod)(void(*)(void))def->ml_meth)(self, cls, args, (size_t)nargs, kwnames); + return ((__Pyx_PyCMethod)(void(*)(void))meth)(self, cls, args, (size_t)nargs, kwnames); } #endif -#if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_CyFunctionType_slots[] = { {Py_tp_dealloc, (void *)__Pyx_CyFunction_dealloc}, {Py_tp_repr, (void *)__Pyx_CyFunction_repr}, @@ -18553,118 +19586,33 @@ static PyType_Spec __pyx_CyFunctionType_spec = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#if (defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL) +#if CYTHON_METH_FASTCALL +#if defined(Py_TPFLAGS_HAVE_VECTORCALL) + Py_TPFLAGS_HAVE_VECTORCALL | +#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL) _Py_TPFLAGS_HAVE_VECTORCALL | #endif - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - __pyx_CyFunctionType_slots -}; -#else -static PyTypeObject __pyx_CyFunctionType_type = { - PyVarObject_HEAD_INIT(0, 0) - __PYX_TYPE_MODULE_PREFIX "cython_function_or_method", - sizeof(__pyx_CyFunctionObject), - 0, - (destructor) __Pyx_CyFunction_dealloc, -#if !CYTHON_METH_FASTCALL - 0, -#elif CYTHON_BACKPORT_VECTORCALL - (printfunc)offsetof(__pyx_CyFunctionObject, func_vectorcall), -#else - offsetof(PyCFunctionObject, vectorcall), -#endif - 0, - 0, -#if PY_MAJOR_VERSION < 3 - 0, -#else - 0, -#endif - (reprfunc) __Pyx_CyFunction_repr, - 0, - 0, - 0, - 0, - __Pyx_CyFunction_CallAsMethod, - 0, - 0, - 0, - 0, -#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR - Py_TPFLAGS_METHOD_DESCRIPTOR | -#endif -#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL - _Py_TPFLAGS_HAVE_VECTORCALL | +#endif // CYTHON_METH_FASTCALL +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - 0, - (traverseproc) __Pyx_CyFunction_traverse, - (inquiry) __Pyx_CyFunction_clear, - 0, -#if PY_VERSION_HEX < 0x030500A0 - offsetof(__pyx_CyFunctionObject, func_weakreflist), -#else - offsetof(PyCFunctionObject, m_weakreflist), -#endif - 0, - 0, - __pyx_CyFunction_methods, - __pyx_CyFunction_members, - __pyx_CyFunction_getsets, - 0, - 0, - __Pyx_PyMethod_New, - 0, - offsetof(__pyx_CyFunctionObject, func_dict), - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, -#if PY_VERSION_HEX >= 0x030400a1 - 0, -#endif -#if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, -#endif -#if __PYX_NEED_TP_PRINT_SLOT - 0, -#endif -#if PY_VERSION_HEX >= 0x030C0000 - 0, -#endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, -#endif + __pyx_CyFunctionType_slots }; -#endif static int __pyx_CyFunction_init(PyObject *module) { -#if CYTHON_USE_TYPE_SPECS - __pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec(module, &__pyx_CyFunctionType_spec, NULL); -#else - CYTHON_UNUSED_VAR(module); - __pyx_CyFunctionType = __Pyx_FetchCommonType(&__pyx_CyFunctionType_type); -#endif - if (unlikely(__pyx_CyFunctionType == NULL)) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec( + mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL); + if (unlikely(mstate->__pyx_CyFunctionType == NULL)) { return -1; } return 0; } -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *func, size_t size, int pyobjects) { +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) { __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults = PyObject_Malloc(size); + m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL); // _PyObject_New(defaults_type); if (unlikely(!m->defaults)) - return PyErr_NoMemory(); - memset(m->defaults, 0, size); - m->defaults_pyobjects = pyobjects; - m->defaults_size = size; + return NULL; return m->defaults; } static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) { @@ -18687,7 +19635,7 @@ static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, Py static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { PyObject *op = __Pyx_CyFunction_Init( - PyObject_GC_New(__pyx_CyFunctionObject, __pyx_CyFunctionType), + PyObject_GC_New(__pyx_CyFunctionObject, __pyx_mstate_global->__pyx_CyFunctionType), ml, flags, qualname, closure, module, globals, code ); if (likely(op)) { @@ -18697,7 +19645,7 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qual } /* CLineInTraceback */ -#ifndef CYTHON_CLINE_IN_TRACEBACK +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { PyObject *use_cline; PyObject *ptype, *pvalue, *ptraceback; @@ -18705,22 +19653,26 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { PyObject **cython_runtime_dict; #endif CYTHON_MAYBE_UNUSED_VAR(tstate); - if (unlikely(!__pyx_cython_runtime)) { + if (unlikely(!__pyx_mstate_global->__pyx_cython_runtime)) { return c_line; } __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); #if CYTHON_COMPILING_IN_CPYTHON - cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_mstate_global->__pyx_cython_runtime); if (likely(cython_runtime_dict)) { + __Pyx_BEGIN_CRITICAL_SECTION(*cython_runtime_dict); __PYX_PY_DICT_LOOKUP_IF_MODIFIED( use_cline, *cython_runtime_dict, - __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) + __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback)) + Py_XINCREF(use_cline); + __Pyx_END_CRITICAL_SECTION(); } else #endif { - PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback); if (use_cline_obj) { use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_INCREF(use_cline); Py_DECREF(use_cline_obj); } else { PyErr_Clear(); @@ -18729,18 +19681,18 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { } if (!use_cline) { c_line = 0; - (void) PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + (void) PyObject_SetAttr(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False); } else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { c_line = 0; } + Py_XDECREF(use_cline); __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); return c_line; } #endif /* CodeObjectCache */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { int start = 0, mid = 0, end = count - 1; if (end >= 0 && code_line > entries[end].code_line) { @@ -18762,70 +19714,109 @@ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int co return mid + 1; } } -static PyCodeObject *__pyx_find_code_object(int code_line) { - PyCodeObject* code_object; +static __Pyx_CachedCodeObjectType *__pyx__find_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line) { + __Pyx_CachedCodeObjectType* code_object; int pos; - if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { + if (unlikely(!code_line) || unlikely(!code_cache->entries)) { return NULL; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) { return NULL; } - code_object = __pyx_code_cache.entries[pos].code_object; + code_object = code_cache->entries[pos].code_object; Py_INCREF(code_object); return code_object; } -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__find_code_object; + return NULL; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just miss. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count); + if (old_count < 0) { + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); + return NULL; + } +#endif + __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); +#endif + return result; +#endif +} +static void __pyx__insert_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line, __Pyx_CachedCodeObjectType* code_object) +{ int pos, i; - __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; + __Pyx_CodeObjectCacheEntry* entries = code_cache->entries; if (unlikely(!code_line)) { return; } if (unlikely(!entries)) { entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); if (likely(entries)) { - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = 64; - __pyx_code_cache.count = 1; + code_cache->entries = entries; + code_cache->max_count = 64; + code_cache->count = 1; entries[0].code_line = code_line; entries[0].code_object = code_object; Py_INCREF(code_object); } return; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { - PyCodeObject* tmp = entries[pos].code_object; + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) { + __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object; entries[pos].code_object = code_object; + Py_INCREF(code_object); Py_DECREF(tmp); return; } - if (__pyx_code_cache.count == __pyx_code_cache.max_count) { - int new_max = __pyx_code_cache.max_count + 64; + if (code_cache->count == code_cache->max_count) { + int new_max = code_cache->max_count + 64; entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); + code_cache->entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); if (unlikely(!entries)) { return; } - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = new_max; + code_cache->entries = entries; + code_cache->max_count = new_max; } - for (i=__pyx_code_cache.count; i>pos; i--) { + for (i=code_cache->count; i>pos; i--) { entries[i] = entries[i-1]; } entries[pos].code_line = code_line; entries[pos].code_object = code_object; - __pyx_code_cache.count++; + code_cache->count++; Py_INCREF(code_object); } +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__insert_code_object; + return; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just fail. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type expected = 0; + if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) { + return; + } +#endif + __pyx__insert_code_object(code_cache, code_line, code_object); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN); #endif +#endif +} /* AddTraceback */ #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -18839,35 +19830,12 @@ static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; replace = PyObject_GetAttrString(code, "replace"); if (likely(replace)) { - PyObject *result; - result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict); Py_DECREF(replace); return result; } PyErr_Clear(); - #if __PYX_LIMITED_VERSION_HEX < 0x030780000 - { - PyObject *compiled = NULL, *result = NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; - compiled = Py_CompileString( - "out = type(code)(\n" - " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" - " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" - " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" - " code.co_lnotab)\n", "", Py_file_input); - if (!compiled) return NULL; - result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); - Py_DECREF(compiled); - if (!result) PyErr_Print(); - Py_DECREF(result); - result = PyDict_GetItemString(scratch_dict, "out"); - if (result) Py_INCREF(result); - return result; - } - #else return NULL; - #endif } static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { @@ -18880,20 +19848,26 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); - code_object = Py_CompileString("_getframe()", filename, Py_eval_input); - if (unlikely(!code_object)) goto bad; - py_py_line = PyLong_FromLong(py_line); - if (unlikely(!py_py_line)) goto bad; - py_funcname = PyUnicode_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - dict = PyDict_New(); - if (unlikely(!dict)) goto bad; - { - PyObject *old_code_object = code_object; - code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); - Py_DECREF(old_code_object); + code_object = __pyx_find_code_object(c_line ? -c_line : py_line); + if (!code_object) { + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + __pyx_insert_code_object(c_line ? -c_line : py_line, code_object); + } else { + dict = PyDict_New(); } - if (unlikely(!code_object)) goto bad; getframe = PySys_GetObject("_getframe"); if (unlikely(!getframe)) goto bad; if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; @@ -18919,58 +19893,17 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( int py_line, const char *filename) { PyCodeObject *py_code = NULL; PyObject *py_funcname = NULL; - #if PY_MAJOR_VERSION < 3 - PyObject *py_srcfile = NULL; - py_srcfile = PyString_FromString(filename); - if (!py_srcfile) goto bad; - #endif if (c_line) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - #else py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); if (!py_funcname) goto bad; funcname = PyUnicode_AsUTF8(py_funcname); if (!funcname) goto bad; - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - if (!py_funcname) goto bad; - #endif } - #if PY_MAJOR_VERSION < 3 - py_code = __Pyx_PyCode_New( - 0, - 0, - 0, - 0, - 0, - 0, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - py_line, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - Py_DECREF(py_srcfile); - #else py_code = PyCode_NewEmpty(filename, funcname, py_line); - #endif Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_srcfile); - #endif return NULL; } static void __Pyx_AddTraceback(const char *funcname, int c_line, @@ -19001,7 +19934,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, py_frame = PyFrame_New( tstate, /*PyThreadState *tstate,*/ py_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); if (!py_frame) goto bad; @@ -19036,7 +19969,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, } /* CIntFromPy */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -19046,256 +19979,237 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(int) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (int) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + int val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (int) -1; + val = __Pyx_PyLong_As_int(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(int) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(int) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(int) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) + if ((sizeof(int) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } } - { - int val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (int) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (int) 0; - is_negative = Py_SIZE(x) < 0; + } + { + int val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (int) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (int) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (int) -1; + assert(PyLong_CheckExact(v)); + } + { + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (int) -1; } - return (int) -1; + is_negative = result == 1; } - } else { - int val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (int) -1; - val = __Pyx_PyInt_As_int(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = v; + } + v = NULL; + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((int) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (int) -1; return val; } raise_overflow: @@ -19308,8 +20222,40 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { return (int) -1; } +/* PyObjectVectorCallKwBuilder */ +#if CYTHON_VECTORCALL +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_PyObject_FastCallDict; + if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; + Py_INCREF(key); + args[n] = value; + return 0; +} +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_VectorcallBuilder_AddArgStr; + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); +} +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + PyObject *pyKey = PyUnicode_FromString(key); + if (!pyKey) return -1; + return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); +} +#else // CYTHON_VECTORCALL +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return PyDict_SetItem(builder, key, value); +} +#endif + /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -19321,17 +20267,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(int) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(int) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(int) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -19339,31 +20285,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(int), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -19373,7 +20326,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { } /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -19385,17 +20338,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(long) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(long) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(long) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -19403,31 +20356,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -19437,23 +20397,46 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } /* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 static __Pyx_TypeName -__Pyx_PyType_GetName(PyTypeObject* tp) +__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) { - PyObject *name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_n_s_name_2); - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { - PyErr_Clear(); - Py_XDECREF(name); - name = __Pyx_NewRef(__pyx_kp_s__9); + PyObject *module = NULL, *name = NULL, *result = NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_qualname); + #else + name = PyType_GetQualName(tp); + #endif + if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; + module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_module_3); + if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; + if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { + result = name; + name = NULL; + goto done; } - return name; + result = PyUnicode_FromFormat("%U.%U", module, name); + if (unlikely(result == NULL)) goto bad; + done: + Py_XDECREF(name); + Py_XDECREF(module); + return result; + bad: + PyErr_Clear(); + if (name) { + result = name; + name = NULL; + } else { + result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__4); + } + goto done; } #endif /* CIntFromPy */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -19463,277 +20446,354 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(long) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (long) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + long val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (long) -1; + val = __Pyx_PyLong_As_long(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(long) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(long) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(long) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) + if ((sizeof(long) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + long val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (long) -1; + assert(PyLong_CheckExact(v)); } { - long val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { + Py_DECREF(v); + return (long) -1; } + is_negative = result == 1; + } + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = v; + } + v = NULL; + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((long) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); #endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (long) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (long) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - is_negative = result == 1; - } + if (unlikely(ret)) + return (long) -1; + return val; + } +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to long"); + return (long) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to long"); + return (long) -1; +} + +/* PyObjectCall2Args */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args[3] = {NULL, arg1, arg2}; + return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +} + +/* PyObjectCallMethod1 */ +#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000) +static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { + PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); + Py_DECREF(method); + return result; +} #endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (long) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (long) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { +#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + PyObject *args[2] = {obj, arg}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_Call2Args; + return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else + PyObject *method = NULL, *result; + int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); + if (likely(is_method)) { + result = __Pyx_PyObject_Call2Args(method, obj, arg); + Py_DECREF(method); + return result; + } + if (unlikely(!method)) return NULL; + return __Pyx__PyObject_CallMethod1(method, arg); #endif - Py_DECREF(v); - if (likely(!ret)) - return val; - } - return (long) -1; +} + +/* ReturnWithStopIteration */ +static void __Pyx__ReturnWithStopIteration(PyObject* value, int async); +static CYTHON_INLINE void __Pyx_ReturnWithStopIteration(PyObject* value, int async, int iternext) { + if (value == Py_None) { + if (async || !iternext) + PyErr_SetNone(async ? PyExc_StopAsyncIteration : PyExc_StopIteration); + return; + } + __Pyx__ReturnWithStopIteration(value, async); +} +static void __Pyx__ReturnWithStopIteration(PyObject* value, int async) { +#if CYTHON_COMPILING_IN_CPYTHON + __Pyx_PyThreadState_declare +#endif + PyObject *exc; + PyObject *exc_type = async ? PyExc_StopAsyncIteration : PyExc_StopIteration; +#if CYTHON_COMPILING_IN_CPYTHON + if ((PY_VERSION_HEX >= (0x030C00A6)) || unlikely(PyTuple_Check(value) || PyExceptionInstance_Check(value))) { + if (PY_VERSION_HEX >= (0x030e00A1)) { + exc = __Pyx_PyObject_CallOneArg(exc_type, value); + } else { + PyObject *args_tuple = PyTuple_New(1); + if (unlikely(!args_tuple)) return; + Py_INCREF(value); + PyTuple_SET_ITEM(args_tuple, 0, value); + exc = PyObject_Call(exc_type, args_tuple, NULL); + Py_DECREF(args_tuple); } + if (unlikely(!exc)) return; } else { - long val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (long) -1; - val = __Pyx_PyInt_As_long(tmp); - Py_DECREF(tmp); - return val; + Py_INCREF(value); + exc = value; } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to long"); - return (long) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long) -1; + #if CYTHON_FAST_THREAD_STATE + __Pyx_PyThreadState_assign + #if CYTHON_USE_EXC_INFO_STACK + if (!__pyx_tstate->exc_info->exc_value) + #else + if (!__pyx_tstate->exc_type) + #endif + { + Py_INCREF(exc_type); + __Pyx_ErrRestore(exc_type, exc, NULL); + return; + } + #endif +#else + exc = __Pyx_PyObject_CallOneArg(exc_type, value); + if (unlikely(!exc)) return; +#endif + PyErr_SetObject(exc_type, exc); + Py_DECREF(exc); } /* CoroutineBase */ +#if !CYTHON_COMPILING_IN_LIMITED_API #include -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif #include "internal/pycore_frame.h" #endif -#define __Pyx_Coroutine_Undelegate(gen) Py_CLEAR((gen)->yieldfrom) +#endif // CYTHON_COMPILING_IN_LIMITED_API +static CYTHON_INLINE void +__Pyx_Coroutine_Undelegate(__pyx_CoroutineObject *gen) { +#if CYTHON_USE_AM_SEND + gen->yieldfrom_am_send = NULL; +#endif + Py_CLEAR(gen->yieldfrom); +} static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyObject **pvalue) { PyObject *et, *ev, *tb; PyObject *value = NULL; @@ -19751,20 +20811,35 @@ static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyO Py_INCREF(Py_None); value = Py_None; } -#if PY_VERSION_HEX >= 0x030300A0 else if (likely(__Pyx_IS_TYPE(ev, (PyTypeObject*)PyExc_StopIteration))) { + #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL + value = PyObject_GetAttr(ev, __pyx_mstate_global->__pyx_n_u_value); + if (unlikely(!value)) goto limited_api_failure; + #else value = ((PyStopIterationObject *)ev)->value; Py_INCREF(value); + #endif Py_DECREF(ev); } -#endif else if (unlikely(PyTuple_Check(ev))) { - if (PyTuple_GET_SIZE(ev) >= 1) { + Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(ev); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(tuple_size < 0)) { + Py_XDECREF(tb); + Py_DECREF(ev); + Py_DECREF(et); + return -1; + } + #endif + if (tuple_size >= 1) { #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS value = PyTuple_GET_ITEM(ev, 0); Py_INCREF(value); -#else +#elif CYTHON_ASSUME_SAFE_MACROS value = PySequence_ITEM(ev, 0); +#else + value = PySequence_GetItem(ev, 0); + if (!value) goto limited_api_failure; #endif } else { Py_INCREF(Py_None); @@ -19792,27 +20867,35 @@ static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyO } Py_XDECREF(tb); Py_DECREF(et); -#if PY_VERSION_HEX >= 0x030300A0 +#if CYTHON_COMPILING_IN_LIMITED_API + value = PyObject_GetAttr(ev, __pyx_mstate_global->__pyx_n_u_value); +#else value = ((PyStopIterationObject *)ev)->value; Py_INCREF(value); +#endif Py_DECREF(ev); -#else - { - PyObject* args = __Pyx_PyObject_GetAttrStr(ev, __pyx_n_s_args); - Py_DECREF(ev); - if (likely(args)) { - value = PySequence_GetItem(args, 0); - Py_DECREF(args); - } - if (unlikely(!value)) { - __Pyx_ErrRestore(NULL, NULL, NULL); - Py_INCREF(Py_None); - value = Py_None; - } - } +#if CYTHON_COMPILING_IN_LIMITED_API + if (unlikely(!value)) return -1; #endif *pvalue = value; return 0; +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL || !CYTHON_ASSUME_SAFE_MACROS + limited_api_failure: + Py_XDECREF(et); + Py_XDECREF(tb); + Py_XDECREF(ev); + return -1; +#endif +} +static CYTHON_INLINE +__Pyx_PySendResult __Pyx_Coroutine_status_from_result(PyObject **retval) { + if (*retval) { + return PYGEN_NEXT; + } else if (likely(__Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, retval) == 0)) { + return PYGEN_RETURN; + } else { + return PYGEN_ERROR; + } } static CYTHON_INLINE void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *exc_state) { @@ -19849,26 +20932,7 @@ static void __Pyx__Coroutine_AlreadyRunningError(__pyx_CoroutineObject *gen) { } PyErr_SetString(PyExc_ValueError, msg); } -#define __Pyx_Coroutine_NotStartedError(gen) (__Pyx__Coroutine_NotStartedError(gen), (PyObject*)NULL) -static void __Pyx__Coroutine_NotStartedError(PyObject *gen) { - const char *msg; - CYTHON_MAYBE_UNUSED_VAR(gen); - if ((0)) { - #ifdef __Pyx_Coroutine_USED - } else if (__Pyx_Coroutine_Check(gen)) { - msg = "can't send non-None value to a just-started coroutine"; - #endif - #ifdef __Pyx_AsyncGen_USED - } else if (__Pyx_AsyncGen_CheckExact(gen)) { - msg = "can't send non-None value to a just-started async generator"; - #endif - } else { - msg = "can't send non-None value to a just-started generator"; - } - PyErr_SetString(PyExc_TypeError, msg); -} -#define __Pyx_Coroutine_AlreadyTerminatedError(gen, value, closing) (__Pyx__Coroutine_AlreadyTerminatedError(gen, value, closing), (PyObject*)NULL) -static void __Pyx__Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *value, int closing) { +static void __Pyx_Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *value, int closing) { CYTHON_MAYBE_UNUSED_VAR(gen); CYTHON_MAYBE_UNUSED_VAR(closing); #ifdef __Pyx_Coroutine_USED @@ -19879,26 +20943,22 @@ static void __Pyx__Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *val if (value) { #ifdef __Pyx_AsyncGen_USED if (__Pyx_AsyncGen_CheckExact(gen)) - PyErr_SetNone(__Pyx_PyExc_StopAsyncIteration); + PyErr_SetNone(PyExc_StopAsyncIteration); else #endif PyErr_SetNone(PyExc_StopIteration); } } static -PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, int closing) { +__Pyx_PySendResult __Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, PyObject **result, int closing) { __Pyx_PyThreadState_declare PyThreadState *tstate; __Pyx_ExcInfoStruct *exc_state; PyObject *retval; - assert(!self->is_running); - if (unlikely(self->resume_label == 0)) { - if (unlikely(value && value != Py_None)) { - return __Pyx_Coroutine_NotStartedError((PyObject*)self); - } - } + assert(__Pyx_Coroutine_get_is_running(self)); // Callers should ensure is_running if (unlikely(self->resume_label == -1)) { - return __Pyx_Coroutine_AlreadyTerminatedError((PyObject*)self, value, closing); + __Pyx_Coroutine_AlreadyTerminatedError((PyObject*)self, value, closing); + return PYGEN_ERROR; } #if CYTHON_FAST_THREAD_STATE __Pyx_PyThreadState_assign @@ -19908,7 +20968,7 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i #endif exc_state = &self->gi_exc_state; if (exc_state->exc_value) { - #if CYTHON_COMPILING_IN_PYPY + #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY #else PyObject *exc_tb; #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON @@ -19945,19 +21005,21 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i __Pyx_ExceptionSave(&exc_state->exc_type, &exc_state->exc_value, &exc_state->exc_traceback); } #endif - self->is_running = 1; retval = self->body(self, tstate, value); - self->is_running = 0; #if CYTHON_USE_EXC_INFO_STACK exc_state = &self->gi_exc_state; tstate->exc_info = exc_state->previous_item; exc_state->previous_item = NULL; __Pyx_Coroutine_ResetFrameBackpointer(exc_state); #endif - return retval; + *result = retval; + if (self->resume_label == -1) { + return likely(retval) ? PYGEN_RETURN : PYGEN_ERROR; + } + return PYGEN_NEXT; } static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state) { -#if CYTHON_COMPILING_IN_PYPY +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED_VAR(exc_state); #else PyObject *exc_tb; @@ -19977,24 +21039,22 @@ static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStr } #endif } -static CYTHON_INLINE -PyObject *__Pyx_Coroutine_MethodReturn(PyObject* gen, PyObject *retval) { +#define __Pyx_Coroutine_MethodReturnFromResult(gen, result, retval, iternext)\ + ((result) == PYGEN_NEXT ? (retval) : __Pyx__Coroutine_MethodReturnFromResult(gen, result, retval, iternext)) +static PyObject * +__Pyx__Coroutine_MethodReturnFromResult(PyObject* gen, __Pyx_PySendResult result, PyObject *retval, int iternext) { CYTHON_MAYBE_UNUSED_VAR(gen); - if (unlikely(!retval)) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (!__Pyx_PyErr_Occurred()) { - PyObject *exc = PyExc_StopIteration; - #ifdef __Pyx_AsyncGen_USED - if (__Pyx_AsyncGen_CheckExact(gen)) - exc = __Pyx_PyExc_StopAsyncIteration; - #endif - __Pyx_PyErr_SetNone(exc); - } + if (likely(result == PYGEN_RETURN)) { + int is_async = 0; + #ifdef __Pyx_AsyncGen_USED + is_async = __Pyx_AsyncGen_CheckExact(gen); + #endif + __Pyx_ReturnWithStopIteration(retval, is_async, iternext); + Py_XDECREF(retval); } - return retval; + return NULL; } -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) +#if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) { #if PY_VERSION_HEX <= 0x030A00A1 @@ -20031,25 +21091,58 @@ PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) { #endif } #endif -static CYTHON_INLINE -PyObject *__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen) { - PyObject *ret; +static CYTHON_INLINE __Pyx_PySendResult +__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen, PyObject** retval) { + __Pyx_PySendResult result; PyObject *val = NULL; + assert(__Pyx_Coroutine_get_is_running(gen)); __Pyx_Coroutine_Undelegate(gen); __Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, &val); - ret = __Pyx_Coroutine_SendEx(gen, val, 0); + result = __Pyx_Coroutine_SendEx(gen, val, retval, 0); Py_XDECREF(val); - return ret; + return result; } +#if CYTHON_USE_AM_SEND +static __Pyx_PySendResult +__Pyx_Coroutine_SendToDelegate(__pyx_CoroutineObject *gen, __Pyx_pyiter_sendfunc gen_am_send, PyObject *value, PyObject **retval) { + PyObject *ret = NULL; + __Pyx_PySendResult delegate_result, result; + assert(__Pyx_Coroutine_get_is_running(gen)); + delegate_result = gen_am_send(gen->yieldfrom, value, &ret); + if (delegate_result == PYGEN_NEXT) { + assert (ret != NULL); + *retval = ret; + return PYGEN_NEXT; + } + assert (delegate_result != PYGEN_ERROR || ret == NULL); + __Pyx_Coroutine_Undelegate(gen); + result = __Pyx_Coroutine_SendEx(gen, ret, retval, 0); + Py_XDECREF(ret); + return result; +} +#endif static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) { - PyObject *retval; + PyObject *retval = NULL; + __Pyx_PySendResult result = __Pyx_Coroutine_AmSend(self, value, &retval); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 0); +} +static __Pyx_PySendResult +__Pyx_Coroutine_AmSend(PyObject *self, PyObject *value, PyObject **retval) { + __Pyx_PySendResult result; __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self; - PyObject *yf = gen->yieldfrom; - if (unlikely(gen->is_running)) - return __Pyx_Coroutine_AlreadyRunningError(gen); - if (yf) { + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { + *retval = __Pyx_Coroutine_AlreadyRunningError(gen); + return PYGEN_ERROR; + } + #if CYTHON_USE_AM_SEND + if (gen->yieldfrom_am_send) { + result = __Pyx_Coroutine_SendToDelegate(gen, gen->yieldfrom_am_send, value, retval); + } else + #endif + if (gen->yieldfrom) { + PyObject *yf = gen->yieldfrom; PyObject *ret; - gen->is_running = 1; + #if !CYTHON_USE_AM_SEND #ifdef __Pyx_Generator_USED if (__Pyx_Generator_CheckExact(yf)) { ret = __Pyx_Coroutine_Send(yf, value); @@ -20065,66 +21158,67 @@ static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) { ret = __Pyx_async_gen_asend_send(yf, value); } else #endif - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) + #if CYTHON_COMPILING_IN_CPYTHON if (PyGen_CheckExact(yf)) { ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value); } else - #endif - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03050000 && defined(PyCoro_CheckExact) && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) if (PyCoro_CheckExact(yf)) { ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value); } else #endif + #endif { - if (value == Py_None) - ret = __Pyx_PyObject_GetIterNextFunc(yf)(yf); + #if !CYTHON_COMPILING_IN_LIMITED_API || __PYX_LIMITED_VERSION_HEX >= 0x03080000 + if (value == Py_None && PyIter_Check(yf)) + ret = __Pyx_PyIter_Next_Plain(yf); else - ret = __Pyx_PyObject_CallMethod1(yf, __pyx_n_s_send, value); + #endif + ret = __Pyx_PyObject_CallMethod1(yf, __pyx_mstate_global->__pyx_n_u_send, value); } - gen->is_running = 0; if (likely(ret)) { - return ret; + __Pyx_Coroutine_unset_is_running(gen); + *retval = ret; + return PYGEN_NEXT; } - retval = __Pyx_Coroutine_FinishDelegation(gen); + result = __Pyx_Coroutine_FinishDelegation(gen, retval); } else { - retval = __Pyx_Coroutine_SendEx(gen, value, 0); + result = __Pyx_Coroutine_SendEx(gen, value, retval, 0); } - return __Pyx_Coroutine_MethodReturn(self, retval); + __Pyx_Coroutine_unset_is_running(gen); + return result; } static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) { + __Pyx_PySendResult result; PyObject *retval = NULL; - int err = 0; + CYTHON_UNUSED_VAR(gen); + assert(__Pyx_Coroutine_get_is_running(gen)); #ifdef __Pyx_Generator_USED if (__Pyx_Generator_CheckExact(yf)) { - retval = __Pyx_Coroutine_Close(yf); - if (!retval) - return -1; + result = __Pyx_Coroutine_Close(yf, &retval); } else #endif #ifdef __Pyx_Coroutine_USED if (__Pyx_Coroutine_Check(yf)) { - retval = __Pyx_Coroutine_Close(yf); - if (!retval) - return -1; + result = __Pyx_Coroutine_Close(yf, &retval); } else if (__Pyx_CoroutineAwait_CheckExact(yf)) { - retval = __Pyx_CoroutineAwait_Close((__pyx_CoroutineAwaitObject*)yf, NULL); - if (!retval) - return -1; + result = __Pyx_CoroutineAwait_Close((__pyx_CoroutineAwaitObject*)yf); } else #endif #ifdef __Pyx_AsyncGen_USED if (__pyx_PyAsyncGenASend_CheckExact(yf)) { retval = __Pyx_async_gen_asend_close(yf, NULL); + result = PYGEN_RETURN; } else if (__pyx_PyAsyncGenAThrow_CheckExact(yf)) { retval = __Pyx_async_gen_athrow_close(yf, NULL); + result = PYGEN_RETURN; } else #endif { PyObject *meth; - gen->is_running = 1; - meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_n_s_close); + result = PYGEN_RETURN; + meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_mstate_global->__pyx_n_u_close); if (unlikely(!meth)) { if (unlikely(PyErr_Occurred())) { PyErr_WriteUnraisable(yf); @@ -20132,57 +21226,77 @@ static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) { } else { retval = __Pyx_PyObject_CallNoArg(meth); Py_DECREF(meth); - if (unlikely(!retval)) - err = -1; + if (unlikely(!retval)) { + result = PYGEN_ERROR; + } } - gen->is_running = 0; } Py_XDECREF(retval); - return err; + return result == PYGEN_ERROR ? -1 : 0; } static PyObject *__Pyx_Generator_Next(PyObject *self) { + __Pyx_PySendResult result; + PyObject *retval = NULL; __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self; - PyObject *yf = gen->yieldfrom; - if (unlikely(gen->is_running)) + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { return __Pyx_Coroutine_AlreadyRunningError(gen); - if (yf) { + } + #if CYTHON_USE_AM_SEND + if (gen->yieldfrom_am_send) { + result = __Pyx_Coroutine_SendToDelegate(gen, gen->yieldfrom_am_send, Py_None, &retval); + } else + #endif + if (gen->yieldfrom) { + PyObject *yf = gen->yieldfrom; PyObject *ret; - gen->is_running = 1; #ifdef __Pyx_Generator_USED if (__Pyx_Generator_CheckExact(yf)) { ret = __Pyx_Generator_Next(yf); } else #endif - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) - if (PyGen_CheckExact(yf)) { - ret = __Pyx_PyGen_Send((PyGenObject*)yf, NULL); - } else - #endif #ifdef __Pyx_Coroutine_USED - if (__Pyx_Coroutine_Check(yf)) { + if (__Pyx_Coroutine_CheckExact(yf)) { ret = __Pyx_Coroutine_Send(yf, Py_None); } else #endif - ret = __Pyx_PyObject_GetIterNextFunc(yf)(yf); - gen->is_running = 0; + #if CYTHON_COMPILING_IN_CPYTHON && (PY_VERSION_HEX < 0x030A00A3 || !CYTHON_USE_AM_SEND) + if (PyGen_CheckExact(yf)) { + ret = __Pyx_PyGen_Send((PyGenObject*)yf, NULL); + } else + #endif + ret = __Pyx_PyIter_Next_Plain(yf); if (likely(ret)) { + __Pyx_Coroutine_unset_is_running(gen); return ret; } - return __Pyx_Coroutine_FinishDelegation(gen); + result = __Pyx_Coroutine_FinishDelegation(gen, &retval); + } else { + result = __Pyx_Coroutine_SendEx(gen, Py_None, &retval, 0); } - return __Pyx_Coroutine_SendEx(gen, Py_None, 0); + __Pyx_Coroutine_unset_is_running(gen); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 1); } static PyObject *__Pyx_Coroutine_Close_Method(PyObject *self, PyObject *arg) { + PyObject *retval = NULL; + __Pyx_PySendResult result; CYTHON_UNUSED_VAR(arg); - return __Pyx_Coroutine_Close(self); + result = __Pyx_Coroutine_Close(self, &retval); + if (unlikely(result == PYGEN_ERROR)) + return NULL; + Py_XDECREF(retval); + Py_RETURN_NONE; } -static PyObject *__Pyx_Coroutine_Close(PyObject *self) { +static __Pyx_PySendResult +__Pyx_Coroutine_Close(PyObject *self, PyObject **retval) { __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; - PyObject *retval, *raised_exception; - PyObject *yf = gen->yieldfrom; + __Pyx_PySendResult result; + PyObject *yf; int err = 0; - if (unlikely(gen->is_running)) - return __Pyx_Coroutine_AlreadyRunningError(gen); + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { + *retval = __Pyx_Coroutine_AlreadyRunningError(gen); + return PYGEN_ERROR; + } + yf = gen->yieldfrom; if (yf) { Py_INCREF(yf); err = __Pyx_Coroutine_CloseIter(gen, yf); @@ -20191,10 +21305,25 @@ static PyObject *__Pyx_Coroutine_Close(PyObject *self) { } if (err == 0) PyErr_SetNone(PyExc_GeneratorExit); - retval = __Pyx_Coroutine_SendEx(gen, NULL, 1); - if (unlikely(retval)) { + result = __Pyx_Coroutine_SendEx(gen, NULL, retval, 1); + if (result == PYGEN_ERROR) { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_Coroutine_unset_is_running(gen); + if (!__Pyx_PyErr_Occurred()) { + return PYGEN_RETURN; + } else if (likely(__Pyx_PyErr_ExceptionMatches2(PyExc_GeneratorExit, PyExc_StopIteration))) { + __Pyx_PyErr_Clear(); + return PYGEN_RETURN; + } + return PYGEN_ERROR; + } else if (likely(result == PYGEN_RETURN && *retval == Py_None)) { + __Pyx_Coroutine_unset_is_running(gen); + return PYGEN_RETURN; + } else { const char *msg; - Py_DECREF(retval); + Py_DECREF(*retval); + *retval = NULL; if ((0)) { #ifdef __Pyx_Coroutine_USED } else if (__Pyx_Coroutine_Check(self)) { @@ -20202,33 +21331,25 @@ static PyObject *__Pyx_Coroutine_Close(PyObject *self) { #endif #ifdef __Pyx_AsyncGen_USED } else if (__Pyx_AsyncGen_CheckExact(self)) { -#if PY_VERSION_HEX < 0x03060000 - msg = "async generator ignored GeneratorExit - might require Python 3.6+ finalisation (PEP 525)"; -#else msg = "async generator ignored GeneratorExit"; -#endif #endif } else { msg = "generator ignored GeneratorExit"; } PyErr_SetString(PyExc_RuntimeError, msg); - return NULL; - } - raised_exception = PyErr_Occurred(); - if (likely(!raised_exception || __Pyx_PyErr_GivenExceptionMatches2(raised_exception, PyExc_GeneratorExit, PyExc_StopIteration))) { - if (raised_exception) PyErr_Clear(); - Py_INCREF(Py_None); - return Py_None; + __Pyx_Coroutine_unset_is_running(gen); + return PYGEN_ERROR; } - return NULL; } static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject *val, PyObject *tb, PyObject *args, int close_on_genexit) { __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; - PyObject *yf = gen->yieldfrom; - if (unlikely(gen->is_running)) + PyObject *yf; + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) return __Pyx_Coroutine_AlreadyRunningError(gen); + yf = gen->yieldfrom; if (yf) { + __Pyx_PySendResult result; PyObject *ret; Py_INCREF(yf); if (__Pyx_PyErr_GivenExceptionMatches(typ, PyExc_GeneratorExit) && close_on_genexit) { @@ -20236,10 +21357,9 @@ static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject Py_DECREF(yf); __Pyx_Coroutine_Undelegate(gen); if (err < 0) - return __Pyx_Coroutine_MethodReturn(self, __Pyx_Coroutine_SendEx(gen, NULL, 0)); + goto propagate_exception; goto throw_here; } - gen->is_running = 1; if (0 #ifdef __Pyx_Generator_USED || __Pyx_Generator_CheckExact(yf) @@ -20254,15 +21374,14 @@ static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject ret = __Pyx__Coroutine_Throw(((__pyx_CoroutineAwaitObject*)yf)->coroutine, typ, val, tb, args, close_on_genexit); #endif } else { - PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_n_s_throw); + PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_mstate_global->__pyx_n_u_throw); if (unlikely(!meth)) { Py_DECREF(yf); if (unlikely(PyErr_Occurred())) { - gen->is_running = 0; + __Pyx_Coroutine_unset_is_running(gen); return NULL; } __Pyx_Coroutine_Undelegate(gen); - gen->is_running = 0; goto throw_here; } if (likely(args)) { @@ -20273,22 +21392,30 @@ static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject } Py_DECREF(meth); } - gen->is_running = 0; Py_DECREF(yf); - if (!ret) { - ret = __Pyx_Coroutine_FinishDelegation(gen); + if (ret) { + __Pyx_Coroutine_unset_is_running(gen); + return ret; } - return __Pyx_Coroutine_MethodReturn(self, ret); + result = __Pyx_Coroutine_FinishDelegation(gen, &ret); + __Pyx_Coroutine_unset_is_running(gen); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, ret, 0); } throw_here: __Pyx_Raise(typ, val, tb, NULL); - return __Pyx_Coroutine_MethodReturn(self, __Pyx_Coroutine_SendEx(gen, NULL, 0)); +propagate_exception: + { + PyObject *retval = NULL; + __Pyx_PySendResult result = __Pyx_Coroutine_SendEx(gen, NULL, &retval, 0); + __Pyx_Coroutine_unset_is_running(gen); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 0); + } } static PyObject *__Pyx_Coroutine_Throw(PyObject *self, PyObject *args) { PyObject *typ; PyObject *val = NULL; PyObject *tb = NULL; - if (unlikely(!PyArg_UnpackTuple(args, (char *)"throw", 1, 3, &typ, &val, &tb))) + if (unlikely(!PyArg_UnpackTuple(args, "throw", 1, 3, &typ, &val, &tb))) return NULL; return __Pyx__Coroutine_Throw(self, typ, val, tb, args, 1); } @@ -20303,6 +21430,10 @@ static CYTHON_INLINE int __Pyx_Coroutine_traverse_excstate(__Pyx_ExcInfoStruct * return 0; } static int __Pyx_Coroutine_traverse(__pyx_CoroutineObject *gen, visitproc visit, void *arg) { + { + int e = __Pyx_call_type_traverse((PyObject*)gen, 1, visit, arg); + if (e) return e; + } Py_VISIT(gen->closure); Py_VISIT(gen->classobj); Py_VISIT(gen->yieldfrom); @@ -20312,7 +21443,7 @@ static int __Pyx_Coroutine_clear(PyObject *self) { __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; Py_CLEAR(gen->closure); Py_CLEAR(gen->classobj); - Py_CLEAR(gen->yieldfrom); + __Pyx_Coroutine_Undelegate(gen); __Pyx_Coroutine_ExceptionClear(&gen->gi_exc_state); #ifdef __Pyx_AsyncGen_USED if (__Pyx_AsyncGen_CheckExact(self)) { @@ -20333,10 +21464,13 @@ static void __Pyx_Coroutine_dealloc(PyObject *self) { PyObject_ClearWeakRefs(self); if (gen->resume_label >= 0) { PyObject_GC_Track(self); -#if PY_VERSION_HEX >= 0x030400a1 && CYTHON_USE_TP_FINALIZE +#if CYTHON_USE_TP_FINALIZE if (unlikely(PyObject_CallFinalizerFromDealloc(self))) #else - Py_TYPE(gen)->tp_del(self); + { + destructor del = __Pyx_PyObject_GetSlot(gen, tp_del, destructor); + if (del) del(self); + } if (unlikely(Py_REFCNT(self) > 0)) #endif { @@ -20355,6 +21489,7 @@ static void __Pyx_Coroutine_dealloc(PyObject *self) { __Pyx_Coroutine_clear(self); __Pyx_PyHeapTypeObject_GC_Del(gen); } +#if CYTHON_USE_TP_FINALIZE static void __Pyx_Coroutine_del(PyObject *self) { PyObject *error_type, *error_value, *error_traceback; __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; @@ -20362,10 +21497,6 @@ static void __Pyx_Coroutine_del(PyObject *self) { if (gen->resume_label < 0) { return; } -#if !CYTHON_USE_TP_FINALIZE - assert(self->ob_refcnt == 0); - __Pyx_SET_REFCNT(self, 1); -#endif __Pyx_PyThreadState_assign __Pyx_ErrFetch(&error_type, &error_value, &error_traceback); #ifdef __Pyx_AsyncGen_USED @@ -20391,66 +21522,23 @@ static void __Pyx_Coroutine_del(PyObject *self) { #endif { PyObject_GC_UnTrack(self); -#if PY_MAJOR_VERSION >= 3 || defined(PyErr_WarnFormat) if (unlikely(PyErr_WarnFormat(PyExc_RuntimeWarning, 1, "coroutine '%.50S' was never awaited", gen->gi_qualname) < 0)) PyErr_WriteUnraisable(self); -#else - {PyObject *msg; - char *cmsg; - #if CYTHON_COMPILING_IN_PYPY - msg = NULL; - cmsg = (char*) "coroutine was never awaited"; - #else - char *cname; - PyObject *qualname; - qualname = gen->gi_qualname; - cname = PyString_AS_STRING(qualname); - msg = PyString_FromFormat("coroutine '%.50s' was never awaited", cname); - if (unlikely(!msg)) { - PyErr_Clear(); - cmsg = (char*) "coroutine was never awaited"; - } else { - cmsg = PyString_AS_STRING(msg); - } - #endif - if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, cmsg, 1) < 0)) - PyErr_WriteUnraisable(self); - Py_XDECREF(msg);} -#endif PyObject_GC_Track(self); } #endif } else { - PyObject *res = __Pyx_Coroutine_Close(self); - if (unlikely(!res)) { - if (PyErr_Occurred()) - PyErr_WriteUnraisable(self); + PyObject *retval = NULL; + __Pyx_PySendResult result = __Pyx_Coroutine_Close(self, &retval); + if (result == PYGEN_ERROR) { + PyErr_WriteUnraisable(self); } else { - Py_DECREF(res); + Py_XDECREF(retval); } } __Pyx_ErrRestore(error_type, error_value, error_traceback); -#if !CYTHON_USE_TP_FINALIZE - assert(Py_REFCNT(self) > 0); - if (likely(--self->ob_refcnt == 0)) { - return; - } - { - Py_ssize_t refcnt = Py_REFCNT(self); - _Py_NewReference(self); - __Pyx_SET_REFCNT(self, refcnt); - } -#if CYTHON_COMPILING_IN_CPYTHON - assert(PyType_IS_GC(Py_TYPE(self)) && - _Py_AS_GC(self)->gc.gc_refs != _PyGC_REFS_UNTRACKED); - _Py_DEC_REFTOTAL; -#endif -#ifdef COUNT_ALLOCS - --Py_TYPE(self)->tp_frees; - --Py_TYPE(self)->tp_allocs; -#endif -#endif } +#endif static PyObject * __Pyx_Coroutine_get_name(__pyx_CoroutineObject *self, void *context) { @@ -20464,12 +21552,7 @@ static int __Pyx_Coroutine_set_name(__pyx_CoroutineObject *self, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__name__ must be set to a string object"); return -1; @@ -20491,12 +21574,7 @@ static int __Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__qualname__ must be set to a string object"); return -1; @@ -20506,26 +21584,53 @@ __Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value, void return 0; } static PyObject * -__Pyx_Coroutine_get_frame(__pyx_CoroutineObject *self, void *context) +__Pyx__Coroutine_get_frame(__pyx_CoroutineObject *self) { - PyObject *frame = self->gi_frame; - CYTHON_UNUSED_VAR(context); +#if !CYTHON_COMPILING_IN_LIMITED_API + PyObject *frame; + #if PY_VERSION_HEX >= 0x030d0000 + Py_BEGIN_CRITICAL_SECTION(self); + #endif + frame = self->gi_frame; if (!frame) { if (unlikely(!self->gi_code)) { Py_RETURN_NONE; } + PyObject *globals = PyDict_New(); + if (unlikely(!globals)) return NULL; frame = (PyObject *) PyFrame_New( PyThreadState_Get(), /*PyThreadState *tstate,*/ (PyCodeObject*) self->gi_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ + globals, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); + Py_DECREF(globals); if (unlikely(!frame)) return NULL; - self->gi_frame = frame; + if (unlikely(self->gi_frame)) { + Py_DECREF(frame); + frame = self->gi_frame; + } else { + self->gi_frame = frame; + } } Py_INCREF(frame); + #if PY_VERSION_HEX >= 0x030d0000 + Py_END_CRITICAL_SECTION(); + #endif return frame; +#else + CYTHON_UNUSED_VAR(self); + Py_RETURN_NONE; +#endif +} +static PyObject * +__Pyx_Coroutine_get_frame(__pyx_CoroutineObject *self, void *context) { + CYTHON_UNUSED_VAR(context); + PyObject *frame = self->gi_frame; + if (frame) + return __Pyx_NewRef(frame); + return __Pyx__Coroutine_get_frame(self); } static __pyx_CoroutineObject *__Pyx__Coroutine_New( PyTypeObject* type, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure, @@ -20545,7 +21650,8 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit( gen->resume_label = 0; gen->classobj = NULL; gen->yieldfrom = NULL; - #if PY_VERSION_HEX >= 0x030B00a4 + gen->yieldfrom_am_send = NULL; + #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_LIMITED_API gen->gi_exc_state.exc_value = NULL; #else gen->gi_exc_state.exc_type = NULL; @@ -20568,135 +21674,95 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit( PyObject_GC_Track(gen); return gen; } - -/* PatchModuleWithCoroutine */ -static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code) { -#if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - int result; - PyObject *globals, *result_obj; - globals = PyDict_New(); if (unlikely(!globals)) goto ignore; - result = PyDict_SetItemString(globals, "_cython_coroutine_type", - #ifdef __Pyx_Coroutine_USED - (PyObject*)__pyx_CoroutineType); - #else - Py_None); +static char __Pyx_Coroutine_test_and_set_is_running(__pyx_CoroutineObject *gen) { + char result; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(gen); #endif - if (unlikely(result < 0)) goto ignore; - result = PyDict_SetItemString(globals, "_cython_generator_type", - #ifdef __Pyx_Generator_USED - (PyObject*)__pyx_GeneratorType); - #else - Py_None); + result = gen->is_running; + gen->is_running = 1; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); #endif - if (unlikely(result < 0)) goto ignore; - if (unlikely(PyDict_SetItemString(globals, "_module", module) < 0)) goto ignore; - if (unlikely(PyDict_SetItemString(globals, "__builtins__", __pyx_b) < 0)) goto ignore; - result_obj = PyRun_String(py_code, Py_file_input, globals, globals); - if (unlikely(!result_obj)) goto ignore; - Py_DECREF(result_obj); - Py_DECREF(globals); - return module; -ignore: - Py_XDECREF(globals); - PyErr_WriteUnraisable(module); - if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, "Cython module failed to patch module with custom type", 1) < 0)) { - Py_DECREF(module); - module = NULL; - } -#else - py_code++; -#endif - return module; + return result; } - -/* PatchGeneratorABC */ -#ifndef CYTHON_REGISTER_ABCS -#define CYTHON_REGISTER_ABCS 1 -#endif -#if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) -static PyObject* __Pyx_patch_abc_module(PyObject *module); -static PyObject* __Pyx_patch_abc_module(PyObject *module) { - module = __Pyx_Coroutine_patch_module( - module, "" -"if _cython_generator_type is not None:\n" -" try: Generator = _module.Generator\n" -" except AttributeError: pass\n" -" else: Generator.register(_cython_generator_type)\n" -"if _cython_coroutine_type is not None:\n" -" try: Coroutine = _module.Coroutine\n" -" except AttributeError: pass\n" -" else: Coroutine.register(_cython_coroutine_type)\n" - ); - return module; +static void __Pyx_Coroutine_unset_is_running(__pyx_CoroutineObject *gen) { + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(gen); + #endif + assert(gen->is_running); + gen->is_running = 0; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); + #endif } -#endif -static int __Pyx_patch_abc(void) { -#if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - static int abc_patched = 0; - if (CYTHON_REGISTER_ABCS && !abc_patched) { - PyObject *module; - module = PyImport_ImportModule((PY_MAJOR_VERSION >= 3) ? "collections.abc" : "collections"); - if (unlikely(!module)) { - PyErr_WriteUnraisable(NULL); - if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, - ((PY_MAJOR_VERSION >= 3) ? - "Cython module failed to register with collections.abc module" : - "Cython module failed to register with collections module"), 1) < 0)) { - return -1; - } - } else { - module = __Pyx_patch_abc_module(module); - abc_patched = 1; - if (unlikely(!module)) - return -1; - Py_DECREF(module); - } - module = PyImport_ImportModule("backports_abc"); - if (module) { - module = __Pyx_patch_abc_module(module); - Py_XDECREF(module); - } - if (!module) { - PyErr_Clear(); - } +static char __Pyx_Coroutine_get_is_running(__pyx_CoroutineObject *gen) { + char result; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(gen); + #endif + result = gen->is_running; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); + #endif + return result; +} +static PyObject *__Pyx_Coroutine_get_is_running_getter(PyObject *gen, void *closure) { + CYTHON_UNUSED_VAR(closure); + char result = __Pyx_Coroutine_get_is_running((__pyx_CoroutineObject*)gen); + if (result) Py_RETURN_TRUE; + else Py_RETURN_FALSE; +} +#if __PYX_HAS_PY_AM_SEND == 2 +static void __Pyx_SetBackportTypeAmSend(PyTypeObject *type, __Pyx_PyAsyncMethodsStruct *static_amsend_methods, __Pyx_pyiter_sendfunc am_send) { + Py_ssize_t ptr_offset = (char*)(type->tp_as_async) - (char*)type; + if (ptr_offset < 0 || ptr_offset > type->tp_basicsize) { + return; } -#else - if ((0)) __Pyx_Coroutine_patch_module(NULL, NULL); + memcpy((void*)static_amsend_methods, (void*)(type->tp_as_async), sizeof(*type->tp_as_async)); + static_amsend_methods->am_send = am_send; + type->tp_as_async = __Pyx_SlotTpAsAsync(static_amsend_methods); +} #endif - return 0; +static PyObject *__Pyx_Coroutine_fail_reduce_ex(PyObject *self, PyObject *arg) { + CYTHON_UNUSED_VAR(arg); + __Pyx_TypeName self_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE((PyObject*)self)); + PyErr_Format(PyExc_TypeError, "cannot pickle '" __Pyx_FMT_TYPENAME "' object", + self_type_name); + __Pyx_DECREF_TypeName(self_type_name); + return NULL; } /* Generator */ static PyMethodDef __pyx_Generator_methods[] = { {"send", (PyCFunction) __Pyx_Coroutine_Send, METH_O, - (char*) PyDoc_STR("send(arg) -> send 'arg' into generator,\nreturn next yielded value or raise StopIteration.")}, + PyDoc_STR("send(arg) -> send 'arg' into generator,\nreturn next yielded value or raise StopIteration.")}, {"throw", (PyCFunction) __Pyx_Coroutine_Throw, METH_VARARGS, - (char*) PyDoc_STR("throw(typ[,val[,tb]]) -> raise exception in generator,\nreturn next yielded value or raise StopIteration.")}, + PyDoc_STR("throw(typ[,val[,tb]]) -> raise exception in generator,\nreturn next yielded value or raise StopIteration.")}, {"close", (PyCFunction) __Pyx_Coroutine_Close_Method, METH_NOARGS, - (char*) PyDoc_STR("close() -> raise GeneratorExit inside generator.")}, + PyDoc_STR("close() -> raise GeneratorExit inside generator.")}, + {"__reduce_ex__", (PyCFunction) __Pyx_Coroutine_fail_reduce_ex, METH_O, 0}, + {"__reduce__", (PyCFunction) __Pyx_Coroutine_fail_reduce_ex, METH_NOARGS, 0}, {0, 0, 0, 0} }; -static PyMemberDef __pyx_Generator_memberlist[] = { - {(char *) "gi_running", T_BOOL, offsetof(__pyx_CoroutineObject, is_running), READONLY, NULL}, - {(char*) "gi_yieldfrom", T_OBJECT, offsetof(__pyx_CoroutineObject, yieldfrom), READONLY, - (char*) PyDoc_STR("object being iterated by 'yield from', or None")}, - {(char*) "gi_code", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_code), READONLY, NULL}, - {(char *) "__module__", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_modulename), 0, 0}, -#if CYTHON_USE_TYPE_SPECS - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CoroutineObject, gi_weakreflist), READONLY, 0}, -#endif +static PyMemberDef __pyx_Generator_memberlist[] = { + {"gi_yieldfrom", T_OBJECT, offsetof(__pyx_CoroutineObject, yieldfrom), READONLY, + PyDoc_STR("object being iterated by 'yield from', or None")}, + {"gi_code", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_code), READONLY, NULL}, + {"__module__", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_modulename), 0, 0}, + {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CoroutineObject, gi_weakreflist), READONLY, 0}, {0, 0, 0, 0, 0} }; static PyGetSetDef __pyx_Generator_getsets[] = { - {(char *) "__name__", (getter)__Pyx_Coroutine_get_name, (setter)__Pyx_Coroutine_set_name, - (char*) PyDoc_STR("name of the generator"), 0}, - {(char *) "__qualname__", (getter)__Pyx_Coroutine_get_qualname, (setter)__Pyx_Coroutine_set_qualname, - (char*) PyDoc_STR("qualified name of the generator"), 0}, - {(char *) "gi_frame", (getter)__Pyx_Coroutine_get_frame, NULL, - (char*) PyDoc_STR("Frame of the generator"), 0}, + {"__name__", (getter)__Pyx_Coroutine_get_name, (setter)__Pyx_Coroutine_set_name, + PyDoc_STR("name of the generator"), 0}, + {"__qualname__", (getter)__Pyx_Coroutine_get_qualname, (setter)__Pyx_Coroutine_set_qualname, + PyDoc_STR("qualified name of the generator"), 0}, + {"gi_frame", (getter)__Pyx_Coroutine_get_frame, NULL, + PyDoc_STR("Frame of the generator"), 0}, + {"gi_running", __Pyx_Coroutine_get_is_running_getter, NULL, NULL, NULL}, {0, 0, 0, 0, 0} }; -#if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_GeneratorType_slots[] = { {Py_tp_dealloc, (void *)__Pyx_Coroutine_dealloc}, {Py_tp_traverse, (void *)__Pyx_Coroutine_traverse}, @@ -20705,9 +21771,12 @@ static PyType_Slot __pyx_GeneratorType_slots[] = { {Py_tp_methods, (void *)__pyx_Generator_methods}, {Py_tp_members, (void *)__pyx_Generator_memberlist}, {Py_tp_getset, (void *)__pyx_Generator_getsets}, - {Py_tp_getattro, (void *) __Pyx_PyObject_GenericGetAttrNoDict}, + {Py_tp_getattro, (void *) PyObject_GenericGetAttr}, #if CYTHON_USE_TP_FINALIZE {Py_tp_finalize, (void *)__Pyx_Coroutine_del}, +#endif +#if __PYX_HAS_PY_AM_SEND == 1 + {Py_am_send, (void *)__Pyx_Coroutine_AmSend}, #endif {0, 0}, }; @@ -20715,121 +21784,72 @@ static PyType_Spec __pyx_GeneratorType_spec = { __PYX_TYPE_MODULE_PREFIX "generator", sizeof(__pyx_CoroutineObject), 0, - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE, - __pyx_GeneratorType_slots -}; -#else -static PyTypeObject __pyx_GeneratorType_type = { - PyVarObject_HEAD_INIT(0, 0) - __PYX_TYPE_MODULE_PREFIX "generator", - sizeof(__pyx_CoroutineObject), - 0, - (destructor) __Pyx_Coroutine_dealloc, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE, - 0, - (traverseproc) __Pyx_Coroutine_traverse, - 0, - 0, - offsetof(__pyx_CoroutineObject, gi_weakreflist), - 0, - (iternextfunc) __Pyx_Generator_Next, - __pyx_Generator_methods, - __pyx_Generator_memberlist, - __pyx_Generator_getsets, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, -#if CYTHON_USE_TP_FINALIZE - 0, -#else - __Pyx_Coroutine_del, -#endif - 0, -#if CYTHON_USE_TP_FINALIZE - __Pyx_Coroutine_del, -#elif PY_VERSION_HEX >= 0x030400a1 - 0, -#endif -#if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, -#endif -#if __PYX_NEED_TP_PRINT_SLOT - 0, -#endif -#if PY_VERSION_HEX >= 0x030C0000 - 0, -#endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | #endif + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE | __Pyx_TPFLAGS_HAVE_AM_SEND, + __pyx_GeneratorType_slots }; +#if __PYX_HAS_PY_AM_SEND == 2 +static __Pyx_PyAsyncMethodsStruct __pyx_Generator_as_async; #endif static int __pyx_Generator_init(PyObject *module) { -#if CYTHON_USE_TYPE_SPECS - __pyx_GeneratorType = __Pyx_FetchCommonTypeFromSpec(module, &__pyx_GeneratorType_spec, NULL); -#else - CYTHON_UNUSED_VAR(module); - __pyx_GeneratorType_type.tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - __pyx_GeneratorType_type.tp_iter = PyObject_SelfIter; - __pyx_GeneratorType = __Pyx_FetchCommonType(&__pyx_GeneratorType_type); -#endif - if (unlikely(!__pyx_GeneratorType)) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + mstate->__pyx_GeneratorType = __Pyx_FetchCommonTypeFromSpec( + mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_GeneratorType_spec, NULL); + if (unlikely(!mstate->__pyx_GeneratorType)) { return -1; } +#if __PYX_HAS_PY_AM_SEND == 2 + __Pyx_SetBackportTypeAmSend(mstate->__pyx_GeneratorType, &__pyx_Generator_as_async, &__Pyx_Coroutine_AmSend); +#endif return 0; } +static PyObject *__Pyx_Generator_GetInlinedResult(PyObject *self) { + __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self; + PyObject *retval = NULL; + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { + return __Pyx_Coroutine_AlreadyRunningError(gen); + } + __Pyx_PySendResult result = __Pyx_Coroutine_SendEx(gen, Py_None, &retval, 0); + __Pyx_Coroutine_unset_is_running(gen); + (void) result; + assert (result == PYGEN_RETURN || result == PYGEN_ERROR); + assert ((result == PYGEN_RETURN && retval != NULL) || (result == PYGEN_ERROR && retval == NULL)); + return retval; +} -/* CheckBinaryVersion */ +/* GetRuntimeVersion */ static unsigned long __Pyx_get_runtime_version(void) { -#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4 +#if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 return Py_Version & ~0xFFUL; #else - const char* rt_version = Py_GetVersion(); - unsigned long version = 0; - unsigned long factor = 0x01000000UL; - unsigned int digit = 0; - int i = 0; - while (factor) { - while ('0' <= rt_version[i] && rt_version[i] <= '9') { - digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + static unsigned long __Pyx_cached_runtime_version = 0; + if (__Pyx_cached_runtime_version == 0) { + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; + } + version += factor * digit; + if (rt_version[i] != '.') + break; + digit = 0; + factor >>= 8; ++i; } - version += factor * digit; - if (rt_version[i] != '.') - break; - digit = 0; - factor >>= 8; - ++i; + __Pyx_cached_runtime_version = version; } - return version; + return __Pyx_cached_runtime_version; #endif } + +/* CheckBinaryVersion */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { const unsigned long MAJOR_MINOR = 0xFFFF0000UL; if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) @@ -20860,14 +21880,14 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s void (*fp)(void); void *p; } tmp; - d = PyObject_GetAttrString(__pyx_m, (char *)"__pyx_capi__"); + d = PyObject_GetAttrString(__pyx_m, "__pyx_capi__"); if (!d) { PyErr_Clear(); d = PyDict_New(); if (!d) goto bad; Py_INCREF(d); - if (PyModule_AddObject(__pyx_m, (char *)"__pyx_capi__", d) < 0) + if (PyModule_AddObject(__pyx_m, "__pyx_capi__", d) < 0) goto bad; } tmp.fp = f; @@ -20885,45 +21905,165 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s return -1; } -/* InitStrings */ -#if PY_MAJOR_VERSION >= 3 -static int __Pyx_InitString(__Pyx_StringTabEntry t, PyObject **str) { - if (t.is_unicode | t.is_str) { - if (t.intern) { - *str = PyUnicode_InternFromString(t.s); - } else if (t.encoding) { - *str = PyUnicode_Decode(t.s, t.n - 1, t.encoding, NULL); +/* NewCodeObj */ +#if CYTHON_COMPILING_IN_LIMITED_API + static PyObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; + PyObject *type, *value, *traceback; + PyErr_Fetch(&type, &value, &traceback); + #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); } else { - *str = PyUnicode_FromStringAndSize(t.s, t.n - 1); + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - } else { - *str = PyBytes_FromStringAndSize(t.s, t.n - 1); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); + if (type) { + PyErr_Restore(type, value, traceback); + } + return result; } - if (!*str) - return -1; - if (PyObject_Hash(*str) == -1) - return -1; - return 0; -} +#elif PY_VERSION_HEX >= 0x030B0000 + static PyCodeObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes); + return result; + } +#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#else + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #endif -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION >= 3 - __Pyx_InitString(*t, t->p); - #else +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +) { + PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL, *line_table_bytes = NULL; + Py_ssize_t var_count = (Py_ssize_t) descr.nlocals; + PyObject *varnames_tuple = PyTuple_New(var_count); + if (unlikely(!varnames_tuple)) return NULL; + for (Py_ssize_t i=0; i < var_count; i++) { + Py_INCREF(varnames[i]); + if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0)) goto done; + } + #if CYTHON_COMPILING_IN_LIMITED_API + varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple); + if (!varnames_tuple_dedup) { + if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0)) goto done; + varnames_tuple_dedup = varnames_tuple; + } + #else + varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple); + if (unlikely(!varnames_tuple_dedup)) goto done; + #endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(varnames_tuple_dedup); + #endif + if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL + && !CYTHON_COMPILING_IN_GRAAL) { + line_table_bytes = PyBytes_FromStringAndSize(line_table, descr.line_table_length); + if (unlikely(!line_table_bytes)) goto done; + Py_ssize_t code_len = (descr.line_table_length * 2 + 4) & ~3; + code_bytes = PyBytes_FromStringAndSize(NULL, code_len); + if (unlikely(!code_bytes)) goto done; + char* c_code_bytes = PyBytes_AsString(code_bytes); + if (unlikely(!c_code_bytes)) goto done; + memset(c_code_bytes, 0, (size_t) code_len); + } + code_obj = (PyObject*) __Pyx__PyCode_New( + (int) descr.argcount, + (int) descr.num_posonly_args, + (int) descr.num_kwonly_args, + (int) descr.nlocals, + 0, + (int) descr.flags, + code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + varnames_tuple_dedup, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + filename, + funcname, + (int) descr.first_line, + (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table_bytes) ? line_table_bytes : __pyx_mstate_global->__pyx_empty_bytes + ); +done: + Py_XDECREF(code_bytes); + Py_XDECREF(line_table_bytes); + #if CYTHON_AVOID_BORROWED_REFS + Py_XDECREF(varnames_tuple_dedup); + #endif + Py_DECREF(varnames_tuple); + return code_obj; +} + +/* InitStrings */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names) { + while (t->s) { + PyObject *str; if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); + if (t->intern) { + str = PyUnicode_InternFromString(t->s); + } else if (t->encoding) { + str = PyUnicode_Decode(t->s, t->n - 1, encoding_names[t->encoding], NULL); + } else { + str = PyUnicode_FromStringAndSize(t->s, t->n - 1); + } } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); + str = PyBytes_FromStringAndSize(t->s, t->n - 1); } - if (!*t->p) + if (!str) return -1; - if (PyObject_Hash(*t->p) == -1) + *target = str; + if (PyObject_Hash(str) == -1) return -1; - #endif ++t; + ++target; } return 0; } @@ -20951,31 +22091,30 @@ static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; return __Pyx_PyObject_AsStringAndSize(o, &ignore); } -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#if !CYTHON_PEP393_ENABLED -static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - char* defenc_c; - PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); - if (!defenc) return NULL; - defenc_c = PyBytes_AS_STRING(defenc); -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API { - char* end = defenc_c + PyBytes_GET_SIZE(defenc); - char* c; - for (c = defenc_c; c < end; c++) { - if ((unsigned char) (*c) >= 128) { - PyUnicode_AsASCIIString(o); - return NULL; - } + const char* result; + Py_ssize_t unicode_length; + CYTHON_MAYBE_UNUSED_VAR(unicode_length); // only for __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #if __PYX_LIMITED_VERSION_HEX < 0x030A0000 + if (unlikely(PyArg_Parse(o, "s#", &result, length) < 0)) return NULL; + #else + result = PyUnicode_AsUTF8AndSize(o, length); + #endif + #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + unicode_length = PyUnicode_GetLength(o); + if (unlikely(unicode_length < 0)) return NULL; + if (unlikely(unicode_length != *length)) { + PyUnicode_AsASCIIString(o); + return NULL; } + #endif + return result; } -#endif - *length = PyBytes_GET_SIZE(defenc); - return defenc_c; -} #else -static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII if (likely(PyUnicode_IS_ASCII(o))) { *length = PyUnicode_GET_LENGTH(o); @@ -20987,25 +22126,25 @@ static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py #else return PyUnicode_AsUTF8AndSize(o, length); #endif -} #endif +} #endif static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT - if ( -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - __Pyx_sys_getdefaultencoding_not_ascii && -#endif - PyUnicode_Check(o)) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + if (PyUnicode_Check(o)) { return __Pyx_PyUnicode_AsStringAndSize(o, length); } else #endif -#if (!CYTHON_COMPILING_IN_PYPY && !CYTHON_COMPILING_IN_LIMITED_API) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) if (PyByteArray_Check(o)) { +#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))) *length = PyByteArray_GET_SIZE(o); return PyByteArray_AS_STRING(o); - } else +#else + *length = PyByteArray_Size(o); + if (*length == -1) return NULL; + return PyByteArray_AsString(o); #endif + } else { char* result; int r = PyBytes_AsStringAndSize(o, &result, length); @@ -21028,9 +22167,8 @@ static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { Py_DECREF(x); return retval; } -static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { - __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); -#if PY_MAJOR_VERSION >= 3 +static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) { + __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result)); if (PyLong_Check(result)) { if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, "__int__ returned non-int (type " __Pyx_FMT_TYPENAME "). " @@ -21044,74 +22182,44 @@ static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const __Pyx_DECREF_TypeName(result_type_name); return result; } -#endif PyErr_Format(PyExc_TypeError, - "__%.4s__ returned non-%.4s (type " __Pyx_FMT_TYPENAME ")", - type_name, type_name, result_type_name); + "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ")", + result_type_name); __Pyx_DECREF_TypeName(result_type_name); Py_DECREF(result); return NULL; } -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) { #if CYTHON_USE_TYPE_SLOTS PyNumberMethods *m; #endif - const char *name = NULL; PyObject *res = NULL; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x) || PyLong_Check(x))) -#else if (likely(PyLong_Check(x))) -#endif - return __Pyx_NewRef(x); + return __Pyx_NewRef(x); #if CYTHON_USE_TYPE_SLOTS m = Py_TYPE(x)->tp_as_number; - #if PY_MAJOR_VERSION < 3 - if (m && m->nb_int) { - name = "int"; - res = m->nb_int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = m->nb_long(x); - } - #else if (likely(m && m->nb_int)) { - name = "int"; - res = m->nb_int(x); + res = m->nb_int(x); } - #endif #else if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { - res = PyNumber_Int(x); + res = PyNumber_Long(x); } #endif if (likely(res)) { -#if PY_MAJOR_VERSION < 3 - if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { -#else - if (unlikely(!PyLong_CheckExact(res))) { -#endif - return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); - } + if (unlikely(!PyLong_CheckExact(res))) { + return __Pyx_PyNumber_LongWrongResultType(res); + } } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); + PyErr_SetString(PyExc_TypeError, + "an integer is required"); } return res; } static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; PyObject *x; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(b))) { - if (sizeof(Py_ssize_t) >= sizeof(long)) - return PyInt_AS_LONG(b); - else - return PyInt_AsSsize_t(b); - } -#endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS if (likely(__Pyx_PyLong_IsCompact(b))) { @@ -21157,35 +22265,350 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { } x = PyNumber_Index(b); if (!x) return -1; - ival = PyInt_AsSsize_t(x); + ival = PyLong_AsSsize_t(x); Py_DECREF(x); return ival; } static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) { if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) { return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o); -#if PY_MAJOR_VERSION < 3 - } else if (likely(PyInt_CheckExact(o))) { - return PyInt_AS_LONG(o); -#endif } else { Py_ssize_t ival; PyObject *x; x = PyNumber_Index(o); if (!x) return -1; - ival = PyInt_AsLong(x); + ival = PyLong_AsLong(x); Py_DECREF(x); return ival; } } +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b) { + CYTHON_UNUSED_VAR(b); + return __Pyx_NewRef(Py_None); +} static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); } -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { - return PyInt_FromSize_t(ival); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t ival) { + return PyLong_FromSize_t(ival); } +/* MultiPhaseInitModuleState */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000) + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1 +#else + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0 +#endif +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS +#error "Module state with PEP489 requires atomics. Currently that's one of\ + C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics" +#endif +#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#define __Pyx_ModuleStateLookup_Lock() +#define __Pyx_ModuleStateLookup_Unlock() +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000 +static PyMutex __Pyx_ModuleStateLookup_mutex = {0}; +#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(__cplusplus) && __cplusplus >= 201103L +#include +static std::mutex __Pyx_ModuleStateLookup_mutex; +#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock() +#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock() +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__) +#include +static mtx_t __Pyx_ModuleStateLookup_mutex; +static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT; +static void __Pyx_ModuleStateLookup_initialize_mutex(void) { + mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain); +} +#define __Pyx_ModuleStateLookup_Lock()\ + call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\ + mtx_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(HAVE_PTHREAD_H) +#include +static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER; +#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(_WIN32) +#include // synchapi.h on its own doesn't work +static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT; +#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#else +#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\ + Requires C standard >= C11, or C++ standard >= C++11,\ + or pthreads, or the Windows 32 API, or Python >= 3.13." +#endif +typedef struct { + int64_t id; + PyObject *module; +} __Pyx_InterpreterIdAndModule; +typedef struct { + char interpreter_id_as_index; + Py_ssize_t count; + Py_ssize_t allocated; + __Pyx_InterpreterIdAndModule table[1]; +} __Pyx_ModuleStateLookupData; +#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32 +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0; +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0; +#else +static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL; +#endif +static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound( + __Pyx_InterpreterIdAndModule* table, + Py_ssize_t count, + int64_t interpreterId) { + __Pyx_InterpreterIdAndModule* begin = table; + __Pyx_InterpreterIdAndModule* end = begin + count; + if (begin->id == interpreterId) { + return begin; + } + while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2; + if (halfway->id == interpreterId) { + return halfway; + } + if (halfway->id < interpreterId) { + begin = halfway; + } else { + end = halfway; + } + } + for (; begin < end; ++begin) { + if (begin->id >= interpreterId) return begin; + } + return begin; +} +static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return NULL; +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + { + __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + if (likely(data)) { + __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data); + if (likely(data == new_data)) { + goto read_finished; + } + } + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + __Pyx_ModuleStateLookup_Lock(); + __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter); + data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + __Pyx_ModuleStateLookup_Unlock(); + } + read_finished:; +#else + __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_InterpreterIdAndModule* found = NULL; + if (unlikely(!data)) goto end; + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + found = data->table+interpreter_id; + } + } else { + found = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + } + end: + { + PyObject *result=NULL; + if (found && found->id == interpreter_id) { + result = found->module; + } +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); +#endif + return result; + } +} +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static void __Pyx_ModuleStateLookup_wait_until_no_readers(void) { + while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0); +} +#else +#define __Pyx_ModuleStateLookup_wait_until_no_readers() +#endif +static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) { + Py_ssize_t to_allocate = (*old_data)->allocated; + while (to_allocate <= interpreter_id) { + if (to_allocate == 0) to_allocate = 1; + else to_allocate *= 2; + } + __Pyx_ModuleStateLookupData *new_data = *old_data; + if (to_allocate != (*old_data)->allocated) { + new_data = (__Pyx_ModuleStateLookupData *)realloc( + *old_data, + sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + PyErr_NoMemory(); + return -1; + } + for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) { + new_data->table[i].id = i; + new_data->table[i].module = NULL; + } + new_data->allocated = to_allocate; + } + new_data->table[interpreter_id].module = module; + if (new_data->count < interpreter_id+1) { + new_data->count = interpreter_id+1; + } + *old_data = new_data; + return 0; +} +static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) { + __Pyx_InterpreterIdAndModule *read = data->table; + __Pyx_InterpreterIdAndModule *write = data->table; + __Pyx_InterpreterIdAndModule *end = read + data->count; + for (; readmodule) { + write->id = read->id; + write->module = read->module; + ++write; + } + } + data->count = write - data->table; + for (; writeid = 0; + write->module = NULL; + } + data->interpreter_id_as_index = 0; +} +static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + int result = 0; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_ModuleStateLookupData *new_data = old_data; + if (!new_data) { + new_data = (__Pyx_ModuleStateLookupData *)calloc(1, sizeof(__Pyx_ModuleStateLookupData)); + if (!new_data) { + result = -1; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = 1; + new_data->interpreter_id_as_index = 1; + } + __Pyx_ModuleStateLookup_wait_until_no_readers(); + if (new_data->interpreter_id_as_index) { + if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id); + goto end; + } + __Pyx_State_ConvertFromInterpIdAsIndex(new_data); + } + { + Py_ssize_t insert_at = 0; + { + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + new_data->table, new_data->count, interpreter_id); + assert(lower_bound); + insert_at = lower_bound - new_data->table; + if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) { + lower_bound->module = module; + goto end; // already in table, nothing more to do + } + } + if (new_data->count+1 >= new_data->allocated) { + Py_ssize_t to_allocate = (new_data->count+1)*2; + new_data = + (__Pyx_ModuleStateLookupData*)realloc( + new_data, + sizeof(__Pyx_ModuleStateLookupData) + + (to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + result = -1; + new_data = old_data; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = to_allocate; + } + ++new_data->count; + int64_t last_id = interpreter_id; + PyObject *last_module = module; + for (Py_ssize_t i=insert_at; icount; ++i) { + int64_t current_id = new_data->table[i].id; + new_data->table[i].id = last_id; + last_id = current_id; + PyObject *current_module = new_data->table[i].module; + new_data->table[i].module = last_module; + last_module = current_module; + } + } + end: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data); +#else + __Pyx_ModuleStateLookup_data = new_data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return result; +} +static int __Pyx_State_RemoveModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data; +#endif + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + data->table[interpreter_id].module = NULL; + } + goto done; + } + { + __Pyx_ModuleStateLookup_wait_until_no_readers(); + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + if (!lower_bound) goto done; + if (lower_bound->id != interpreter_id) goto done; + __Pyx_InterpreterIdAndModule *end = data->table+data->count; + for (;lower_boundid = (lower_bound+1)->id; + lower_bound->module = (lower_bound+1)->module; + } + } + --data->count; + if (data->count == 0) { + free(data); + data = NULL; + } + done: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data); +#else + __Pyx_ModuleStateLookup_data = data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return 0; +} +#endif + /* #### Code section: utility_code_pragmas_end ### */ #ifdef _MSC_VER #pragma warning( pop ) diff --git a/src/hunter/_event.pxd b/src/hunter/_event.pxd index 0810593..77489a9 100644 --- a/src/hunter/_event.pxd +++ b/src/hunter/_event.pxd @@ -5,8 +5,7 @@ from ._tracer cimport * cdef extern from *: - void PyFrame_FastToLocals(FrameType) - int PyFrame_GetLineNumber(FrameType) + int PyFrame_GetLineNumber(PyFrameObject *frame) @cython.final diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index 014cee7..6689426 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -115,7 +115,7 @@ cdef class Event: cdef int position if self._instruction is UNSET: - position = PyFrame_GetLasti(self.frame) + position = PyFrame_GetLasti( self.frame) co_code = PyCode_GetCode(self.code_getter()) if co_code and position >= 0: self._instruction = co_code[position] @@ -159,8 +159,7 @@ cdef class Event: if self.builtin: self._locals = {} else: - PyFrame_FastToLocals(self.frame) - self._locals = PyFrame_GetLocals(self.frame) + self._locals = PyFrame_GetLocals( self.frame) return self._locals @property @@ -172,7 +171,7 @@ cdef class Event: if self.builtin: self._locals = {} else: - self._globals = PyFrame_GetGlobals(self.frame) + self._globals = PyFrame_GetGlobals( self.frame) return self._globals @property @@ -265,7 +264,7 @@ cdef class Event: cdef inline lineno_getter(self): if self._lineno is UNSET: - self._lineno = PyFrame_GetLineNumber(self.frame) + self._lineno = PyFrame_GetLineNumber( self.frame) return self._lineno @property @@ -274,7 +273,7 @@ cdef class Event: cdef inline CodeType code_getter(self): if self._code is UNSET: - return PyFrame_GetCode(self.frame) + return PyFrame_GetCode( self.frame) else: return self._code diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index fe50de6..74aac3d 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.10 */ +/* Generated by Cython 3.1.2 */ /* BEGIN: Cython Metadata { @@ -21,32 +21,21 @@ END: Cython Metadata */ #ifndef PY_SSIZE_T_CLEAN #define PY_SSIZE_T_CLEAN #endif /* PY_SSIZE_T_CLEAN */ -#if defined(CYTHON_LIMITED_API) && 0 - #ifndef Py_LIMITED_API - #if CYTHON_LIMITED_API+0 > 0x03030000 - #define Py_LIMITED_API CYTHON_LIMITED_API - #else - #define Py_LIMITED_API 0x03030000 - #endif - #endif +/* InitLimitedAPI */ +#if defined(Py_LIMITED_API) && !defined(CYTHON_LIMITED_API) + #define CYTHON_LIMITED_API 1 #endif #include "Python.h" #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) - #error Cython requires Python 2.7+ or Python 3.3+. -#else -#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API -#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#elif PY_VERSION_HEX < 0x03080000 + #error Cython requires Python 3.8+. #else -#define __PYX_EXTRA_ABI_MODULE_NAME "" -#endif -#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME -#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI -#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x03000AF0 +#define __PYX_ABI_VERSION "3_1_2" +#define CYTHON_HEX_VERSION 0x030102F0 #define CYTHON_FUTURE_DIVISION 1 +/* CModulePreamble */ #include #ifndef offsetof #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) @@ -86,19 +75,13 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 1 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 #undef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -109,8 +92,12 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -122,18 +109,22 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #undef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #undef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 + #define CYTHON_USE_EXC_INFO_STACK 1 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif @@ -144,20 +135,14 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 + #define CYTHON_USE_TYPE_SLOTS 1 #ifndef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -168,8 +153,13 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -181,7 +171,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #if PY_VERSION_HEX < 0x03090000 #undef CYTHON_PEP489_MULTI_PHASE_INIT @@ -191,14 +181,19 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00) + #endif + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100) #endif #undef CYTHON_USE_FREELISTS #define CYTHON_USE_FREELISTS 0 @@ -211,7 +206,7 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_CLINE_IN_TRACEBACK #define CYTHON_CLINE_IN_TRACEBACK 0 #undef CYTHON_USE_TYPE_SLOTS @@ -220,8 +215,6 @@ END: Cython Metadata */ #define CYTHON_USE_TYPE_SPECS 1 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -234,8 +227,13 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -243,71 +241,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_GIL #define CYTHON_FAST_GIL 0 #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #undef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 1 - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #endif - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 1 - #ifndef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #ifndef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #endif - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #ifndef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif - #ifndef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #endif - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 1 - #endif + #define CYTHON_METH_FASTCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS @@ -319,26 +253,37 @@ END: Cython Metadata */ #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 + #endif + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000) #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 - #endif - #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 - #ifndef CYTHON_USE_TYPE_SLOTS + #ifdef Py_GIL_DISABLED + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1 + #else + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 + #endif + #if PY_VERSION_HEX < 0x030A0000 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #elif !defined(CYTHON_USE_TYPE_SLOTS) #define CYTHON_USE_TYPE_SLOTS 1 #endif #ifndef CYTHON_USE_TYPE_SPECS @@ -347,22 +292,19 @@ END: Cython Metadata */ #ifndef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 1 #endif - #if PY_MAJOR_VERSION < 3 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #ifndef CYTHON_USE_PYLONG_INTERNALS #define CYTHON_USE_PYLONG_INTERNALS 1 #endif - #ifndef CYTHON_USE_PYLIST_INTERNALS + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLIST_INTERNALS) #define CYTHON_USE_PYLIST_INTERNALS 1 #endif #ifndef CYTHON_USE_UNICODE_INTERNALS #define CYTHON_USE_UNICODE_INTERNALS 1 #endif - #if PY_VERSION_HEX < 0x030300F0 || PY_VERSION_HEX >= 0x030B00A2 + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2 #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 #elif !defined(CYTHON_USE_UNICODE_WRITER) @@ -371,20 +313,32 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 + #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS) + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #ifndef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 1 #endif + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #ifndef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 1 #endif #ifndef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 1 #endif - #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #elif !defined(CYTHON_FAST_GIL) + #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) + #define CYTHON_METH_FASTCALL 1 #endif #ifndef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 1 @@ -392,51 +346,49 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif - #if PY_VERSION_HEX < 0x030400a1 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #elif !defined(CYTHON_USE_TP_FINALIZE) + #ifndef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1) + #endif + #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif - #if PY_VERSION_HEX < 0x030600B1 + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 1 + #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #elif !defined(CYTHON_USE_DICT_VERSIONS) - #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5) + #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE) #endif - #if PY_VERSION_HEX < 0x030700A3 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #elif !defined(CYTHON_USE_EXC_INFO_STACK) + #ifndef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 1 #endif #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 1 + #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING) #endif #endif -#if !defined(CYTHON_FAST_PYCCALL) -#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#ifndef CYTHON_FAST_PYCCALL +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCALL #endif -#if !defined(CYTHON_VECTORCALL) +#ifndef CYTHON_VECTORCALL +#if CYTHON_COMPILING_IN_LIMITED_API +#define CYTHON_VECTORCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) +#else #define CYTHON_VECTORCALL (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1) #endif +#endif #define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1) #if CYTHON_USE_PYLONG_INTERNALS - #if PY_MAJOR_VERSION < 3 - #include "longintrepr.h" - #endif #undef SHIFT #undef BASE #undef MASK @@ -496,7 +448,7 @@ END: Cython Metadata */ #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x) #endif #ifndef CYTHON_NCP_UNUSED -# if CYTHON_COMPILING_IN_CPYTHON +# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING # define CYTHON_NCP_UNUSED # else # define CYTHON_NCP_UNUSED CYTHON_UNUSED @@ -571,6 +523,9 @@ END: Cython Metadata */ #endif #endif #endif +#ifndef Py_UNREACHABLE + #define Py_UNREACHABLE() assert(0); abort() +#endif #ifdef __cplusplus template struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; @@ -585,6 +540,7 @@ END: Cython Metadata */ #endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) +/* CInitCode */ #ifndef CYTHON_INLINE #if defined(__clang__) #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) @@ -599,109 +555,42 @@ END: Cython Metadata */ #endif #endif +/* PythonCompatibility */ #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" - #define __Pyx_DefaultClassType PyClass_Type - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" - #define __Pyx_DefaultClassType PyType_Type +#define __Pyx_BUILTIN_MODULE_NAME "builtins" +#define __Pyx_DefaultClassType PyType_Type #if CYTHON_COMPILING_IN_LIMITED_API - static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyObject *exception_table = NULL; - PyObject *types_module=NULL, *code_type=NULL, *result=NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 - PyObject *version_info; - PyObject *py_minor_version = NULL; - #endif - long minor_version = 0; - PyObject *type, *value, *traceback; - PyErr_Fetch(&type, &value, &traceback); - #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 - minor_version = 11; - #else - if (!(version_info = PySys_GetObject("version_info"))) goto end; - if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; - minor_version = PyLong_AsLong(py_minor_version); - Py_DECREF(py_minor_version); - if (minor_version == -1 && PyErr_Occurred()) goto end; - #endif - if (!(types_module = PyImport_ImportModule("types"))) goto end; - if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; - if (minor_version <= 7) { - (void)p; - result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else if (minor_version <= 10) { - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else { - if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); - } - end: - Py_XDECREF(code_type); - Py_XDECREF(exception_table); - Py_XDECREF(types_module); - if (type) { - PyErr_Restore(type, value, traceback); - } - return result; - } #ifndef CO_OPTIMIZED - #define CO_OPTIMIZED 0x0001 + static int CO_OPTIMIZED; #endif #ifndef CO_NEWLOCALS - #define CO_NEWLOCALS 0x0002 + static int CO_NEWLOCALS; #endif #ifndef CO_VARARGS - #define CO_VARARGS 0x0004 + static int CO_VARARGS; #endif #ifndef CO_VARKEYWORDS - #define CO_VARKEYWORDS 0x0008 + static int CO_VARKEYWORDS; #endif #ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x0200 + static int CO_ASYNC_GENERATOR; #endif #ifndef CO_GENERATOR - #define CO_GENERATOR 0x0020 + static int CO_GENERATOR; #endif #ifndef CO_COROUTINE - #define CO_COROUTINE 0x0080 + static int CO_COROUTINE; #endif -#elif PY_VERSION_HEX >= 0x030B0000 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyCodeObject *result; - PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); - if (!empty_bytes) return NULL; - result = - #if PY_VERSION_HEX >= 0x030C0000 - PyUnstable_Code_NewWithPosOnlyArgs - #else - PyCode_NewWithPosOnlyArgs - #endif - (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); - Py_DECREF(empty_bytes); - return result; - } -#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #else - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x80 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x200 + #endif #endif +static int __Pyx_init_co_variables(void); #if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE) #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type) #else @@ -733,12 +622,6 @@ END: Cython Metadata */ #else #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) #endif -#ifndef CO_COROUTINE - #define CO_COROUTINE 0x80 -#endif -#ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x200 -#endif #ifndef Py_TPFLAGS_CHECKTYPES #define Py_TPFLAGS_CHECKTYPES 0 #endif @@ -760,7 +643,7 @@ END: Cython Metadata */ #ifndef METH_STACKLESS #define METH_STACKLESS 0 #endif -#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) +#ifndef METH_FASTCALL #ifndef METH_FASTCALL #define METH_FASTCALL 0x80 #endif @@ -798,7 +681,7 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_MAJOR_VERSION >= 0x030900B1 +#if PY_VERSION_HEX >= 0x030900B1 #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) #else #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) @@ -815,7 +698,7 @@ static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; } #endif -static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void (*cfunc)(void)) { #if CYTHON_COMPILING_IN_LIMITED_API return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; #else @@ -823,7 +706,7 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #endif } #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) -#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 +#if __PYX_LIMITED_VERSION_HEX < 0x03090000 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -839,8 +722,10 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define PyObject_Realloc(p) PyMem_Realloc(p) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) +#elif CYTHON_COMPILING_IN_GRAAL + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno)) #else #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) @@ -851,15 +736,11 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define __Pyx_PyThreadState_Current PyThreadState_GET() #elif PY_VERSION_HEX >= 0x030d00A1 #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() -#elif PY_VERSION_HEX >= 0x03060000 - #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() -#elif PY_VERSION_HEX >= 0x03000000 - #define __Pyx_PyThreadState_Current PyThreadState_GET() #else - #define __Pyx_PyThreadState_Current _PyThreadState_Current + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #endif -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) +#if CYTHON_USE_MODULE_STATE +static CYTHON_INLINE void *__Pyx__PyModule_GetState(PyObject *op) { void *result; result = PyModule_GetState(op); @@ -867,85 +748,43 @@ static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) Py_FatalError("Couldn't find the module state"); return result; } -#endif -#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE(obj), name, func_ctype) -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) +#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o) #else - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) -#endif -#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) -#include "pythread.h" -#define Py_tss_NEEDS_INIT 0 -typedef int Py_tss_t; -static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { - *key = PyThread_create_key(); - return 0; -} -static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { - Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); - *key = Py_tss_NEEDS_INIT; - return key; -} -static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { - PyObject_Free(key); -} -static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { - return *key != Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { - PyThread_delete_key(*key); - *key = Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { - return PyThread_set_key_value(*key, value); -} -static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { - return PyThread_get_key_value(*key); -} -#endif -#if PY_MAJOR_VERSION < 3 - #if CYTHON_COMPILING_IN_PYPY - #if PYPY_VERSION_NUM < 0x07030600 - #if defined(__cplusplus) && __cplusplus >= 201402L - [[deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")]] - #elif defined(__GNUC__) || defined(__clang__) - __attribute__ ((__deprecated__("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6"))) - #elif defined(_MSC_VER) - __declspec(deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")) - #endif - static CYTHON_INLINE int PyGILState_Check(void) { - return 0; - } - #else // PYPY_VERSION_NUM < 0x07030600 - #endif // PYPY_VERSION_NUM < 0x07030600 - #else - static CYTHON_INLINE int PyGILState_Check(void) { - PyThreadState * tstate = _PyThreadState_Current; - return tstate && (tstate == PyGILState_GetThisThreadState()); - } - #endif +#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) +#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype) +#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype) +#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#if CYTHON_USE_TYPE_SLOTS + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype) + #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL) + #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) +#else + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\ + ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\ + (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\ + __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL) + #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype) + #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype) +#endif +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() #endif -#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) +#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); if (res == NULL) PyErr_Clear(); return res; } -#elif PY_MAJOR_VERSION >= 3 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000) +#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000 #define __Pyx_PyDict_GetItemStrWithError PyDict_GetItemWithError #define __Pyx_PyDict_GetItemStr PyDict_GetItem #else @@ -969,17 +808,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if CYTHON_USE_TYPE_SLOTS #define __Pyx_PyType_GetFlags(tp) (((PyTypeObject *)tp)->tp_flags) #define __Pyx_PyType_HasFeature(type, feature) ((__Pyx_PyType_GetFlags(type) & (feature)) != 0) - #define __Pyx_PyObject_GetIterNextFunc(obj) (Py_TYPE(obj)->tp_iternext) #else #define __Pyx_PyType_GetFlags(tp) (PyType_GetFlags((PyTypeObject *)tp)) #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) - #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) -#else - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) #endif +#define __Pyx_PyObject_GetIterNextFunc(iterator) __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc) #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ PyTypeObject *type = Py_TYPE((PyObject*)obj);\ @@ -991,24 +824,20 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyHeapTypeObject_GC_Del(obj) PyObject_GC_Del(obj) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define CYTHON_PEP393_ENABLED 1 #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GetLength(u)) -#elif PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) - #define CYTHON_PEP393_ENABLED 1 +#else #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_READY(op) (0) #else #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ 0 : _PyUnicode_Ready((PyObject *)(op))) #endif - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) @@ -1024,20 +853,6 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) #endif #endif -#else - #define CYTHON_PEP393_ENABLED 0 - #define PyUnicode_1BYTE_KIND 1 - #define PyUnicode_2BYTE_KIND 2 - #define PyUnicode_4BYTE_KIND 4 - #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) - #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) - #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) - #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) - #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) @@ -1051,8 +866,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if !defined(PyUnicode_DecodeUnicodeEscape) #define PyUnicode_DecodeUnicodeEscape(s, size, errors) PyUnicode_Decode(s, size, "unicode_escape", errors) #endif - #if !defined(PyUnicode_Contains) || (PY_MAJOR_VERSION == 2 && PYPY_VERSION_NUM < 0x07030500) - #undef PyUnicode_Contains + #if !defined(PyUnicode_Contains) #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) #endif #if !defined(PyByteArray_Check) @@ -1062,33 +876,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) #endif #endif -#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) #define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) -#else - #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) -#endif -#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) - #define PyObject_ASCII(o) PyObject_Repr(o) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#ifndef PyObject_Unicode - #define PyObject_Unicode PyObject_Str -#endif -#endif -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) - #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) -#else - #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) - #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) -#endif #if CYTHON_COMPILING_IN_CPYTHON #define __Pyx_PySequence_ListKeepNew(obj)\ (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj)) @@ -1105,28 +893,83 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif +#if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) + #else + #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i) + #endif +#elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i)) + #endif +#else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_NewRef(PyList_GET_ITEM(o, i)) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result) +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyObject_GetItem(dict, key); + if (*result == NULL) { + if (PyErr_ExceptionMatches(PyExc_KeyError)) { + PyErr_Clear(); + return 0; + } + return -1; + } + return 1; +} +#else +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyDict_GetItemWithError(dict, key); + if (*result == NULL) { + return PyErr_Occurred() ? -1 : 0; + } + Py_INCREF(*result); + return 1; +} +#endif +#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST + #define __Pyx_VISIT_CONST(obj) Py_VISIT(obj) +#else + #define __Pyx_VISIT_CONST(obj) +#endif #if CYTHON_ASSUME_SAFE_MACROS #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i) #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i) +#endif +#if CYTHON_ASSUME_SAFE_SIZE #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o) #else - #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) - #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) - #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) - #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o) #endif -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) #else static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { @@ -1135,76 +978,120 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, return module; } #endif -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define __Pyx_Py3Int_Check(op) PyLong_Check(op) - #define __Pyx_Py3Int_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask - #define PyNumber_Int PyNumber_Long -#else - #define __Pyx_Py3Int_Check(op) (PyLong_Check(op) || PyInt_Check(op)) - #define __Pyx_Py3Int_CheckExact(op) (PyLong_CheckExact(op) || PyInt_CheckExact(op)) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif -#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY - #ifndef PyUnicode_InternFromString - #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) - #endif -#endif -#if PY_VERSION_HEX < 0x030200A4 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsHash_t -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsSsize_t -#endif -#if CYTHON_USE_ASYNC_SLOTS - #if PY_VERSION_HEX >= 0x030500B1 - #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods - #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) - #else - #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) - #endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString) + #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) +#endif +#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t +#define __Pyx_PyLong_AsHash_t __Pyx_PyIndex_AsSsize_t +#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000 + #define __Pyx_PySendResult PySendResult +#else + typedef enum { + PYGEN_RETURN = 0, + PYGEN_ERROR = -1, + PYGEN_NEXT = 1, + } __Pyx_PySendResult; +#endif +#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3 + typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result); +#else + #define __Pyx_pyiter_sendfunc sendfunc +#endif +#if !CYTHON_USE_AM_SEND +#define __PYX_HAS_PY_AM_SEND 0 +#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000 +#define __PYX_HAS_PY_AM_SEND 1 #else - #define __Pyx_PyType_AsAsync(obj) NULL +#define __PYX_HAS_PY_AM_SEND 2 // our own backported implementation #endif -#ifndef __Pyx_PyAsyncMethodsStruct +#if __PYX_HAS_PY_AM_SEND < 2 + #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods +#else typedef struct { unaryfunc am_await; unaryfunc am_aiter; unaryfunc am_anext; + __Pyx_pyiter_sendfunc am_send; } __Pyx_PyAsyncMethodsStruct; + #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s)) #endif - -#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) - #if !defined(_USE_MATH_DEFINES) - #define _USE_MATH_DEFINES - #endif +#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0 + #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21) +#else + #define __Pyx_TPFLAGS_HAVE_AM_SEND (0) #endif -#include -#ifdef NAN -#define __PYX_NAN() ((float) NAN) +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyInterpreterState_Get() PyInterpreterState_Get() #else -static CYTHON_INLINE float __PYX_NAN() { - float value; - memset(&value, 0xFF, sizeof(value)); - return value; -} +#define __Pyx_PyInterpreterState_Get() PyThreadState_Get()->interp +#endif +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000 +#ifdef __cplusplus +extern "C" +#endif +PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); +#endif +#if CYTHON_COMPILING_IN_LIMITED_API +static int __Pyx_init_co_variable(PyObject *inspect, const char* name, int *write_to) { + int value; + PyObject *py_value = PyObject_GetAttrString(inspect, name); + if (!py_value) return 0; + value = (int) PyLong_AsLong(py_value); + Py_DECREF(py_value); + *write_to = value; + return value != -1 || !PyErr_Occurred(); +} +static int __Pyx_init_co_variables(void) { + PyObject *inspect; + int result; + inspect = PyImport_ImportModule("inspect"); + result = +#if !defined(CO_OPTIMIZED) + __Pyx_init_co_variable(inspect, "CO_OPTIMIZED", &CO_OPTIMIZED) && +#endif +#if !defined(CO_NEWLOCALS) + __Pyx_init_co_variable(inspect, "CO_NEWLOCALS", &CO_NEWLOCALS) && +#endif +#if !defined(CO_VARARGS) + __Pyx_init_co_variable(inspect, "CO_VARARGS", &CO_VARARGS) && +#endif +#if !defined(CO_VARKEYWORDS) + __Pyx_init_co_variable(inspect, "CO_VARKEYWORDS", &CO_VARKEYWORDS) && +#endif +#if !defined(CO_ASYNC_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) && +#endif +#if !defined(CO_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_GENERATOR", &CO_GENERATOR) && +#endif +#if !defined(CO_COROUTINE) + __Pyx_init_co_variable(inspect, "CO_COROUTINE", &CO_COROUTINE) && +#endif + 1; + Py_DECREF(inspect); + return result ? 0 : -1; +} +#else +static int __Pyx_init_co_variables(void) { + return 0; // It's a limited API-only feature +} +#endif + +/* MathInitCode */ +#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) + #ifndef _USE_MATH_DEFINES + #define _USE_MATH_DEFINES + #endif +#endif +#include +#ifdef NAN +#define __PYX_NAN() ((float) NAN) +#else +static CYTHON_INLINE float __PYX_NAN() { + float value; + memset(&value, 0xFF, sizeof(value)); + return value; +} #endif #if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) #define __Pyx_truncl trunc @@ -1212,8 +1099,17 @@ static CYTHON_INLINE float __PYX_NAN() { #define __Pyx_truncl truncl #endif -#define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } +#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 0 +#endif +#ifndef CYTHON_CLINE_IN_TRACEBACK +#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#endif +#if CYTHON_CLINE_IN_TRACEBACK +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; } +#else +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; } +#endif #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } @@ -1249,12 +1145,8 @@ static CYTHON_INLINE float __PYX_NAN() { #define CYTHON_WITHOUT_ASSERTIONS #endif -typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; - const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; - #define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 #define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) #define __PYX_DEFAULT_STRING_ENCODING "" #define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString #define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize @@ -1297,19 +1189,23 @@ static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); -#if PY_MAJOR_VERSION < 3 - #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#else - #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize -#endif -#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s) +#else + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s) +#endif #define __Pyx_PyObject_AsWritableString(s) ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableSString(s) ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) @@ -1318,32 +1214,44 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) #define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) #define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) -#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef) + return Py_NewRef(obj); +#else + Py_INCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef) + return Py_XNewRef(obj); +#else + Py_XINCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b); static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x); #define __Pyx_PySequence_Tuple(obj)\ (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t); static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #if CYTHON_ASSUME_SAFE_MACROS -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x) #else -#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x) #endif -#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) -#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x)) #define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) -#else -#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) -#endif #if CYTHON_USE_PYLONG_INTERNALS #if PY_VERSION_HEX >= 0x030C00A7 #ifndef _PyLong_SIGN_MASK @@ -1390,81 +1298,12 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) #endif #endif -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII -#include -static int __Pyx_sys_getdefaultencoding_not_ascii; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - PyObject* ascii_chars_u = NULL; - PyObject* ascii_chars_b = NULL; - const char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - if (strcmp(default_encoding_c, "ascii") == 0) { - __Pyx_sys_getdefaultencoding_not_ascii = 0; - } else { - char ascii_chars[128]; - int c; - for (c = 0; c < 128; c++) { - ascii_chars[c] = (char) c; - } - __Pyx_sys_getdefaultencoding_not_ascii = 1; - ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); - if (!ascii_chars_u) goto bad; - ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); - if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { - PyErr_Format( - PyExc_ValueError, - "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", - default_encoding_c); - goto bad; - } - Py_DECREF(ascii_chars_u); - Py_DECREF(ascii_chars_b); - } - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - Py_XDECREF(ascii_chars_u); - Py_XDECREF(ascii_chars_b); - return -1; -} -#endif -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL) #else -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#include -static char* __PYX_DEFAULT_STRING_ENCODING; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); - if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; - strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - return -1; -} -#endif + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #endif @@ -1476,27 +1315,224 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ */ +/* PretendToInitialize */ +#ifdef __cplusplus +#if __cplusplus > 201103L +#include +#endif +template +static void __Pyx_pretend_to_initialize(T* ptr) { +#if __cplusplus > 201103L + if ((std::is_trivially_default_constructible::value)) +#endif + *ptr = T(); + (void)ptr; +} +#else static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } +#endif + #if !CYTHON_USE_MODULE_STATE static PyObject *__pyx_m = NULL; #endif static int __pyx_lineno; static int __pyx_clineno = 0; -static const char * __pyx_cfilenm = __FILE__; +static const char * const __pyx_cfilenm = __FILE__; static const char *__pyx_filename; /* #### Code section: filename_table ### */ -static const char *__pyx_f[] = { - "", +static const char* const __pyx_f[] = { "src/hunter/_predicates.pyx", + "", "src/hunter/_predicates.pxd", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/type.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", "src/hunter/_tracer.pxd", "src/hunter/_event.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ +/* Atomics.proto */ +#include +#ifndef CYTHON_ATOMICS + #define CYTHON_ATOMICS 1 +#endif +#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS +#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __pyx_atomic_int_type int +#define __pyx_nonatomic_int_type int +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__)) + #include +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ + (defined(_MSC_VER) && _MSC_VER >= 1700))) + #include +#endif +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type atomic_int + #define __pyx_atomic_ptr_type atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) atomic_load(value) + #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C atomics" + #endif +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ +\ + (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type std::atomic_int + #define __pyx_atomic_ptr_type std::atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) std::atomic_load(value) + #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C++ atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C++ atomics" + #endif +#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\ + (__GNUC_MINOR__ > 1 ||\ + (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2)))) + #define __pyx_atomic_ptr_type void* + #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1) + #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #warning "Using GNU atomics" + #endif +#elif CYTHON_ATOMICS && defined(_MSC_VER) + #include + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type long + #define __pyx_atomic_ptr_type void* + #undef __pyx_nonatomic_int_type + #define __pyx_nonatomic_int_type long + #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer) + #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1) + #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0) + #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value + #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #pragma message ("Using MSVC atomics") + #endif +#else + #undef CYTHON_ATOMICS + #define CYTHON_ATOMICS 0 + #ifdef __PYX_DEBUG_ATOMICS + #warning "Not using atomics" + #endif +#endif +#if CYTHON_ATOMICS + #define __pyx_add_acquisition_count(memview)\ + __pyx_atomic_incr_relaxed(__pyx_get_slice_count_pointer(memview)) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_atomic_decr_acq_rel(__pyx_get_slice_count_pointer(memview)) +#else + #define __pyx_add_acquisition_count(memview)\ + __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) +#endif + +/* Profile_config.proto */ +#ifndef CYTHON_PROFILE +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + #define CYTHON_PROFILE 0 +#else + #define CYTHON_PROFILE 1 +#endif +#endif +#ifndef CYTHON_TRACE_NOGIL + #define CYTHON_TRACE_NOGIL 0 +#else + #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) + #define CYTHON_TRACE 1 + #endif +#endif +#ifndef CYTHON_TRACE + #define CYTHON_TRACE 0 +#endif +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef enum { + __Pyx_Monitoring_PY_START = 0, + __Pyx_Monitoring_PY_RETURN, + __Pyx_Monitoring_PY_UNWIND, + __Pyx_Monitoring_LINE, + __Pyx_Monitoring_RAISE, + __Pyx_Monitoring_RERAISE, + __Pyx_Monitoring_EXCEPTION_HANDLED, + __Pyx_Monitoring_PY_RESUME, + __Pyx_Monitoring_PY_YIELD, + __Pyx_Monitoring_STOP_ITERATION, + } __Pyx_Monitoring_Event_Index; + static const unsigned char __Pyx_MonitoringEventTypes[] = { + PY_MONITORING_EVENT_PY_START, + PY_MONITORING_EVENT_PY_RETURN, + PY_MONITORING_EVENT_PY_UNWIND, + PY_MONITORING_EVENT_LINE, + PY_MONITORING_EVENT_RAISE, + PY_MONITORING_EVENT_RERAISE, + PY_MONITORING_EVENT_EXCEPTION_HANDLED, + PY_MONITORING_EVENT_PY_RESUME, + PY_MONITORING_EVENT_PY_YIELD, + PY_MONITORING_EVENT_STOP_ITERATION, + }; + #define __Pyx_MonitoringEventTypes_CyFunc_count (sizeof(__Pyx_MonitoringEventTypes) - 3) + #define __Pyx_MonitoringEventTypes_CyGen_count (sizeof(__Pyx_MonitoringEventTypes)) +#endif +#endif + /* NoFastGil.proto */ #define __Pyx_PyGILState_Ensure PyGILState_Ensure #define __Pyx_PyGILState_Release PyGILState_Release @@ -1504,9 +1540,31 @@ static const char *__pyx_f[] = { #define __Pyx_FastGIL_Forget() #define __Pyx_FastGilFuncInit() -/* ForceInitThreads.proto */ -#ifndef __PYX_FORCE_INIT_THREADS - #define __PYX_FORCE_INIT_THREADS 0 +/* IncludeStructmemberH.proto */ +#include + +/* CriticalSections.proto */ +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __Pyx_PyCriticalSection void* +#define __Pyx_PyCriticalSection2 void* +#define __Pyx_PyCriticalSection_Begin1(cs, arg) (void)cs +#define __Pyx_PyCriticalSection_Begin2(cs, arg1, arg2) (void)cs +#define __Pyx_PyCriticalSection_End1(cs) +#define __Pyx_PyCriticalSection_End2(cs) +#else +#define __Pyx_PyCriticalSection PyCriticalSection +#define __Pyx_PyCriticalSection2 PyCriticalSection2 +#define __Pyx_PyCriticalSection_Begin1 PyCriticalSection_Begin +#define __Pyx_PyCriticalSection_Begin2 PyCriticalSection2_Begin +#define __Pyx_PyCriticalSection_End1 PyCriticalSection_End +#define __Pyx_PyCriticalSection_End2 PyCriticalSection2_End +#endif +#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_BEGIN_CRITICAL_SECTION(o) { +#define __Pyx_END_CRITICAL_SECTION() } +#else +#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION +#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION #endif /* #### Code section: numeric_typedefs ### */ @@ -1532,22 +1590,31 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr; struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; +/* "_tracer.pxd":7 + * from cpython.ref cimport PyObject + * + * ctypedef extern FrameType # <<<<<<<<<<<<<< + * + * cdef extern from "vendor/_compat.h": +*/ +typedef PyObject *FrameType; + /* "hunter/_predicates.pyx":37 * ) * * ctypedef object (*Event_getter_typedef)(Event) # <<<<<<<<<<<<<< * cdef inline Event_get_function(Event event): return event.function_getter() * cdef inline Event_get_module(Event event): return event.module_getter() - */ +*/ typedef PyObject *(*__pyx_t_6hunter_11_predicates_Event_getter_typedef)(struct __pyx_obj_6hunter_6_event_Event *); -/* "_tracer.pxd":36 +/* "_tracer.pxd":35 * - * @cython.final - * cdef class Tracer: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Tracer: * cdef: - * readonly object handler - */ +*/ struct __pyx_obj_6hunter_7_tracer_Tracer { PyObject_HEAD PyObject *handler; @@ -1562,17 +1629,17 @@ struct __pyx_obj_6hunter_7_tracer_Tracer { }; -/* "_event.pxd":13 +/* "_event.pxd":11 * - * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Event: * cdef: - * readonly FrameType frame - */ +*/ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; - PyFrameObject *frame; + FrameType frame; PyObject *kind; PyObject *arg; int depth; @@ -1598,13 +1665,13 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "hunter/_predicates.pxd":8 +/* "hunter/_predicates.pxd":7 * - * @cython.final - * cdef class Query: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Query: * cdef: - * readonly tuple query_contains - */ +*/ struct __pyx_obj_6hunter_11_predicates_Query { PyObject_HEAD PyObject *query_contains; @@ -1620,52 +1687,52 @@ struct __pyx_obj_6hunter_11_predicates_Query { }; -/* "hunter/_predicates.pxd":23 +/* "hunter/_predicates.pxd":22 * - * @cython.final - * cdef class And: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class And: * cdef: - * readonly tuple predicates - */ +*/ struct __pyx_obj_6hunter_11_predicates_And { PyObject_HEAD PyObject *predicates; }; -/* "hunter/_predicates.pxd":29 +/* "hunter/_predicates.pxd":28 * - * @cython.final - * cdef class Or: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Or: * cdef: - * readonly tuple predicates - */ +*/ struct __pyx_obj_6hunter_11_predicates_Or { PyObject_HEAD PyObject *predicates; }; -/* "hunter/_predicates.pxd":35 +/* "hunter/_predicates.pxd":34 * - * @cython.final - * cdef class Not: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Not: * cdef: - * readonly object predicate - */ +*/ struct __pyx_obj_6hunter_11_predicates_Not { PyObject_HEAD PyObject *predicate; }; -/* "hunter/_predicates.pxd":41 +/* "hunter/_predicates.pxd":40 * - * @cython.final - * cdef class When: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class When: * cdef: - * readonly object condition - */ +*/ struct __pyx_obj_6hunter_11_predicates_When { PyObject_HEAD PyObject *condition; @@ -1673,13 +1740,13 @@ struct __pyx_obj_6hunter_11_predicates_When { }; -/* "hunter/_predicates.pxd":48 +/* "hunter/_predicates.pxd":47 * - * @cython.final - * cdef class From: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class From: * cdef: - * readonly object condition - */ +*/ struct __pyx_obj_6hunter_11_predicates_From { PyObject_HEAD PyObject *condition; @@ -1690,13 +1757,13 @@ struct __pyx_obj_6hunter_11_predicates_From { }; -/* "hunter/_predicates.pxd":58 +/* "hunter/_predicates.pxd":57 * - * @cython.final - * cdef class Backlog: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Backlog: * cdef: - * readonly object condition - */ +*/ struct __pyx_obj_6hunter_11_predicates_Backlog { PyObject_HEAD PyObject *condition; @@ -1711,13 +1778,13 @@ struct __pyx_obj_6hunter_11_predicates_Backlog { }; -/* "hunter/_predicates.pyx":78 +/* "hunter/_predicates.pyx":77 * - * @cython.final - * cdef class QueryEntry: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class QueryEntry: * cdef Event_getter_typedef getter - * cdef int getter_index - */ +*/ struct __pyx_obj_6hunter_11_predicates_QueryEntry { PyObject_HEAD __pyx_t_6hunter_11_predicates_Event_getter_typedef getter; @@ -1732,7 +1799,7 @@ struct __pyx_obj_6hunter_11_predicates_QueryEntry { * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( * ', '.join([ - */ +*/ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ { PyObject_HEAD PyObject *__pyx_8genexpr1__pyx_v_kind; @@ -1745,16 +1812,13 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ { * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< * for kind, mapping in [ * ('', self.query_eq), - */ +*/ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr { PyObject_HEAD struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_outer_scope; PyObject *__pyx_genexpr_arg_0; PyObject *__pyx_v_key; PyObject *__pyx_v_value; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; - PyObject *(*__pyx_t_2)(PyObject *); }; @@ -1764,7 +1828,7 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr { * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * - */ +*/ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr { PyObject_HEAD PyObject *__pyx_genexpr_arg_0; @@ -1780,13 +1844,11 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr { * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< * ) * - */ +*/ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr { PyObject_HEAD PyObject *__pyx_genexpr_arg_0; PyObject *__pyx_v_p; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; }; @@ -1796,13 +1858,11 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr { * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): - */ +*/ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr { PyObject_HEAD PyObject *__pyx_genexpr_arg_0; PyObject *__pyx_v_p; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; }; @@ -1812,23 +1872,21 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr { * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): - */ +*/ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr { PyObject_HEAD PyObject *__pyx_genexpr_arg_0; PyObject *__pyx_v_p; - PyObject *__pyx_t_0; - Py_ssize_t __pyx_t_1; }; -/* "cfunc.to_py":66 +/* "cfunc.to_py":65 * - * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") # <<<<<<<<<<<<<< + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): - * """wrap(event: 'Event')""" - */ +*/ struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event { PyObject_HEAD PyObject *(*__pyx_v_f)(struct __pyx_obj_6hunter_6_event_Event *); @@ -1836,13 +1894,13 @@ struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__l -/* "_event.pxd":13 +/* "_event.pxd":11 * - * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Event: * cdef: - * readonly FrameType frame - */ +*/ struct __pyx_vtabstruct_6hunter_6_event_Event { PyCodeObject *(*code_getter)(struct __pyx_obj_6hunter_6_event_Event *); @@ -1879,7 +1937,6 @@ static struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtabptr_6hunter_6_ev static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; -#ifdef WITH_THREAD #define __Pyx_RefNannySetupContext(name, acquire_gil)\ if (acquire_gil) {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ @@ -1893,11 +1950,6 @@ static struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtabptr_6hunter_6_ev __Pyx_RefNannyFinishContext();\ PyGILState_Release(__pyx_gilstate_save);\ } -#else - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__)) - #define __Pyx_RefNannyFinishContextNogil() __Pyx_RefNannyFinishContext() -#endif #define __Pyx_RefNannyFinishContextNogil() {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ __Pyx_RefNannyFinishContext();\ @@ -2009,6 +2061,8 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); /* TupleAndListFromArray.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); +#endif +#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); #endif @@ -2023,50 +2077,37 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int /* fastcall.proto */ #if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) #elif CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) -#else - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) -#endif -#if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) - #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) #else - #define __Pyx_Arg_NewRef_VARARGS(arg) arg - #define __Pyx_Arg_XDECREF_VARARGS(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) #endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) #define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) #if CYTHON_METH_FASTCALL - #define __Pyx_Arg_FASTCALL(args, i) args[i] - #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) + #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) + #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) #endif - #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs - to have the same reference counting */ - #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else - #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS + #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS - #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) - #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS -#define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) -#else #define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) +#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) +#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) +#else #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) #endif @@ -2074,54 +2115,311 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); /* ParseKeywords.proto */ -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, - const char* function_name); - -/* RaiseArgTupleInvalid.proto */ -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); - -/* ArgTypeTest.proto */ -#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ - ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ - __Pyx__ArgTypeTest(obj, type, name, exact)) -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); +static CYTHON_INLINE int __Pyx_ParseKeywords( + PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], + PyObject *kwds2, PyObject *values[], + Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs +); + +/* CallCFunction.proto */ +#define __Pyx_CallCFunction(cfunc, self, args)\ + ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) +#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ + ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) +#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ + ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) +#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ + ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) -/* Profile.proto */ -#ifndef CYTHON_PROFILE -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - #define CYTHON_PROFILE 0 -#else - #define CYTHON_PROFILE 1 +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#if !CYTHON_VECTORCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); #endif +#define __Pyx_BUILD_ASSERT_EXPR(cond)\ + (sizeof(char [1 - 2*!(cond)]) - 1) +#ifndef Py_MEMBER_SIZE +#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) #endif -#ifndef CYTHON_TRACE_NOGIL - #define CYTHON_TRACE_NOGIL 0 +#if !CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03080000 + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets() + #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) #else - #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) - #define CYTHON_TRACE 1 - #endif -#endif -#ifndef CYTHON_TRACE - #define CYTHON_TRACE 0 + static size_t __pyx_pyframe_localsplus_offset = 0; + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets()\ + ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ + (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) + #define __Pyx_PyFrame_GetLocalsplus(frame)\ + (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) #endif -#if CYTHON_TRACE - #undef CYTHON_PROFILE_REUSE_FRAME #endif -#ifndef CYTHON_PROFILE_REUSE_FRAME - #define CYTHON_PROFILE_REUSE_FRAME 0 #endif -#if CYTHON_PROFILE || CYTHON_TRACE - #include "compile.h" - #include "frameobject.h" - #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" + +/* PyObjectCall.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); +#else +#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) +#endif + +/* PyObjectCallMethO.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif + +/* PyObjectFastCall.proto */ +#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); + +/* UnpackUnboundCMethod.proto */ +typedef struct { + PyObject *type; + PyObject **method_name; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS + __pyx_atomic_int_type initialized; +#endif + PyCFunction func; + PyObject *method; + int flag; +} __Pyx_CachedCFunction; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { +#if !CYTHON_ATOMICS + return 1; +#else + __pyx_nonatomic_int_type expected = 0; + if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { + return 0; + } + return expected; +#endif +} +static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { +#if CYTHON_ATOMICS + __pyx_atomic_store(&cfunc->initialized, 2); +#endif +} +#else +#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 +#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) +#endif + +/* CallUnboundCMethod2.proto */ +CYTHON_UNUSED +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); +#else +#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) +#endif + +/* RaiseArgTupleInvalid.proto */ +static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, + Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); + +/* ArgTypeTest.proto */ +#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ + ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ + __Pyx__ArgTypeTest(obj, type, name, exact)) +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); + +/* Profile.proto */ +#if CYTHON_TRACE + #undef CYTHON_PROFILE_REUSE_FRAME +#endif +#if CYTHON_USE_MODULE_STATE + #undef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 0 + #undef CYTHON_PROFILE_REUSE_FRAME +#endif +#ifndef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 1 +#endif +#ifndef CYTHON_PROFILE_REUSE_FRAME + #define CYTHON_PROFILE_REUSE_FRAME 0 +#endif +#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) + #define __PYX_MONITORING_ABI_SUFFIX "_mon" +#else + #define __PYX_MONITORING_ABI_SUFFIX +#endif +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef uint64_t __pyx_monitoring_version_type; + #define __Pyx_TraceDeclarationsFunc\ + PyObject *__pyx_frame_code = NULL;\ + PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyFunc_count];\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_TraceDeclarationsGen\ + PyObject *__pyx_frame_code = Py_NewRef(__pyx_generator->gi_code);\ + PyMonitoringState* __pyx_pymonitoring_state = __pyx_generator->__pyx_pymonitoring_state;\ + __pyx_monitoring_version_type __pyx_pymonitoring_version = __pyx_generator->__pyx_pymonitoring_version;\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_IsTracing(event_id) ((!__pyx_sys_monitoring_disabled_in_parallel) && (__pyx_pymonitoring_state[event_id]).active) + #define __Pyx_TraceFrameInit(codeobj)\ + if (codeobj) __pyx_frame_code = codeobj; + #define __Pyx_TurnOffSysMonitoringInParallel\ + const int __pyx_sys_monitoring_disabled_in_parallel = 1;\ + CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno); + CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event); + CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset); + CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset); + CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised); + #define __Pyx_PyMonitoring_ExitScope(nogil)\ + if (nogil) {\ + (void) __pyx_exception_already_reported;\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + PyMonitoring_ExitScope();\ + Py_XDECREF(__pyx_frame_code);\ + PyGILState_Release(state);\ + }\ + } else {\ + PyMonitoring_ExitScope();\ + Py_XDECREF(__pyx_frame_code);\ + } + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ + if ((0) ); else {\ + int ret = 0;\ + memset(__pyx_pymonitoring_state, 0, sizeof(__pyx_pymonitoring_state));\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + if (!__Pyx_PyThreadState_Current->tracing) {\ + if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\ + else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\ + if (unlikely(!__pyx_frame_code)) goto_error;\ + ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + if (!__Pyx_PyThreadState_Current->tracing) {\ + if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\ + else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\ + if (unlikely(!__pyx_frame_code)) goto_error;\ + ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\ + }\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceStartGen(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ + if ((0) ); else {\ + int ret = __Pyx__TraceStartGen(__pyx_pymonitoring_state, &__pyx_pymonitoring_version, __pyx_frame_code, offset);\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error)\ + if ((0) ); else {\ + int ret = __Pyx__TraceResumeGen(__pyx_pymonitoring_state, &__pyx_pymonitoring_version, __pyx_frame_code, offset);\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceYield(result, offset, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_YIELD)); else {\ + int ret = PyMonitoring_FirePyYieldEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + PyMonitoring_ExitScope();\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceException(offset, reraised, fresh)\ + if (!__Pyx_IsTracing((reraised) ? __Pyx_Monitoring_RERAISE : __Pyx_Monitoring_RAISE)); else {\ + if (fresh || reraised || !__pyx_exception_already_reported) {\ + __Pyx__TraceException(&__pyx_pymonitoring_state[(reraised) ? __Pyx_Monitoring_RERAISE : __Pyx_Monitoring_RAISE], __pyx_frame_code, offset, reraised);\ + }\ + __pyx_exception_already_reported = 1;\ + } + #define __Pyx_TraceExceptionDone() __pyx_exception_already_reported = 0 + #define __Pyx_TraceExceptionHandled(offset)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_EXCEPTION_HANDLED)); else {\ + (void) PyMonitoring_FireExceptionHandledEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_EXCEPTION_HANDLED], __pyx_frame_code, offset);\ + __pyx_exception_already_reported = 0;\ + } + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_RETURN)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + PyGILState_Release(state);\ + }\ + } else {\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_RETURN)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) {\ + PyErr_Clear();\ + pyvalue = Py_None; Py_INCREF(Py_None);\ + }\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, pyvalue);\ + Py_DECREF(pyvalue);\ + PyGILState_Release(state);\ + }\ + } else {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) {\ + PyErr_Clear();\ + pyvalue = Py_None; Py_INCREF(Py_None);\ + }\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, pyvalue);\ + Py_DECREF(pyvalue);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceExceptionUnwind(offset, nogil)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_UNWIND)); else {\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + (void) PyMonitoring_FirePyUnwindEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_UNWIND], __pyx_frame_code, offset);\ + PyGILState_Release(state);\ + }\ + } else {\ + (void) PyMonitoring_FirePyUnwindEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_UNWIND], __pyx_frame_code, offset);\ + }\ + } + #if CYTHON_TRACE + CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset); + #define __Pyx_TraceLine(line, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_LINE)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + ret = __Pyx__TraceLine(&__pyx_pymonitoring_state[__Pyx_Monitoring_LINE], __pyx_frame_code, line, offset);\ + PyGILState_Release(state);\ + }\ + } else {\ + ret = __Pyx__TraceLine(&__pyx_pymonitoring_state[__Pyx_Monitoring_LINE], __pyx_frame_code, line, offset);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #endif +#else + #include "compile.h" + #include "frameobject.h" + #include "traceback.h" +#if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION) + #ifndef Py_BUILD_CORE + #define Py_BUILD_CORE 1 + #endif + #include "internal/pycore_frame.h" #endif #if CYTHON_PROFILE_REUSE_FRAME #define CYTHON_FRAME_MODIFIER static @@ -2130,12 +2428,26 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam #define CYTHON_FRAME_MODIFIER #define CYTHON_FRAME_DEL(frame) Py_CLEAR(frame) #endif - #define __Pyx_TraceDeclarations\ - static PyCodeObject *__pyx_frame_code = NULL;\ + #if CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_CODEOBJ_MODIFIER static + #else + #define CYTHON_CODEOBJ_MODIFIER + #endif + #define __Pyx_TraceDeclarationsFunc\ + CYTHON_CODEOBJ_MODIFIER PyCodeObject *__pyx_frame_code = NULL;\ + CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\ + int __Pyx_use_tracing = 0; + #define __Pyx_TraceDeclarationsGen\ + PyObject *__pyx_frame_code = __pyx_generator->gi_code;\ CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\ int __Pyx_use_tracing = 0; #define __Pyx_TraceFrameInit(codeobj)\ if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj; + #define __Pyx_PyMonitoring_ExitScope(nogil) {} + #define __Pyx_TraceException(offset, reraised, fresh) {} + #define __Pyx_TraceExceptionHandled(offset) {} + #define __Pyx_TraceExceptionDone() {} + #define __Pyx_TurnOffSysMonitoringInParallel {} // Only needed for freethreading #if PY_VERSION_HEX >= 0x030b00a2 #if PY_VERSION_HEX >= 0x030C00b1 #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ @@ -2176,15 +2488,14 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam || tstate->c_profilefunc != NULL);\ } while (0) #endif - #ifdef WITH_THREAD - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\ + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ PyThreadState *tstate;\ PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ + __Pyx_use_tracing = __Pyx_TraceSetupAndCall((PyCodeObject**)&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno, skip_event);\ }\ PyGILState_Release(state);\ if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ @@ -2192,37 +2503,22 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam } else {\ PyThreadState* tstate = PyThreadState_GET();\ if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ - if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ - }\ - } - #else - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\ - { PyThreadState* tstate = PyThreadState_GET();\ - if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ + __Pyx_use_tracing = __Pyx_TraceSetupAndCall((PyCodeObject**)&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno, skip_event);\ if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ }\ } - #endif - #define __Pyx_TraceException()\ + #define __Pyx_TraceStartGen __Pyx_TraceStartFunc + #define __Pyx_TraceYield(result, offset, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 1)) {\ - __Pyx_EnterTracing(tstate);\ - PyObject *exc_info = __Pyx_GetExceptionTuple(tstate);\ - if (exc_info) {\ - if (CYTHON_TRACE && tstate->c_tracefunc)\ - tstate->c_tracefunc(\ - tstate->c_traceobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\ - tstate->c_profilefunc(\ - tstate->c_profileobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\ - Py_DECREF(exc_info);\ - }\ - __Pyx_LeaveTracing(tstate);\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 0);\ }\ + if ((1)); else goto_error;\ } - static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result) { + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error)\ + __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, 0, 0, goto_error) + CYTHON_UNUSED static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result, int delete_frame) { PyObject *type, *value, *traceback; __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); __Pyx_EnterTracing(tstate); @@ -2230,12 +2526,13 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_RETURN, result); if (tstate->c_profilefunc) tstate->c_profilefunc(tstate->c_profileobj, frame, PyTrace_RETURN, result); - CYTHON_FRAME_DEL(frame); + if (delete_frame) { + CYTHON_FRAME_DEL(frame); + } __Pyx_LeaveTracing(tstate); __Pyx_ErrRestoreInState(tstate, type, value, traceback); } - #ifdef WITH_THREAD - #define __Pyx_TraceReturn(result, nogil)\ + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ @@ -2243,137 +2540,148 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 1);\ }\ PyGILState_Release(state);\ }\ } else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 1);\ }\ }\ + if ((1)); else goto_error;\ } - #else - #define __Pyx_TraceReturn(result, nogil)\ + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ - PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyThreadState *tstate;\ + PyGILState_STATE state = PyGILState_Ensure();\ + tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) goto_error;\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, pyvalue, 1);\ + Py_DECREF(pyvalue);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + PyThreadState* tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) goto_error;\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, pyvalue, 1);\ + Py_DECREF(pyvalue);\ + }\ }\ } - #endif - static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno); - static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno); -#else - #define __Pyx_TraceDeclarations - #define __Pyx_TraceFrameInit(codeobj) - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error) if ((1)); else goto_error; - #define __Pyx_TraceException() - #define __Pyx_TraceReturn(result, nogil) -#endif -#if CYTHON_TRACE - static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int lineno) { - int ret; - PyObject *type, *value, *traceback; - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - __Pyx_PyFrame_SetLineNumber(frame, lineno); - __Pyx_EnterTracing(tstate); - ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); - __Pyx_LeaveTracing(tstate); - if (likely(!ret)) { - __Pyx_ErrRestoreInState(tstate, type, value, traceback); - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); - } - return ret; + #define __Pyx_TraceExceptionUnwind(offset, nogil)\ + if (likely(!__Pyx_use_tracing)); else {\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyThreadState *tstate;\ + PyGILState_STATE state = PyGILState_Ensure();\ + tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, Py_None, 1);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + PyThreadState* tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, Py_None, 1);\ + }\ + }\ } - #ifdef WITH_THREAD - #define __Pyx_TraceLine(lineno, nogil, goto_error)\ + static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno, int skip_event); +#if CYTHON_TRACE + CYTHON_UNUSED static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line); + #define __Pyx_TraceLine(line, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ + int ret = 0;\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ - int ret = 0;\ PyThreadState *tstate;\ PyGILState_STATE state = __Pyx_PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ + ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, line);\ }\ __Pyx_PyGILState_Release(state);\ - if (unlikely(ret)) goto_error;\ }\ } else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ - if (unlikely(ret)) goto_error;\ + ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, line);\ }\ }\ + if (unlikely(ret)) goto_error;\ } - #else - #define __Pyx_TraceLine(lineno, nogil, goto_error)\ - if (likely(!__Pyx_use_tracing)); else {\ - PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ - if (unlikely(ret)) goto_error;\ - }\ - } - #endif +#endif +#endif #else - #define __Pyx_TraceLine(lineno, nogil, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceDeclarationsFunc + #define __Pyx_TraceDeclarationsGen + #define __Pyx_TraceExceptionDone() {} + #define __Pyx_TraceFrameInit(codeobj) {} + #define __Pyx_TurnOffSysMonitoringInParallel {} + #define __Pyx_PyMonitoring_ExitScope(nogil) {} + #define __Pyx_TraceException(offset, reraised, fresh) {} + #define __Pyx_TraceExceptionUnwind(offset, nogil) {} + #define __Pyx_TraceExceptionHandled(offset) {} + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceStartGen __Pyx_TraceStartFunc + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceYield(result, offset, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ + if ((1)); else goto_error; + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ + if ((1)); else { (void) convert_function; goto_error } +#endif +#if !CYTHON_TRACE + #define __Pyx_TraceLine(line, offset, nogil, goto_error) if ((1)); else goto_error; #endif -/* IncludeStructmemberH.proto */ -#include +/* LimitedApiGetTypeDict.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp); +#endif + +/* SetItemOnTypeDict.proto */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v); +#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v) /* FixUpExtensionType.proto */ -#if CYTHON_USE_TYPE_SPECS -static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); -#endif +static CYTHON_INLINE int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); /* FetchSharedCythonModule.proto */ static PyObject *__Pyx_FetchSharedCythonABIModule(void); +/* dict_setdefault.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, int is_safe_type); + /* FetchCommonType.proto */ -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type); +static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases); + +/* CommonTypesMetaclass.proto */ +static int __pyx_CommonTypesMetaclass_init(PyObject *module); +#define __Pyx_CommonTypesMetaclass_USED + +/* CallTypeTraverse.proto */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 #else -static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases); +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg); #endif /* PyMethodNew.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - typesModule = PyImport_ImportModule("types"); - if (!typesModule) return NULL; - methodType = PyObject_GetAttrString(typesModule, "MethodType"); - Py_DECREF(typesModule); - if (!methodType) return NULL; - result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); - Py_DECREF(methodType); - return result; -} -#elif PY_MAJOR_VERSION >= 3 -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - return PyMethod_New(func, self); -} -#else - #define __Pyx_PyMethod_New PyMethod_New -#endif +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ); /* PyVectorcallFastCallDict.proto */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw); #endif @@ -2407,10 +2715,11 @@ typedef struct { #else PyCMethodObject func; #endif -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL ||\ + (CYTHON_COMPILING_IN_LIMITED_API && CYTHON_METH_FASTCALL) __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2423,9 +2732,7 @@ typedef struct { #if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif - void *defaults; - int defaults_pyobjects; - size_t defaults_size; + PyObject *defaults; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2434,10 +2741,10 @@ typedef struct { PyObject *func_is_coroutine; } __pyx_CyFunctionObject; #undef __Pyx_CyOrPyCFunction_Check -#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) -#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)); #undef __Pyx_IsSameCFunction #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, @@ -2446,9 +2753,8 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef * PyObject *module, PyObject *globals, PyObject* code); static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj); -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *m, - size_t size, - int pyobjects); +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, + PyTypeObject *defaults_type); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m, PyObject *tuple); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m, @@ -2461,7 +2767,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_func_vectorcall(f) (((__pyx_CyFunctionObject*)f)->func_vectorcall) #else #define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall) @@ -2475,23 +2781,11 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, PyObject *module, PyObject *globals, PyObject* code); -/* PyObjectCall.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); -#else -#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) -#endif - -/* UnpackUnboundCMethod.proto */ -typedef struct { - PyObject *type; - PyObject **method_name; - PyCFunction func; - PyObject *method; - int flag; -} __Pyx_CachedCFunction; +/* PyObjectCall2Args.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); /* CallUnboundCMethod1.proto */ +CYTHON_UNUSED static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); @@ -2499,59 +2793,18 @@ static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* #define __Pyx_CallUnboundCMethod1(cfunc, self, arg) __Pyx__CallUnboundCMethod1(cfunc, self, arg) #endif -/* KeywordStringCheck.proto */ -static int __Pyx_CheckKeywordStrings(PyObject *kw, const char* function_name, int kw_allowed); +/* RejectKeywords.proto */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); /* RaiseException.proto */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); +/* KeywordStringCheck.proto */ +static CYTHON_INLINE int __Pyx_CheckKeywordStrings(const char* function_name, PyObject *kw); + /* IterFinish.proto */ static CYTHON_INLINE int __Pyx_IterFinish(void); -/* PyFunctionFastCall.proto */ -#if CYTHON_FAST_PYCALL -#if !CYTHON_VECTORCALL -#define __Pyx_PyFunction_FastCall(func, args, nargs)\ - __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); -#endif -#define __Pyx_BUILD_ASSERT_EXPR(cond)\ - (sizeof(char [1 - 2*!(cond)]) - 1) -#ifndef Py_MEMBER_SIZE -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) -#endif -#if !CYTHON_VECTORCALL -#if PY_VERSION_HEX >= 0x03080000 - #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif - #define __Pxy_PyFrame_Initialize_Offsets() - #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) -#else - static size_t __pyx_pyframe_localsplus_offset = 0; - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets()\ - ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ - (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) - #define __Pyx_PyFrame_GetLocalsplus(frame)\ - (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) -#endif -#endif -#endif - -/* PyObjectCallMethO.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); -#endif - -/* PyObjectFastCall.proto */ -#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs); - /* PyObjectCallNoArg.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); @@ -2580,12 +2833,8 @@ static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); /* UnpackTuple2.proto */ -#define __Pyx_unpack_tuple2(tuple, value1, value2, is_tuple, has_known_size, decref_tuple)\ - (likely(is_tuple || PyTuple_Check(tuple)) ?\ - (likely(has_known_size || PyTuple_GET_SIZE(tuple) == 2) ?\ - __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple) :\ - (__Pyx_UnpackTupleError(tuple, 2), -1)) :\ - __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple)) +static CYTHON_INLINE int __Pyx_unpack_tuple2( + PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple); static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple); static int __Pyx_unpack_tuple2_generic( @@ -2597,6 +2846,13 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* dict, int is_dict, static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* dict_or_iter, Py_ssize_t orig_length, Py_ssize_t* ppos, PyObject** pkey, PyObject** pvalue, PyObject** pitem, int is_dict); +/* PyObjectFastCallMethod.proto */ +#if CYTHON_VECTORCALL && PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyObject_FastCallMethod(name, args, nargsf) PyObject_VectorcallMethod(name, args, nargsf, NULL) +#else +static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf); +#endif + /* ListCompAppend.proto */ #if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) { @@ -2627,11 +2883,6 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObj #define __Pyx_PyObject_FormatSimple(s, f) (\ likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\ PyObject_Format(s, f)) -#elif PY_MAJOR_VERSION < 3 - #define __Pyx_PyObject_FormatSimple(s, f) (\ - likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\ - likely(PyString_CheckExact(s)) ? PyUnicode_FromEncodedObject(s, NULL, "strict") :\ - PyObject_Format(s, f)) #elif CYTHON_USE_TYPE_SLOTS #define __Pyx_PyObject_FormatSimple(s, f) (\ likely(PyUnicode_CheckExact(s)) ? (Py_INCREF(s), s) :\ @@ -2645,16 +2896,9 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObj #endif /* JoinPyUnicode.proto */ -static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_count, Py_ssize_t result_ulength, +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, Py_UCS4 max_char); -/* StrEquals.proto */ -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - /* PyDictVersioning.proto */ #if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS #define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) @@ -2686,7 +2930,7 @@ static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UIN #define __Pyx_GetModuleGlobalName(var, name) do {\ static PY_UINT64_T __pyx_dict_version = 0;\ static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ } while(0) @@ -2712,30 +2956,19 @@ static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* s static CYTHON_INLINE PyObject* __Pyx_PyDict_Items(PyObject* d); /* CallUnboundCMethod0.proto */ +CYTHON_UNUSED static PyObject* __Pyx__CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self); #if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_CallUnboundCMethod0(cfunc, self)\ - (likely((cfunc)->func) ?\ - (likely((cfunc)->flag == METH_NOARGS) ? (*((cfunc)->func))(self, NULL) :\ - (PY_VERSION_HEX >= 0x030600B1 && likely((cfunc)->flag == METH_FASTCALL) ?\ - (PY_VERSION_HEX >= 0x030700A0 ?\ - (*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)(cfunc)->func)(self, &__pyx_empty_tuple, 0) :\ - (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)(cfunc)->func)(self, &__pyx_empty_tuple, 0, NULL)) :\ - (PY_VERSION_HEX >= 0x030700A0 && (cfunc)->flag == (METH_FASTCALL | METH_KEYWORDS) ?\ - (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)(cfunc)->func)(self, &__pyx_empty_tuple, 0, NULL) :\ - (likely((cfunc)->flag == (METH_VARARGS | METH_KEYWORDS)) ? ((*(PyCFunctionWithKeywords)(void*)(PyCFunction)(cfunc)->func)(self, __pyx_empty_tuple, NULL)) :\ - ((cfunc)->flag == METH_VARARGS ? (*((cfunc)->func))(self, __pyx_empty_tuple) :\ - __Pyx__CallUnboundCMethod0(cfunc, self)))))) :\ - __Pyx__CallUnboundCMethod0(cfunc, self)) +static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self); #else #define __Pyx_CallUnboundCMethod0(cfunc, self) __Pyx__CallUnboundCMethod0(cfunc, self) #endif /* RaiseUnboundLocalError.proto */ -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname); +static void __Pyx_RaiseUnboundLocalError(const char *varname); /* RaiseClosureNameError.proto */ -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname); +static void __Pyx_RaiseClosureNameError(const char *varname); /* GetException.proto */ #if CYTHON_FAST_THREAD_STATE @@ -2748,49 +2981,50 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /* pep479.proto */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); -/* PyObjectCall2Args.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); - -/* PyObjectCallMethod1.proto */ -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); - -/* StringJoin.proto */ -#if PY_MAJOR_VERSION < 3 -#define __Pyx_PyString_Join __Pyx_PyBytes_Join -#define __Pyx_PyBaseString_Join(s, v) (PyUnicode_CheckExact(s) ? PyUnicode_Join(s, v) : __Pyx_PyBytes_Join(s, v)) -#else -#define __Pyx_PyString_Join PyUnicode_Join -#define __Pyx_PyBaseString_Join PyUnicode_Join -#endif -static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values); - /* GetAttr3.proto */ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); /* RaiseUnexpectedTypeError.proto */ static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj); -/* bytes_tailmatch.proto */ -static int __Pyx_PyBytes_SingleTailmatch(PyObject* self, PyObject* arg, - Py_ssize_t start, Py_ssize_t end, int direction); -static int __Pyx_PyBytes_Tailmatch(PyObject* self, PyObject* substr, - Py_ssize_t start, Py_ssize_t end, int direction); +/* PyUnicodeContains.proto */ +static CYTHON_INLINE int __Pyx_PyUnicode_ContainsTF(PyObject* substring, PyObject* text, int eq) { + int result = PyUnicode_Contains(text, substring); + return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); +} /* unicode_tailmatch.proto */ static int __Pyx_PyUnicode_Tailmatch( PyObject* s, PyObject* substr, Py_ssize_t start, Py_ssize_t end, int direction); -/* str_tailmatch.proto */ -static CYTHON_INLINE int __Pyx_PyStr_Tailmatch(PyObject* self, PyObject* arg, Py_ssize_t start, - Py_ssize_t end, int direction); +/* BuildPyUnicode.proto */ +static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, const char* chars, int clength, + int prepend_sign, char padding_char); + +/* COrdinalToPyUnicode.proto */ +static CYTHON_INLINE int __Pyx_CheckUnicodeValue(int value); +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromOrdinal_Padded(int value, Py_ssize_t width, char padding_char); + +/* GCCDiagnostics.proto */ +#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) +#define __Pyx_HAS_GCC_DIAGNOSTIC +#endif + +/* IncludeStdlibH.proto */ +#include -/* PyObject_Str.proto */ -#define __Pyx_PyObject_Str(obj)\ - (likely(PyString_CheckExact(obj)) ? __Pyx_NewRef(obj) : PyObject_Str(obj)) +/* CIntToPyUnicode.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_int(int value, Py_ssize_t width, char padding_char, char format_char); + +/* PyObject_Unicode.proto */ +#define __Pyx_PyObject_Unicode(obj)\ + (likely(PyUnicode_CheckExact(obj)) ? __Pyx_NewRef(obj) : PyObject_Str(obj)) /* ListExtend.proto */ static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00a2 + return PyList_Extend(L, v); +#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 PyObject* none = _PyList_Extend((PyListObject*)L, v); if (unlikely(!none)) return -1; @@ -2822,9 +3056,31 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { #define __Pyx_PyList_Append(L,x) PyList_Append(L,x) #endif +/* PyObjectVectorCallKwBuilder.proto */ +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#if CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_Object_Vectorcall_CallFromBuilder PyObject_Vectorcall +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder _PyObject_Vectorcall +#endif +#define __Pyx_MakeVectorcallBuilderKwds(n) PyTuple_New(n) +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder __Pyx_PyObject_FastCallDict +#define __Pyx_MakeVectorcallBuilderKwds(n) __Pyx_PyDict_NewPresized(n) +#define __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n) PyDict_SetItem(builder, key, value) +#define __Pyx_VectorcallBuilder_AddArgStr(key, value, builder, args, n) PyDict_SetItemString(builder, key, value) +#endif + /* ExtTypeTest.proto */ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); +/* CBIntToPyUnicode.proto */ +#define __Pyx_PyUnicode_FromBInt_bint(value)\ + ((value) ? __Pyx_NewRef(__pyx_mstate_global->__pyx_n_u_True) : __Pyx_NewRef(__pyx_mstate_global->__pyx_n_u_False)) + /* Import.proto */ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); @@ -2832,18 +3088,18 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); /* GetItemInt.proto */ -#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ +#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\ (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\ __Pyx_GetItemInt_Generic(o, to_py_func(i)))) -#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ +#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, int wraparound, int boundscheck); -#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ +#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL)) @@ -2853,14 +3109,14 @@ static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, int wraparound, int boundscheck); +/* PyObjectCallMethod1.proto */ +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg); + /* append.proto */ static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x); -/* GetAttr.proto */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *); - /* HasAttr.proto */ -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 #define __Pyx_HasAttr(o, n) PyObject_HasAttrWithError(o, n) #else static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *); @@ -2874,101 +3130,97 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs /* PyType_Ready.proto */ CYTHON_UNUSED static int __Pyx_PyType_Ready(PyTypeObject *t); -/* PyObject_GenericGetAttrNoDict.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr -#endif +/* DelItemOnTypeDict.proto */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); +#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k) /* SetupReduce.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce(PyObject* type_obj); -#endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 -#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 +#define __PYX_HAVE_RT_ImportType_proto_3_1_2 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_0_10 { - __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, - __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 +enum __Pyx_ImportType_CheckSize_3_1_2 { + __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); #endif /* GetVTable.proto */ static void* __Pyx_GetVtable(PyTypeObject *type); -/* PatchModuleWithCoroutine.proto */ -static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code); - -/* PatchInspect.proto */ -static PyObject* __Pyx_patch_inspect(PyObject* module); +/* ListPack.proto */ +static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...); /* CLineInTraceback.proto */ -#ifdef CYTHON_CLINE_IN_TRACEBACK -#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) -#else +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#else +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) #endif /* CodeObjectCache.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API +typedef PyObject __Pyx_CachedCodeObjectType; +#else +typedef PyCodeObject __Pyx_CachedCodeObjectType; +#endif typedef struct { - PyCodeObject* code_object; + __Pyx_CachedCodeObjectType* code_object; int code_line; } __Pyx_CodeObjectCacheEntry; struct __Pyx_CodeObjectCache { int count; int max_count; __Pyx_CodeObjectCacheEntry* entries; + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_int_type accessor_count; + #endif }; -static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); -static PyCodeObject *__pyx_find_code_object(int code_line); -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); -#endif +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line); +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object); /* AddTraceback.proto */ static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename); -/* GCCDiagnostics.proto */ -#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) -#define __Pyx_HAS_GCC_DIAGNOSTIC -#endif - /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value); /* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); /* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); /* FormatTypeName.proto */ #if CYTHON_COMPILING_IN_LIMITED_API typedef PyObject *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%U" -static __Pyx_TypeName __Pyx_PyType_GetName(PyTypeObject* tp); #define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj) +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName #else +static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp); +#endif +#else // !LIMITED_API typedef const char *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%.200s" -#define __Pyx_PyType_GetName(tp) ((tp)->tp_name) +#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name) #define __Pyx_DECREF_TypeName(obj) #endif @@ -2984,10 +3236,17 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) #define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2)) #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) -#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) { + return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2); +} #endif #define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) +#ifdef PyExceptionInstance_Check + #define __Pyx_PyBaseException_Check(obj) PyExceptionInstance_Check(obj) +#else + #define __Pyx_PyBaseException_Check(obj) __Pyx_TypeCheck(obj, PyExc_BaseException) +#endif /* GetTopmostException.proto */ #if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE @@ -3013,6 +3272,15 @@ static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject * static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb); #endif +/* IterNextPlain.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyIter_Next_Plain(PyObject *iterator); +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 +static PyObject *__Pyx_GetBuiltinNext_LimitedAPI(void); +#endif + +/* ReturnWithStopIteration.proto */ +static CYTHON_INLINE void __Pyx_ReturnWithStopIteration(PyObject* value, int async, int iternext); + /* CoroutineBase.proto */ struct __pyx_CoroutineObject; typedef PyObject *(*__pyx_coroutine_body_t)(struct __pyx_CoroutineObject *, PyThreadState *, PyObject *); @@ -3033,11 +3301,16 @@ typedef struct __pyx_CoroutineObject { PyObject *gi_weakreflist; PyObject *classobj; PyObject *yieldfrom; + __Pyx_pyiter_sendfunc yieldfrom_am_send; PyObject *gi_name; PyObject *gi_qualname; PyObject *gi_modulename; PyObject *gi_code; PyObject *gi_frame; +#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) + PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyGen_count]; + uint64_t __pyx_pymonitoring_version; +#endif int resume_label; char is_running; } __pyx_CoroutineObject; @@ -3049,8 +3322,9 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit( PyObject *name, PyObject *qualname, PyObject *module_name); static CYTHON_INLINE void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *self); static int __Pyx_Coroutine_clear(PyObject *self); +static __Pyx_PySendResult __Pyx_Coroutine_AmSend(PyObject *self, PyObject *value, PyObject **retval); static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value); -static PyObject *__Pyx_Coroutine_Close(PyObject *self); +static __Pyx_PySendResult __Pyx_Coroutine_Close(PyObject *self, PyObject **retval); static PyObject *__Pyx_Coroutine_Throw(PyObject *gen, PyObject *args); #if CYTHON_USE_EXC_INFO_STACK #define __Pyx_Coroutine_SwapException(self) @@ -3074,32 +3348,83 @@ static PyObject *__Pyx_Coroutine_Throw(PyObject *gen, PyObject *args); #endif static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *tstate, PyObject **pvalue); static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state); - -/* PatchGeneratorABC.proto */ -static int __Pyx_patch_abc(void); +static char __Pyx_Coroutine_test_and_set_is_running(__pyx_CoroutineObject *gen); +static void __Pyx_Coroutine_unset_is_running(__pyx_CoroutineObject *gen); +static char __Pyx_Coroutine_get_is_running(__pyx_CoroutineObject *gen); +static PyObject *__Pyx_Coroutine_get_is_running_getter(PyObject *gen, void *closure); +#if __PYX_HAS_PY_AM_SEND == 2 +static void __Pyx_SetBackportTypeAmSend(PyTypeObject *type, __Pyx_PyAsyncMethodsStruct *static_amsend_methods, __Pyx_pyiter_sendfunc am_send); +#endif +static PyObject *__Pyx_Coroutine_fail_reduce_ex(PyObject *self, PyObject *arg); /* Generator.proto */ #define __Pyx_Generator_USED -#define __Pyx_Generator_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_GeneratorType) +#define __Pyx_Generator_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_GeneratorType) #define __Pyx_Generator_New(body, code, closure, name, qualname, module_name)\ - __Pyx__Coroutine_New(__pyx_GeneratorType, body, code, closure, name, qualname, module_name) + __Pyx__Coroutine_New(__pyx_mstate_global->__pyx_GeneratorType, body, code, closure, name, qualname, module_name) static PyObject *__Pyx_Generator_Next(PyObject *self); static int __pyx_Generator_init(PyObject *module); +static CYTHON_INLINE PyObject *__Pyx_Generator_GetInlinedResult(PyObject *self); -/* CheckBinaryVersion.proto */ +/* GetRuntimeVersion.proto */ static unsigned long __Pyx_get_runtime_version(void); + +/* CheckBinaryVersion.proto */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionExport.proto */ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); /* FunctionImport.proto */ -static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig); +static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig); -/* InitStrings.proto */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); +/* MultiPhaseInitModuleState.proto */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +static PyObject *__Pyx_State_FindModule(void*); +static int __Pyx_State_AddModule(PyObject* module, void*); +static int __Pyx_State_RemoveModule(void*); +#elif CYTHON_USE_MODULE_STATE +#define __Pyx_State_FindModule PyState_FindModule +#define __Pyx_State_AddModule PyState_AddModule +#define __Pyx_State_RemoveModule PyState_RemoveModule +#endif /* #### Code section: module_declarations ### */ +/* CythonABIVersion.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API + #if CYTHON_METH_FASTCALL + #define __PYX_FASTCALL_ABI_SUFFIX "_fastcall" + #else + #define __PYX_FASTCALL_ABI_SUFFIX + #endif + #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_FASTCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#else + #define __PYX_LIMITED_ABI_SUFFIX +#endif +#if __PYX_HAS_PY_AM_SEND == 1 + #define __PYX_AM_SEND_ABI_SUFFIX +#elif __PYX_HAS_PY_AM_SEND == 2 + #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport" +#else + #define __PYX_AM_SEND_ABI_SUFFIX "noamsend" +#endif +#ifndef __PYX_MONITORING_ABI_SUFFIX + #define __PYX_MONITORING_ABI_SUFFIX +#endif +#if CYTHON_USE_TP_FINALIZE + #define __PYX_TP_FINALIZE_ABI_SUFFIX +#else + #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize" +#endif +#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED) + #define __PYX_FREELISTS_ABI_SUFFIX +#else + #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists" +#endif +#define CYTHON_ABI __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI +#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." + /* Module declarations from "cython" */ @@ -3175,57 +3500,114 @@ int __pyx_module_is_main_hunter___predicates = 0; static PyObject *__pyx_builtin_TypeError; static PyObject *__pyx_builtin_ValueError; /* #### Code section: string_decls ### */ +static const char __pyx_k_[] = "_"; +static const char __pyx_k_1[] = "\200\001\340\004\005\360\006\000\005\014\2101"; +static const char __pyx_k_6[] = "\200\001\330\004\"\240!\2406\250\021"; +static const char __pyx_k_A[] = "\210A"; +static const char __pyx_k_Q[] = "\320\000)\250\027\260\005\260Q"; +static const char __pyx_k_a[] = "\320\000*\250'\260\025\260a"; +static const char __pyx_k_f[] = "f"; +static const char __pyx_k_p[] = "p"; +static const char __pyx_k_q[] = "\220q"; +static const char __pyx_k_1F[] = "\200\001\330\004#\2401\240F\250!"; +static const char __pyx_k_4y[] = "\200\001\330\004\013\2104\210y\230\001\230\024\230\\\250\021"; +static const char __pyx_k_G5[] = "\320\000,\250G\2605\270\001"; static const char __pyx_k_Or[] = "Or"; -static const char __pyx_k__5[] = "_"; -static const char __pyx_k__6[] = "."; -static const char __pyx_k__7[] = "="; -static const char __pyx_k__8[] = ", "; -static const char __pyx_k__9[] = ""; +static const char __pyx_k__2[] = "."; +static const char __pyx_k__3[] = "="; +static const char __pyx_k__4[] = ", "; +static const char __pyx_k__5[] = ""; +static const char __pyx_k__6[] = " "; +static const char __pyx_k__7[] = ")"; +static const char __pyx_k__8[] = ">"; +static const char __pyx_k__9[] = "?"; +static const char __pyx_k_eq[] = "__eq__"; static const char __pyx_k_ew[] = "ew"; static const char __pyx_k_gc[] = "gc"; static const char __pyx_k_gt[] = "gt"; static const char __pyx_k_in[] = "in"; static const char __pyx_k_lt[] = "lt"; +static const char __pyx_k_or[] = "__or__"; static const char __pyx_k_re[] = "re"; static const char __pyx_k_rx[] = "rx"; static const char __pyx_k_sw[] = "sw"; +static const char __pyx_k_uA[] = "\320\000(\250\007\250u\260A"; +static const char __pyx_k_7_Q[] = "\320\000+\2507\260%\260~\300Q"; +static const char __pyx_k_A_D[] = "\200A\330\010\017\320\017<\270D\300\001"; +static const char __pyx_k_A_M[] = "\200A\330\010\014\210M\230\021"; +static const char __pyx_k_A_N[] = "\200A\330\010\014\210N\230!"; +static const char __pyx_k_A_q[] = "\200A\340\010\017\210q\220\001\220\021"; +static const char __pyx_k_A_r[] = "\200A\330\010\017\210r\220\021\220&\230\001"; static const char __pyx_k_And[] = "And"; static const char __pyx_k_Not[] = "Not"; -static const char __pyx_k__10[] = " "; -static const char __pyx_k__48[] = "?"; +static const char __pyx_k_Q_2[] = "\200\001\330\004\n\210+\220Q"; +static const char __pyx_k_Q_3[] = "\220Q"; +static const char __pyx_k_QfA[] = "\200\001\330\004%\240Q\240f\250A"; +static const char __pyx_k__10[] = "\230!"; +static const char __pyx_k__11[] = "\230\001"; +static const char __pyx_k__12[] = "\250\001"; +static const char __pyx_k__13[] = "\200\001\330\004!\240\021\240&\250\001"; +static const char __pyx_k_a_2[] = "\220a"; static const char __pyx_k_all[] = "__all__"; +static const char __pyx_k_and[] = "__and__"; static const char __pyx_k_arg[] = "arg"; +static const char __pyx_k_fmt[] = "fmt"; static const char __pyx_k_for[] = " for "; +static const char __pyx_k_get[] = "__get__"; static const char __pyx_k_gte[] = "gte"; static const char __pyx_k_has[] = "has"; +static const char __pyx_k_key[] = "key"; static const char __pyx_k_lte[] = "lte"; static const char __pyx_k_new[] = "__new__"; -static const char __pyx_k_From[] = "From"; +static const char __pyx_k_pop[] = "pop"; +static const char __pyx_k_q_2[] = "\240q"; +static const char __pyx_k_q_3[] = "\200\001\330\004 \240\001\240\026\240q"; +static const char __pyx_k_str[] = "__str__"; +static const char __pyx_k_A_1F[] = "\200A\330\010\017\210|\2301\230F\240!"; +static const char __pyx_k_A_4q[] = "\200A\330\010\017\320\017;\2704\270q"; +static const char __pyx_k_A_t1[] = "\200A\330\010\017\210t\2201"; +static const char __pyx_k_From[] = "From("; +static const char __pyx_k_G5_q[] = "\320\000,\250G\2605\270\017\300q"; static const char __pyx_k_Or_s[] = "Or(%s)"; -static const char __pyx_k_When[] = "When"; -static const char __pyx_k_args[] = "args"; +static const char __pyx_k_True[] = "True"; +static const char __pyx_k_WE9I[] = "\320\000-\250W\260E\3209I\310\021"; +static const char __pyx_k_When[] = "When("; static const char __pyx_k_call[] = "call"; static const char __pyx_k_dict[] = "__dict__"; +static const char __pyx_k_func[] = "__func__"; static const char __pyx_k_gt_2[] = "_gt"; static const char __pyx_k_in_2[] = "_in"; -static const char __pyx_k_join[] = "join"; +static const char __pyx_k_init[] = "__init__"; static const char __pyx_k_kind[] = "kind"; static const char __pyx_k_lt_2[] = "_lt"; static const char __pyx_k_main[] = "__main__"; static const char __pyx_k_name[] = "name"; +static const char __pyx_k_next[] = "next"; +static const char __pyx_k_repr[] = "__repr__"; static const char __pyx_k_self[] = "self"; static const char __pyx_k_send[] = "send"; static const char __pyx_k_size[] = "size"; static const char __pyx_k_test[] = "__test__"; static const char __pyx_k_vars[] = "vars"; static const char __pyx_k_wrap[] = "wrap"; +static const char __pyx_k_A_8_a[] = "\200A\330\010\017\320\0178\270\002\270$\270a"; +static const char __pyx_k_A_AV1[] = "\200A\330\010\017\210}\230A\230V\2401"; +static const char __pyx_k_A_QfA[] = "\200A\330\010\017\210~\230Q\230f\240A"; +static const char __pyx_k_A_avQ[] = "\200A\330\010\017\210\230a\230v\240Q"; +static const char __pyx_k_A_q_2[] = "\200A\330\010\017\320\017 \240\001\240\026\240q"; +static const char __pyx_k_A_q_U[] = "\200A\330\010\017\210q\330\014\020\220\001\330\014\020\220\005\220U\230!"; +static const char __pyx_k_A_s_1[] = "\200A\330\010\017\210s\220!\2201"; +static const char __pyx_k_A_s_6[] = "\200A\330\010\017\210s\220!\2206\230\021"; +static const char __pyx_k_A_t1D[] = "\200A\330\010\017\210t\2201\220D\230\001"; static const char __pyx_k_And_s[] = "And(%s)"; +static const char __pyx_k_False[] = "False"; static const char __pyx_k_Not_s[] = "Not(%s)"; static const char __pyx_k_Query[] = "Query"; static const char __pyx_k_Value[] = "Value "; static const char __pyx_k_calls[] = "calls"; static const char __pyx_k_clear[] = "clear"; static const char __pyx_k_close[] = "close"; +static const char __pyx_k_count[] = "count"; static const char __pyx_k_depth[] = "depth"; static const char __pyx_k_deque[] = "deque"; static const char __pyx_k_event[] = "event"; @@ -3236,6 +3618,9 @@ static const char __pyx_k_items[] = "items"; static const char __pyx_k_lte_2[] = "_lte"; static const char __pyx_k_match[] = "match"; static const char __pyx_k_merge[] = "_merge"; +static const char __pyx_k_other[] = "other"; +static const char __pyx_k_parts[] = "parts"; +static const char __pyx_k_query[] = "query"; static const char __pyx_k_regex[] = "regex"; static const char __pyx_k_split[] = "split"; static const char __pyx_k_stack[] = "stack"; @@ -3243,15 +3628,22 @@ static const char __pyx_k_state[] = "state"; static const char __pyx_k_strip[] = "strip"; static const char __pyx_k_throw[] = "throw"; static const char __pyx_k_value[] = "value"; +static const char __pyx_k_we_MQ[] = "\320\000/\250w\260e\320;M\310Q"; +static const char __pyx_k_0_u_Oq[] = "\320\0000\260\007\260u\320P\320P[\320[\\\320\\`\320`l\320lx\360\000\000y\001D\002\360\000\000D\002E\002\360\000\000E\002I\002\360\000\000I\002U\002\360\000\000U\002a\002\360\000\000a\002l\002\360\000\000l\002m\002\360\000\000m\002q\002\360\000\000q\002}\002\360\000\000}\002J\003\360\000\000J\003U\003\360\000\000U\003V\003\360\000\000V\003Z\003\360\000\000Z\003f\003\360\000\000f\003r\003\360\000\000r\003}\003\360\000\000}\003~\003\360\000\000~\003B\004\360\000\000B\004N\004\360\000\000N\004Z\004\360\000\000Z\004e\004\360\000\000e\004f\004\360\000\000f\004j\004\360\000\000j\004v\004\360\000\000v\004C\005\360\000\000C\005N\005\360\000\000N\005O\005\360\000\000O\005S\005\360\000\000S\005_\005\360\000\000_\005n\005\360\000\000n\005y\005\360\000\000y\005z\005\360\000\000z\005~\005\360\000\000~\005J\006\360\000\000J\006^\006\360\000\000^\006i\006\360\000\000i\006j\006\360\000\000j\006k\006\330\004\007\200s\210!\210=\230\002\230#\230T\240\027\250\001\250\036\260q\330\010\024\220I\230W\240A\240[\260\001\260\021"; +static const char __pyx_k_T_4_4y_L_HTXX__cckkooww_G1F_a_v[] = "\200\001\360\010\000\005\016\210T\220\032\2304\230|\2504\250y\270\004\270L\310\004\310H\320TX\320X_\320_c\320ck\320ko\320ow\320w{\320{|\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\2309\240G\2505\260\003\2604\260{\300'\310\025\310c\320QU\320U]\320]d\320di\320il\320lp\320p{\360\000\000|\001C\002\360\000\000C\002H\002\360\000\000H\002K\002\360\000\000K\002O\002\360\000\000O\002V\002\360\000\000V\002]\002\360\000\000]\002^\002\330\004\007\200q\330\010\017\320\017(\250\004\250A\250W\260K\270w\300a\340\010\017\320\017(\250\004\250A\250W\260K\270q"; +static const char __pyx_k_T_7t_d_UYYeeiittx_y_D_D_H_H_T_T[] = "\200\001\360\010\000\005\016\210T\320\021\"\240$\320&7\260t\270;\300d\310+\320UY\320Ye\320ei\320it\320tx\360\000\000y\001D\002\360\000\000D\002H\002\360\000\000H\002T\002\360\000\000T\002X\002\360\000\000X\002f\002\360\000\000f\002j\002\360\000\000j\002k\002\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\320\033+\2507\260%\260s\270$\320>N\310g\320UZ\320Z]\320]a\320ak\320kr\320rw\320wz\320z~\360\000\000\001I\002\360\000\000I\002P\002\360\000\000P\002U\002\360\000\000U\002X\002\360\000\000X\002\\\002\360\000\000\\\002g\002\360\000\000g\002n\002\360\000\000n\002s\002\360\000\000s\002v\002\360\000\000v\002z\002\360\000\000z\002D\003\360\000\000D\003K\003\360\000\000K\003P\003\360\000\000P\003S\003\360\000\000S\003W\003\360\000\000W\003a\003\360\000\000a\003h\003\360\000\000h\003m\003\360\000\000m\003p\003\360\000\000p\003t\003\360\000\000t\003\003\360\000\000\003F\004\360\000\000F\004K\004\360\000\000K\004N\004\360\000\000N\004R\004\360\000\000R\004_\004\360\000\000_\004f\004\360\000\000f\004k\004\360\000\000k\004n\004\360\000\000n\004r\004\360\000\000r\004D\005\360\000\000D\005K\005\360\000\000K\005L\005\330\004\007\200q\330\010\017\320\017&\240d\250!\2507\260+\270W\300A\340\010\017\320\017&\240d\250!\2507\260+\270Q"; +static const char __pyx_k_Ubbc_JfF_j_VW_4z_iq_1_ERt1_M_IU[] = "\320\004'\240{\260)\270=\310\r\320Ub\320bc\330\010\014\210J\220f\230F\240'\250\021\250(\260$\260j\300\001\300\030\310\035\320VW\330\010\013\2104\210z\230\021\230$\230i\240q\330\014\022\220)\2301\320\034E\300R\300t\3101\330\010\014\210M\230\021\330\010\014\210I\220U\230!\2307\240!\330\010\014\210H\220A\330\010\014\210I\220Q\330\010\014\210I\220Q\330\010\014\210H\220A\330\010\014\210M\230\024\230W\240M\260\024\260[\300\001\330\010\014\210K\220q"; +static const char __pyx_k_Yat_q_q_4q_xq_fAQ_Q_gRq_KvS_q_2[] = "\200\001\360\034\000\005\016\210Y\220a\220t\230<\240q\330\004\007\200q\330\010\013\2104\210q\330\014\020\220\007\220x\230q\340\014\032\230(\240$\240f\250A\250Q\330\014\032\230+\240Q\330\014!\240\025\240g\250R\250q\330\014\034\230K\240v\250S\260\001\330\014\037\230q\320 2\260#\260T\270\027\300\002\320BU\320UW\320WX\330\014\017\210q\330\020\023\220>\240\024\240[\260\007\260w\270a\330\024\"\240+\250V\2601\340\024\"\240+\250Q\330\020\023\220<\230w\240a\330\024#\2405\250\001\330\024\034\230A\330\024\"\240!\330\024\032\230&\240\004\240L\260\002\260!\330\030&\240e\2501\330\034\"\240'\250\025\250c\260\024\260Q\330\034.\250e\2601\330\034\"\240,\250b\260\014\270B\270c\300\027\310\001\340\030\033\2304\230t\2401\340\034'\240{\260!\330\034'\240|\2601\330\034'\240|\2601\330\030$\240K\250q\260\001\330\030 \240\005\240Q\330\030'\240q\330\024\030\230\017\240q\330\030\033\2304\230y\250\003\2505\260\003\2604\260x\270q\300\001\330\034 \240\007\240q\250\001\330\014\020\320\020!\240\024\240Q\330\020\023\2204\220y\240\003\2401\330\024\030\230\007\230q\240\001\330\025\036\230a\230t\240:\250X\260Q\330\024\030\230\007\230q\240\001\330\014\020\220\006\220f\230A\340\010\013\2104\210w\220d\230%\230w\240b\250\001\360\006\000\r\021\220\006\220f\230A\330\010\013\2104\210y\230\003\2305\240\003\2404\240x\250q\260\001\330\014\035\230[\250\001\250\027\260\004\260A\330\014\032\230)\2405\250\001\330\014\020\220\006\220g\230Q\230a\340\004\013\2101"; +static const char __pyx_k_Yd_M_waq_D_V1_1_Yd_M_waq_F_HM_q[] = "\200\001\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\320\013\034\230D\240\r\250V\2601\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\014\210F\320\022$\240H\250M\270\026\270q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\014\210M\230\026\230w\240h\250f\260A\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2105\220\006\320\026'\240{\260\"\260M\300\026\300q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2105\220\006\320\026'\240y\260\002\260-\270v\300Q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2105\220\r\230V\2406\250\026\250q\260\001\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\003\240=\260\006\260a\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\004\240M\260\026\260q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\003\240=\260\006\260a\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\004\240M\260\026\260q\330\014\023\2201\340\004\013\2101"; +static const char __pyx_k_hunter__predicates_And_predicat[] = ""; -static const char __pyx_k_hunter__predicates_Or_predicate[] = ""; -static const char __pyx_k_hunter__predicates_When_conditi[] = ""; -static const char __pyx_k_hunter_predicates_Backlog_condi[] = ""; +static const char __pyx_k_hunter__predicates_Or_predicate[] = "\320>[\320[\\\340\020\032\230!\330\020\031\230\021\340\014\017\210w\220g\230Q\330\020\026\220i\230q\240\002\320\":\320:R\320RS\340\014\023\2201\220J\230j\250\001\250\027\260\001\340\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\320\014 \240\005\240W\250A\320-=\270V\3001\330\010\014\320\014\036\230e\2407\250!\250>\270\026\270q\330\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\320\014\036\230e\2407\250!\250>\270\026\270q\330\010\014\210O\2305\240\007\240q\250\013\2606\270\021\330\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\210M\230\025\230g\240Q\240i\250v\260Q\330\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\210M\230\025\230g\240Q\240i\250v\260Q"; +static const char __pyx_k_A_awa_Jd_d_D_a_Jd_D_a_M_XV1_Jd_K[] = "\200A\330\010\t\330\014\026\220a\220w\230a\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\320\024&\240d\250(\260&\270\001\330\014\020\220\004\320\024$\240D\250\010\260\006\260a\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\320\024$\240D\250\010\260\006\260a\330\014\020\220\004\220M\240\024\240X\250V\2601\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\220K\230t\2408\2506\260\021\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\220K\230t\2408\2506\260\021"; static const char __pyx_k_Action_r_must_be_a_ColorStreamAc[] = "Action %r must be a ColorStreamAction."; static const char __pyx_k_Incompatible_checksums_0x_x_vs_0[] = "Incompatible checksums (0x%x vs (0x5503a44, 0x9ea0a45, 0x4eca0a2) = (query_contains, query_endswith, query_eq, query_gt, query_gte, query_in, query_lt, query_lte, query_regex, query_startswith))"; +static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; +static const char __pyx_k_Pyx_CFunc_6hunter_11_predicate_2[] = "__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event"; static const char __pyx_k_Incompatible_checksums_0x_x_vs_0_2[] = "Incompatible checksums (0x%x vs (0xe710366, 0x7718bb4, 0xb55b71c) = (actions, condition))"; static const char __pyx_k_Incompatible_checksums_0x_x_vs_0_3[] = "Incompatible checksums (0x%x vs (0xcfd05cc, 0xd4c8954, 0x1acd5f7) = (condition, origin_calls, origin_depth, predicate, watermark))"; static const char __pyx_k_Incompatible_checksums_0x_x_vs_0_4[] = "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))"; @@ -3516,10 +4022,19 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_items = {0, 0, 0, 0, 0}; -static __Pyx_CachedCFunction __pyx_umethod_PyTuple_Type_index = {0, 0, 0, 0, 0}; /* #### Code section: late_includes ### */ /* #### Code section: module_state ### */ +/* SmallCodeConfig */ +#ifndef CYTHON_SMALL_CODE +#if defined(__clang__) + #define CYTHON_SMALL_CODE +#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + #define CYTHON_SMALL_CODE __attribute__((cold)) +#else + #define CYTHON_SMALL_CODE +#endif +#endif + typedef struct { PyObject *__pyx_d; PyObject *__pyx_b; @@ -3545,36 +4060,10 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_7cpython_4type_type; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - PyTypeObject *__pyx_ptype_6hunter_7_tracer_FrameType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_CodeType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_Tracer; - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_6hunter_6_event_Event; - #if CYTHON_USE_MODULE_STATE PyObject *__pyx_type_6hunter_11_predicates_Query; PyObject *__pyx_type_6hunter_11_predicates_And; PyObject *__pyx_type_6hunter_11_predicates_Or; @@ -3590,7 +4079,6 @@ typedef struct { PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; PyObject *__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; PyObject *__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; - #endif PyTypeObject *__pyx_ptype_6hunter_11_predicates_Query; PyTypeObject *__pyx_ptype_6hunter_11_predicates_And; PyTypeObject *__pyx_ptype_6hunter_11_predicates_Or; @@ -3606,213 +4094,12 @@ typedef struct { PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr; PyTypeObject *__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr; PyTypeObject *__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; - PyObject *__pyx_n_s_Action; - PyObject *__pyx_kp_s_Action_r_must_be_a_ColorStreamAc; - PyObject *__pyx_n_s_And; - PyObject *__pyx_n_s_And___reduce_cython; - PyObject *__pyx_n_s_And___setstate_cython; - PyObject *__pyx_kp_s_And_s; - PyObject *__pyx_n_s_Backlog; - PyObject *__pyx_n_s_Backlog___reduce_cython; - PyObject *__pyx_n_s_Backlog___setstate_cython; - PyObject *__pyx_n_s_Backlog_filter; - PyObject *__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s; - PyObject *__pyx_n_s_ColorStreamAction; - PyObject *__pyx_n_s_From; - PyObject *__pyx_n_s_From___reduce_cython; - PyObject *__pyx_n_s_From___setstate_cython; - PyObject *__pyx_kp_s_From_s_s_watermark_s; - PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0; - PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2; - PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3; - PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4; - PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5; - PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6; - PyObject *__pyx_kp_u_Must_be_one_of; - PyObject *__pyx_kp_s_Must_give_at_least_one_action; - PyObject *__pyx_n_s_Not; - PyObject *__pyx_n_s_Not___reduce_cython; - PyObject *__pyx_n_s_Not___setstate_cython; - PyObject *__pyx_kp_s_Not_s; - PyObject *__pyx_n_s_Or; - PyObject *__pyx_n_s_Or___reduce_cython; - PyObject *__pyx_n_s_Or___setstate_cython; - PyObject *__pyx_kp_s_Or_s; - PyObject *__pyx_n_s_PickleError; - PyObject *__pyx_n_s_Pyx_CFunc_6hunter_11_predicate; - PyObject *__pyx_n_s_Query; - PyObject *__pyx_n_s_QueryEntry; - PyObject *__pyx_n_s_QueryEntry___reduce_cython; - PyObject *__pyx_n_s_QueryEntry___setstate_cython; - PyObject *__pyx_n_s_Query___reduce_cython; - PyObject *__pyx_n_s_Query___setstate_cython; - PyObject *__pyx_kp_s_Query_s; - PyObject *__pyx_n_s_TypeError; - PyObject *__pyx_kp_u_Unexpected_argument; - PyObject *__pyx_kp_u_Unexpected_operator; - PyObject *__pyx_kp_u_Value; - PyObject *__pyx_n_s_ValueError; - PyObject *__pyx_n_s_When; - PyObject *__pyx_n_s_When___reduce_cython; - PyObject *__pyx_n_s_When___setstate_cython; - PyObject *__pyx_kp_s_When_s_s; - PyObject *__pyx_kp_s__10; - PyObject *__pyx_n_s__48; - PyObject *__pyx_n_s__5; - PyObject *__pyx_kp_u__6; - PyObject *__pyx_kp_u__7; - PyObject *__pyx_kp_s__8; - PyObject *__pyx_kp_s__9; - PyObject *__pyx_n_s_action; - PyObject *__pyx_n_s_actions; - PyObject *__pyx_n_s_all; - PyObject *__pyx_n_s_append; - PyObject *__pyx_n_s_appendleft; - PyObject *__pyx_n_s_arg; - PyObject *__pyx_n_s_args; - PyObject *__pyx_n_s_asyncio_coroutines; - PyObject *__pyx_n_s_builtin; - PyObject *__pyx_n_s_call; - PyObject *__pyx_n_s_calls; - PyObject *__pyx_n_s_cfunc_to_py; - PyObject *__pyx_n_s_cleanup; - PyObject *__pyx_n_s_clear; - PyObject *__pyx_n_s_cline_in_traceback; - PyObject *__pyx_n_s_close; - PyObject *__pyx_n_s_collections; - PyObject *__pyx_n_s_compile; - PyObject *__pyx_n_s_condition; - PyObject *__pyx_n_s_contains; - PyObject *__pyx_n_s_contains_2; - PyObject *__pyx_n_s_depth; - PyObject *__pyx_n_s_deque; - PyObject *__pyx_n_s_dict; - PyObject *__pyx_n_s_dict_2; - PyObject *__pyx_kp_u_disable; - PyObject *__pyx_kp_u_enable; - PyObject *__pyx_n_s_endswith; - PyObject *__pyx_n_s_endswith_2; - PyObject *__pyx_n_s_event; - PyObject *__pyx_n_s_ew; - PyObject *__pyx_n_s_f_back; - PyObject *__pyx_n_s_filename; - PyObject *__pyx_n_s_filter; - PyObject *__pyx_kp_u_for; - PyObject *__pyx_n_s_frame; - PyObject *__pyx_n_s_fullsource; - PyObject *__pyx_n_s_function; - PyObject *__pyx_kp_u_gc; - PyObject *__pyx_n_s_genexpr; - PyObject *__pyx_n_s_getstate; - PyObject *__pyx_n_s_globals; - PyObject *__pyx_n_s_gt; - PyObject *__pyx_n_s_gt_2; - PyObject *__pyx_n_s_gte; - PyObject *__pyx_n_s_gte_2; - PyObject *__pyx_n_s_has; - PyObject *__pyx_n_s_hunter; - PyObject *__pyx_n_s_hunter__predicates; - PyObject *__pyx_kp_s_hunter__predicates_And_predicat; - PyObject *__pyx_kp_s_hunter__predicates_From_conditi; - PyObject *__pyx_kp_s_hunter__predicates_Not_predicat; - PyObject *__pyx_kp_s_hunter__predicates_Or_predicate; - PyObject *__pyx_kp_s_hunter__predicates_When_conditi; - PyObject *__pyx_kp_s_hunter_predicates_Backlog_condi; - PyObject *__pyx_kp_s_hunter_predicates_Query_s; - PyObject *__pyx_n_s_import; - PyObject *__pyx_n_s_in; - PyObject *__pyx_n_s_in_2; - PyObject *__pyx_n_s_index; - PyObject *__pyx_n_s_init___locals_genexpr; - PyObject *__pyx_n_s_inspect; - PyObject *__pyx_n_s_instruction; - PyObject *__pyx_n_s_is_coroutine; - PyObject *__pyx_kp_u_is_invalid_Must_be_a_string_lis; - PyObject *__pyx_n_s_isclass; - PyObject *__pyx_kp_u_isenabled; - PyObject *__pyx_n_s_items; - PyObject *__pyx_n_s_join; - PyObject *__pyx_n_s_kind; - PyObject *__pyx_n_s_kwargs; - PyObject *__pyx_n_s_lineno; - PyObject *__pyx_n_s_locals; - PyObject *__pyx_n_s_lt; - PyObject *__pyx_n_s_lt_2; - PyObject *__pyx_n_s_lte; - PyObject *__pyx_n_s_lte_2; - PyObject *__pyx_n_s_main; - PyObject *__pyx_n_s_match; - PyObject *__pyx_n_s_maxlen; - PyObject *__pyx_n_s_merge; - PyObject *__pyx_n_s_module; - PyObject *__pyx_n_s_name; - PyObject *__pyx_n_s_name_2; - PyObject *__pyx_n_s_new; - PyObject *__pyx_n_s_pickle; - PyObject *__pyx_n_s_predicate; - PyObject *__pyx_n_s_predicates; - PyObject *__pyx_n_s_pyx_PickleError; - PyObject *__pyx_n_s_pyx_checksum; - PyObject *__pyx_n_s_pyx_result; - PyObject *__pyx_n_s_pyx_state; - PyObject *__pyx_n_s_pyx_type; - PyObject *__pyx_n_s_pyx_unpickle_And; - PyObject *__pyx_n_s_pyx_unpickle_Backlog; - PyObject *__pyx_n_s_pyx_unpickle_From; - PyObject *__pyx_n_s_pyx_unpickle_Not; - PyObject *__pyx_n_s_pyx_unpickle_Or; - PyObject *__pyx_n_s_pyx_unpickle_Query; - PyObject *__pyx_n_s_pyx_unpickle_When; - PyObject *__pyx_n_s_pyx_vtable; - PyObject *__pyx_kp_s_query_contains_r; - PyObject *__pyx_kp_s_query_endswith_r; - PyObject *__pyx_kp_s_query_eq_r; - PyObject *__pyx_kp_s_query_gt_r; - PyObject *__pyx_kp_s_query_gte_r; - PyObject *__pyx_kp_s_query_in_r; - PyObject *__pyx_kp_s_query_lt_r; - PyObject *__pyx_kp_s_query_lte_r; - PyObject *__pyx_kp_s_query_regex_r; - PyObject *__pyx_kp_s_query_startswith_r; - PyObject *__pyx_n_s_re; - PyObject *__pyx_n_s_re_compile; - PyObject *__pyx_n_s_reduce; - PyObject *__pyx_n_s_reduce_cython; - PyObject *__pyx_n_s_reduce_ex; - PyObject *__pyx_n_s_regex; - PyObject *__pyx_n_s_regex_2; - PyObject *__pyx_n_s_rx; - PyObject *__pyx_n_s_self; - PyObject *__pyx_kp_s_self_getter_cannot_be_converted; - PyObject *__pyx_n_s_send; - PyObject *__pyx_n_s_setstate; - PyObject *__pyx_n_s_setstate_cython; - PyObject *__pyx_n_s_size; - PyObject *__pyx_n_s_source; - PyObject *__pyx_n_s_split; - PyObject *__pyx_kp_s_src_hunter__predicates_pyx; - PyObject *__pyx_n_s_stack; - PyObject *__pyx_n_s_startswith; - PyObject *__pyx_n_s_startswith_2; - PyObject *__pyx_n_s_state; - PyObject *__pyx_n_s_stdlib; - PyObject *__pyx_n_s_str___locals_genexpr; - PyObject *__pyx_kp_s_stringsource; - PyObject *__pyx_n_s_strip; - PyObject *__pyx_n_s_sw; - PyObject *__pyx_n_s_test; - PyObject *__pyx_n_s_threadid; - PyObject *__pyx_n_s_threading_support; - PyObject *__pyx_n_s_threadname; - PyObject *__pyx_n_s_throw; - PyObject *__pyx_n_s_try_repr; - PyObject *__pyx_n_s_update; - PyObject *__pyx_n_s_use_setstate; - PyObject *__pyx_n_s_value; - PyObject *__pyx_n_s_vars; - PyObject *__pyx_n_s_watermark; - PyObject *__pyx_kp_u_with_optional_operators_like; - PyObject *__pyx_n_s_wrap; + __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_items; + __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; + __Pyx_CachedCFunction __pyx_umethod_PyTuple_Type__index; + PyObject *__pyx_tuple[9]; + PyObject *__pyx_codeobj_tab[151]; + PyObject *__pyx_string_tab[292]; PyObject *__pyx_int_0; PyObject *__pyx_int_10; PyObject *__pyx_int_100; @@ -3835,76 +4122,379 @@ typedef struct { PyObject *__pyx_int_242287462; PyObject *__pyx_int_258412278; PyObject *__pyx_int_neg_1; - PyObject *__pyx_tuple_; - PyObject *__pyx_tuple__13; - PyObject *__pyx_tuple__28; - PyObject *__pyx_tuple__30; - PyObject *__pyx_tuple__32; - PyObject *__pyx_tuple__34; - PyObject *__pyx_tuple__37; - PyObject *__pyx_tuple__39; - PyObject *__pyx_tuple__40; - PyObject *__pyx_tuple__41; - PyObject *__pyx_tuple__42; - PyObject *__pyx_tuple__43; - PyObject *__pyx_tuple__44; - PyObject *__pyx_tuple__45; - PyObject *__pyx_tuple__46; - PyObject *__pyx_tuple__47; - PyObject *__pyx_codeobj__2; - PyObject *__pyx_codeobj__3; - PyObject *__pyx_codeobj__4; - PyObject *__pyx_codeobj__11; - PyObject *__pyx_codeobj__12; - PyObject *__pyx_codeobj__14; - PyObject *__pyx_codeobj__15; - PyObject *__pyx_codeobj__16; - PyObject *__pyx_codeobj__17; - PyObject *__pyx_codeobj__18; - PyObject *__pyx_codeobj__19; - PyObject *__pyx_codeobj__20; - PyObject *__pyx_codeobj__21; - PyObject *__pyx_codeobj__22; - PyObject *__pyx_codeobj__23; - PyObject *__pyx_codeobj__24; - PyObject *__pyx_codeobj__25; - PyObject *__pyx_codeobj__26; - PyObject *__pyx_codeobj__27; - PyObject *__pyx_codeobj__29; - PyObject *__pyx_codeobj__31; - PyObject *__pyx_codeobj__33; - PyObject *__pyx_codeobj__35; - PyObject *__pyx_codeobj__36; - PyObject *__pyx_codeobj__38; -} __pyx_mstate; +/* #### Code section: module_state_contents ### */ +/* CommonTypesMetaclass.module_state_decls */ +PyTypeObject *__pyx_CommonTypesMetaclassType; + +/* CachedMethodType.module_state_decls */ +#if CYTHON_COMPILING_IN_LIMITED_API +PyObject *__Pyx_CachedMethodType; +#endif + + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[8]; +int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__; +#endif + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[8]; +int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr; +#endif + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[8]; +int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr; +#endif + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[8]; +int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr; +#endif + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[8]; +int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr; +#endif + +#if CYTHON_USE_FREELISTS +struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[8]; +int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr; +#endif + +#if CYTHON_USE_FREELISTS +struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[8]; +int __pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; +#endif +/* CodeObjectCache.module_state_decls */ +struct __Pyx_CodeObjectCache __pyx_code_cache; + +/* IterNextPlain.module_state_decls */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 +PyObject *__Pyx_GetBuiltinNext_LimitedAPI_cache; +#endif + +/* #### Code section: module_state_end ### */ +} __pyx_mstatetype; #if CYTHON_USE_MODULE_STATE #ifdef __cplusplus namespace { - extern struct PyModuleDef __pyx_moduledef; +extern struct PyModuleDef __pyx_moduledef; } /* anonymous namespace */ #else static struct PyModuleDef __pyx_moduledef; #endif -#define __pyx_mstate(o) ((__pyx_mstate *)__Pyx_PyModule_GetState(o)) +#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef))) -#define __pyx_mstate_global (__pyx_mstate(PyState_FindModule(&__pyx_moduledef))) - -#define __pyx_m (PyState_FindModule(&__pyx_moduledef)) +#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef)) #else -static __pyx_mstate __pyx_mstate_global_static = +static __pyx_mstatetype __pyx_mstate_global_static = #ifdef __cplusplus {}; #else {0}; #endif -static __pyx_mstate *__pyx_mstate_global = &__pyx_mstate_global_static; -#endif +static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_static; +#endif +/* #### Code section: constant_name_defines ### */ +#define __pyx_n_u_ __pyx_string_tab[0] +#define __pyx_n_u_ALLOWED_KEYS __pyx_string_tab[1] +#define __pyx_n_u_ALLOWED_OPERATORS __pyx_string_tab[2] +#define __pyx_n_u_Action __pyx_string_tab[3] +#define __pyx_kp_u_Action_r_must_be_a_ColorStreamAc __pyx_string_tab[4] +#define __pyx_n_u_And __pyx_string_tab[5] +#define __pyx_n_u_And___reduce_cython __pyx_string_tab[6] +#define __pyx_n_u_And___setstate_cython __pyx_string_tab[7] +#define __pyx_kp_u_And_s __pyx_string_tab[8] +#define __pyx_kp_u_Backlog __pyx_string_tab[9] +#define __pyx_n_u_Backlog_2 __pyx_string_tab[10] +#define __pyx_n_u_Backlog___reduce_cython __pyx_string_tab[11] +#define __pyx_n_u_Backlog___setstate_cython __pyx_string_tab[12] +#define __pyx_n_u_Backlog_filter __pyx_string_tab[13] +#define __pyx_n_u_ColorStreamAction __pyx_string_tab[14] +#define __pyx_n_u_Event_get_arg __pyx_string_tab[15] +#define __pyx_n_u_Event_get_builtin __pyx_string_tab[16] +#define __pyx_n_u_Event_get_calls __pyx_string_tab[17] +#define __pyx_n_u_Event_get_depth __pyx_string_tab[18] +#define __pyx_n_u_Event_get_filename __pyx_string_tab[19] +#define __pyx_n_u_Event_get_fullsource __pyx_string_tab[20] +#define __pyx_n_u_Event_get_function __pyx_string_tab[21] +#define __pyx_n_u_Event_get_globals __pyx_string_tab[22] +#define __pyx_n_u_Event_get_instruction __pyx_string_tab[23] +#define __pyx_n_u_Event_get_kind __pyx_string_tab[24] +#define __pyx_n_u_Event_get_lineno __pyx_string_tab[25] +#define __pyx_n_u_Event_get_locals __pyx_string_tab[26] +#define __pyx_n_u_Event_get_module __pyx_string_tab[27] +#define __pyx_n_u_Event_get_source __pyx_string_tab[28] +#define __pyx_n_u_Event_get_stdlib __pyx_string_tab[29] +#define __pyx_n_u_Event_get_threadid __pyx_string_tab[30] +#define __pyx_n_u_Event_get_threadname __pyx_string_tab[31] +#define __pyx_n_u_Event_getters __pyx_string_tab[32] +#define __pyx_n_u_False __pyx_string_tab[33] +#define __pyx_kp_u_From __pyx_string_tab[34] +#define __pyx_n_u_From_2 __pyx_string_tab[35] +#define __pyx_n_u_From___reduce_cython __pyx_string_tab[36] +#define __pyx_n_u_From___setstate_cython __pyx_string_tab[37] +#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0 __pyx_string_tab[38] +#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_2 __pyx_string_tab[39] +#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_3 __pyx_string_tab[40] +#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_4 __pyx_string_tab[41] +#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_5 __pyx_string_tab[42] +#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_6 __pyx_string_tab[43] +#define __pyx_kp_u_Must_be_one_of __pyx_string_tab[44] +#define __pyx_kp_u_Must_give_at_least_one_action __pyx_string_tab[45] +#define __pyx_n_u_Not __pyx_string_tab[46] +#define __pyx_n_u_Not___reduce_cython __pyx_string_tab[47] +#define __pyx_n_u_Not___setstate_cython __pyx_string_tab[48] +#define __pyx_kp_u_Not_s __pyx_string_tab[49] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[50] +#define __pyx_n_u_Or __pyx_string_tab[51] +#define __pyx_n_u_Or___reduce_cython __pyx_string_tab[52] +#define __pyx_n_u_Or___setstate_cython __pyx_string_tab[53] +#define __pyx_kp_u_Or_s __pyx_string_tab[54] +#define __pyx_n_u_PickleError __pyx_string_tab[55] +#define __pyx_n_u_Pyx_CFunc_6hunter_11_predicate __pyx_string_tab[56] +#define __pyx_n_u_Pyx_CFunc_6hunter_11_predicate_2 __pyx_string_tab[57] +#define __pyx_n_u_Query __pyx_string_tab[58] +#define __pyx_n_u_QueryEntry __pyx_string_tab[59] +#define __pyx_n_u_QueryEntry___reduce_cython __pyx_string_tab[60] +#define __pyx_n_u_QueryEntry___setstate_cython __pyx_string_tab[61] +#define __pyx_n_u_Query___reduce_cython __pyx_string_tab[62] +#define __pyx_n_u_Query___setstate_cython __pyx_string_tab[63] +#define __pyx_kp_u_Query_s __pyx_string_tab[64] +#define __pyx_n_u_True __pyx_string_tab[65] +#define __pyx_n_u_TypeError __pyx_string_tab[66] +#define __pyx_kp_u_Unexpected_argument __pyx_string_tab[67] +#define __pyx_kp_u_Unexpected_operator __pyx_string_tab[68] +#define __pyx_kp_u_Value __pyx_string_tab[69] +#define __pyx_n_u_ValueError __pyx_string_tab[70] +#define __pyx_kp_u_When __pyx_string_tab[71] +#define __pyx_n_u_When_2 __pyx_string_tab[72] +#define __pyx_n_u_When___reduce_cython __pyx_string_tab[73] +#define __pyx_n_u_When___setstate_cython __pyx_string_tab[74] +#define __pyx_kp_u__2 __pyx_string_tab[75] +#define __pyx_kp_u__3 __pyx_string_tab[76] +#define __pyx_kp_u__4 __pyx_string_tab[77] +#define __pyx_kp_u__5 __pyx_string_tab[78] +#define __pyx_kp_u__6 __pyx_string_tab[79] +#define __pyx_kp_u__7 __pyx_string_tab[80] +#define __pyx_kp_u__8 __pyx_string_tab[81] +#define __pyx_kp_u__9 __pyx_string_tab[82] +#define __pyx_n_u_action __pyx_string_tab[83] +#define __pyx_kp_u_action_2 __pyx_string_tab[84] +#define __pyx_kp_u_actions __pyx_string_tab[85] +#define __pyx_n_u_actions_2 __pyx_string_tab[86] +#define __pyx_kp_u_add_note __pyx_string_tab[87] +#define __pyx_n_u_all __pyx_string_tab[88] +#define __pyx_n_u_and __pyx_string_tab[89] +#define __pyx_n_u_append __pyx_string_tab[90] +#define __pyx_n_u_appendleft __pyx_string_tab[91] +#define __pyx_n_u_arg __pyx_string_tab[92] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[93] +#define __pyx_n_u_builtin __pyx_string_tab[94] +#define __pyx_n_u_call __pyx_string_tab[95] +#define __pyx_n_u_call_2 __pyx_string_tab[96] +#define __pyx_n_u_callable __pyx_string_tab[97] +#define __pyx_n_u_calls __pyx_string_tab[98] +#define __pyx_n_u_cfunc_to_py __pyx_string_tab[99] +#define __pyx_n_u_cleanup __pyx_string_tab[100] +#define __pyx_n_u_clear __pyx_string_tab[101] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[102] +#define __pyx_n_u_close __pyx_string_tab[103] +#define __pyx_n_u_collections __pyx_string_tab[104] +#define __pyx_n_u_compile __pyx_string_tab[105] +#define __pyx_n_u_condition __pyx_string_tab[106] +#define __pyx_n_u_contains __pyx_string_tab[107] +#define __pyx_n_u_contains_2 __pyx_string_tab[108] +#define __pyx_n_u_count __pyx_string_tab[109] +#define __pyx_n_u_depth __pyx_string_tab[110] +#define __pyx_n_u_deque __pyx_string_tab[111] +#define __pyx_n_u_dict __pyx_string_tab[112] +#define __pyx_n_u_dict_2 __pyx_string_tab[113] +#define __pyx_kp_u_disable __pyx_string_tab[114] +#define __pyx_kp_u_enable __pyx_string_tab[115] +#define __pyx_n_u_endswith __pyx_string_tab[116] +#define __pyx_n_u_endswith_2 __pyx_string_tab[117] +#define __pyx_n_u_eq __pyx_string_tab[118] +#define __pyx_n_u_event __pyx_string_tab[119] +#define __pyx_n_u_ew __pyx_string_tab[120] +#define __pyx_n_u_f __pyx_string_tab[121] +#define __pyx_n_u_f_back __pyx_string_tab[122] +#define __pyx_n_u_fast_And_call __pyx_string_tab[123] +#define __pyx_n_u_fast_Backlog_call __pyx_string_tab[124] +#define __pyx_n_u_fast_From_call __pyx_string_tab[125] +#define __pyx_n_u_fast_Not_call __pyx_string_tab[126] +#define __pyx_n_u_fast_Or_call __pyx_string_tab[127] +#define __pyx_n_u_fast_Query_call __pyx_string_tab[128] +#define __pyx_n_u_fast_When_call __pyx_string_tab[129] +#define __pyx_n_u_fast_call __pyx_string_tab[130] +#define __pyx_n_u_filename __pyx_string_tab[131] +#define __pyx_n_u_filter __pyx_string_tab[132] +#define __pyx_kp_u_filter_2 __pyx_string_tab[133] +#define __pyx_n_u_fmt __pyx_string_tab[134] +#define __pyx_kp_u_for __pyx_string_tab[135] +#define __pyx_n_u_frame __pyx_string_tab[136] +#define __pyx_n_u_fullsource __pyx_string_tab[137] +#define __pyx_n_u_func __pyx_string_tab[138] +#define __pyx_n_u_function __pyx_string_tab[139] +#define __pyx_kp_u_gc __pyx_string_tab[140] +#define __pyx_n_u_genexpr __pyx_string_tab[141] +#define __pyx_n_u_get __pyx_string_tab[142] +#define __pyx_n_u_getstate __pyx_string_tab[143] +#define __pyx_n_u_globals __pyx_string_tab[144] +#define __pyx_n_u_gt __pyx_string_tab[145] +#define __pyx_n_u_gt_2 __pyx_string_tab[146] +#define __pyx_n_u_gte __pyx_string_tab[147] +#define __pyx_n_u_gte_2 __pyx_string_tab[148] +#define __pyx_n_u_has __pyx_string_tab[149] +#define __pyx_n_u_hunter __pyx_string_tab[150] +#define __pyx_n_u_hunter__predicates __pyx_string_tab[151] +#define __pyx_kp_u_hunter__predicates_And_predicat __pyx_string_tab[152] +#define __pyx_kp_u_hunter__predicates_From_conditi __pyx_string_tab[153] +#define __pyx_kp_u_hunter__predicates_Not_predicat __pyx_string_tab[154] +#define __pyx_kp_u_hunter__predicates_Or_predicate __pyx_string_tab[155] +#define __pyx_kp_u_hunter__predicates_When_conditi __pyx_string_tab[156] +#define __pyx_kp_u_hunter_predicates_Backlog_condi __pyx_string_tab[157] +#define __pyx_kp_u_hunter_predicates_Query_s __pyx_string_tab[158] +#define __pyx_n_u_in __pyx_string_tab[159] +#define __pyx_n_u_in_2 __pyx_string_tab[160] +#define __pyx_n_u_index __pyx_string_tab[161] +#define __pyx_n_u_init __pyx_string_tab[162] +#define __pyx_n_u_init___locals_genexpr __pyx_string_tab[163] +#define __pyx_n_u_inspect __pyx_string_tab[164] +#define __pyx_n_u_instruction __pyx_string_tab[165] +#define __pyx_n_u_invert __pyx_string_tab[166] +#define __pyx_n_u_is_coroutine __pyx_string_tab[167] +#define __pyx_kp_u_is_invalid_Must_be_a_string_lis __pyx_string_tab[168] +#define __pyx_n_u_isclass __pyx_string_tab[169] +#define __pyx_kp_u_isenabled __pyx_string_tab[170] +#define __pyx_n_u_items __pyx_string_tab[171] +#define __pyx_n_u_key __pyx_string_tab[172] +#define __pyx_n_u_kind __pyx_string_tab[173] +#define __pyx_n_u_kwargs __pyx_string_tab[174] +#define __pyx_n_u_lineno __pyx_string_tab[175] +#define __pyx_n_u_locals __pyx_string_tab[176] +#define __pyx_n_u_lt __pyx_string_tab[177] +#define __pyx_n_u_lt_2 __pyx_string_tab[178] +#define __pyx_n_u_lte __pyx_string_tab[179] +#define __pyx_n_u_lte_2 __pyx_string_tab[180] +#define __pyx_n_u_main __pyx_string_tab[181] +#define __pyx_n_u_mapping __pyx_string_tab[182] +#define __pyx_n_u_match __pyx_string_tab[183] +#define __pyx_n_u_maxlen __pyx_string_tab[184] +#define __pyx_n_u_merge __pyx_string_tab[185] +#define __pyx_n_u_module __pyx_string_tab[186] +#define __pyx_n_u_module_2 __pyx_string_tab[187] +#define __pyx_n_u_name __pyx_string_tab[188] +#define __pyx_n_u_name_2 __pyx_string_tab[189] +#define __pyx_n_u_new __pyx_string_tab[190] +#define __pyx_n_u_next __pyx_string_tab[191] +#define __pyx_n_u_operator __pyx_string_tab[192] +#define __pyx_n_u_or __pyx_string_tab[193] +#define __pyx_n_u_other __pyx_string_tab[194] +#define __pyx_n_u_p __pyx_string_tab[195] +#define __pyx_n_u_parts __pyx_string_tab[196] +#define __pyx_n_u_pickle __pyx_string_tab[197] +#define __pyx_n_u_pop __pyx_string_tab[198] +#define __pyx_n_u_predicate __pyx_string_tab[199] +#define __pyx_kp_u_predicate_2 __pyx_string_tab[200] +#define __pyx_n_u_predicates __pyx_string_tab[201] +#define __pyx_n_u_prefix __pyx_string_tab[202] +#define __pyx_n_u_pyx_PickleError __pyx_string_tab[203] +#define __pyx_n_u_pyx_checksum __pyx_string_tab[204] +#define __pyx_n_u_pyx_result __pyx_string_tab[205] +#define __pyx_n_u_pyx_state __pyx_string_tab[206] +#define __pyx_n_u_pyx_type __pyx_string_tab[207] +#define __pyx_n_u_pyx_unpickle_And __pyx_string_tab[208] +#define __pyx_n_u_pyx_unpickle_And__set_state __pyx_string_tab[209] +#define __pyx_n_u_pyx_unpickle_Backlog __pyx_string_tab[210] +#define __pyx_n_u_pyx_unpickle_Backlog__set_stat __pyx_string_tab[211] +#define __pyx_n_u_pyx_unpickle_From __pyx_string_tab[212] +#define __pyx_n_u_pyx_unpickle_From__set_state __pyx_string_tab[213] +#define __pyx_n_u_pyx_unpickle_Not __pyx_string_tab[214] +#define __pyx_n_u_pyx_unpickle_Not__set_state __pyx_string_tab[215] +#define __pyx_n_u_pyx_unpickle_Or __pyx_string_tab[216] +#define __pyx_n_u_pyx_unpickle_Or__set_state __pyx_string_tab[217] +#define __pyx_n_u_pyx_unpickle_Query __pyx_string_tab[218] +#define __pyx_n_u_pyx_unpickle_Query__set_state __pyx_string_tab[219] +#define __pyx_n_u_pyx_unpickle_When __pyx_string_tab[220] +#define __pyx_n_u_pyx_unpickle_When__set_state __pyx_string_tab[221] +#define __pyx_n_u_pyx_vtable __pyx_string_tab[222] +#define __pyx_n_u_qualname __pyx_string_tab[223] +#define __pyx_n_u_query __pyx_string_tab[224] +#define __pyx_n_u_query_contains __pyx_string_tab[225] +#define __pyx_kp_u_query_contains_r __pyx_string_tab[226] +#define __pyx_n_u_query_endswith __pyx_string_tab[227] +#define __pyx_kp_u_query_endswith_r __pyx_string_tab[228] +#define __pyx_n_u_query_eq __pyx_string_tab[229] +#define __pyx_kp_u_query_eq_r __pyx_string_tab[230] +#define __pyx_n_u_query_gt __pyx_string_tab[231] +#define __pyx_kp_u_query_gt_r __pyx_string_tab[232] +#define __pyx_n_u_query_gte __pyx_string_tab[233] +#define __pyx_kp_u_query_gte_r __pyx_string_tab[234] +#define __pyx_n_u_query_in __pyx_string_tab[235] +#define __pyx_kp_u_query_in_r __pyx_string_tab[236] +#define __pyx_n_u_query_lt __pyx_string_tab[237] +#define __pyx_kp_u_query_lt_r __pyx_string_tab[238] +#define __pyx_n_u_query_lte __pyx_string_tab[239] +#define __pyx_kp_u_query_lte_r __pyx_string_tab[240] +#define __pyx_n_u_query_regex __pyx_string_tab[241] +#define __pyx_kp_u_query_regex_r __pyx_string_tab[242] +#define __pyx_n_u_query_startswith __pyx_string_tab[243] +#define __pyx_kp_u_query_startswith_r __pyx_string_tab[244] +#define __pyx_n_u_re __pyx_string_tab[245] +#define __pyx_n_u_re_compile __pyx_string_tab[246] +#define __pyx_n_u_reduce __pyx_string_tab[247] +#define __pyx_n_u_reduce_cython __pyx_string_tab[248] +#define __pyx_n_u_reduce_ex __pyx_string_tab[249] +#define __pyx_n_u_regex __pyx_string_tab[250] +#define __pyx_n_u_regex_2 __pyx_string_tab[251] +#define __pyx_n_u_repr __pyx_string_tab[252] +#define __pyx_n_u_rx __pyx_string_tab[253] +#define __pyx_n_u_self __pyx_string_tab[254] +#define __pyx_kp_u_self_getter_cannot_be_converted __pyx_string_tab[255] +#define __pyx_n_u_send __pyx_string_tab[256] +#define __pyx_n_u_set_name __pyx_string_tab[257] +#define __pyx_n_u_setstate __pyx_string_tab[258] +#define __pyx_n_u_setstate_cython __pyx_string_tab[259] +#define __pyx_n_u_size __pyx_string_tab[260] +#define __pyx_kp_u_size_2 __pyx_string_tab[261] +#define __pyx_n_u_source __pyx_string_tab[262] +#define __pyx_n_u_split __pyx_string_tab[263] +#define __pyx_kp_u_src_hunter__predicates_pxd __pyx_string_tab[264] +#define __pyx_kp_u_src_hunter__predicates_pyx __pyx_string_tab[265] +#define __pyx_n_u_stack __pyx_string_tab[266] +#define __pyx_kp_u_stack_2 __pyx_string_tab[267] +#define __pyx_n_u_startswith __pyx_string_tab[268] +#define __pyx_n_u_startswith_2 __pyx_string_tab[269] +#define __pyx_n_u_state __pyx_string_tab[270] +#define __pyx_n_u_stdlib __pyx_string_tab[271] +#define __pyx_n_u_str __pyx_string_tab[272] +#define __pyx_n_u_str___locals_genexpr __pyx_string_tab[273] +#define __pyx_kp_u_stringsource __pyx_string_tab[274] +#define __pyx_n_u_strip __pyx_string_tab[275] +#define __pyx_n_u_sw __pyx_string_tab[276] +#define __pyx_n_u_test __pyx_string_tab[277] +#define __pyx_n_u_threadid __pyx_string_tab[278] +#define __pyx_n_u_threading_support __pyx_string_tab[279] +#define __pyx_n_u_threadname __pyx_string_tab[280] +#define __pyx_n_u_throw __pyx_string_tab[281] +#define __pyx_n_u_try_repr __pyx_string_tab[282] +#define __pyx_n_u_update __pyx_string_tab[283] +#define __pyx_n_u_use_setstate __pyx_string_tab[284] +#define __pyx_n_u_value __pyx_string_tab[285] +#define __pyx_n_u_vars __pyx_string_tab[286] +#define __pyx_kp_u_vars_2 __pyx_string_tab[287] +#define __pyx_n_u_watermark __pyx_string_tab[288] +#define __pyx_kp_u_watermark_2 __pyx_string_tab[289] +#define __pyx_kp_u_with_optional_operators_like __pyx_string_tab[290] +#define __pyx_n_u_wrap __pyx_string_tab[291] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_clear(PyObject *m) { - __pyx_mstate *clear_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { + __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m); if (!clear_module_state) return 0; Py_CLEAR(clear_module_state->__pyx_d); Py_CLEAR(clear_module_state->__pyx_b); @@ -3918,8 +4508,10 @@ static int __pyx_m_clear(PyObject *m) { #ifdef __Pyx_FusedFunction_USED Py_CLEAR(clear_module_state->__pyx_FusedFunctionType); #endif + #if CYTHON_PEP489_MULTI_PHASE_INIT + __Pyx_State_RemoveModule(NULL); + #endif Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); @@ -3953,213 +4545,9 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr); Py_CLEAR(clear_module_state->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); Py_CLEAR(clear_module_state->__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); - Py_CLEAR(clear_module_state->__pyx_n_s_Action); - Py_CLEAR(clear_module_state->__pyx_kp_s_Action_r_must_be_a_ColorStreamAc); - Py_CLEAR(clear_module_state->__pyx_n_s_And); - Py_CLEAR(clear_module_state->__pyx_n_s_And___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_And___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_And_s); - Py_CLEAR(clear_module_state->__pyx_n_s_Backlog); - Py_CLEAR(clear_module_state->__pyx_n_s_Backlog___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Backlog___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Backlog_filter); - Py_CLEAR(clear_module_state->__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s); - Py_CLEAR(clear_module_state->__pyx_n_s_ColorStreamAction); - Py_CLEAR(clear_module_state->__pyx_n_s_From); - Py_CLEAR(clear_module_state->__pyx_n_s_From___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_From___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_From_s_s_watermark_s); - Py_CLEAR(clear_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0); - Py_CLEAR(clear_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2); - Py_CLEAR(clear_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3); - Py_CLEAR(clear_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4); - Py_CLEAR(clear_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5); - Py_CLEAR(clear_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6); - Py_CLEAR(clear_module_state->__pyx_kp_u_Must_be_one_of); - Py_CLEAR(clear_module_state->__pyx_kp_s_Must_give_at_least_one_action); - Py_CLEAR(clear_module_state->__pyx_n_s_Not); - Py_CLEAR(clear_module_state->__pyx_n_s_Not___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Not___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_Not_s); - Py_CLEAR(clear_module_state->__pyx_n_s_Or); - Py_CLEAR(clear_module_state->__pyx_n_s_Or___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Or___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_Or_s); - Py_CLEAR(clear_module_state->__pyx_n_s_PickleError); - Py_CLEAR(clear_module_state->__pyx_n_s_Pyx_CFunc_6hunter_11_predicate); - Py_CLEAR(clear_module_state->__pyx_n_s_Query); - Py_CLEAR(clear_module_state->__pyx_n_s_QueryEntry); - Py_CLEAR(clear_module_state->__pyx_n_s_QueryEntry___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_QueryEntry___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Query___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Query___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_Query_s); - Py_CLEAR(clear_module_state->__pyx_n_s_TypeError); - Py_CLEAR(clear_module_state->__pyx_kp_u_Unexpected_argument); - Py_CLEAR(clear_module_state->__pyx_kp_u_Unexpected_operator); - Py_CLEAR(clear_module_state->__pyx_kp_u_Value); - Py_CLEAR(clear_module_state->__pyx_n_s_ValueError); - Py_CLEAR(clear_module_state->__pyx_n_s_When); - Py_CLEAR(clear_module_state->__pyx_n_s_When___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_When___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_When_s_s); - Py_CLEAR(clear_module_state->__pyx_kp_s__10); - Py_CLEAR(clear_module_state->__pyx_n_s__48); - Py_CLEAR(clear_module_state->__pyx_n_s__5); - Py_CLEAR(clear_module_state->__pyx_kp_u__6); - Py_CLEAR(clear_module_state->__pyx_kp_u__7); - Py_CLEAR(clear_module_state->__pyx_kp_s__8); - Py_CLEAR(clear_module_state->__pyx_kp_s__9); - Py_CLEAR(clear_module_state->__pyx_n_s_action); - Py_CLEAR(clear_module_state->__pyx_n_s_actions); - Py_CLEAR(clear_module_state->__pyx_n_s_all); - Py_CLEAR(clear_module_state->__pyx_n_s_append); - Py_CLEAR(clear_module_state->__pyx_n_s_appendleft); - Py_CLEAR(clear_module_state->__pyx_n_s_arg); - Py_CLEAR(clear_module_state->__pyx_n_s_args); - Py_CLEAR(clear_module_state->__pyx_n_s_asyncio_coroutines); - Py_CLEAR(clear_module_state->__pyx_n_s_builtin); - Py_CLEAR(clear_module_state->__pyx_n_s_call); - Py_CLEAR(clear_module_state->__pyx_n_s_calls); - Py_CLEAR(clear_module_state->__pyx_n_s_cfunc_to_py); - Py_CLEAR(clear_module_state->__pyx_n_s_cleanup); - Py_CLEAR(clear_module_state->__pyx_n_s_clear); - Py_CLEAR(clear_module_state->__pyx_n_s_cline_in_traceback); - Py_CLEAR(clear_module_state->__pyx_n_s_close); - Py_CLEAR(clear_module_state->__pyx_n_s_collections); - Py_CLEAR(clear_module_state->__pyx_n_s_compile); - Py_CLEAR(clear_module_state->__pyx_n_s_condition); - Py_CLEAR(clear_module_state->__pyx_n_s_contains); - Py_CLEAR(clear_module_state->__pyx_n_s_contains_2); - Py_CLEAR(clear_module_state->__pyx_n_s_depth); - Py_CLEAR(clear_module_state->__pyx_n_s_deque); - Py_CLEAR(clear_module_state->__pyx_n_s_dict); - Py_CLEAR(clear_module_state->__pyx_n_s_dict_2); - Py_CLEAR(clear_module_state->__pyx_kp_u_disable); - Py_CLEAR(clear_module_state->__pyx_kp_u_enable); - Py_CLEAR(clear_module_state->__pyx_n_s_endswith); - Py_CLEAR(clear_module_state->__pyx_n_s_endswith_2); - Py_CLEAR(clear_module_state->__pyx_n_s_event); - Py_CLEAR(clear_module_state->__pyx_n_s_ew); - Py_CLEAR(clear_module_state->__pyx_n_s_f_back); - Py_CLEAR(clear_module_state->__pyx_n_s_filename); - Py_CLEAR(clear_module_state->__pyx_n_s_filter); - Py_CLEAR(clear_module_state->__pyx_kp_u_for); - Py_CLEAR(clear_module_state->__pyx_n_s_frame); - Py_CLEAR(clear_module_state->__pyx_n_s_fullsource); - Py_CLEAR(clear_module_state->__pyx_n_s_function); - Py_CLEAR(clear_module_state->__pyx_kp_u_gc); - Py_CLEAR(clear_module_state->__pyx_n_s_genexpr); - Py_CLEAR(clear_module_state->__pyx_n_s_getstate); - Py_CLEAR(clear_module_state->__pyx_n_s_globals); - Py_CLEAR(clear_module_state->__pyx_n_s_gt); - Py_CLEAR(clear_module_state->__pyx_n_s_gt_2); - Py_CLEAR(clear_module_state->__pyx_n_s_gte); - Py_CLEAR(clear_module_state->__pyx_n_s_gte_2); - Py_CLEAR(clear_module_state->__pyx_n_s_has); - Py_CLEAR(clear_module_state->__pyx_n_s_hunter); - Py_CLEAR(clear_module_state->__pyx_n_s_hunter__predicates); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter__predicates_And_predicat); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter__predicates_From_conditi); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter__predicates_Not_predicat); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter__predicates_Or_predicate); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter__predicates_When_conditi); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter_predicates_Backlog_condi); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter_predicates_Query_s); - Py_CLEAR(clear_module_state->__pyx_n_s_import); - Py_CLEAR(clear_module_state->__pyx_n_s_in); - Py_CLEAR(clear_module_state->__pyx_n_s_in_2); - Py_CLEAR(clear_module_state->__pyx_n_s_index); - Py_CLEAR(clear_module_state->__pyx_n_s_init___locals_genexpr); - Py_CLEAR(clear_module_state->__pyx_n_s_inspect); - Py_CLEAR(clear_module_state->__pyx_n_s_instruction); - Py_CLEAR(clear_module_state->__pyx_n_s_is_coroutine); - Py_CLEAR(clear_module_state->__pyx_kp_u_is_invalid_Must_be_a_string_lis); - Py_CLEAR(clear_module_state->__pyx_n_s_isclass); - Py_CLEAR(clear_module_state->__pyx_kp_u_isenabled); - Py_CLEAR(clear_module_state->__pyx_n_s_items); - Py_CLEAR(clear_module_state->__pyx_n_s_join); - Py_CLEAR(clear_module_state->__pyx_n_s_kind); - Py_CLEAR(clear_module_state->__pyx_n_s_kwargs); - Py_CLEAR(clear_module_state->__pyx_n_s_lineno); - Py_CLEAR(clear_module_state->__pyx_n_s_locals); - Py_CLEAR(clear_module_state->__pyx_n_s_lt); - Py_CLEAR(clear_module_state->__pyx_n_s_lt_2); - Py_CLEAR(clear_module_state->__pyx_n_s_lte); - Py_CLEAR(clear_module_state->__pyx_n_s_lte_2); - Py_CLEAR(clear_module_state->__pyx_n_s_main); - Py_CLEAR(clear_module_state->__pyx_n_s_match); - Py_CLEAR(clear_module_state->__pyx_n_s_maxlen); - Py_CLEAR(clear_module_state->__pyx_n_s_merge); - Py_CLEAR(clear_module_state->__pyx_n_s_module); - Py_CLEAR(clear_module_state->__pyx_n_s_name); - Py_CLEAR(clear_module_state->__pyx_n_s_name_2); - Py_CLEAR(clear_module_state->__pyx_n_s_new); - Py_CLEAR(clear_module_state->__pyx_n_s_pickle); - Py_CLEAR(clear_module_state->__pyx_n_s_predicate); - Py_CLEAR(clear_module_state->__pyx_n_s_predicates); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_PickleError); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_checksum); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_result); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_state); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_type); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_And); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_Backlog); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_From); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_Not); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_Or); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_Query); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_unpickle_When); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_vtable); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_contains_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_endswith_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_eq_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_gt_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_gte_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_in_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_lt_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_lte_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_regex_r); - Py_CLEAR(clear_module_state->__pyx_kp_s_query_startswith_r); - Py_CLEAR(clear_module_state->__pyx_n_s_re); - Py_CLEAR(clear_module_state->__pyx_n_s_re_compile); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce_ex); - Py_CLEAR(clear_module_state->__pyx_n_s_regex); - Py_CLEAR(clear_module_state->__pyx_n_s_regex_2); - Py_CLEAR(clear_module_state->__pyx_n_s_rx); - Py_CLEAR(clear_module_state->__pyx_n_s_self); - Py_CLEAR(clear_module_state->__pyx_kp_s_self_getter_cannot_be_converted); - Py_CLEAR(clear_module_state->__pyx_n_s_send); - Py_CLEAR(clear_module_state->__pyx_n_s_setstate); - Py_CLEAR(clear_module_state->__pyx_n_s_setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_size); - Py_CLEAR(clear_module_state->__pyx_n_s_source); - Py_CLEAR(clear_module_state->__pyx_n_s_split); - Py_CLEAR(clear_module_state->__pyx_kp_s_src_hunter__predicates_pyx); - Py_CLEAR(clear_module_state->__pyx_n_s_stack); - Py_CLEAR(clear_module_state->__pyx_n_s_startswith); - Py_CLEAR(clear_module_state->__pyx_n_s_startswith_2); - Py_CLEAR(clear_module_state->__pyx_n_s_state); - Py_CLEAR(clear_module_state->__pyx_n_s_stdlib); - Py_CLEAR(clear_module_state->__pyx_n_s_str___locals_genexpr); - Py_CLEAR(clear_module_state->__pyx_kp_s_stringsource); - Py_CLEAR(clear_module_state->__pyx_n_s_strip); - Py_CLEAR(clear_module_state->__pyx_n_s_sw); - Py_CLEAR(clear_module_state->__pyx_n_s_test); - Py_CLEAR(clear_module_state->__pyx_n_s_threadid); - Py_CLEAR(clear_module_state->__pyx_n_s_threading_support); - Py_CLEAR(clear_module_state->__pyx_n_s_threadname); - Py_CLEAR(clear_module_state->__pyx_n_s_throw); - Py_CLEAR(clear_module_state->__pyx_n_s_try_repr); - Py_CLEAR(clear_module_state->__pyx_n_s_update); - Py_CLEAR(clear_module_state->__pyx_n_s_use_setstate); - Py_CLEAR(clear_module_state->__pyx_n_s_value); - Py_CLEAR(clear_module_state->__pyx_n_s_vars); - Py_CLEAR(clear_module_state->__pyx_n_s_watermark); - Py_CLEAR(clear_module_state->__pyx_kp_u_with_optional_operators_like); - Py_CLEAR(clear_module_state->__pyx_n_s_wrap); + for (int i=0; i<9; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } + for (int i=0; i<151; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<292; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_0); Py_CLEAR(clear_module_state->__pyx_int_10); Py_CLEAR(clear_module_state->__pyx_int_100); @@ -4182,61 +4570,20 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_int_242287462); Py_CLEAR(clear_module_state->__pyx_int_258412278); Py_CLEAR(clear_module_state->__pyx_int_neg_1); - Py_CLEAR(clear_module_state->__pyx_tuple_); - Py_CLEAR(clear_module_state->__pyx_tuple__13); - Py_CLEAR(clear_module_state->__pyx_tuple__28); - Py_CLEAR(clear_module_state->__pyx_tuple__30); - Py_CLEAR(clear_module_state->__pyx_tuple__32); - Py_CLEAR(clear_module_state->__pyx_tuple__34); - Py_CLEAR(clear_module_state->__pyx_tuple__37); - Py_CLEAR(clear_module_state->__pyx_tuple__39); - Py_CLEAR(clear_module_state->__pyx_tuple__40); - Py_CLEAR(clear_module_state->__pyx_tuple__41); - Py_CLEAR(clear_module_state->__pyx_tuple__42); - Py_CLEAR(clear_module_state->__pyx_tuple__43); - Py_CLEAR(clear_module_state->__pyx_tuple__44); - Py_CLEAR(clear_module_state->__pyx_tuple__45); - Py_CLEAR(clear_module_state->__pyx_tuple__46); - Py_CLEAR(clear_module_state->__pyx_tuple__47); - Py_CLEAR(clear_module_state->__pyx_codeobj__2); - Py_CLEAR(clear_module_state->__pyx_codeobj__3); - Py_CLEAR(clear_module_state->__pyx_codeobj__4); - Py_CLEAR(clear_module_state->__pyx_codeobj__11); - Py_CLEAR(clear_module_state->__pyx_codeobj__12); - Py_CLEAR(clear_module_state->__pyx_codeobj__14); - Py_CLEAR(clear_module_state->__pyx_codeobj__15); - Py_CLEAR(clear_module_state->__pyx_codeobj__16); - Py_CLEAR(clear_module_state->__pyx_codeobj__17); - Py_CLEAR(clear_module_state->__pyx_codeobj__18); - Py_CLEAR(clear_module_state->__pyx_codeobj__19); - Py_CLEAR(clear_module_state->__pyx_codeobj__20); - Py_CLEAR(clear_module_state->__pyx_codeobj__21); - Py_CLEAR(clear_module_state->__pyx_codeobj__22); - Py_CLEAR(clear_module_state->__pyx_codeobj__23); - Py_CLEAR(clear_module_state->__pyx_codeobj__24); - Py_CLEAR(clear_module_state->__pyx_codeobj__25); - Py_CLEAR(clear_module_state->__pyx_codeobj__26); - Py_CLEAR(clear_module_state->__pyx_codeobj__27); - Py_CLEAR(clear_module_state->__pyx_codeobj__29); - Py_CLEAR(clear_module_state->__pyx_codeobj__31); - Py_CLEAR(clear_module_state->__pyx_codeobj__33); - Py_CLEAR(clear_module_state->__pyx_codeobj__35); - Py_CLEAR(clear_module_state->__pyx_codeobj__36); - Py_CLEAR(clear_module_state->__pyx_codeobj__38); return 0; } #endif /* #### Code section: module_state_traverse ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { - __pyx_mstate *traverse_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { + __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m); if (!traverse_module_state) return 0; Py_VISIT(traverse_module_state->__pyx_d); Py_VISIT(traverse_module_state->__pyx_b); Py_VISIT(traverse_module_state->__pyx_cython_runtime); - Py_VISIT(traverse_module_state->__pyx_empty_tuple); - Py_VISIT(traverse_module_state->__pyx_empty_bytes); - Py_VISIT(traverse_module_state->__pyx_empty_unicode); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode); #ifdef __Pyx_CyFunction_USED Py_VISIT(traverse_module_state->__pyx_CyFunctionType); #endif @@ -4244,7 +4591,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); @@ -4278,635 +4624,34 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr); Py_VISIT(traverse_module_state->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); Py_VISIT(traverse_module_state->__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event); - Py_VISIT(traverse_module_state->__pyx_n_s_Action); - Py_VISIT(traverse_module_state->__pyx_kp_s_Action_r_must_be_a_ColorStreamAc); - Py_VISIT(traverse_module_state->__pyx_n_s_And); - Py_VISIT(traverse_module_state->__pyx_n_s_And___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_And___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_And_s); - Py_VISIT(traverse_module_state->__pyx_n_s_Backlog); - Py_VISIT(traverse_module_state->__pyx_n_s_Backlog___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Backlog___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Backlog_filter); - Py_VISIT(traverse_module_state->__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s); - Py_VISIT(traverse_module_state->__pyx_n_s_ColorStreamAction); - Py_VISIT(traverse_module_state->__pyx_n_s_From); - Py_VISIT(traverse_module_state->__pyx_n_s_From___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_From___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_From_s_s_watermark_s); - Py_VISIT(traverse_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0); - Py_VISIT(traverse_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2); - Py_VISIT(traverse_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3); - Py_VISIT(traverse_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4); - Py_VISIT(traverse_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5); - Py_VISIT(traverse_module_state->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6); - Py_VISIT(traverse_module_state->__pyx_kp_u_Must_be_one_of); - Py_VISIT(traverse_module_state->__pyx_kp_s_Must_give_at_least_one_action); - Py_VISIT(traverse_module_state->__pyx_n_s_Not); - Py_VISIT(traverse_module_state->__pyx_n_s_Not___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Not___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_Not_s); - Py_VISIT(traverse_module_state->__pyx_n_s_Or); - Py_VISIT(traverse_module_state->__pyx_n_s_Or___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Or___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_Or_s); - Py_VISIT(traverse_module_state->__pyx_n_s_PickleError); - Py_VISIT(traverse_module_state->__pyx_n_s_Pyx_CFunc_6hunter_11_predicate); - Py_VISIT(traverse_module_state->__pyx_n_s_Query); - Py_VISIT(traverse_module_state->__pyx_n_s_QueryEntry); - Py_VISIT(traverse_module_state->__pyx_n_s_QueryEntry___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_QueryEntry___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Query___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Query___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_Query_s); - Py_VISIT(traverse_module_state->__pyx_n_s_TypeError); - Py_VISIT(traverse_module_state->__pyx_kp_u_Unexpected_argument); - Py_VISIT(traverse_module_state->__pyx_kp_u_Unexpected_operator); - Py_VISIT(traverse_module_state->__pyx_kp_u_Value); - Py_VISIT(traverse_module_state->__pyx_n_s_ValueError); - Py_VISIT(traverse_module_state->__pyx_n_s_When); - Py_VISIT(traverse_module_state->__pyx_n_s_When___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_When___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_When_s_s); - Py_VISIT(traverse_module_state->__pyx_kp_s__10); - Py_VISIT(traverse_module_state->__pyx_n_s__48); - Py_VISIT(traverse_module_state->__pyx_n_s__5); - Py_VISIT(traverse_module_state->__pyx_kp_u__6); - Py_VISIT(traverse_module_state->__pyx_kp_u__7); - Py_VISIT(traverse_module_state->__pyx_kp_s__8); - Py_VISIT(traverse_module_state->__pyx_kp_s__9); - Py_VISIT(traverse_module_state->__pyx_n_s_action); - Py_VISIT(traverse_module_state->__pyx_n_s_actions); - Py_VISIT(traverse_module_state->__pyx_n_s_all); - Py_VISIT(traverse_module_state->__pyx_n_s_append); - Py_VISIT(traverse_module_state->__pyx_n_s_appendleft); - Py_VISIT(traverse_module_state->__pyx_n_s_arg); - Py_VISIT(traverse_module_state->__pyx_n_s_args); - Py_VISIT(traverse_module_state->__pyx_n_s_asyncio_coroutines); - Py_VISIT(traverse_module_state->__pyx_n_s_builtin); - Py_VISIT(traverse_module_state->__pyx_n_s_call); - Py_VISIT(traverse_module_state->__pyx_n_s_calls); - Py_VISIT(traverse_module_state->__pyx_n_s_cfunc_to_py); - Py_VISIT(traverse_module_state->__pyx_n_s_cleanup); - Py_VISIT(traverse_module_state->__pyx_n_s_clear); - Py_VISIT(traverse_module_state->__pyx_n_s_cline_in_traceback); - Py_VISIT(traverse_module_state->__pyx_n_s_close); - Py_VISIT(traverse_module_state->__pyx_n_s_collections); - Py_VISIT(traverse_module_state->__pyx_n_s_compile); - Py_VISIT(traverse_module_state->__pyx_n_s_condition); - Py_VISIT(traverse_module_state->__pyx_n_s_contains); - Py_VISIT(traverse_module_state->__pyx_n_s_contains_2); - Py_VISIT(traverse_module_state->__pyx_n_s_depth); - Py_VISIT(traverse_module_state->__pyx_n_s_deque); - Py_VISIT(traverse_module_state->__pyx_n_s_dict); - Py_VISIT(traverse_module_state->__pyx_n_s_dict_2); - Py_VISIT(traverse_module_state->__pyx_kp_u_disable); - Py_VISIT(traverse_module_state->__pyx_kp_u_enable); - Py_VISIT(traverse_module_state->__pyx_n_s_endswith); - Py_VISIT(traverse_module_state->__pyx_n_s_endswith_2); - Py_VISIT(traverse_module_state->__pyx_n_s_event); - Py_VISIT(traverse_module_state->__pyx_n_s_ew); - Py_VISIT(traverse_module_state->__pyx_n_s_f_back); - Py_VISIT(traverse_module_state->__pyx_n_s_filename); - Py_VISIT(traverse_module_state->__pyx_n_s_filter); - Py_VISIT(traverse_module_state->__pyx_kp_u_for); - Py_VISIT(traverse_module_state->__pyx_n_s_frame); - Py_VISIT(traverse_module_state->__pyx_n_s_fullsource); - Py_VISIT(traverse_module_state->__pyx_n_s_function); - Py_VISIT(traverse_module_state->__pyx_kp_u_gc); - Py_VISIT(traverse_module_state->__pyx_n_s_genexpr); - Py_VISIT(traverse_module_state->__pyx_n_s_getstate); - Py_VISIT(traverse_module_state->__pyx_n_s_globals); - Py_VISIT(traverse_module_state->__pyx_n_s_gt); - Py_VISIT(traverse_module_state->__pyx_n_s_gt_2); - Py_VISIT(traverse_module_state->__pyx_n_s_gte); - Py_VISIT(traverse_module_state->__pyx_n_s_gte_2); - Py_VISIT(traverse_module_state->__pyx_n_s_has); - Py_VISIT(traverse_module_state->__pyx_n_s_hunter); - Py_VISIT(traverse_module_state->__pyx_n_s_hunter__predicates); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter__predicates_And_predicat); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter__predicates_From_conditi); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter__predicates_Not_predicat); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter__predicates_Or_predicate); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter__predicates_When_conditi); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter_predicates_Backlog_condi); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter_predicates_Query_s); - Py_VISIT(traverse_module_state->__pyx_n_s_import); - Py_VISIT(traverse_module_state->__pyx_n_s_in); - Py_VISIT(traverse_module_state->__pyx_n_s_in_2); - Py_VISIT(traverse_module_state->__pyx_n_s_index); - Py_VISIT(traverse_module_state->__pyx_n_s_init___locals_genexpr); - Py_VISIT(traverse_module_state->__pyx_n_s_inspect); - Py_VISIT(traverse_module_state->__pyx_n_s_instruction); - Py_VISIT(traverse_module_state->__pyx_n_s_is_coroutine); - Py_VISIT(traverse_module_state->__pyx_kp_u_is_invalid_Must_be_a_string_lis); - Py_VISIT(traverse_module_state->__pyx_n_s_isclass); - Py_VISIT(traverse_module_state->__pyx_kp_u_isenabled); - Py_VISIT(traverse_module_state->__pyx_n_s_items); - Py_VISIT(traverse_module_state->__pyx_n_s_join); - Py_VISIT(traverse_module_state->__pyx_n_s_kind); - Py_VISIT(traverse_module_state->__pyx_n_s_kwargs); - Py_VISIT(traverse_module_state->__pyx_n_s_lineno); - Py_VISIT(traverse_module_state->__pyx_n_s_locals); - Py_VISIT(traverse_module_state->__pyx_n_s_lt); - Py_VISIT(traverse_module_state->__pyx_n_s_lt_2); - Py_VISIT(traverse_module_state->__pyx_n_s_lte); - Py_VISIT(traverse_module_state->__pyx_n_s_lte_2); - Py_VISIT(traverse_module_state->__pyx_n_s_main); - Py_VISIT(traverse_module_state->__pyx_n_s_match); - Py_VISIT(traverse_module_state->__pyx_n_s_maxlen); - Py_VISIT(traverse_module_state->__pyx_n_s_merge); - Py_VISIT(traverse_module_state->__pyx_n_s_module); - Py_VISIT(traverse_module_state->__pyx_n_s_name); - Py_VISIT(traverse_module_state->__pyx_n_s_name_2); - Py_VISIT(traverse_module_state->__pyx_n_s_new); - Py_VISIT(traverse_module_state->__pyx_n_s_pickle); - Py_VISIT(traverse_module_state->__pyx_n_s_predicate); - Py_VISIT(traverse_module_state->__pyx_n_s_predicates); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_PickleError); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_checksum); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_result); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_state); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_type); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_And); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_Backlog); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_From); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_Not); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_Or); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_Query); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_unpickle_When); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_vtable); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_contains_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_endswith_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_eq_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_gt_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_gte_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_in_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_lt_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_lte_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_regex_r); - Py_VISIT(traverse_module_state->__pyx_kp_s_query_startswith_r); - Py_VISIT(traverse_module_state->__pyx_n_s_re); - Py_VISIT(traverse_module_state->__pyx_n_s_re_compile); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce_ex); - Py_VISIT(traverse_module_state->__pyx_n_s_regex); - Py_VISIT(traverse_module_state->__pyx_n_s_regex_2); - Py_VISIT(traverse_module_state->__pyx_n_s_rx); - Py_VISIT(traverse_module_state->__pyx_n_s_self); - Py_VISIT(traverse_module_state->__pyx_kp_s_self_getter_cannot_be_converted); - Py_VISIT(traverse_module_state->__pyx_n_s_send); - Py_VISIT(traverse_module_state->__pyx_n_s_setstate); - Py_VISIT(traverse_module_state->__pyx_n_s_setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_size); - Py_VISIT(traverse_module_state->__pyx_n_s_source); - Py_VISIT(traverse_module_state->__pyx_n_s_split); - Py_VISIT(traverse_module_state->__pyx_kp_s_src_hunter__predicates_pyx); - Py_VISIT(traverse_module_state->__pyx_n_s_stack); - Py_VISIT(traverse_module_state->__pyx_n_s_startswith); - Py_VISIT(traverse_module_state->__pyx_n_s_startswith_2); - Py_VISIT(traverse_module_state->__pyx_n_s_state); - Py_VISIT(traverse_module_state->__pyx_n_s_stdlib); - Py_VISIT(traverse_module_state->__pyx_n_s_str___locals_genexpr); - Py_VISIT(traverse_module_state->__pyx_kp_s_stringsource); - Py_VISIT(traverse_module_state->__pyx_n_s_strip); - Py_VISIT(traverse_module_state->__pyx_n_s_sw); - Py_VISIT(traverse_module_state->__pyx_n_s_test); - Py_VISIT(traverse_module_state->__pyx_n_s_threadid); - Py_VISIT(traverse_module_state->__pyx_n_s_threading_support); - Py_VISIT(traverse_module_state->__pyx_n_s_threadname); - Py_VISIT(traverse_module_state->__pyx_n_s_throw); - Py_VISIT(traverse_module_state->__pyx_n_s_try_repr); - Py_VISIT(traverse_module_state->__pyx_n_s_update); - Py_VISIT(traverse_module_state->__pyx_n_s_use_setstate); - Py_VISIT(traverse_module_state->__pyx_n_s_value); - Py_VISIT(traverse_module_state->__pyx_n_s_vars); - Py_VISIT(traverse_module_state->__pyx_n_s_watermark); - Py_VISIT(traverse_module_state->__pyx_kp_u_with_optional_operators_like); - Py_VISIT(traverse_module_state->__pyx_n_s_wrap); - Py_VISIT(traverse_module_state->__pyx_int_0); - Py_VISIT(traverse_module_state->__pyx_int_10); - Py_VISIT(traverse_module_state->__pyx_int_100); - Py_VISIT(traverse_module_state->__pyx_int_4473905); - Py_VISIT(traverse_module_state->__pyx_int_21139105); - Py_VISIT(traverse_module_state->__pyx_int_28104183); - Py_VISIT(traverse_module_state->__pyx_int_37183945); - Py_VISIT(traverse_module_state->__pyx_int_79429044); - Py_VISIT(traverse_module_state->__pyx_int_82616482); - Py_VISIT(traverse_module_state->__pyx_int_89143876); - Py_VISIT(traverse_module_state->__pyx_int_124881844); - Py_VISIT(traverse_module_state->__pyx_int_149034610); - Py_VISIT(traverse_module_state->__pyx_int_166332997); - Py_VISIT(traverse_module_state->__pyx_int_178834394); - Py_VISIT(traverse_module_state->__pyx_int_190166812); - Py_VISIT(traverse_module_state->__pyx_int_198256870); - Py_VISIT(traverse_module_state->__pyx_int_210676054); - Py_VISIT(traverse_module_state->__pyx_int_217908684); - Py_VISIT(traverse_module_state->__pyx_int_223119700); - Py_VISIT(traverse_module_state->__pyx_int_242287462); - Py_VISIT(traverse_module_state->__pyx_int_258412278); - Py_VISIT(traverse_module_state->__pyx_int_neg_1); - Py_VISIT(traverse_module_state->__pyx_tuple_); - Py_VISIT(traverse_module_state->__pyx_tuple__13); - Py_VISIT(traverse_module_state->__pyx_tuple__28); - Py_VISIT(traverse_module_state->__pyx_tuple__30); - Py_VISIT(traverse_module_state->__pyx_tuple__32); - Py_VISIT(traverse_module_state->__pyx_tuple__34); - Py_VISIT(traverse_module_state->__pyx_tuple__37); - Py_VISIT(traverse_module_state->__pyx_tuple__39); - Py_VISIT(traverse_module_state->__pyx_tuple__40); - Py_VISIT(traverse_module_state->__pyx_tuple__41); - Py_VISIT(traverse_module_state->__pyx_tuple__42); - Py_VISIT(traverse_module_state->__pyx_tuple__43); - Py_VISIT(traverse_module_state->__pyx_tuple__44); - Py_VISIT(traverse_module_state->__pyx_tuple__45); - Py_VISIT(traverse_module_state->__pyx_tuple__46); - Py_VISIT(traverse_module_state->__pyx_tuple__47); - Py_VISIT(traverse_module_state->__pyx_codeobj__2); - Py_VISIT(traverse_module_state->__pyx_codeobj__3); - Py_VISIT(traverse_module_state->__pyx_codeobj__4); - Py_VISIT(traverse_module_state->__pyx_codeobj__11); - Py_VISIT(traverse_module_state->__pyx_codeobj__12); - Py_VISIT(traverse_module_state->__pyx_codeobj__14); - Py_VISIT(traverse_module_state->__pyx_codeobj__15); - Py_VISIT(traverse_module_state->__pyx_codeobj__16); - Py_VISIT(traverse_module_state->__pyx_codeobj__17); - Py_VISIT(traverse_module_state->__pyx_codeobj__18); - Py_VISIT(traverse_module_state->__pyx_codeobj__19); - Py_VISIT(traverse_module_state->__pyx_codeobj__20); - Py_VISIT(traverse_module_state->__pyx_codeobj__21); - Py_VISIT(traverse_module_state->__pyx_codeobj__22); - Py_VISIT(traverse_module_state->__pyx_codeobj__23); - Py_VISIT(traverse_module_state->__pyx_codeobj__24); - Py_VISIT(traverse_module_state->__pyx_codeobj__25); - Py_VISIT(traverse_module_state->__pyx_codeobj__26); - Py_VISIT(traverse_module_state->__pyx_codeobj__27); - Py_VISIT(traverse_module_state->__pyx_codeobj__29); - Py_VISIT(traverse_module_state->__pyx_codeobj__31); - Py_VISIT(traverse_module_state->__pyx_codeobj__33); - Py_VISIT(traverse_module_state->__pyx_codeobj__35); - Py_VISIT(traverse_module_state->__pyx_codeobj__36); - Py_VISIT(traverse_module_state->__pyx_codeobj__38); + for (int i=0; i<9; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } + for (int i=0; i<151; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<292; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_0); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_10); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_100); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_4473905); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_21139105); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_28104183); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_37183945); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_79429044); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_82616482); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_89143876); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_124881844); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_149034610); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_166332997); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_178834394); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_190166812); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_198256870); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_210676054); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_217908684); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_223119700); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_242287462); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_258412278); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_neg_1); return 0; } #endif -/* #### Code section: module_state_defines ### */ -#define __pyx_d __pyx_mstate_global->__pyx_d -#define __pyx_b __pyx_mstate_global->__pyx_b -#define __pyx_cython_runtime __pyx_mstate_global->__pyx_cython_runtime -#define __pyx_empty_tuple __pyx_mstate_global->__pyx_empty_tuple -#define __pyx_empty_bytes __pyx_mstate_global->__pyx_empty_bytes -#define __pyx_empty_unicode __pyx_mstate_global->__pyx_empty_unicode -#ifdef __Pyx_CyFunction_USED -#define __pyx_CyFunctionType __pyx_mstate_global->__pyx_CyFunctionType -#endif -#ifdef __Pyx_FusedFunction_USED -#define __pyx_FusedFunctionType __pyx_mstate_global->__pyx_FusedFunctionType -#endif -#ifdef __Pyx_Generator_USED -#define __pyx_GeneratorType __pyx_mstate_global->__pyx_GeneratorType -#endif -#ifdef __Pyx_IterableCoroutine_USED -#define __pyx_IterableCoroutineType __pyx_mstate_global->__pyx_IterableCoroutineType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineAwaitType __pyx_mstate_global->__pyx_CoroutineAwaitType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineType __pyx_mstate_global->__pyx_CoroutineType -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_7cpython_4type_type __pyx_mstate_global->__pyx_ptype_7cpython_4type_type -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_6hunter_7_tracer_FrameType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_FrameType -#define __pyx_ptype_6hunter_7_tracer_CodeType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType -#define __pyx_ptype_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_6hunter_6_event_Event __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event -#if CYTHON_USE_MODULE_STATE -#define __pyx_type_6hunter_11_predicates_Query __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Query -#define __pyx_type_6hunter_11_predicates_And __pyx_mstate_global->__pyx_type_6hunter_11_predicates_And -#define __pyx_type_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Or -#define __pyx_type_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Not -#define __pyx_type_6hunter_11_predicates_When __pyx_mstate_global->__pyx_type_6hunter_11_predicates_When -#define __pyx_type_6hunter_11_predicates_From __pyx_mstate_global->__pyx_type_6hunter_11_predicates_From -#define __pyx_type_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_type_6hunter_11_predicates_Backlog -#define __pyx_type_6hunter_11_predicates_QueryEntry __pyx_mstate_global->__pyx_type_6hunter_11_predicates_QueryEntry -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr -#define __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr __pyx_mstate_global->__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr -#define __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event __pyx_mstate_global->__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event -#endif -#define __pyx_ptype_6hunter_11_predicates_Query __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query -#define __pyx_ptype_6hunter_11_predicates_And __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And -#define __pyx_ptype_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or -#define __pyx_ptype_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not -#define __pyx_ptype_6hunter_11_predicates_When __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When -#define __pyx_ptype_6hunter_11_predicates_From __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From -#define __pyx_ptype_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog -#define __pyx_ptype_6hunter_11_predicates_QueryEntry __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_QueryEntry -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr -#define __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr -#define __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event __pyx_mstate_global->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event -#define __pyx_n_s_Action __pyx_mstate_global->__pyx_n_s_Action -#define __pyx_kp_s_Action_r_must_be_a_ColorStreamAc __pyx_mstate_global->__pyx_kp_s_Action_r_must_be_a_ColorStreamAc -#define __pyx_n_s_And __pyx_mstate_global->__pyx_n_s_And -#define __pyx_n_s_And___reduce_cython __pyx_mstate_global->__pyx_n_s_And___reduce_cython -#define __pyx_n_s_And___setstate_cython __pyx_mstate_global->__pyx_n_s_And___setstate_cython -#define __pyx_kp_s_And_s __pyx_mstate_global->__pyx_kp_s_And_s -#define __pyx_n_s_Backlog __pyx_mstate_global->__pyx_n_s_Backlog -#define __pyx_n_s_Backlog___reduce_cython __pyx_mstate_global->__pyx_n_s_Backlog___reduce_cython -#define __pyx_n_s_Backlog___setstate_cython __pyx_mstate_global->__pyx_n_s_Backlog___setstate_cython -#define __pyx_n_s_Backlog_filter __pyx_mstate_global->__pyx_n_s_Backlog_filter -#define __pyx_kp_s_Backlog_s_size_s_stack_s_vars_s __pyx_mstate_global->__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s -#define __pyx_n_s_ColorStreamAction __pyx_mstate_global->__pyx_n_s_ColorStreamAction -#define __pyx_n_s_From __pyx_mstate_global->__pyx_n_s_From -#define __pyx_n_s_From___reduce_cython __pyx_mstate_global->__pyx_n_s_From___reduce_cython -#define __pyx_n_s_From___setstate_cython __pyx_mstate_global->__pyx_n_s_From___setstate_cython -#define __pyx_kp_s_From_s_s_watermark_s __pyx_mstate_global->__pyx_kp_s_From_s_s_watermark_s -#define __pyx_kp_s_Incompatible_checksums_0x_x_vs_0 __pyx_mstate_global->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0 -#define __pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2 __pyx_mstate_global->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2 -#define __pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3 __pyx_mstate_global->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3 -#define __pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4 __pyx_mstate_global->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4 -#define __pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5 __pyx_mstate_global->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5 -#define __pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6 __pyx_mstate_global->__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6 -#define __pyx_kp_u_Must_be_one_of __pyx_mstate_global->__pyx_kp_u_Must_be_one_of -#define __pyx_kp_s_Must_give_at_least_one_action __pyx_mstate_global->__pyx_kp_s_Must_give_at_least_one_action -#define __pyx_n_s_Not __pyx_mstate_global->__pyx_n_s_Not -#define __pyx_n_s_Not___reduce_cython __pyx_mstate_global->__pyx_n_s_Not___reduce_cython -#define __pyx_n_s_Not___setstate_cython __pyx_mstate_global->__pyx_n_s_Not___setstate_cython -#define __pyx_kp_s_Not_s __pyx_mstate_global->__pyx_kp_s_Not_s -#define __pyx_n_s_Or __pyx_mstate_global->__pyx_n_s_Or -#define __pyx_n_s_Or___reduce_cython __pyx_mstate_global->__pyx_n_s_Or___reduce_cython -#define __pyx_n_s_Or___setstate_cython __pyx_mstate_global->__pyx_n_s_Or___setstate_cython -#define __pyx_kp_s_Or_s __pyx_mstate_global->__pyx_kp_s_Or_s -#define __pyx_n_s_PickleError __pyx_mstate_global->__pyx_n_s_PickleError -#define __pyx_n_s_Pyx_CFunc_6hunter_11_predicate __pyx_mstate_global->__pyx_n_s_Pyx_CFunc_6hunter_11_predicate -#define __pyx_n_s_Query __pyx_mstate_global->__pyx_n_s_Query -#define __pyx_n_s_QueryEntry __pyx_mstate_global->__pyx_n_s_QueryEntry -#define __pyx_n_s_QueryEntry___reduce_cython __pyx_mstate_global->__pyx_n_s_QueryEntry___reduce_cython -#define __pyx_n_s_QueryEntry___setstate_cython __pyx_mstate_global->__pyx_n_s_QueryEntry___setstate_cython -#define __pyx_n_s_Query___reduce_cython __pyx_mstate_global->__pyx_n_s_Query___reduce_cython -#define __pyx_n_s_Query___setstate_cython __pyx_mstate_global->__pyx_n_s_Query___setstate_cython -#define __pyx_kp_s_Query_s __pyx_mstate_global->__pyx_kp_s_Query_s -#define __pyx_n_s_TypeError __pyx_mstate_global->__pyx_n_s_TypeError -#define __pyx_kp_u_Unexpected_argument __pyx_mstate_global->__pyx_kp_u_Unexpected_argument -#define __pyx_kp_u_Unexpected_operator __pyx_mstate_global->__pyx_kp_u_Unexpected_operator -#define __pyx_kp_u_Value __pyx_mstate_global->__pyx_kp_u_Value -#define __pyx_n_s_ValueError __pyx_mstate_global->__pyx_n_s_ValueError -#define __pyx_n_s_When __pyx_mstate_global->__pyx_n_s_When -#define __pyx_n_s_When___reduce_cython __pyx_mstate_global->__pyx_n_s_When___reduce_cython -#define __pyx_n_s_When___setstate_cython __pyx_mstate_global->__pyx_n_s_When___setstate_cython -#define __pyx_kp_s_When_s_s __pyx_mstate_global->__pyx_kp_s_When_s_s -#define __pyx_kp_s__10 __pyx_mstate_global->__pyx_kp_s__10 -#define __pyx_n_s__48 __pyx_mstate_global->__pyx_n_s__48 -#define __pyx_n_s__5 __pyx_mstate_global->__pyx_n_s__5 -#define __pyx_kp_u__6 __pyx_mstate_global->__pyx_kp_u__6 -#define __pyx_kp_u__7 __pyx_mstate_global->__pyx_kp_u__7 -#define __pyx_kp_s__8 __pyx_mstate_global->__pyx_kp_s__8 -#define __pyx_kp_s__9 __pyx_mstate_global->__pyx_kp_s__9 -#define __pyx_n_s_action __pyx_mstate_global->__pyx_n_s_action -#define __pyx_n_s_actions __pyx_mstate_global->__pyx_n_s_actions -#define __pyx_n_s_all __pyx_mstate_global->__pyx_n_s_all -#define __pyx_n_s_append __pyx_mstate_global->__pyx_n_s_append -#define __pyx_n_s_appendleft __pyx_mstate_global->__pyx_n_s_appendleft -#define __pyx_n_s_arg __pyx_mstate_global->__pyx_n_s_arg -#define __pyx_n_s_args __pyx_mstate_global->__pyx_n_s_args -#define __pyx_n_s_asyncio_coroutines __pyx_mstate_global->__pyx_n_s_asyncio_coroutines -#define __pyx_n_s_builtin __pyx_mstate_global->__pyx_n_s_builtin -#define __pyx_n_s_call __pyx_mstate_global->__pyx_n_s_call -#define __pyx_n_s_calls __pyx_mstate_global->__pyx_n_s_calls -#define __pyx_n_s_cfunc_to_py __pyx_mstate_global->__pyx_n_s_cfunc_to_py -#define __pyx_n_s_cleanup __pyx_mstate_global->__pyx_n_s_cleanup -#define __pyx_n_s_clear __pyx_mstate_global->__pyx_n_s_clear -#define __pyx_n_s_cline_in_traceback __pyx_mstate_global->__pyx_n_s_cline_in_traceback -#define __pyx_n_s_close __pyx_mstate_global->__pyx_n_s_close -#define __pyx_n_s_collections __pyx_mstate_global->__pyx_n_s_collections -#define __pyx_n_s_compile __pyx_mstate_global->__pyx_n_s_compile -#define __pyx_n_s_condition __pyx_mstate_global->__pyx_n_s_condition -#define __pyx_n_s_contains __pyx_mstate_global->__pyx_n_s_contains -#define __pyx_n_s_contains_2 __pyx_mstate_global->__pyx_n_s_contains_2 -#define __pyx_n_s_depth __pyx_mstate_global->__pyx_n_s_depth -#define __pyx_n_s_deque __pyx_mstate_global->__pyx_n_s_deque -#define __pyx_n_s_dict __pyx_mstate_global->__pyx_n_s_dict -#define __pyx_n_s_dict_2 __pyx_mstate_global->__pyx_n_s_dict_2 -#define __pyx_kp_u_disable __pyx_mstate_global->__pyx_kp_u_disable -#define __pyx_kp_u_enable __pyx_mstate_global->__pyx_kp_u_enable -#define __pyx_n_s_endswith __pyx_mstate_global->__pyx_n_s_endswith -#define __pyx_n_s_endswith_2 __pyx_mstate_global->__pyx_n_s_endswith_2 -#define __pyx_n_s_event __pyx_mstate_global->__pyx_n_s_event -#define __pyx_n_s_ew __pyx_mstate_global->__pyx_n_s_ew -#define __pyx_n_s_f_back __pyx_mstate_global->__pyx_n_s_f_back -#define __pyx_n_s_filename __pyx_mstate_global->__pyx_n_s_filename -#define __pyx_n_s_filter __pyx_mstate_global->__pyx_n_s_filter -#define __pyx_kp_u_for __pyx_mstate_global->__pyx_kp_u_for -#define __pyx_n_s_frame __pyx_mstate_global->__pyx_n_s_frame -#define __pyx_n_s_fullsource __pyx_mstate_global->__pyx_n_s_fullsource -#define __pyx_n_s_function __pyx_mstate_global->__pyx_n_s_function -#define __pyx_kp_u_gc __pyx_mstate_global->__pyx_kp_u_gc -#define __pyx_n_s_genexpr __pyx_mstate_global->__pyx_n_s_genexpr -#define __pyx_n_s_getstate __pyx_mstate_global->__pyx_n_s_getstate -#define __pyx_n_s_globals __pyx_mstate_global->__pyx_n_s_globals -#define __pyx_n_s_gt __pyx_mstate_global->__pyx_n_s_gt -#define __pyx_n_s_gt_2 __pyx_mstate_global->__pyx_n_s_gt_2 -#define __pyx_n_s_gte __pyx_mstate_global->__pyx_n_s_gte -#define __pyx_n_s_gte_2 __pyx_mstate_global->__pyx_n_s_gte_2 -#define __pyx_n_s_has __pyx_mstate_global->__pyx_n_s_has -#define __pyx_n_s_hunter __pyx_mstate_global->__pyx_n_s_hunter -#define __pyx_n_s_hunter__predicates __pyx_mstate_global->__pyx_n_s_hunter__predicates -#define __pyx_kp_s_hunter__predicates_And_predicat __pyx_mstate_global->__pyx_kp_s_hunter__predicates_And_predicat -#define __pyx_kp_s_hunter__predicates_From_conditi __pyx_mstate_global->__pyx_kp_s_hunter__predicates_From_conditi -#define __pyx_kp_s_hunter__predicates_Not_predicat __pyx_mstate_global->__pyx_kp_s_hunter__predicates_Not_predicat -#define __pyx_kp_s_hunter__predicates_Or_predicate __pyx_mstate_global->__pyx_kp_s_hunter__predicates_Or_predicate -#define __pyx_kp_s_hunter__predicates_When_conditi __pyx_mstate_global->__pyx_kp_s_hunter__predicates_When_conditi -#define __pyx_kp_s_hunter_predicates_Backlog_condi __pyx_mstate_global->__pyx_kp_s_hunter_predicates_Backlog_condi -#define __pyx_kp_s_hunter_predicates_Query_s __pyx_mstate_global->__pyx_kp_s_hunter_predicates_Query_s -#define __pyx_n_s_import __pyx_mstate_global->__pyx_n_s_import -#define __pyx_n_s_in __pyx_mstate_global->__pyx_n_s_in -#define __pyx_n_s_in_2 __pyx_mstate_global->__pyx_n_s_in_2 -#define __pyx_n_s_index __pyx_mstate_global->__pyx_n_s_index -#define __pyx_n_s_init___locals_genexpr __pyx_mstate_global->__pyx_n_s_init___locals_genexpr -#define __pyx_n_s_inspect __pyx_mstate_global->__pyx_n_s_inspect -#define __pyx_n_s_instruction __pyx_mstate_global->__pyx_n_s_instruction -#define __pyx_n_s_is_coroutine __pyx_mstate_global->__pyx_n_s_is_coroutine -#define __pyx_kp_u_is_invalid_Must_be_a_string_lis __pyx_mstate_global->__pyx_kp_u_is_invalid_Must_be_a_string_lis -#define __pyx_n_s_isclass __pyx_mstate_global->__pyx_n_s_isclass -#define __pyx_kp_u_isenabled __pyx_mstate_global->__pyx_kp_u_isenabled -#define __pyx_n_s_items __pyx_mstate_global->__pyx_n_s_items -#define __pyx_n_s_join __pyx_mstate_global->__pyx_n_s_join -#define __pyx_n_s_kind __pyx_mstate_global->__pyx_n_s_kind -#define __pyx_n_s_kwargs __pyx_mstate_global->__pyx_n_s_kwargs -#define __pyx_n_s_lineno __pyx_mstate_global->__pyx_n_s_lineno -#define __pyx_n_s_locals __pyx_mstate_global->__pyx_n_s_locals -#define __pyx_n_s_lt __pyx_mstate_global->__pyx_n_s_lt -#define __pyx_n_s_lt_2 __pyx_mstate_global->__pyx_n_s_lt_2 -#define __pyx_n_s_lte __pyx_mstate_global->__pyx_n_s_lte -#define __pyx_n_s_lte_2 __pyx_mstate_global->__pyx_n_s_lte_2 -#define __pyx_n_s_main __pyx_mstate_global->__pyx_n_s_main -#define __pyx_n_s_match __pyx_mstate_global->__pyx_n_s_match -#define __pyx_n_s_maxlen __pyx_mstate_global->__pyx_n_s_maxlen -#define __pyx_n_s_merge __pyx_mstate_global->__pyx_n_s_merge -#define __pyx_n_s_module __pyx_mstate_global->__pyx_n_s_module -#define __pyx_n_s_name __pyx_mstate_global->__pyx_n_s_name -#define __pyx_n_s_name_2 __pyx_mstate_global->__pyx_n_s_name_2 -#define __pyx_n_s_new __pyx_mstate_global->__pyx_n_s_new -#define __pyx_n_s_pickle __pyx_mstate_global->__pyx_n_s_pickle -#define __pyx_n_s_predicate __pyx_mstate_global->__pyx_n_s_predicate -#define __pyx_n_s_predicates __pyx_mstate_global->__pyx_n_s_predicates -#define __pyx_n_s_pyx_PickleError __pyx_mstate_global->__pyx_n_s_pyx_PickleError -#define __pyx_n_s_pyx_checksum __pyx_mstate_global->__pyx_n_s_pyx_checksum -#define __pyx_n_s_pyx_result __pyx_mstate_global->__pyx_n_s_pyx_result -#define __pyx_n_s_pyx_state __pyx_mstate_global->__pyx_n_s_pyx_state -#define __pyx_n_s_pyx_type __pyx_mstate_global->__pyx_n_s_pyx_type -#define __pyx_n_s_pyx_unpickle_And __pyx_mstate_global->__pyx_n_s_pyx_unpickle_And -#define __pyx_n_s_pyx_unpickle_Backlog __pyx_mstate_global->__pyx_n_s_pyx_unpickle_Backlog -#define __pyx_n_s_pyx_unpickle_From __pyx_mstate_global->__pyx_n_s_pyx_unpickle_From -#define __pyx_n_s_pyx_unpickle_Not __pyx_mstate_global->__pyx_n_s_pyx_unpickle_Not -#define __pyx_n_s_pyx_unpickle_Or __pyx_mstate_global->__pyx_n_s_pyx_unpickle_Or -#define __pyx_n_s_pyx_unpickle_Query __pyx_mstate_global->__pyx_n_s_pyx_unpickle_Query -#define __pyx_n_s_pyx_unpickle_When __pyx_mstate_global->__pyx_n_s_pyx_unpickle_When -#define __pyx_n_s_pyx_vtable __pyx_mstate_global->__pyx_n_s_pyx_vtable -#define __pyx_kp_s_query_contains_r __pyx_mstate_global->__pyx_kp_s_query_contains_r -#define __pyx_kp_s_query_endswith_r __pyx_mstate_global->__pyx_kp_s_query_endswith_r -#define __pyx_kp_s_query_eq_r __pyx_mstate_global->__pyx_kp_s_query_eq_r -#define __pyx_kp_s_query_gt_r __pyx_mstate_global->__pyx_kp_s_query_gt_r -#define __pyx_kp_s_query_gte_r __pyx_mstate_global->__pyx_kp_s_query_gte_r -#define __pyx_kp_s_query_in_r __pyx_mstate_global->__pyx_kp_s_query_in_r -#define __pyx_kp_s_query_lt_r __pyx_mstate_global->__pyx_kp_s_query_lt_r -#define __pyx_kp_s_query_lte_r __pyx_mstate_global->__pyx_kp_s_query_lte_r -#define __pyx_kp_s_query_regex_r __pyx_mstate_global->__pyx_kp_s_query_regex_r -#define __pyx_kp_s_query_startswith_r __pyx_mstate_global->__pyx_kp_s_query_startswith_r -#define __pyx_n_s_re __pyx_mstate_global->__pyx_n_s_re -#define __pyx_n_s_re_compile __pyx_mstate_global->__pyx_n_s_re_compile -#define __pyx_n_s_reduce __pyx_mstate_global->__pyx_n_s_reduce -#define __pyx_n_s_reduce_cython __pyx_mstate_global->__pyx_n_s_reduce_cython -#define __pyx_n_s_reduce_ex __pyx_mstate_global->__pyx_n_s_reduce_ex -#define __pyx_n_s_regex __pyx_mstate_global->__pyx_n_s_regex -#define __pyx_n_s_regex_2 __pyx_mstate_global->__pyx_n_s_regex_2 -#define __pyx_n_s_rx __pyx_mstate_global->__pyx_n_s_rx -#define __pyx_n_s_self __pyx_mstate_global->__pyx_n_s_self -#define __pyx_kp_s_self_getter_cannot_be_converted __pyx_mstate_global->__pyx_kp_s_self_getter_cannot_be_converted -#define __pyx_n_s_send __pyx_mstate_global->__pyx_n_s_send -#define __pyx_n_s_setstate __pyx_mstate_global->__pyx_n_s_setstate -#define __pyx_n_s_setstate_cython __pyx_mstate_global->__pyx_n_s_setstate_cython -#define __pyx_n_s_size __pyx_mstate_global->__pyx_n_s_size -#define __pyx_n_s_source __pyx_mstate_global->__pyx_n_s_source -#define __pyx_n_s_split __pyx_mstate_global->__pyx_n_s_split -#define __pyx_kp_s_src_hunter__predicates_pyx __pyx_mstate_global->__pyx_kp_s_src_hunter__predicates_pyx -#define __pyx_n_s_stack __pyx_mstate_global->__pyx_n_s_stack -#define __pyx_n_s_startswith __pyx_mstate_global->__pyx_n_s_startswith -#define __pyx_n_s_startswith_2 __pyx_mstate_global->__pyx_n_s_startswith_2 -#define __pyx_n_s_state __pyx_mstate_global->__pyx_n_s_state -#define __pyx_n_s_stdlib __pyx_mstate_global->__pyx_n_s_stdlib -#define __pyx_n_s_str___locals_genexpr __pyx_mstate_global->__pyx_n_s_str___locals_genexpr -#define __pyx_kp_s_stringsource __pyx_mstate_global->__pyx_kp_s_stringsource -#define __pyx_n_s_strip __pyx_mstate_global->__pyx_n_s_strip -#define __pyx_n_s_sw __pyx_mstate_global->__pyx_n_s_sw -#define __pyx_n_s_test __pyx_mstate_global->__pyx_n_s_test -#define __pyx_n_s_threadid __pyx_mstate_global->__pyx_n_s_threadid -#define __pyx_n_s_threading_support __pyx_mstate_global->__pyx_n_s_threading_support -#define __pyx_n_s_threadname __pyx_mstate_global->__pyx_n_s_threadname -#define __pyx_n_s_throw __pyx_mstate_global->__pyx_n_s_throw -#define __pyx_n_s_try_repr __pyx_mstate_global->__pyx_n_s_try_repr -#define __pyx_n_s_update __pyx_mstate_global->__pyx_n_s_update -#define __pyx_n_s_use_setstate __pyx_mstate_global->__pyx_n_s_use_setstate -#define __pyx_n_s_value __pyx_mstate_global->__pyx_n_s_value -#define __pyx_n_s_vars __pyx_mstate_global->__pyx_n_s_vars -#define __pyx_n_s_watermark __pyx_mstate_global->__pyx_n_s_watermark -#define __pyx_kp_u_with_optional_operators_like __pyx_mstate_global->__pyx_kp_u_with_optional_operators_like -#define __pyx_n_s_wrap __pyx_mstate_global->__pyx_n_s_wrap -#define __pyx_int_0 __pyx_mstate_global->__pyx_int_0 -#define __pyx_int_10 __pyx_mstate_global->__pyx_int_10 -#define __pyx_int_100 __pyx_mstate_global->__pyx_int_100 -#define __pyx_int_4473905 __pyx_mstate_global->__pyx_int_4473905 -#define __pyx_int_21139105 __pyx_mstate_global->__pyx_int_21139105 -#define __pyx_int_28104183 __pyx_mstate_global->__pyx_int_28104183 -#define __pyx_int_37183945 __pyx_mstate_global->__pyx_int_37183945 -#define __pyx_int_79429044 __pyx_mstate_global->__pyx_int_79429044 -#define __pyx_int_82616482 __pyx_mstate_global->__pyx_int_82616482 -#define __pyx_int_89143876 __pyx_mstate_global->__pyx_int_89143876 -#define __pyx_int_124881844 __pyx_mstate_global->__pyx_int_124881844 -#define __pyx_int_149034610 __pyx_mstate_global->__pyx_int_149034610 -#define __pyx_int_166332997 __pyx_mstate_global->__pyx_int_166332997 -#define __pyx_int_178834394 __pyx_mstate_global->__pyx_int_178834394 -#define __pyx_int_190166812 __pyx_mstate_global->__pyx_int_190166812 -#define __pyx_int_198256870 __pyx_mstate_global->__pyx_int_198256870 -#define __pyx_int_210676054 __pyx_mstate_global->__pyx_int_210676054 -#define __pyx_int_217908684 __pyx_mstate_global->__pyx_int_217908684 -#define __pyx_int_223119700 __pyx_mstate_global->__pyx_int_223119700 -#define __pyx_int_242287462 __pyx_mstate_global->__pyx_int_242287462 -#define __pyx_int_258412278 __pyx_mstate_global->__pyx_int_258412278 -#define __pyx_int_neg_1 __pyx_mstate_global->__pyx_int_neg_1 -#define __pyx_tuple_ __pyx_mstate_global->__pyx_tuple_ -#define __pyx_tuple__13 __pyx_mstate_global->__pyx_tuple__13 -#define __pyx_tuple__28 __pyx_mstate_global->__pyx_tuple__28 -#define __pyx_tuple__30 __pyx_mstate_global->__pyx_tuple__30 -#define __pyx_tuple__32 __pyx_mstate_global->__pyx_tuple__32 -#define __pyx_tuple__34 __pyx_mstate_global->__pyx_tuple__34 -#define __pyx_tuple__37 __pyx_mstate_global->__pyx_tuple__37 -#define __pyx_tuple__39 __pyx_mstate_global->__pyx_tuple__39 -#define __pyx_tuple__40 __pyx_mstate_global->__pyx_tuple__40 -#define __pyx_tuple__41 __pyx_mstate_global->__pyx_tuple__41 -#define __pyx_tuple__42 __pyx_mstate_global->__pyx_tuple__42 -#define __pyx_tuple__43 __pyx_mstate_global->__pyx_tuple__43 -#define __pyx_tuple__44 __pyx_mstate_global->__pyx_tuple__44 -#define __pyx_tuple__45 __pyx_mstate_global->__pyx_tuple__45 -#define __pyx_tuple__46 __pyx_mstate_global->__pyx_tuple__46 -#define __pyx_tuple__47 __pyx_mstate_global->__pyx_tuple__47 -#define __pyx_codeobj__2 __pyx_mstate_global->__pyx_codeobj__2 -#define __pyx_codeobj__3 __pyx_mstate_global->__pyx_codeobj__3 -#define __pyx_codeobj__4 __pyx_mstate_global->__pyx_codeobj__4 -#define __pyx_codeobj__11 __pyx_mstate_global->__pyx_codeobj__11 -#define __pyx_codeobj__12 __pyx_mstate_global->__pyx_codeobj__12 -#define __pyx_codeobj__14 __pyx_mstate_global->__pyx_codeobj__14 -#define __pyx_codeobj__15 __pyx_mstate_global->__pyx_codeobj__15 -#define __pyx_codeobj__16 __pyx_mstate_global->__pyx_codeobj__16 -#define __pyx_codeobj__17 __pyx_mstate_global->__pyx_codeobj__17 -#define __pyx_codeobj__18 __pyx_mstate_global->__pyx_codeobj__18 -#define __pyx_codeobj__19 __pyx_mstate_global->__pyx_codeobj__19 -#define __pyx_codeobj__20 __pyx_mstate_global->__pyx_codeobj__20 -#define __pyx_codeobj__21 __pyx_mstate_global->__pyx_codeobj__21 -#define __pyx_codeobj__22 __pyx_mstate_global->__pyx_codeobj__22 -#define __pyx_codeobj__23 __pyx_mstate_global->__pyx_codeobj__23 -#define __pyx_codeobj__24 __pyx_mstate_global->__pyx_codeobj__24 -#define __pyx_codeobj__25 __pyx_mstate_global->__pyx_codeobj__25 -#define __pyx_codeobj__26 __pyx_mstate_global->__pyx_codeobj__26 -#define __pyx_codeobj__27 __pyx_mstate_global->__pyx_codeobj__27 -#define __pyx_codeobj__29 __pyx_mstate_global->__pyx_codeobj__29 -#define __pyx_codeobj__31 __pyx_mstate_global->__pyx_codeobj__31 -#define __pyx_codeobj__33 __pyx_mstate_global->__pyx_codeobj__33 -#define __pyx_codeobj__35 __pyx_mstate_global->__pyx_codeobj__35 -#define __pyx_codeobj__36 __pyx_mstate_global->__pyx_codeobj__36 -#define __pyx_codeobj__38 __pyx_mstate_global->__pyx_codeobj__38 /* #### Code section: module_code ### */ /* "cfunc.to_py":67 @@ -4915,7 +4660,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap(PyObject *__pyx_self, @@ -4926,7 +4671,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap, "wrap(event: 'Event')"); -static PyMethodDef __pyx_mdef_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap = {"wrap", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap}; +static PyMethodDef __pyx_mdef_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap = {"wrap", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap}; static PyObject *__pyx_pw_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -4947,7 +4692,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("wrap (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -4955,66 +4700,60 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 67, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 67, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 67, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "wrap") < 0)) __PYX_ERR(0, 67, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "wrap", 0) < 0) __PYX_ERR(1, 67, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("wrap", 1, 1, 1, i); __PYX_ERR(1, 67, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 67, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("wrap", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 67, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("wrap", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 67, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event.wrap", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 67, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 67, __pyx_L1_error) __pyx_r = __pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_wrap(__pyx_self, __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5023,16 +4762,17 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_ struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_cur_scope; struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_outer_scope; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("wrap", 1); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) + __Pyx_RefNannySetupContext("wrap", 0); __pyx_outer_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *) __Pyx_CyFunction_GetClosure(__pyx_self); __pyx_cur_scope = __pyx_outer_scope; - __Pyx_TraceCall("wrap", __pyx_f[0], 67, 0, __PYX_ERR(0, 67, __pyx_L1_error)); + __Pyx_TraceStartFunc("wrap", __pyx_f[1], 67, 0, 0, 0, __PYX_ERR(1, 67, __pyx_L1_error)); /* "cfunc.to_py":69 * def wrap(Event event): @@ -5040,13 +4780,14 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_ * return f(event) # <<<<<<<<<<<<<< * return wrap * - */ - __Pyx_TraceLine(69,0,__PYX_ERR(0, 69, __pyx_L1_error)) +*/ + __Pyx_TraceLine(69,1,0,__PYX_ERR(1, 69, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_cur_scope->__pyx_v_f(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 69, __pyx_L1_error) + __pyx_t_1 = __pyx_cur_scope->__pyx_v_f(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(1, 69, __pyx_L1_error)); goto __pyx_L0; /* "cfunc.to_py":67 @@ -5055,48 +4796,55 @@ static PyObject *__pyx_pf_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_ * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 67, __pyx_L1_error)); + #endif __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event.wrap", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "cfunc.to_py":66 +/* "cfunc.to_py":65 * - * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") # <<<<<<<<<<<<<< + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): - * """wrap(event: 'Event')""" - */ +*/ static PyObject *__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyObject *(*__pyx_v_f)(struct __pyx_obj_6hunter_6_event_Event *)) { struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_cur_scope; PyObject *__pyx_v_wrap = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) __Pyx_RefNannySetupContext("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", 0); - __pyx_cur_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(__pyx_mstate_global->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 66, __pyx_L1_error) + __PYX_ERR(1, 65, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } - __Pyx_TraceCall("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", __pyx_f[0], 66, 0, __PYX_ERR(0, 66, __pyx_L1_error)); + __Pyx_TraceStartFunc("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", __pyx_f[1], 65, 0, 0, 0, __PYX_ERR(1, 65, __pyx_L1_error)); __pyx_cur_scope->__pyx_v_f = __pyx_v_f; /* "cfunc.to_py":67 @@ -5105,9 +4853,9 @@ static PyObject *__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_t * def wrap(Event event): # <<<<<<<<<<<<<< * """wrap(event: 'Event')""" * return f(event) - */ - __Pyx_TraceLine(67,0,__PYX_ERR(0, 67, __pyx_L1_error)) - __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap, 0, __pyx_n_s_Pyx_CFunc_6hunter_11_predicate, ((PyObject*)__pyx_cur_scope), __pyx_n_s_cfunc_to_py, __pyx_d, ((PyObject *)__pyx_codeobj__2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) +*/ + __Pyx_TraceLine(67,1,0,__PYX_ERR(1, 67, __pyx_L1_error)) + __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_11cfunc_dot_to_py_74__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_1wrap, 0, __pyx_mstate_global->__pyx_n_u_Pyx_CFunc_6hunter_11_predicate, ((PyObject*)__pyx_cur_scope), __pyx_mstate_global->__pyx_n_u_cfunc_to_py, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_wrap = __pyx_t_1; __pyx_t_1 = 0; @@ -5118,31 +4866,38 @@ static PyObject *__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_t * return wrap # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(70,0,__PYX_ERR(0, 70, __pyx_L1_error)) +*/ + __Pyx_TraceLine(70,2,0,__PYX_ERR(1, 70, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_wrap); __pyx_r = __pyx_v_wrap; + __Pyx_TraceReturnValue(__pyx_r, 2, 0, __PYX_ERR(1, 70, __pyx_L1_error)); goto __pyx_L0; - /* "cfunc.to_py":66 + /* "cfunc.to_py":65 * - * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") # <<<<<<<<<<<<<< + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): - * """wrap(event: 'Event')""" - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 65, __pyx_L1_error)); + #endif __Pyx_AddTraceback("cfunc.to_py.__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_wrap); __Pyx_DECREF((PyObject *)__pyx_cur_scope); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5153,33 +4908,41 @@ static PyObject *__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_t * cdef inline Event_get_function(Event event): return event.function_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_module(Event event): return event.module_getter() * cdef inline Event_get_lineno(Event event): return event.lineno_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_function(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_function", 1); - __Pyx_TraceCall("Event_get_function", __pyx_f[1], 38, 0, __PYX_ERR(1, 38, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) + __Pyx_RefNannySetupContext("Event_get_function", 0); + __Pyx_TraceStartFunc("Event_get_function", __pyx_f[0], 38, 0, 0, 0, __PYX_ERR(0, 38, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->function_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 38, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->function_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 38, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 38, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_function", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5190,33 +4953,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_function( * cdef inline Event_get_module(Event event): return event.module_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_lineno(Event event): return event.lineno_getter() * cdef inline Event_get_globals(Event event): return event.globals_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_module(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_module", 1); - __Pyx_TraceCall("Event_get_module", __pyx_f[1], 39, 0, __PYX_ERR(1, 39, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) + __Pyx_RefNannySetupContext("Event_get_module", 0); + __Pyx_TraceStartFunc("Event_get_module", __pyx_f[0], 39, 0, 0, 0, __PYX_ERR(0, 39, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->module_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 39, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->module_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 39, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 39, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_module", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5227,33 +4998,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_module(st * cdef inline Event_get_lineno(Event event): return event.lineno_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_globals(Event event): return event.globals_getter() * cdef inline Event_get_stdlib(Event event): return event.stdlib_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_lineno(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_lineno", 1); - __Pyx_TraceCall("Event_get_lineno", __pyx_f[1], 40, 0, __PYX_ERR(1, 40, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) + __Pyx_RefNannySetupContext("Event_get_lineno", 0); + __Pyx_TraceStartFunc("Event_get_lineno", __pyx_f[0], 40, 0, 0, 0, __PYX_ERR(0, 40, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->lineno_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 40, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->lineno_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 40, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 40, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_lineno", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5264,33 +5043,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_lineno(st * cdef inline Event_get_globals(Event event): return event.globals_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_stdlib(Event event): return event.stdlib_getter() * cdef inline Event_get_arg(Event event): return event.arg - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_globals(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_globals", 1); - __Pyx_TraceCall("Event_get_globals", __pyx_f[1], 41, 0, __PYX_ERR(1, 41, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) + __Pyx_RefNannySetupContext("Event_get_globals", 0); + __Pyx_TraceStartFunc("Event_get_globals", __pyx_f[0], 41, 0, 0, 0, __PYX_ERR(0, 41, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->globals_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 41, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->globals_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 41, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 41, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_globals", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5301,33 +5088,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_globals(s * cdef inline Event_get_stdlib(Event event): return event.stdlib_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_arg(Event event): return event.arg * cdef inline Event_get_locals(Event event): return event.locals_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_stdlib(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_stdlib", 1); - __Pyx_TraceCall("Event_get_stdlib", __pyx_f[1], 42, 0, __PYX_ERR(1, 42, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) + __Pyx_RefNannySetupContext("Event_get_stdlib", 0); + __Pyx_TraceStartFunc("Event_get_stdlib", __pyx_f[0], 42, 0, 0, 0, __PYX_ERR(0, 42, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->stdlib_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 42, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->stdlib_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 42, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 42, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_stdlib", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5338,29 +5133,37 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_stdlib(st * cdef inline Event_get_arg(Event event): return event.arg # <<<<<<<<<<<<<< * cdef inline Event_get_locals(Event event): return event.locals_getter() * cdef inline Event_get_kind(Event event): return event.kind - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_arg(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_arg", 1); - __Pyx_TraceCall("Event_get_arg", __pyx_f[1], 43, 0, __PYX_ERR(1, 43, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) + __Pyx_RefNannySetupContext("Event_get_arg", 0); + __Pyx_TraceStartFunc("Event_get_arg", __pyx_f[0], 43, 0, 0, 0, __PYX_ERR(0, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_event->arg); __pyx_r = __pyx_v_event->arg; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 43, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 43, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_arg", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5371,33 +5174,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_arg(struc * cdef inline Event_get_locals(Event event): return event.locals_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_kind(Event event): return event.kind * cdef inline Event_get_filename(Event event): return event.filename_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_locals(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_locals", 1); - __Pyx_TraceCall("Event_get_locals", __pyx_f[1], 44, 0, __PYX_ERR(1, 44, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) + __Pyx_RefNannySetupContext("Event_get_locals", 0); + __Pyx_TraceStartFunc("Event_get_locals", __pyx_f[0], 44, 0, 0, 0, __PYX_ERR(0, 44, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->locals_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 44, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->locals_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 44, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 44, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_locals", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5408,29 +5219,37 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_locals(st * cdef inline Event_get_kind(Event event): return event.kind # <<<<<<<<<<<<<< * cdef inline Event_get_filename(Event event): return event.filename_getter() * cdef inline Event_get_source(Event event): return event.source_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_kind(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_kind", 1); - __Pyx_TraceCall("Event_get_kind", __pyx_f[1], 45, 0, __PYX_ERR(1, 45, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) + __Pyx_RefNannySetupContext("Event_get_kind", 0); + __Pyx_TraceStartFunc("Event_get_kind", __pyx_f[0], 45, 0, 0, 0, __PYX_ERR(0, 45, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_event->kind); __pyx_r = __pyx_v_event->kind; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 45, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 45, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_kind", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5441,33 +5260,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_kind(stru * cdef inline Event_get_filename(Event event): return event.filename_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_source(Event event): return event.source_getter() * cdef inline Event_get_fullsource(Event event): return event.fullsource_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_filename(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_filename", 1); - __Pyx_TraceCall("Event_get_filename", __pyx_f[1], 46, 0, __PYX_ERR(1, 46, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) + __Pyx_RefNannySetupContext("Event_get_filename", 0); + __Pyx_TraceStartFunc("Event_get_filename", __pyx_f[0], 46, 0, 0, 0, __PYX_ERR(0, 46, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->filename_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 46, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->filename_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 46, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 46, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_filename", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5478,33 +5305,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_filename( * cdef inline Event_get_source(Event event): return event.source_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_fullsource(Event event): return event.fullsource_getter() * cdef inline Event_get_threadname(Event event): return event.threadname_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_source(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_source", 1); - __Pyx_TraceCall("Event_get_source", __pyx_f[1], 47, 0, __PYX_ERR(1, 47, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) + __Pyx_RefNannySetupContext("Event_get_source", 0); + __Pyx_TraceStartFunc("Event_get_source", __pyx_f[0], 47, 0, 0, 0, __PYX_ERR(0, 47, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->source_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 47, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->source_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 47, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 47, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_source", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5515,33 +5350,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_source(st * cdef inline Event_get_fullsource(Event event): return event.fullsource_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_threadname(Event event): return event.threadname_getter() * cdef inline Event_get_threadid(Event event): return event.threadid_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_fullsource(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_fullsource", 1); - __Pyx_TraceCall("Event_get_fullsource", __pyx_f[1], 48, 0, __PYX_ERR(1, 48, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) + __Pyx_RefNannySetupContext("Event_get_fullsource", 0); + __Pyx_TraceStartFunc("Event_get_fullsource", __pyx_f[0], 48, 0, 0, 0, __PYX_ERR(0, 48, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->fullsource_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 48, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->fullsource_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 48, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 48, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 48, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_fullsource", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5552,33 +5395,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_fullsourc * cdef inline Event_get_threadname(Event event): return event.threadname_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_threadid(Event event): return event.threadid_getter() * cdef inline Event_get_instruction(Event event): return event.instruction_getter() - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_threadname(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_threadname", 1); - __Pyx_TraceCall("Event_get_threadname", __pyx_f[1], 49, 0, __PYX_ERR(1, 49, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) + __Pyx_RefNannySetupContext("Event_get_threadname", 0); + __Pyx_TraceStartFunc("Event_get_threadname", __pyx_f[0], 49, 0, 0, 0, __PYX_ERR(0, 49, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->threadname_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 49, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->threadname_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 49, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 49, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_threadname", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5589,33 +5440,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_threadnam * cdef inline Event_get_threadid(Event event): return event.threadid_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_instruction(Event event): return event.instruction_getter() * cdef inline Event_get_depth(Event event): return event.depth - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_threadid(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_threadid", 1); - __Pyx_TraceCall("Event_get_threadid", __pyx_f[1], 50, 0, __PYX_ERR(1, 50, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) + __Pyx_RefNannySetupContext("Event_get_threadid", 0); + __Pyx_TraceStartFunc("Event_get_threadid", __pyx_f[0], 50, 0, 0, 0, __PYX_ERR(0, 50, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->threadid_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 50, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->threadid_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 50, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 50, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_threadid", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5626,33 +5485,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_threadid( * cdef inline Event_get_instruction(Event event): return event.instruction_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_depth(Event event): return event.depth * cdef inline Event_get_calls(Event event): return event.calls - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_instruction(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_instruction", 1); - __Pyx_TraceCall("Event_get_instruction", __pyx_f[1], 51, 0, __PYX_ERR(1, 51, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) + __Pyx_RefNannySetupContext("Event_get_instruction", 0); + __Pyx_TraceStartFunc("Event_get_instruction", __pyx_f[0], 51, 0, 0, 0, __PYX_ERR(0, 51, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->instruction_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 51, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_6hunter_6_event_Event *)__pyx_v_event->__pyx_vtab)->instruction_getter(__pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 51, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 51, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_instruction", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5663,33 +5530,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_instructi * cdef inline Event_get_depth(Event event): return event.depth # <<<<<<<<<<<<<< * cdef inline Event_get_calls(Event event): return event.calls * cdef inline Event_get_builtin(Event event): return event.builtin - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_depth(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_depth", 1); - __Pyx_TraceCall("Event_get_depth", __pyx_f[1], 52, 0, __PYX_ERR(1, 52, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])) + __Pyx_RefNannySetupContext("Event_get_depth", 0); + __Pyx_TraceStartFunc("Event_get_depth", __pyx_f[0], 52, 0, 0, 0, __PYX_ERR(0, 52, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_event->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 52, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_event->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 52, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 52, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_depth", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5700,33 +5575,41 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_depth(str * cdef inline Event_get_calls(Event event): return event.calls # <<<<<<<<<<<<<< * cdef inline Event_get_builtin(Event event): return event.builtin * - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_calls(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_calls", 1); - __Pyx_TraceCall("Event_get_calls", __pyx_f[1], 53, 0, __PYX_ERR(1, 53, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])) + __Pyx_RefNannySetupContext("Event_get_calls", 0); + __Pyx_TraceStartFunc("Event_get_calls", __pyx_f[0], 53, 0, 0, 0, __PYX_ERR(0, 53, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_event->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 53, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_event->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 53, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 53, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_calls", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5737,29 +5620,37 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_calls(str * cdef inline Event_get_builtin(Event event): return event.builtin # <<<<<<<<<<<<<< * * cdef Event_getter_typedef[17] Event_getters = [ - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_builtin(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("Event_get_builtin", 1); - __Pyx_TraceCall("Event_get_builtin", __pyx_f[1], 54, 0, __PYX_ERR(1, 54, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])) + __Pyx_RefNannySetupContext("Event_get_builtin", 0); + __Pyx_TraceStartFunc("Event_get_builtin", __pyx_f[0], 54, 0, 0, 0, __PYX_ERR(0, 54, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_event->builtin); __pyx_r = __pyx_v_event->builtin; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 54, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 54, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Event_get_builtin", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5770,7 +5661,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_Event_get_builtin(s * def __init__(self, object value, str name): # <<<<<<<<<<<<<< * self.value = value * self.getter_index = ALLOWED_KEYS.index(name) - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -5786,102 +5677,90 @@ static int __pyx_pw_6hunter_11_predicates_10QueryEntry_1__init__(PyObject *__pyx int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_value,&__pyx_n_s_name,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_value,&__pyx_mstate_global->__pyx_n_u_name,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 83, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 83, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 83, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_value)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 83, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_name)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 83, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(1, 83, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 83, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 83, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, i); __PYX_ERR(0, 83, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); - values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 83, __pyx_L3_error) + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 83, __pyx_L3_error) } __pyx_v_value = values[0]; __pyx_v_name = ((PyObject*)values[1]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(1, 83, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 83, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.QueryEntry.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_name), (&PyString_Type), 1, "name", 1))) __PYX_ERR(1, 83, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_name), (&PyUnicode_Type), 1, "name", 1))) __PYX_ERR(0, 83, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self), __pyx_v_value, __pyx_v_name); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = -1; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_name) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 83, 0, __PYX_ERR(1, 83, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 83, 0, 0, 0, __PYX_ERR(0, 83, __pyx_L1_error)); /* "hunter/_predicates.pyx":84 * @@ -5889,8 +5768,8 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj * self.value = value # <<<<<<<<<<<<<< * self.getter_index = ALLOWED_KEYS.index(name) * self.getter = Event_getters[self.getter_index] - */ - __Pyx_TraceLine(84,0,__PYX_ERR(1, 84, __pyx_L1_error)) +*/ + __Pyx_TraceLine(84,1,0,__PYX_ERR(0, 84, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(__pyx_v_self->value); @@ -5903,11 +5782,11 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj * self.getter_index = ALLOWED_KEYS.index(name) # <<<<<<<<<<<<<< * self.getter = Event_getters[self.getter_index] * - */ - __Pyx_TraceLine(85,0,__PYX_ERR(1, 85, __pyx_L1_error)) - __pyx_t_1 = __Pyx_CallUnboundCMethod1(&__pyx_umethod_PyTuple_Type_index, __pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_v_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 85, __pyx_L1_error) +*/ + __Pyx_TraceLine(85,8,0,__PYX_ERR(0, 85, __pyx_L1_error)) + __pyx_t_1 = __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyTuple_Type__index, __pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_v_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 85, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_self->getter_index = __pyx_t_2; @@ -5917,8 +5796,8 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj * self.getter = Event_getters[self.getter_index] # <<<<<<<<<<<<<< * * def __repr__(self): - */ - __Pyx_TraceLine(86,0,__PYX_ERR(1, 86, __pyx_L1_error)) +*/ + __Pyx_TraceLine(86,10,0,__PYX_ERR(0, 86, __pyx_L1_error)) __pyx_v_self->getter = (__pyx_v_6hunter_11_predicates_Event_getters[__pyx_v_self->getter_index]); /* "hunter/_predicates.pyx":83 @@ -5927,17 +5806,24 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj * def __init__(self, object value, str name): # <<<<<<<<<<<<<< * self.value = value * self.getter_index = ALLOWED_KEYS.index(name) - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 83, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 83, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.QueryEntry.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5948,7 +5834,7 @@ static int __pyx_pf_6hunter_11_predicates_10QueryEntry___init__(struct __pyx_obj * def __repr__(self): # <<<<<<<<<<<<<< * return repr(self.value) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -5967,15 +5853,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 88, 0, __PYX_ERR(1, 88, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 88, 0, 0, 0, __PYX_ERR(0, 88, __pyx_L1_error)); /* "hunter/_predicates.pyx":89 * @@ -5983,16 +5870,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __ * return repr(self.value) # <<<<<<<<<<<<<< * * def __eq__(self, other): - */ - __Pyx_TraceLine(89,0,__PYX_ERR(1, 89, __pyx_L1_error)) +*/ + __Pyx_TraceLine(89,1,0,__PYX_ERR(0, 89, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_v_self->value; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = PyObject_Repr(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 89, __pyx_L1_error) + __pyx_t_2 = PyObject_Repr(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 89, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":88 @@ -6001,17 +5889,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __ * def __repr__(self): # <<<<<<<<<<<<<< * return repr(self.value) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 88, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.QueryEntry.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6022,7 +5916,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_2__repr__(struct __ * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, QueryEntry) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -6041,7 +5935,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_5__eq__(PyObject *_ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -6049,8 +5943,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 91, 0, __PYX_ERR(1, 91, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 91, 0, 0, 0, __PYX_ERR(0, 91, __pyx_L1_error)); /* "hunter/_predicates.pyx":92 * @@ -6058,8 +5953,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py * return ( # <<<<<<<<<<<<<< * isinstance(other, QueryEntry) * and self.value == ( other).value - */ - __Pyx_TraceLine(92,0,__PYX_ERR(1, 92, __pyx_L1_error)) +*/ + __Pyx_TraceLine(92,1,0,__PYX_ERR(0, 92, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":93 @@ -6068,12 +5963,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py * isinstance(other, QueryEntry) # <<<<<<<<<<<<<< * and self.value == ( other).value * and self.getter_index == ( other).getter_index - */ - __Pyx_TraceLine(93,0,__PYX_ERR(1, 93, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_QueryEntry); +*/ + __Pyx_TraceLine(93,5,0,__PYX_ERR(0, 93, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_QueryEntry); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 93, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -6086,10 +5981,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py * and self.value == ( other).value # <<<<<<<<<<<<<< * and self.getter_index == ( other).getter_index * ) - */ - __Pyx_TraceLine(94,0,__PYX_ERR(1, 94, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->value, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_other)->value, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 94, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 94, __pyx_L1_error) +*/ + __Pyx_TraceLine(94,12,0,__PYX_ERR(0, 94, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->value, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_other)->value, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 94, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -6105,16 +6000,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py * and self.getter_index == ( other).getter_index # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(95,0,__PYX_ERR(1, 95, __pyx_L1_error)) +*/ + __Pyx_TraceLine(95,16,0,__PYX_ERR(0, 95, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->getter_index == ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_other)->getter_index); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 95, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 92, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":91 @@ -6123,17 +6019,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, QueryEntry) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 91, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.QueryEntry.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6142,7 +6044,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_4__eq__(struct __py * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__(PyObject *__pyx_v_self, @@ -6152,7 +6054,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -6168,16 +6070,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry_6__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self)); /* function exit code */ @@ -6187,37 +6090,43 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_6__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__3) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":2 * def __reduce_cython__(self): * raise TypeError, "self.getter cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - */ - __Pyx_TraceLine(2,0,__PYX_ERR(0, 2, __pyx_L1_error)) - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_self_getter_cannot_be_converted, 0, 0); - __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_TraceLine(2,2,0,__PYX_ERR(1, 2, __pyx_L1_error)) + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_getter_cannot_be_converted, 0, 0); + __PYX_ERR(1, 2, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.QueryEntry.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6227,7 +6136,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_6__reduce_cython__( * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__(PyObject *__pyx_v_self, @@ -6237,7 +6146,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_10QueryEntry_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_10QueryEntry_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -6258,7 +6167,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -6266,47 +6175,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 3, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.QueryEntry.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -6315,11 +6216,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_10QueryEntry_8__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -6327,37 +6225,43 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_8__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_11_predicates_QueryEntry *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__4) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 3, 0, __PYX_ERR(0, 3, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 3, 0, 0, 0, __PYX_ERR(1, 3, __pyx_L1_error)); /* "(tree fragment)":4 * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): * raise TypeError, "self.getter cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_self_getter_cannot_be_converted, 0, 0); - __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_getter_cannot_be_converted, 0, 0); + __PYX_ERR(1, 4, __pyx_L1_error) /* "(tree fragment)":3 * def __reduce_cython__(self): * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - */ +*/ /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 3, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.QueryEntry.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6368,7 +6272,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10QueryEntry_8__setstate_cython_ * def __init__(self, **query): # <<<<<<<<<<<<<< * """ * Args: - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_5Query_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -6383,16 +6287,17 @@ static int __pyx_pw_6hunter_11_predicates_5Query_1__init__(PyObject *__pyx_v_sel int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, __pyx_nargs); return -1;} - if (__pyx_kwds && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 1))) return -1; - if (__pyx_kwds) { + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, __pyx_nargs); return -1; } + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return -1; + if (__pyx_kwds_len > 0) { + if (unlikely(__Pyx_CheckKeywordStrings("__init__", __pyx_kwds) == -1)) return -1; __pyx_v_query = __Pyx_KwargsAsDict_VARARGS(__pyx_kwds, __pyx_kwvalues); if (unlikely(!__pyx_v_query)) return -1; __Pyx_GOTREF(__pyx_v_query); @@ -6429,7 +6334,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt PyObject *__pyx_v_mapping = NULL; PyObject *__pyx_7genexpr__pyx_v_p = NULL; int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; @@ -6439,18 +6344,23 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt PyObject *__pyx_t_6 = NULL; int __pyx_t_7; PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; + size_t __pyx_t_9; Py_ssize_t __pyx_t_10; PyObject *(*__pyx_t_11)(PyObject *); int __pyx_t_12; - Py_UCS4 __pyx_t_13; - int __pyx_t_14; - int __pyx_t_15; + PyObject *__pyx_t_13 = NULL; + PyObject *__pyx_t_14 = NULL; + PyObject *__pyx_t_15 = NULL; + PyObject *__pyx_t_16[6]; + PyObject *__pyx_t_17 = NULL; + int __pyx_t_18; + PyObject *__pyx_t_19[5]; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 106, 0, __PYX_ERR(1, 106, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 106, 0, 0, 0, __PYX_ERR(0, 106, __pyx_L1_error)); /* "hunter/_predicates.pyx":130 * ``threadname``. @@ -6458,9 +6368,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_eq = {} # <<<<<<<<<<<<<< * query_startswith = {} * query_endswith = {} - */ - __Pyx_TraceLine(130,0,__PYX_ERR(1, 130, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 130, __pyx_L1_error) +*/ + __Pyx_TraceLine(130,2,0,__PYX_ERR(0, 130, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_eq = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6471,9 +6381,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_startswith = {} # <<<<<<<<<<<<<< * query_endswith = {} * query_in = {} - */ - __Pyx_TraceLine(131,0,__PYX_ERR(1, 131, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 131, __pyx_L1_error) +*/ + __Pyx_TraceLine(131,4,0,__PYX_ERR(0, 131, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_startswith = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6484,9 +6394,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_endswith = {} # <<<<<<<<<<<<<< * query_in = {} * query_contains = {} - */ - __Pyx_TraceLine(132,0,__PYX_ERR(1, 132, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 132, __pyx_L1_error) +*/ + __Pyx_TraceLine(132,6,0,__PYX_ERR(0, 132, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_endswith = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6497,9 +6407,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_in = {} # <<<<<<<<<<<<<< * query_contains = {} * query_regex = {} - */ - __Pyx_TraceLine(133,0,__PYX_ERR(1, 133, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 133, __pyx_L1_error) +*/ + __Pyx_TraceLine(133,8,0,__PYX_ERR(0, 133, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 133, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_in = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6510,9 +6420,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_contains = {} # <<<<<<<<<<<<<< * query_regex = {} * query_lt = {} - */ - __Pyx_TraceLine(134,0,__PYX_ERR(1, 134, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 134, __pyx_L1_error) +*/ + __Pyx_TraceLine(134,10,0,__PYX_ERR(0, 134, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_contains = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6523,9 +6433,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_regex = {} # <<<<<<<<<<<<<< * query_lt = {} * query_lte = {} - */ - __Pyx_TraceLine(135,0,__PYX_ERR(1, 135, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 135, __pyx_L1_error) +*/ + __Pyx_TraceLine(135,12,0,__PYX_ERR(0, 135, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_regex = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6536,9 +6446,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_lt = {} # <<<<<<<<<<<<<< * query_lte = {} * query_gt = {} - */ - __Pyx_TraceLine(136,0,__PYX_ERR(1, 136, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 136, __pyx_L1_error) +*/ + __Pyx_TraceLine(136,14,0,__PYX_ERR(0, 136, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_lt = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6549,9 +6459,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_lte = {} # <<<<<<<<<<<<<< * query_gt = {} * query_gte = {} - */ - __Pyx_TraceLine(137,0,__PYX_ERR(1, 137, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 137, __pyx_L1_error) +*/ + __Pyx_TraceLine(137,16,0,__PYX_ERR(0, 137, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_lte = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6562,9 +6472,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_gt = {} # <<<<<<<<<<<<<< * query_gte = {} * - */ - __Pyx_TraceLine(138,0,__PYX_ERR(1, 138, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 138, __pyx_L1_error) +*/ + __Pyx_TraceLine(138,18,0,__PYX_ERR(0, 138, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_gt = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6575,9 +6485,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * query_gte = {} # <<<<<<<<<<<<<< * * for key, value in query.items(): - */ - __Pyx_TraceLine(139,0,__PYX_ERR(1, 139, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 139, __pyx_L1_error) +*/ + __Pyx_TraceLine(139,20,0,__PYX_ERR(0, 139, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_query_gte = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -6588,10 +6498,10 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * for key, value in query.items(): # <<<<<<<<<<<<<< * parts = [p for p in key.split('_') if p] * count = len(parts) - */ - __Pyx_TraceLine(141,0,__PYX_ERR(1, 141, __pyx_L1_error)) +*/ + __Pyx_TraceLine(141,21,0,__PYX_ERR(0, 141, __pyx_L1_error)) __pyx_t_2 = 0; - __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_query, 1, __pyx_n_s_items, (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 141, __pyx_L1_error) + __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_query, 1, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = __pyx_t_5; @@ -6599,7 +6509,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt while (1) { __pyx_t_7 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, &__pyx_t_6, NULL, __pyx_t_4); if (unlikely(__pyx_t_7 == 0)) break; - if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(1, 141, __pyx_L1_error) + if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GOTREF(__pyx_t_6); __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); @@ -6613,43 +6523,29 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * parts = [p for p in key.split('_') if p] # <<<<<<<<<<<<<< * count = len(parts) * if count > 2: - */ - __Pyx_TraceLine(142,0,__PYX_ERR(1, 142, __pyx_L1_error)) +*/ + __Pyx_TraceLine(142,28,0,__PYX_ERR(0, 142, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 142, __pyx_L7_error) + __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 142, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_key, __pyx_n_s_split); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 142, __pyx_L7_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = NULL; - __pyx_t_7 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_9)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_9); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); - __pyx_t_7 = 1; - } - } - #endif + __pyx_t_8 = __pyx_v_key; + __Pyx_INCREF(__pyx_t_8); + __pyx_t_9 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_n_s__5}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) + PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_mstate_global->__pyx_n_u_}; + __pyx_t_5 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_split, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 142, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) { __pyx_t_8 = __pyx_t_5; __Pyx_INCREF(__pyx_t_8); __pyx_t_10 = 0; __pyx_t_11 = NULL; } else { - __pyx_t_10 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 142, __pyx_L7_error) + __pyx_t_10 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 142, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_11 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 142, __pyx_L7_error) + __pyx_t_11 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 142, __pyx_L7_error) } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; for (;;) { @@ -6657,49 +6553,47 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt if (likely(PyList_CheckExact(__pyx_t_8))) { { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_8); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 142, __pyx_L7_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 142, __pyx_L7_error) #endif if (__pyx_t_10 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely((0 < 0))) __PYX_ERR(1, 142, __pyx_L7_error) - #else - __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) - __Pyx_GOTREF(__pyx_t_5); - #endif + __pyx_t_5 = __Pyx_PyList_GetItemRef(__pyx_t_8, __pyx_t_10); + ++__pyx_t_10; } else { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_8); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 142, __pyx_L7_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 142, __pyx_L7_error) #endif if (__pyx_t_10 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; if (unlikely((0 < 0))) __PYX_ERR(1, 142, __pyx_L7_error) + __pyx_t_5 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_10)); #else - __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 142, __pyx_L7_error) - __Pyx_GOTREF(__pyx_t_5); + __pyx_t_5 = __Pyx_PySequence_ITEM(__pyx_t_8, __pyx_t_10); #endif + ++__pyx_t_10; } + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 142, __pyx_L7_error) } else { __pyx_t_5 = __pyx_t_11(__pyx_t_8); if (unlikely(!__pyx_t_5)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 142, __pyx_L7_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 142, __pyx_L7_error) + PyErr_Clear(); } break; } - __Pyx_GOTREF(__pyx_t_5); } + __Pyx_GOTREF(__pyx_t_5); __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_p, __pyx_t_5); __pyx_t_5 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_7genexpr__pyx_v_p); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 142, __pyx_L7_error) + __Pyx_TraceLine(142,30,0,__PYX_ERR(0, 142, __pyx_L7_error)) + __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_7genexpr__pyx_v_p); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 142, __pyx_L7_error) if (__pyx_t_12) { - if (unlikely(__Pyx_ListComp_Append(__pyx_t_6, (PyObject*)__pyx_7genexpr__pyx_v_p))) __PYX_ERR(1, 142, __pyx_L7_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_t_6, (PyObject*)__pyx_7genexpr__pyx_v_p))) __PYX_ERR(0, 142, __pyx_L7_error) } } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -6719,9 +6613,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * count = len(parts) # <<<<<<<<<<<<<< * if count > 2: * raise TypeError( - */ - __Pyx_TraceLine(143,0,__PYX_ERR(1, 143, __pyx_L1_error)) - __pyx_t_10 = __Pyx_PyList_GET_SIZE(__pyx_v_parts); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(1, 143, __pyx_L1_error) +*/ + __Pyx_TraceLine(143,40,0,__PYX_ERR(0, 143, __pyx_L1_error)) + __pyx_t_10 = __Pyx_PyList_GET_SIZE(__pyx_v_parts); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 143, __pyx_L1_error) __pyx_v_count = __pyx_t_10; /* "hunter/_predicates.pyx":144 @@ -6730,74 +6624,62 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if count > 2: # <<<<<<<<<<<<<< * raise TypeError( * f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS} with optional operators like: {ALLOWED_OPERATORS}' - */ - __Pyx_TraceLine(144,0,__PYX_ERR(1, 144, __pyx_L1_error)) +*/ + __Pyx_TraceLine(144,44,0,__PYX_ERR(0, 144, __pyx_L1_error)) __pyx_t_12 = (__pyx_v_count > 2); if (unlikely(__pyx_t_12)) { - /* "hunter/_predicates.pyx":146 - * if count > 2: - * raise TypeError( - * f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS} with optional operators like: {ALLOWED_OPERATORS}' # <<<<<<<<<<<<<< - * ) - * elif count == 2: - */ - __Pyx_TraceLine(146,0,__PYX_ERR(1, 146, __pyx_L1_error)) - __pyx_t_6 = PyTuple_New(6); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 146, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = 0; - __pyx_t_13 = 127; - __Pyx_INCREF(__pyx_kp_u_Unexpected_argument); - __pyx_t_10 += 20; - __Pyx_GIVEREF(__pyx_kp_u_Unexpected_argument); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_kp_u_Unexpected_argument); - __pyx_t_8 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 146, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_8); - __pyx_t_8 = 0; - __Pyx_INCREF(__pyx_kp_u_Must_be_one_of); - __pyx_t_10 += 17; - __Pyx_GIVEREF(__pyx_kp_u_Must_be_one_of); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_kp_u_Must_be_one_of); - __pyx_t_8 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 146, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_6, 3, __pyx_t_8); - __pyx_t_8 = 0; - __Pyx_INCREF(__pyx_kp_u_with_optional_operators_like); - __pyx_t_10 += 31; - __Pyx_GIVEREF(__pyx_kp_u_with_optional_operators_like); - PyTuple_SET_ITEM(__pyx_t_6, 4, __pyx_kp_u_with_optional_operators_like); - __pyx_t_8 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS, __pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 146, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_6, 5, __pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyUnicode_Join(__pyx_t_6, 6, __pyx_t_10, __pyx_t_13); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 146, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "hunter/_predicates.pyx":145 * count = len(parts) * if count > 2: * raise TypeError( # <<<<<<<<<<<<<< * f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS} with optional operators like: {ALLOWED_OPERATORS}' * ) - */ - __Pyx_TraceLine(145,0,__PYX_ERR(1, 145, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 145, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; +*/ + __Pyx_TraceLine(145,48,0,__PYX_ERR(0, 145, __pyx_L1_error)) + __pyx_t_8 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_5 = __pyx_builtin_TypeError; + + /* "hunter/_predicates.pyx":146 + * if count > 2: + * raise TypeError( + * f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS} with optional operators like: {ALLOWED_OPERATORS}' # <<<<<<<<<<<<<< + * ) + * elif count == 2: +*/ + __Pyx_TraceLine(146,50,0,__PYX_ERR(0, 146, __pyx_L1_error)) + __pyx_t_13 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 146, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 146, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_15 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 146, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_16[0] = __pyx_mstate_global->__pyx_kp_u_Unexpected_argument; + __pyx_t_16[1] = __pyx_t_13; + __pyx_t_16[2] = __pyx_mstate_global->__pyx_kp_u_Must_be_one_of; + __pyx_t_16[3] = __pyx_t_14; + __pyx_t_16[4] = __pyx_mstate_global->__pyx_kp_u_with_optional_operators_like; + __pyx_t_16[5] = __pyx_t_15; + __pyx_t_17 = __Pyx_PyUnicode_Join(__pyx_t_16, 6, 20 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_13) + 17 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_14) + 31 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_15), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_13) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_15)); + if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 146, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_17); + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_17}; + __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 145, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + } __Pyx_Raise(__pyx_t_6, 0, 0, 0); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __PYX_ERR(1, 145, __pyx_L1_error) + __PYX_ERR(0, 145, __pyx_L1_error) /* "hunter/_predicates.pyx":144 * parts = [p for p in key.split('_') if p] @@ -6805,7 +6687,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if count > 2: # <<<<<<<<<<<<<< * raise TypeError( * f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS} with optional operators like: {ALLOWED_OPERATORS}' - */ +*/ } /* "hunter/_predicates.pyx":148 @@ -6814,8 +6696,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif count == 2: # <<<<<<<<<<<<<< * prefix, operator = parts * if operator in ('startswith', 'sw'): - */ - __Pyx_TraceLine(148,0,__PYX_ERR(1, 148, __pyx_L1_error)) +*/ + __Pyx_TraceLine(148,55,0,__PYX_ERR(0, 148, __pyx_L1_error)) __pyx_t_12 = (__pyx_v_count == 2); if (__pyx_t_12) { @@ -6825,32 +6707,34 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * prefix, operator = parts # <<<<<<<<<<<<<< * if operator in ('startswith', 'sw'): * if not isinstance(value, basestring): - */ - __Pyx_TraceLine(149,0,__PYX_ERR(1, 149, __pyx_L1_error)) +*/ + __Pyx_TraceLine(149,59,0,__PYX_ERR(0, 149, __pyx_L1_error)) if (1) { PyObject* sequence = __pyx_v_parts; - Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); + Py_ssize_t size = __Pyx_PyList_GET_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 149, __pyx_L1_error) + __PYX_ERR(0, 149, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_6 = PyList_GET_ITEM(sequence, 0); - __pyx_t_8 = PyList_GET_ITEM(sequence, 1); - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(__pyx_t_8); + __pyx_t_6 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 149, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_6); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 149, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); #else - __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 149, __pyx_L1_error) + __pyx_t_6 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 149, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 149, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); #endif } __Pyx_XDECREF_SET(__pyx_v_prefix, __pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF_SET(__pyx_v_operator, __pyx_t_8); - __pyx_t_8 = 0; + __Pyx_XDECREF_SET(__pyx_v_operator, __pyx_t_5); + __pyx_t_5 = 0; /* "hunter/_predicates.pyx":150 * elif count == 2: @@ -6858,22 +6742,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if operator in ('startswith', 'sw'): # <<<<<<<<<<<<<< * if not isinstance(value, basestring): * if not isinstance(value, (list, set, tuple)): - */ - __Pyx_TraceLine(150,0,__PYX_ERR(1, 150, __pyx_L1_error)) +*/ + __Pyx_TraceLine(150,61,0,__PYX_ERR(0, 150, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_operator); - __pyx_t_8 = __pyx_v_operator; - __pyx_t_14 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_startswith, Py_EQ)); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 150, __pyx_L1_error) - if (!__pyx_t_14) { + __pyx_t_5 = __pyx_v_operator; + __pyx_t_18 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_startswith, Py_EQ)); if (unlikely((__pyx_t_18 < 0))) __PYX_ERR(0, 150, __pyx_L1_error) + if (!__pyx_t_18) { } else { - __pyx_t_12 = __pyx_t_14; + __pyx_t_12 = __pyx_t_18; goto __pyx_L15_bool_binop_done; } - __pyx_t_14 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_sw, Py_EQ)); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 150, __pyx_L1_error) - __pyx_t_12 = __pyx_t_14; + __pyx_t_18 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_sw, Py_EQ)); if (unlikely((__pyx_t_18 < 0))) __PYX_ERR(0, 150, __pyx_L1_error) + __pyx_t_12 = __pyx_t_18; __pyx_L15_bool_binop_done:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_14 = __pyx_t_12; - if (__pyx_t_14) { + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_18 = __pyx_t_12; + if (__pyx_t_18) { /* "hunter/_predicates.pyx":151 * prefix, operator = parts @@ -6881,10 +6765,10 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, basestring): # <<<<<<<<<<<<<< * if not isinstance(value, (list, set, tuple)): * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') - */ - __Pyx_TraceLine(151,0,__PYX_ERR(1, 151, __pyx_L1_error)) - __pyx_t_14 = __Pyx_PyBaseString_Check(__pyx_v_value); - __pyx_t_12 = (!__pyx_t_14); +*/ + __Pyx_TraceLine(151,70,0,__PYX_ERR(0, 151, __pyx_L1_error)) + __pyx_t_18 = PyUnicode_Check(__pyx_v_value); + __pyx_t_12 = (!__pyx_t_18); if (__pyx_t_12) { /* "hunter/_predicates.pyx":152 @@ -6893,25 +6777,25 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, (list, set, tuple)): # <<<<<<<<<<<<<< * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') * value = tuple(value) - */ - __Pyx_TraceLine(152,0,__PYX_ERR(1, 152, __pyx_L1_error)) - __pyx_t_14 = PyList_Check(__pyx_v_value); - if (!__pyx_t_14) { +*/ + __Pyx_TraceLine(152,76,0,__PYX_ERR(0, 152, __pyx_L1_error)) + __pyx_t_18 = PyList_Check(__pyx_v_value); + if (!__pyx_t_18) { } else { - __pyx_t_12 = __pyx_t_14; + __pyx_t_12 = __pyx_t_18; goto __pyx_L19_bool_binop_done; } - __pyx_t_14 = PySet_Check(__pyx_v_value); - if (!__pyx_t_14) { + __pyx_t_18 = PySet_Check(__pyx_v_value); + if (!__pyx_t_18) { } else { - __pyx_t_12 = __pyx_t_14; + __pyx_t_12 = __pyx_t_18; goto __pyx_L19_bool_binop_done; } - __pyx_t_14 = PyTuple_Check(__pyx_v_value); - __pyx_t_12 = __pyx_t_14; + __pyx_t_18 = PyTuple_Check(__pyx_v_value); + __pyx_t_12 = __pyx_t_18; __pyx_L19_bool_binop_done:; - __pyx_t_14 = (!__pyx_t_12); - if (unlikely(__pyx_t_14)) { + __pyx_t_18 = (!__pyx_t_12); + if (unlikely(__pyx_t_18)) { /* "hunter/_predicates.pyx":153 * if not isinstance(value, basestring): @@ -6919,47 +6803,38 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') # <<<<<<<<<<<<<< * value = tuple(value) * mapping = query_startswith - */ - __Pyx_TraceLine(153,0,__PYX_ERR(1, 153, __pyx_L1_error)) - __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_10 = 0; - __pyx_t_13 = 127; - __Pyx_INCREF(__pyx_kp_u_Value); - __pyx_t_10 += 6; - __Pyx_GIVEREF(__pyx_kp_u_Value); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_u_Value); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_value), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u_for); - __pyx_t_10 += 5; - __Pyx_GIVEREF(__pyx_kp_u_for); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_kp_u_for); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u_is_invalid_Must_be_a_string_lis); - __pyx_t_10 += 50; - __Pyx_GIVEREF(__pyx_kp_u_is_invalid_Must_be_a_string_lis); - PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_kp_u_is_invalid_Must_be_a_string_lis); - __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_8, 5, __pyx_t_10, __pyx_t_13); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 153, __pyx_L1_error) +*/ + __Pyx_TraceLine(153,81,0,__PYX_ERR(0, 153, __pyx_L1_error)) + __pyx_t_6 = NULL; + __Pyx_INCREF(__pyx_builtin_ValueError); + __pyx_t_17 = __pyx_builtin_ValueError; + __pyx_t_8 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_value), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_t_8, 0, 0, 0); + __pyx_t_15 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 153, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_19[0] = __pyx_mstate_global->__pyx_kp_u_Value; + __pyx_t_19[1] = __pyx_t_8; + __pyx_t_19[2] = __pyx_mstate_global->__pyx_kp_u_for; + __pyx_t_19[3] = __pyx_t_15; + __pyx_t_19[4] = __pyx_mstate_global->__pyx_kp_u_is_invalid_Must_be_a_string_lis; + __pyx_t_14 = __Pyx_PyUnicode_Join(__pyx_t_19, 5, 6 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_8) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_15) + 50, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_15)); + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 153, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 153, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_14}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_17, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 153, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + } + __Pyx_Raise(__pyx_t_5, 0, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 153, __pyx_L1_error) /* "hunter/_predicates.pyx":152 * if operator in ('startswith', 'sw'): @@ -6967,7 +6842,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, (list, set, tuple)): # <<<<<<<<<<<<<< * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') * value = tuple(value) - */ +*/ } /* "hunter/_predicates.pyx":154 @@ -6976,12 +6851,12 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * value = tuple(value) # <<<<<<<<<<<<<< * mapping = query_startswith * elif operator in ('endswith', 'ew'): - */ - __Pyx_TraceLine(154,0,__PYX_ERR(1, 154, __pyx_L1_error)) - __pyx_t_8 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 154, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_8); - __pyx_t_8 = 0; +*/ + __Pyx_TraceLine(154,88,0,__PYX_ERR(0, 154, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 154, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_5); + __pyx_t_5 = 0; /* "hunter/_predicates.pyx":151 * prefix, operator = parts @@ -6989,7 +6864,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, basestring): # <<<<<<<<<<<<<< * if not isinstance(value, (list, set, tuple)): * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') - */ +*/ } /* "hunter/_predicates.pyx":155 @@ -6998,8 +6873,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_startswith # <<<<<<<<<<<<<< * elif operator in ('endswith', 'ew'): * if not isinstance(value, basestring): - */ - __Pyx_TraceLine(155,0,__PYX_ERR(1, 155, __pyx_L1_error)) +*/ + __Pyx_TraceLine(155,91,0,__PYX_ERR(0, 155, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_startswith); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_startswith); @@ -7009,7 +6884,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if operator in ('startswith', 'sw'): # <<<<<<<<<<<<<< * if not isinstance(value, basestring): * if not isinstance(value, (list, set, tuple)): - */ +*/ goto __pyx_L14; } @@ -7019,21 +6894,21 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator in ('endswith', 'ew'): # <<<<<<<<<<<<<< * if not isinstance(value, basestring): * if not isinstance(value, (list, set, tuple)): - */ - __Pyx_TraceLine(156,0,__PYX_ERR(1, 156, __pyx_L1_error)) +*/ + __Pyx_TraceLine(156,92,0,__PYX_ERR(0, 156, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_operator); - __pyx_t_8 = __pyx_v_operator; - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_endswith, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 156, __pyx_L1_error) + __pyx_t_5 = __pyx_v_operator; + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_endswith, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 156, __pyx_L1_error) if (!__pyx_t_12) { } else { - __pyx_t_14 = __pyx_t_12; + __pyx_t_18 = __pyx_t_12; goto __pyx_L22_bool_binop_done; } - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_ew, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 156, __pyx_L1_error) - __pyx_t_14 = __pyx_t_12; + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_ew, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 156, __pyx_L1_error) + __pyx_t_18 = __pyx_t_12; __pyx_L22_bool_binop_done:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __pyx_t_14; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_12 = __pyx_t_18; if (__pyx_t_12) { /* "hunter/_predicates.pyx":157 @@ -7042,11 +6917,11 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, basestring): # <<<<<<<<<<<<<< * if not isinstance(value, (list, set, tuple)): * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') - */ - __Pyx_TraceLine(157,0,__PYX_ERR(1, 157, __pyx_L1_error)) - __pyx_t_12 = __Pyx_PyBaseString_Check(__pyx_v_value); - __pyx_t_14 = (!__pyx_t_12); - if (__pyx_t_14) { +*/ + __Pyx_TraceLine(157,101,0,__PYX_ERR(0, 157, __pyx_L1_error)) + __pyx_t_12 = PyUnicode_Check(__pyx_v_value); + __pyx_t_18 = (!__pyx_t_12); + if (__pyx_t_18) { /* "hunter/_predicates.pyx":158 * elif operator in ('endswith', 'ew'): @@ -7054,24 +6929,24 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, (list, set, tuple)): # <<<<<<<<<<<<<< * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') * value = tuple(value) - */ - __Pyx_TraceLine(158,0,__PYX_ERR(1, 158, __pyx_L1_error)) +*/ + __Pyx_TraceLine(158,107,0,__PYX_ERR(0, 158, __pyx_L1_error)) __pyx_t_12 = PyList_Check(__pyx_v_value); if (!__pyx_t_12) { } else { - __pyx_t_14 = __pyx_t_12; + __pyx_t_18 = __pyx_t_12; goto __pyx_L26_bool_binop_done; } __pyx_t_12 = PySet_Check(__pyx_v_value); if (!__pyx_t_12) { } else { - __pyx_t_14 = __pyx_t_12; + __pyx_t_18 = __pyx_t_12; goto __pyx_L26_bool_binop_done; } __pyx_t_12 = PyTuple_Check(__pyx_v_value); - __pyx_t_14 = __pyx_t_12; + __pyx_t_18 = __pyx_t_12; __pyx_L26_bool_binop_done:; - __pyx_t_12 = (!__pyx_t_14); + __pyx_t_12 = (!__pyx_t_18); if (unlikely(__pyx_t_12)) { /* "hunter/_predicates.pyx":159 @@ -7080,47 +6955,38 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') # <<<<<<<<<<<<<< * value = tuple(value) * mapping = query_endswith - */ - __Pyx_TraceLine(159,0,__PYX_ERR(1, 159, __pyx_L1_error)) - __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 159, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_10 = 0; - __pyx_t_13 = 127; - __Pyx_INCREF(__pyx_kp_u_Value); - __pyx_t_10 += 6; - __Pyx_GIVEREF(__pyx_kp_u_Value); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_u_Value); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_value), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 159, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u_for); - __pyx_t_10 += 5; - __Pyx_GIVEREF(__pyx_kp_u_for); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_kp_u_for); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 159, __pyx_L1_error) +*/ + __Pyx_TraceLine(159,112,0,__PYX_ERR(0, 159, __pyx_L1_error)) + __pyx_t_17 = NULL; + __Pyx_INCREF(__pyx_builtin_ValueError); + __pyx_t_14 = __pyx_builtin_ValueError; + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_value), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u_is_invalid_Must_be_a_string_lis); - __pyx_t_10 += 50; - __Pyx_GIVEREF(__pyx_kp_u_is_invalid_Must_be_a_string_lis); - PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_kp_u_is_invalid_Must_be_a_string_lis); - __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_8, 5, __pyx_t_10, __pyx_t_13); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 159, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 159, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 159, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_19[0] = __pyx_mstate_global->__pyx_kp_u_Value; + __pyx_t_19[1] = __pyx_t_6; + __pyx_t_19[2] = __pyx_mstate_global->__pyx_kp_u_for; + __pyx_t_19[3] = __pyx_t_15; + __pyx_t_19[4] = __pyx_mstate_global->__pyx_kp_u_is_invalid_Must_be_a_string_lis; + __pyx_t_8 = __Pyx_PyUnicode_Join(__pyx_t_19, 5, 6 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_15) + 50, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_15)); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 159, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_17, __pyx_t_8}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_14, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 159, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + } + __Pyx_Raise(__pyx_t_5, 0, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 159, __pyx_L1_error) /* "hunter/_predicates.pyx":158 * elif operator in ('endswith', 'ew'): @@ -7128,7 +6994,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, (list, set, tuple)): # <<<<<<<<<<<<<< * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') * value = tuple(value) - */ +*/ } /* "hunter/_predicates.pyx":160 @@ -7137,12 +7003,12 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * value = tuple(value) # <<<<<<<<<<<<<< * mapping = query_endswith * elif operator == 'in': - */ - __Pyx_TraceLine(160,0,__PYX_ERR(1, 160, __pyx_L1_error)) - __pyx_t_8 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 160, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_8); - __pyx_t_8 = 0; +*/ + __Pyx_TraceLine(160,119,0,__PYX_ERR(0, 160, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 160, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_5); + __pyx_t_5 = 0; /* "hunter/_predicates.pyx":157 * mapping = query_startswith @@ -7150,7 +7016,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if not isinstance(value, basestring): # <<<<<<<<<<<<<< * if not isinstance(value, (list, set, tuple)): * raise ValueError(f'Value {value!r} for {key!r} is invalid. Must be a string, list, tuple or set.') - */ +*/ } /* "hunter/_predicates.pyx":161 @@ -7159,8 +7025,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_endswith # <<<<<<<<<<<<<< * elif operator == 'in': * mapping = query_in - */ - __Pyx_TraceLine(161,0,__PYX_ERR(1, 161, __pyx_L1_error)) +*/ + __Pyx_TraceLine(161,122,0,__PYX_ERR(0, 161, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_endswith); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_endswith); @@ -7170,7 +7036,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator in ('endswith', 'ew'): # <<<<<<<<<<<<<< * if not isinstance(value, basestring): * if not isinstance(value, (list, set, tuple)): - */ +*/ goto __pyx_L14; } @@ -7180,9 +7046,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'in': # <<<<<<<<<<<<<< * mapping = query_in * elif operator in ('contains', 'has'): - */ - __Pyx_TraceLine(162,0,__PYX_ERR(1, 162, __pyx_L1_error)) - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_operator, __pyx_n_s_in, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 162, __pyx_L1_error) +*/ + __Pyx_TraceLine(162,123,0,__PYX_ERR(0, 162, __pyx_L1_error)) + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_v_operator, __pyx_mstate_global->__pyx_n_u_in, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 162, __pyx_L1_error) if (__pyx_t_12) { /* "hunter/_predicates.pyx":163 @@ -7191,8 +7057,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_in # <<<<<<<<<<<<<< * elif operator in ('contains', 'has'): * mapping = query_contains - */ - __Pyx_TraceLine(163,0,__PYX_ERR(1, 163, __pyx_L1_error)) +*/ + __Pyx_TraceLine(163,127,0,__PYX_ERR(0, 163, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_in); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_in); @@ -7202,7 +7068,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'in': # <<<<<<<<<<<<<< * mapping = query_in * elif operator in ('contains', 'has'): - */ +*/ goto __pyx_L14; } @@ -7212,22 +7078,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator in ('contains', 'has'): # <<<<<<<<<<<<<< * mapping = query_contains * elif operator in ('regex', 'rx'): - */ - __Pyx_TraceLine(164,0,__PYX_ERR(1, 164, __pyx_L1_error)) +*/ + __Pyx_TraceLine(164,128,0,__PYX_ERR(0, 164, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_operator); - __pyx_t_8 = __pyx_v_operator; - __pyx_t_14 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_contains, Py_EQ)); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 164, __pyx_L1_error) - if (!__pyx_t_14) { + __pyx_t_5 = __pyx_v_operator; + __pyx_t_18 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_contains, Py_EQ)); if (unlikely((__pyx_t_18 < 0))) __PYX_ERR(0, 164, __pyx_L1_error) + if (!__pyx_t_18) { } else { - __pyx_t_12 = __pyx_t_14; + __pyx_t_12 = __pyx_t_18; goto __pyx_L29_bool_binop_done; } - __pyx_t_14 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_has, Py_EQ)); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 164, __pyx_L1_error) - __pyx_t_12 = __pyx_t_14; + __pyx_t_18 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_has, Py_EQ)); if (unlikely((__pyx_t_18 < 0))) __PYX_ERR(0, 164, __pyx_L1_error) + __pyx_t_12 = __pyx_t_18; __pyx_L29_bool_binop_done:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_14 = __pyx_t_12; - if (__pyx_t_14) { + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_18 = __pyx_t_12; + if (__pyx_t_18) { /* "hunter/_predicates.pyx":165 * mapping = query_in @@ -7235,8 +7101,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_contains # <<<<<<<<<<<<<< * elif operator in ('regex', 'rx'): * value = re_compile(value) - */ - __Pyx_TraceLine(165,0,__PYX_ERR(1, 165, __pyx_L1_error)) +*/ + __Pyx_TraceLine(165,133,0,__PYX_ERR(0, 165, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_contains); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_contains); @@ -7246,7 +7112,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator in ('contains', 'has'): # <<<<<<<<<<<<<< * mapping = query_contains * elif operator in ('regex', 'rx'): - */ +*/ goto __pyx_L14; } @@ -7256,21 +7122,21 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator in ('regex', 'rx'): # <<<<<<<<<<<<<< * value = re_compile(value) * mapping = query_regex - */ - __Pyx_TraceLine(166,0,__PYX_ERR(1, 166, __pyx_L1_error)) +*/ + __Pyx_TraceLine(166,134,0,__PYX_ERR(0, 166, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_operator); - __pyx_t_8 = __pyx_v_operator; - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_regex, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 166, __pyx_L1_error) + __pyx_t_5 = __pyx_v_operator; + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_regex, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 166, __pyx_L1_error) if (!__pyx_t_12) { } else { - __pyx_t_14 = __pyx_t_12; + __pyx_t_18 = __pyx_t_12; goto __pyx_L31_bool_binop_done; } - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_t_8, __pyx_n_s_rx, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 166, __pyx_L1_error) - __pyx_t_14 = __pyx_t_12; + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_rx, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 166, __pyx_L1_error) + __pyx_t_18 = __pyx_t_12; __pyx_L31_bool_binop_done:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __pyx_t_14; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_12 = __pyx_t_18; if (__pyx_t_12) { /* "hunter/_predicates.pyx":167 @@ -7279,34 +7145,33 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * value = re_compile(value) # <<<<<<<<<<<<<< * mapping = query_regex * elif operator == 'lt': - */ - __Pyx_TraceLine(167,0,__PYX_ERR(1, 167, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_re_compile); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 167, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = NULL; - __pyx_t_7 = 0; +*/ + __Pyx_TraceLine(167,140,0,__PYX_ERR(0, 167, __pyx_L1_error)) + __pyx_t_14 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_re_compile); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 167, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_7 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_8))) { + __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_8); + assert(__pyx_t_14); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_8); + __Pyx_INCREF(__pyx_t_14); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_8, __pyx__function); + __pyx_t_9 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_value}; - __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 167, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_v_value}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 167, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); } - __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_8); - __pyx_t_8 = 0; + __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_5); + __pyx_t_5 = 0; /* "hunter/_predicates.pyx":168 * elif operator in ('regex', 'rx'): @@ -7314,8 +7179,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_regex # <<<<<<<<<<<<<< * elif operator == 'lt': * mapping = query_lt - */ - __Pyx_TraceLine(168,0,__PYX_ERR(1, 168, __pyx_L1_error)) +*/ + __Pyx_TraceLine(168,143,0,__PYX_ERR(0, 168, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_regex); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_regex); @@ -7325,7 +7190,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator in ('regex', 'rx'): # <<<<<<<<<<<<<< * value = re_compile(value) * mapping = query_regex - */ +*/ goto __pyx_L14; } @@ -7335,9 +7200,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'lt': # <<<<<<<<<<<<<< * mapping = query_lt * elif operator == 'lte': - */ - __Pyx_TraceLine(169,0,__PYX_ERR(1, 169, __pyx_L1_error)) - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_operator, __pyx_n_s_lt, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 169, __pyx_L1_error) +*/ + __Pyx_TraceLine(169,144,0,__PYX_ERR(0, 169, __pyx_L1_error)) + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_v_operator, __pyx_mstate_global->__pyx_n_u_lt, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 169, __pyx_L1_error) if (__pyx_t_12) { /* "hunter/_predicates.pyx":170 @@ -7346,8 +7211,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_lt # <<<<<<<<<<<<<< * elif operator == 'lte': * mapping = query_lte - */ - __Pyx_TraceLine(170,0,__PYX_ERR(1, 170, __pyx_L1_error)) +*/ + __Pyx_TraceLine(170,148,0,__PYX_ERR(0, 170, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_lt); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_lt); @@ -7357,7 +7222,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'lt': # <<<<<<<<<<<<<< * mapping = query_lt * elif operator == 'lte': - */ +*/ goto __pyx_L14; } @@ -7367,9 +7232,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'lte': # <<<<<<<<<<<<<< * mapping = query_lte * elif operator == 'gt': - */ - __Pyx_TraceLine(171,0,__PYX_ERR(1, 171, __pyx_L1_error)) - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_operator, __pyx_n_s_lte, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 171, __pyx_L1_error) +*/ + __Pyx_TraceLine(171,149,0,__PYX_ERR(0, 171, __pyx_L1_error)) + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_v_operator, __pyx_mstate_global->__pyx_n_u_lte, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 171, __pyx_L1_error) if (__pyx_t_12) { /* "hunter/_predicates.pyx":172 @@ -7378,8 +7243,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_lte # <<<<<<<<<<<<<< * elif operator == 'gt': * mapping = query_gt - */ - __Pyx_TraceLine(172,0,__PYX_ERR(1, 172, __pyx_L1_error)) +*/ + __Pyx_TraceLine(172,153,0,__PYX_ERR(0, 172, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_lte); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_lte); @@ -7389,7 +7254,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'lte': # <<<<<<<<<<<<<< * mapping = query_lte * elif operator == 'gt': - */ +*/ goto __pyx_L14; } @@ -7399,9 +7264,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'gt': # <<<<<<<<<<<<<< * mapping = query_gt * elif operator == 'gte': - */ - __Pyx_TraceLine(173,0,__PYX_ERR(1, 173, __pyx_L1_error)) - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_operator, __pyx_n_s_gt, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 173, __pyx_L1_error) +*/ + __Pyx_TraceLine(173,154,0,__PYX_ERR(0, 173, __pyx_L1_error)) + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_v_operator, __pyx_mstate_global->__pyx_n_u_gt, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 173, __pyx_L1_error) if (__pyx_t_12) { /* "hunter/_predicates.pyx":174 @@ -7410,8 +7275,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_gt # <<<<<<<<<<<<<< * elif operator == 'gte': * mapping = query_gte - */ - __Pyx_TraceLine(174,0,__PYX_ERR(1, 174, __pyx_L1_error)) +*/ + __Pyx_TraceLine(174,158,0,__PYX_ERR(0, 174, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_gt); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_gt); @@ -7421,7 +7286,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'gt': # <<<<<<<<<<<<<< * mapping = query_gt * elif operator == 'gte': - */ +*/ goto __pyx_L14; } @@ -7431,9 +7296,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'gte': # <<<<<<<<<<<<<< * mapping = query_gte * else: - */ - __Pyx_TraceLine(175,0,__PYX_ERR(1, 175, __pyx_L1_error)) - __pyx_t_12 = (__Pyx_PyString_Equals(__pyx_v_operator, __pyx_n_s_gte, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 175, __pyx_L1_error) +*/ + __Pyx_TraceLine(175,159,0,__PYX_ERR(0, 175, __pyx_L1_error)) + __pyx_t_12 = (__Pyx_PyUnicode_Equals(__pyx_v_operator, __pyx_mstate_global->__pyx_n_u_gte, Py_EQ)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 175, __pyx_L1_error) if (likely(__pyx_t_12)) { /* "hunter/_predicates.pyx":176 @@ -7442,8 +7307,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_gte # <<<<<<<<<<<<<< * else: * raise TypeError(f'Unexpected operator {operator!r}. Must be one of {ALLOWED_OPERATORS}.') - */ - __Pyx_TraceLine(176,0,__PYX_ERR(1, 176, __pyx_L1_error)) +*/ + __Pyx_TraceLine(176,163,0,__PYX_ERR(0, 176, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_query_gte); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_gte); @@ -7453,7 +7318,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif operator == 'gte': # <<<<<<<<<<<<<< * mapping = query_gte * else: - */ +*/ goto __pyx_L14; } @@ -7463,48 +7328,39 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * raise TypeError(f'Unexpected operator {operator!r}. Must be one of {ALLOWED_OPERATORS}.') # <<<<<<<<<<<<<< * else: * mapping = query_eq - */ - __Pyx_TraceLine(178,0,__PYX_ERR(1, 178, __pyx_L1_error)) +*/ + __Pyx_TraceLine(178,164,0,__PYX_ERR(0, 178, __pyx_L1_error)) /*else*/ { - __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 178, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_10 = 0; - __pyx_t_13 = 127; - __Pyx_INCREF(__pyx_kp_u_Unexpected_operator); - __pyx_t_10 += 20; - __Pyx_GIVEREF(__pyx_kp_u_Unexpected_operator); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_u_Unexpected_operator); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_operator), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 178, __pyx_L1_error) + __pyx_t_8 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_14 = __pyx_builtin_TypeError; + __pyx_t_17 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_operator), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 178, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_17); + __pyx_t_15 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 178, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_19[0] = __pyx_mstate_global->__pyx_kp_u_Unexpected_operator; + __pyx_t_19[1] = __pyx_t_17; + __pyx_t_19[2] = __pyx_mstate_global->__pyx_kp_u_Must_be_one_of; + __pyx_t_19[3] = __pyx_t_15; + __pyx_t_19[4] = __pyx_mstate_global->__pyx_kp_u__2; + __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_19, 5, 20 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_17) + 17 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_15) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_17) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_15)); + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u_Must_be_one_of); - __pyx_t_10 += 17; - __Pyx_GIVEREF(__pyx_kp_u_Must_be_one_of); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_kp_u_Must_be_one_of); - __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 178, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u__6); - __pyx_t_10 += 1; - __Pyx_GIVEREF(__pyx_kp_u__6); - PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_kp_u__6); - __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_8, 5, __pyx_t_10, __pyx_t_13); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 178, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 178, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 178, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_6}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_14, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 178, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + } + __Pyx_Raise(__pyx_t_5, 0, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 178, __pyx_L1_error) } __pyx_L14:; @@ -7514,7 +7370,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * elif count == 2: # <<<<<<<<<<<<<< * prefix, operator = parts * if operator in ('startswith', 'sw'): - */ +*/ goto __pyx_L13; } @@ -7524,8 +7380,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping = query_eq # <<<<<<<<<<<<<< * prefix = key * - */ - __Pyx_TraceLine(180,0,__PYX_ERR(1, 180, __pyx_L1_error)) +*/ + __Pyx_TraceLine(180,171,0,__PYX_ERR(0, 180, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(__pyx_v_query_eq); __Pyx_XDECREF_SET(__pyx_v_mapping, __pyx_v_query_eq); @@ -7536,8 +7392,8 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * prefix = key # <<<<<<<<<<<<<< * * if prefix not in ALLOWED_KEYS: - */ - __Pyx_TraceLine(181,0,__PYX_ERR(1, 181, __pyx_L1_error)) +*/ + __Pyx_TraceLine(181,174,0,__PYX_ERR(0, 181, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_key); __Pyx_XDECREF_SET(__pyx_v_prefix, __pyx_v_key); } @@ -7549,9 +7405,9 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if prefix not in ALLOWED_KEYS: # <<<<<<<<<<<<<< * raise TypeError(f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS}.') * - */ - __Pyx_TraceLine(183,0,__PYX_ERR(1, 183, __pyx_L1_error)) - __pyx_t_12 = (__Pyx_PySequence_ContainsTF(__pyx_v_prefix, __pyx_v_6hunter_11_predicates_ALLOWED_KEYS, Py_NE)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(1, 183, __pyx_L1_error) +*/ + __Pyx_TraceLine(183,178,0,__PYX_ERR(0, 183, __pyx_L1_error)) + __pyx_t_12 = (__Pyx_PySequence_ContainsTF(__pyx_v_prefix, __pyx_v_6hunter_11_predicates_ALLOWED_KEYS, Py_NE)); if (unlikely((__pyx_t_12 < 0))) __PYX_ERR(0, 183, __pyx_L1_error) if (unlikely(__pyx_t_12)) { /* "hunter/_predicates.pyx":184 @@ -7560,47 +7416,38 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * raise TypeError(f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS}.') # <<<<<<<<<<<<<< * * mapping[prefix] = QueryEntry(value, prefix) - */ - __Pyx_TraceLine(184,0,__PYX_ERR(1, 184, __pyx_L1_error)) - __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 184, __pyx_L1_error) +*/ + __Pyx_TraceLine(184,181,0,__PYX_ERR(0, 184, __pyx_L1_error)) + __pyx_t_14 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_6 = __pyx_builtin_TypeError; + __pyx_t_8 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_10 = 0; - __pyx_t_13 = 127; - __Pyx_INCREF(__pyx_kp_u_Unexpected_argument); - __pyx_t_10 += 20; - __Pyx_GIVEREF(__pyx_kp_u_Unexpected_argument); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_u_Unexpected_argument); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_key), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 184, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u_Must_be_one_of); - __pyx_t_10 += 17; - __Pyx_GIVEREF(__pyx_kp_u_Must_be_one_of); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_kp_u_Must_be_one_of); - __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 184, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_13; - __pyx_t_10 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u__6); - __pyx_t_10 += 1; - __Pyx_GIVEREF(__pyx_kp_u__6); - PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_kp_u__6); - __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_8, 5, __pyx_t_10, __pyx_t_13); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 184, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); + __pyx_t_15 = __Pyx_PyObject_FormatSimple(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 184, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_19[0] = __pyx_mstate_global->__pyx_kp_u_Unexpected_argument; + __pyx_t_19[1] = __pyx_t_8; + __pyx_t_19[2] = __pyx_mstate_global->__pyx_kp_u_Must_be_one_of; + __pyx_t_19[3] = __pyx_t_15; + __pyx_t_19[4] = __pyx_mstate_global->__pyx_kp_u__2; + __pyx_t_17 = __Pyx_PyUnicode_Join(__pyx_t_19, 5, 20 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_8) + 17 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_15) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_8) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_15)); + if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 184, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_17); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 184, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 184, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_17}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 184, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + } + __Pyx_Raise(__pyx_t_5, 0, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 184, __pyx_L1_error) /* "hunter/_predicates.pyx":183 * prefix = key @@ -7608,7 +7455,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * if prefix not in ALLOWED_KEYS: # <<<<<<<<<<<<<< * raise TypeError(f'Unexpected argument {key!r}. Must be one of {ALLOWED_KEYS}.') * - */ +*/ } /* "hunter/_predicates.pyx":186 @@ -7617,21 +7464,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * mapping[prefix] = QueryEntry(value, prefix) # <<<<<<<<<<<<<< * * self.query_eq = tuple(sorted(query_eq.items())) - */ - __Pyx_TraceLine(186,0,__PYX_ERR(1, 186, __pyx_L1_error)) - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 186, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_INCREF(__pyx_v_value); - __Pyx_GIVEREF(__pyx_v_value); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_value)) __PYX_ERR(1, 186, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_prefix); - __Pyx_GIVEREF(__pyx_v_prefix); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_prefix)) __PYX_ERR(1, 186, __pyx_L1_error); - __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_QueryEntry), __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 186, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely((PyDict_SetItem(__pyx_v_mapping, __pyx_v_prefix, __pyx_t_6) < 0))) __PYX_ERR(1, 186, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; +*/ + __Pyx_TraceLine(186,190,0,__PYX_ERR(0, 186, __pyx_L1_error)) + __pyx_t_6 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_QueryEntry); + __pyx_t_17 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_QueryEntry); + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_6, __pyx_v_value, __pyx_v_prefix}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_17, __pyx_callargs+__pyx_t_9, (3-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 186, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_5); + } + if (unlikely((PyDict_SetItem(__pyx_v_mapping, __pyx_v_prefix, ((PyObject *)__pyx_t_5)) < 0))) __PYX_ERR(0, 186, __pyx_L1_error) + __Pyx_DECREF((PyObject *)__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -7641,24 +7489,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_eq = tuple(sorted(query_eq.items())) # <<<<<<<<<<<<<< * self.query_startswith = tuple(sorted(query_startswith.items())) * self.query_endswith = tuple(sorted(query_endswith.items())) - */ - __Pyx_TraceLine(188,0,__PYX_ERR(1, 188, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyDict_Items(__pyx_v_query_eq); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 188, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PySequence_List(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 188, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_1 = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_1); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 188, __pyx_L1_error) - __pyx_t_8 = PyList_AsTuple(((PyObject*)__pyx_t_1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 188, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); +*/ + __Pyx_TraceLine(188,200,0,__PYX_ERR(0, 188, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_eq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 188, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_GIVEREF(__pyx_t_8); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 188, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_eq); __Pyx_DECREF(__pyx_v_self->query_eq); - __pyx_v_self->query_eq = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; + __pyx_v_self->query_eq = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":189 * @@ -7666,24 +7512,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_startswith = tuple(sorted(query_startswith.items())) # <<<<<<<<<<<<<< * self.query_endswith = tuple(sorted(query_endswith.items())) * self.query_in = tuple(sorted(query_in.items())) - */ - __Pyx_TraceLine(189,0,__PYX_ERR(1, 189, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_startswith); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 189, __pyx_L1_error) +*/ + __Pyx_TraceLine(189,208,0,__PYX_ERR(0, 189, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_startswith); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 189, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 189, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = ((PyObject*)__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_8); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 189, __pyx_L1_error) - __pyx_t_6 = PyList_AsTuple(((PyObject*)__pyx_t_8)); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 189, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_GIVEREF(__pyx_t_6); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 189, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_startswith); __Pyx_DECREF(__pyx_v_self->query_startswith); - __pyx_v_self->query_startswith = ((PyObject*)__pyx_t_6); - __pyx_t_6 = 0; + __pyx_v_self->query_startswith = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":190 * self.query_eq = tuple(sorted(query_eq.items())) @@ -7691,19 +7535,17 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_endswith = tuple(sorted(query_endswith.items())) # <<<<<<<<<<<<<< * self.query_in = tuple(sorted(query_in.items())) * self.query_contains = tuple(sorted(query_contains.items())) - */ - __Pyx_TraceLine(190,0,__PYX_ERR(1, 190, __pyx_L1_error)) - __pyx_t_8 = __Pyx_PyDict_Items(__pyx_v_query_endswith); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 190, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = PySequence_List(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 190, __pyx_L1_error) +*/ + __Pyx_TraceLine(190,216,0,__PYX_ERR(0, 190, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_endswith); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_6 = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_6); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 190, __pyx_L1_error) - __pyx_t_1 = PyList_AsTuple(((PyObject*)__pyx_t_6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 190, __pyx_L1_error) + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 190, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 190, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_endswith); __Pyx_DECREF(__pyx_v_self->query_endswith); @@ -7716,24 +7558,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_in = tuple(sorted(query_in.items())) # <<<<<<<<<<<<<< * self.query_contains = tuple(sorted(query_contains.items())) * self.query_regex = tuple(sorted(query_regex.items())) - */ - __Pyx_TraceLine(191,0,__PYX_ERR(1, 191, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyDict_Items(__pyx_v_query_in); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 191, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PySequence_List(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 191, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_1 = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_1); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 191, __pyx_L1_error) - __pyx_t_8 = PyList_AsTuple(((PyObject*)__pyx_t_1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 191, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); +*/ + __Pyx_TraceLine(191,224,0,__PYX_ERR(0, 191, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_in); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 191, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_GIVEREF(__pyx_t_8); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 191, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_in); __Pyx_DECREF(__pyx_v_self->query_in); - __pyx_v_self->query_in = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; + __pyx_v_self->query_in = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":192 * self.query_endswith = tuple(sorted(query_endswith.items())) @@ -7741,24 +7581,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_contains = tuple(sorted(query_contains.items())) # <<<<<<<<<<<<<< * self.query_regex = tuple(sorted(query_regex.items())) * self.query_lt = tuple(sorted(query_lt.items())) - */ - __Pyx_TraceLine(192,0,__PYX_ERR(1, 192, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_contains); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 192, __pyx_L1_error) +*/ + __Pyx_TraceLine(192,232,0,__PYX_ERR(0, 192, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_contains); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 192, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 192, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = ((PyObject*)__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_8); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 192, __pyx_L1_error) - __pyx_t_6 = PyList_AsTuple(((PyObject*)__pyx_t_8)); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 192, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_GIVEREF(__pyx_t_6); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_contains); __Pyx_DECREF(__pyx_v_self->query_contains); - __pyx_v_self->query_contains = ((PyObject*)__pyx_t_6); - __pyx_t_6 = 0; + __pyx_v_self->query_contains = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":193 * self.query_in = tuple(sorted(query_in.items())) @@ -7766,19 +7604,17 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_regex = tuple(sorted(query_regex.items())) # <<<<<<<<<<<<<< * self.query_lt = tuple(sorted(query_lt.items())) * self.query_lte = tuple(sorted(query_lte.items())) - */ - __Pyx_TraceLine(193,0,__PYX_ERR(1, 193, __pyx_L1_error)) - __pyx_t_8 = __Pyx_PyDict_Items(__pyx_v_query_regex); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 193, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = PySequence_List(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 193, __pyx_L1_error) +*/ + __Pyx_TraceLine(193,240,0,__PYX_ERR(0, 193, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_regex); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_6 = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_6); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 193, __pyx_L1_error) - __pyx_t_1 = PyList_AsTuple(((PyObject*)__pyx_t_6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 193, __pyx_L1_error) + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 193, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 193, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_regex); __Pyx_DECREF(__pyx_v_self->query_regex); @@ -7791,24 +7627,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_lt = tuple(sorted(query_lt.items())) # <<<<<<<<<<<<<< * self.query_lte = tuple(sorted(query_lte.items())) * self.query_gt = tuple(sorted(query_gt.items())) - */ - __Pyx_TraceLine(194,0,__PYX_ERR(1, 194, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyDict_Items(__pyx_v_query_lt); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 194, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PySequence_List(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 194, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_1 = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_1); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 194, __pyx_L1_error) - __pyx_t_8 = PyList_AsTuple(((PyObject*)__pyx_t_1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 194, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); +*/ + __Pyx_TraceLine(194,248,0,__PYX_ERR(0, 194, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_lt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 194, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_GIVEREF(__pyx_t_8); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 194, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_lt); __Pyx_DECREF(__pyx_v_self->query_lt); - __pyx_v_self->query_lt = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; + __pyx_v_self->query_lt = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":195 * self.query_regex = tuple(sorted(query_regex.items())) @@ -7816,24 +7650,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_lte = tuple(sorted(query_lte.items())) # <<<<<<<<<<<<<< * self.query_gt = tuple(sorted(query_gt.items())) * self.query_gte = tuple(sorted(query_gte.items())) - */ - __Pyx_TraceLine(195,0,__PYX_ERR(1, 195, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_lte); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 195, __pyx_L1_error) +*/ + __Pyx_TraceLine(195,256,0,__PYX_ERR(0, 195, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_lte); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 195, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 195, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = ((PyObject*)__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_8); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 195, __pyx_L1_error) - __pyx_t_6 = PyList_AsTuple(((PyObject*)__pyx_t_8)); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 195, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_GIVEREF(__pyx_t_6); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 195, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_lte); __Pyx_DECREF(__pyx_v_self->query_lte); - __pyx_v_self->query_lte = ((PyObject*)__pyx_t_6); - __pyx_t_6 = 0; + __pyx_v_self->query_lte = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":196 * self.query_lt = tuple(sorted(query_lt.items())) @@ -7841,19 +7673,17 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_gt = tuple(sorted(query_gt.items())) # <<<<<<<<<<<<<< * self.query_gte = tuple(sorted(query_gte.items())) * - */ - __Pyx_TraceLine(196,0,__PYX_ERR(1, 196, __pyx_L1_error)) - __pyx_t_8 = __Pyx_PyDict_Items(__pyx_v_query_gt); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 196, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = PySequence_List(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 196, __pyx_L1_error) +*/ + __Pyx_TraceLine(196,264,0,__PYX_ERR(0, 196, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_6 = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_6); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 196, __pyx_L1_error) - __pyx_t_1 = PyList_AsTuple(((PyObject*)__pyx_t_6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 196, __pyx_L1_error) + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 196, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 196, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_gt); __Pyx_DECREF(__pyx_v_self->query_gt); @@ -7866,24 +7696,22 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * self.query_gte = tuple(sorted(query_gte.items())) # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(197,0,__PYX_ERR(1, 197, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyDict_Items(__pyx_v_query_gte); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 197, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PySequence_List(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 197, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_1 = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_15 = PyList_Sort(__pyx_t_1); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(1, 197, __pyx_L1_error) - __pyx_t_8 = PyList_AsTuple(((PyObject*)__pyx_t_1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 197, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); +*/ + __Pyx_TraceLine(197,272,0,__PYX_ERR(0, 197, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_Items(__pyx_v_query_gte); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 197, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_5 = PySequence_List(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 197, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_GIVEREF(__pyx_t_8); + if (unlikely((PyList_Sort(__pyx_t_5) < 0))) __PYX_ERR(0, 197, __pyx_L1_error) + __pyx_t_1 = PyList_AsTuple(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 197, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->query_gte); __Pyx_DECREF(__pyx_v_self->query_gte); - __pyx_v_self->query_gte = ((PyObject*)__pyx_t_8); - __pyx_t_8 = 0; + __pyx_v_self->query_gte = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":106 * See :class:`hunter.event.Event` for fields that can be filtered on. @@ -7891,17 +7719,27 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * def __init__(self, **query): # <<<<<<<<<<<<<< * """ * Args: - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 106, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_13); + __Pyx_XDECREF(__pyx_t_14); + __Pyx_XDECREF(__pyx_t_15); + __Pyx_XDECREF(__pyx_t_17); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 106, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; @@ -7922,7 +7760,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt __Pyx_XDECREF(__pyx_v_operator); __Pyx_XDECREF(__pyx_v_mapping); __Pyx_XDECREF(__pyx_7genexpr__pyx_v_p); - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -7933,7 +7771,7 @@ static int __pyx_pf_6hunter_11_predicates_5Query___init__(struct __pyx_obj_6hunt * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( * ', '.join([ - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_3__str__(PyObject *__pyx_v_self); /*proto*/ @@ -7957,7 +7795,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< * for kind, mapping in [ * ('', self.query_eq), - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexpr(PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0) { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *__pyx_cur_scope; @@ -7967,11 +7805,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexp const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("genexpr", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 202, __pyx_L1_error) + __PYX_ERR(0, 202, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -7982,7 +7820,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexp __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2generator, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_genexpr, __pyx_mstate_global->__pyx_n_u_str___locals_genexpr, __pyx_mstate_global->__pyx_n_u_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -8002,7 +7840,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *__pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)__pyx_generator->closure); PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; PyObject *(*__pyx_t_3)(PyObject *); @@ -8011,113 +7849,115 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *(*__pyx_t_8)(PyObject *); - Py_ssize_t __pyx_t_9; - Py_UCS4 __pyx_t_10; + PyObject *__pyx_t_9[4]; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 202, 0, __PYX_ERR(1, 202, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; - case 1: goto __pyx_L8_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 202, 0, 0, 0, __PYX_ERR(0, 202, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 202, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 202, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 202, __pyx_L1_error) } + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 202, 0, 0, 0, __PYX_ERR(0, 202, __pyx_L1_error)); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 202, __pyx_L1_error) + __pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_GOTREF(__pyx_r); + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(0, 202, __pyx_L1_error) } if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_genexpr_arg_0)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_genexpr_arg_0)) { __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; __pyx_t_3 = NULL; } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_genexpr_arg_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_genexpr_arg_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_t_3 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 202, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_3)) { if (likely(PyList_CheckExact(__pyx_t_1))) { { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 202, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 202, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 202, __pyx_L1_error) - #else - __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 202, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - #endif + __pyx_t_4 = __Pyx_PyList_GetItemRef(__pyx_t_1, __pyx_t_2); + ++__pyx_t_2; } else { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 202, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 202, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_t_4 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 202, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); + __pyx_t_4 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; } + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 202, __pyx_L1_error) } else { __pyx_t_4 = __pyx_t_3(__pyx_t_1); if (unlikely(!__pyx_t_4)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 202, __pyx_L1_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 202, __pyx_L1_error) + PyErr_Clear(); } break; } - __Pyx_GOTREF(__pyx_t_4); } + __Pyx_GOTREF(__pyx_t_4); if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 202, __pyx_L1_error) + __PYX_ERR(0, 202, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_5); + __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_6); } else { - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_6); } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_t_6 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_7); + __pyx_t_8 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_7); index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(1, 202, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(0, 202, __pyx_L1_error) __pyx_t_8 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L7_unpacking_done; @@ -8125,7 +7965,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 202, __pyx_L1_error) + __PYX_ERR(0, 202, __pyx_L1_error) __pyx_L7_unpacking_done:; } __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_key); @@ -8136,82 +7976,54 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_value, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 202, __pyx_L1_error) + __Pyx_TraceLine(202,0,0,__PYX_ERR(0, 202, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_key, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = 0; - __pyx_t_10 = 127; - __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_key, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_10) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_10; - __pyx_t_9 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); - __pyx_t_6 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind)) { __Pyx_RaiseClosureNameError("kind"); __PYX_ERR(1, 202, __pyx_L1_error) } - __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind, __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_10) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_10; - __pyx_t_9 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_6); - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_kp_u__7); - __pyx_t_9 += 1; - __Pyx_GIVEREF(__pyx_kp_u__7); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_kp_u__7); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_cur_scope->__pyx_v_value), __pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) > __pyx_t_10) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) : __pyx_t_10; - __pyx_t_9 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_4, 4, __pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 202, __pyx_L1_error) + if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind)) { __Pyx_RaiseClosureNameError("kind"); __PYX_ERR(0, 202, __pyx_L1_error) } + __pyx_t_6 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_outer_scope->__pyx_8genexpr1__pyx_v_kind, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); + __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_cur_scope->__pyx_v_value), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_9[0] = __pyx_t_4; + __pyx_t_9[1] = __pyx_t_6; + __pyx_t_9[2] = __pyx_mstate_global->__pyx_kp_u__3; + __pyx_t_9[3] = __pyx_t_5; + __pyx_t_7 = __Pyx_PyUnicode_Join(__pyx_t_9, 4, __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5)); + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_r = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_XGIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; - __pyx_cur_scope->__pyx_t_2 = __pyx_t_3; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, yielding value */ - __pyx_generator->resume_label = 1; - return __pyx_r; - __pyx_L8_resume_from_yield:; - __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_1); - __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 202, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 202, __pyx_L1_error)); /* function exit code */ - PyErr_SetNone(PyExc_StopIteration); goto __pyx_L0; __pyx_L1_error:; - __Pyx_Generator_Replace_StopIteration(0); + __Pyx_XDECREF(__pyx_r); __pyx_r = 0; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_PyErr_Occurred()) { + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionUnwind(0, 0); + } __pyx_L0:; - __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); #if !CYTHON_USE_EXC_INFO_STACK __Pyx_Coroutine_ResetAndClearException(__pyx_generator); #endif __pyx_generator->resume_label = -1; __Pyx_Coroutine_clear((PyObject*)__pyx_generator); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -8222,14 +8034,14 @@ static PyObject *__pyx_gb_6hunter_11_predicates_5Query_7__str___8genexpr1_2gener * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( * ', '.join([ - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_cur_scope; PyObject *__pyx_8genexpr1__pyx_v_mapping = NULL; PyObject *__pyx_8genexpr1__pyx_v_0 = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -8248,16 +8060,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])) __Pyx_RefNannySetupContext("__str__", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 199, __pyx_L1_error) + __PYX_ERR(0, 199, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } - __Pyx_TraceCall("__str__", __pyx_f[1], 199, 0, __PYX_ERR(1, 199, __pyx_L1_error)); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 199, 0, 0, 0, __PYX_ERR(0, 199, __pyx_L1_error)); /* "hunter/_predicates.pyx":200 * @@ -8265,8 +8078,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * return 'Query(%s)' % ( # <<<<<<<<<<<<<< * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) - */ - __Pyx_TraceLine(200,0,__PYX_ERR(1, 200, __pyx_L1_error)) +*/ + __Pyx_TraceLine(200,1,0,__PYX_ERR(0, 200, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":201 @@ -8275,10 +8088,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ', '.join([ # <<<<<<<<<<<<<< * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ - */ - __Pyx_TraceLine(201,0,__PYX_ERR(1, 201, __pyx_L1_error)) +*/ + __Pyx_TraceLine(201,6,0,__PYX_ERR(0, 201, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 201, __pyx_L5_error) + __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 201, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_1); /* "hunter/_predicates.pyx":204 @@ -8287,16 +8100,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('', self.query_eq), # <<<<<<<<<<<<<< * ('_in', self.query_in), * ('_contains', self.query_contains), - */ - __Pyx_TraceLine(204,0,__PYX_ERR(1, 204, __pyx_L5_error)) - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 204, __pyx_L5_error) +*/ + __Pyx_TraceLine(204,16,0,__PYX_ERR(0, 204, __pyx_L5_error)) + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 204, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_kp_s__9); - __Pyx_GIVEREF(__pyx_kp_s__9); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_s__9)) __PYX_ERR(1, 204, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__5); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u__5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_mstate_global->__pyx_kp_u__5) != (0)) __PYX_ERR(0, 204, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_eq); __Pyx_GIVEREF(__pyx_v_self->query_eq); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq)) __PYX_ERR(1, 204, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq) != (0)) __PYX_ERR(0, 204, __pyx_L5_error); /* "hunter/_predicates.pyx":205 * for kind, mapping in [ @@ -8304,16 +8117,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_in', self.query_in), # <<<<<<<<<<<<<< * ('_contains', self.query_contains), * ('_startswith', self.query_startswith), - */ - __Pyx_TraceLine(205,0,__PYX_ERR(1, 205, __pyx_L5_error)) - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 205, __pyx_L5_error) +*/ + __Pyx_TraceLine(205,19,0,__PYX_ERR(0, 205, __pyx_L5_error)) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 205, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_in_2); - __Pyx_GIVEREF(__pyx_n_s_in_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_in_2)) __PYX_ERR(1, 205, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_in_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_in_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_mstate_global->__pyx_n_u_in_2) != (0)) __PYX_ERR(0, 205, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_in); __Pyx_GIVEREF(__pyx_v_self->query_in); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in)) __PYX_ERR(1, 205, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in) != (0)) __PYX_ERR(0, 205, __pyx_L5_error); /* "hunter/_predicates.pyx":206 * ('', self.query_eq), @@ -8321,16 +8134,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_contains', self.query_contains), # <<<<<<<<<<<<<< * ('_startswith', self.query_startswith), * ('_endswith', self.query_endswith), - */ - __Pyx_TraceLine(206,0,__PYX_ERR(1, 206, __pyx_L5_error)) - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 206, __pyx_L5_error) +*/ + __Pyx_TraceLine(206,22,0,__PYX_ERR(0, 206, __pyx_L5_error)) + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 206, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_INCREF(__pyx_n_s_contains_2); - __Pyx_GIVEREF(__pyx_n_s_contains_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_n_s_contains_2)) __PYX_ERR(1, 206, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_contains_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_contains_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_mstate_global->__pyx_n_u_contains_2) != (0)) __PYX_ERR(0, 206, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_contains); __Pyx_GIVEREF(__pyx_v_self->query_contains); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains)) __PYX_ERR(1, 206, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains) != (0)) __PYX_ERR(0, 206, __pyx_L5_error); /* "hunter/_predicates.pyx":207 * ('_in', self.query_in), @@ -8338,16 +8151,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_startswith', self.query_startswith), # <<<<<<<<<<<<<< * ('_endswith', self.query_endswith), * ('_regex', self.query_regex), - */ - __Pyx_TraceLine(207,0,__PYX_ERR(1, 207, __pyx_L5_error)) - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 207, __pyx_L5_error) +*/ + __Pyx_TraceLine(207,25,0,__PYX_ERR(0, 207, __pyx_L5_error)) + __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 207, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_n_s_startswith_2); - __Pyx_GIVEREF(__pyx_n_s_startswith_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_n_s_startswith_2)) __PYX_ERR(1, 207, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_startswith_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_startswith_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_mstate_global->__pyx_n_u_startswith_2) != (0)) __PYX_ERR(0, 207, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_startswith); __Pyx_GIVEREF(__pyx_v_self->query_startswith); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith)) __PYX_ERR(1, 207, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith) != (0)) __PYX_ERR(0, 207, __pyx_L5_error); /* "hunter/_predicates.pyx":208 * ('_contains', self.query_contains), @@ -8355,16 +8168,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_endswith', self.query_endswith), # <<<<<<<<<<<<<< * ('_regex', self.query_regex), * ('_lt', self.query_lt), - */ - __Pyx_TraceLine(208,0,__PYX_ERR(1, 208, __pyx_L5_error)) - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 208, __pyx_L5_error) +*/ + __Pyx_TraceLine(208,28,0,__PYX_ERR(0, 208, __pyx_L5_error)) + __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 208, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_INCREF(__pyx_n_s_endswith_2); - __Pyx_GIVEREF(__pyx_n_s_endswith_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_n_s_endswith_2)) __PYX_ERR(1, 208, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_endswith_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_endswith_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_mstate_global->__pyx_n_u_endswith_2) != (0)) __PYX_ERR(0, 208, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_endswith); __Pyx_GIVEREF(__pyx_v_self->query_endswith); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith)) __PYX_ERR(1, 208, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith) != (0)) __PYX_ERR(0, 208, __pyx_L5_error); /* "hunter/_predicates.pyx":209 * ('_startswith', self.query_startswith), @@ -8372,16 +8185,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_regex', self.query_regex), # <<<<<<<<<<<<<< * ('_lt', self.query_lt), * ('_lte', self.query_lte), - */ - __Pyx_TraceLine(209,0,__PYX_ERR(1, 209, __pyx_L5_error)) - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 209, __pyx_L5_error) +*/ + __Pyx_TraceLine(209,31,0,__PYX_ERR(0, 209, __pyx_L5_error)) + __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 209, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_7); - __Pyx_INCREF(__pyx_n_s_regex_2); - __Pyx_GIVEREF(__pyx_n_s_regex_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_n_s_regex_2)) __PYX_ERR(1, 209, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_regex_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_regex_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_regex_2) != (0)) __PYX_ERR(0, 209, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_regex); __Pyx_GIVEREF(__pyx_v_self->query_regex); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex)) __PYX_ERR(1, 209, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex) != (0)) __PYX_ERR(0, 209, __pyx_L5_error); /* "hunter/_predicates.pyx":210 * ('_endswith', self.query_endswith), @@ -8389,16 +8202,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_lt', self.query_lt), # <<<<<<<<<<<<<< * ('_lte', self.query_lte), * ('_gt', self.query_gt), - */ - __Pyx_TraceLine(210,0,__PYX_ERR(1, 210, __pyx_L5_error)) - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 210, __pyx_L5_error) +*/ + __Pyx_TraceLine(210,34,0,__PYX_ERR(0, 210, __pyx_L5_error)) + __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 210, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_8); - __Pyx_INCREF(__pyx_n_s_lt_2); - __Pyx_GIVEREF(__pyx_n_s_lt_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_n_s_lt_2)) __PYX_ERR(1, 210, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_lt_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_lt_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_mstate_global->__pyx_n_u_lt_2) != (0)) __PYX_ERR(0, 210, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lt); __Pyx_GIVEREF(__pyx_v_self->query_lt); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt)) __PYX_ERR(1, 210, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt) != (0)) __PYX_ERR(0, 210, __pyx_L5_error); /* "hunter/_predicates.pyx":211 * ('_regex', self.query_regex), @@ -8406,16 +8219,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_lte', self.query_lte), # <<<<<<<<<<<<<< * ('_gt', self.query_gt), * ('_gte', self.query_gte), - */ - __Pyx_TraceLine(211,0,__PYX_ERR(1, 211, __pyx_L5_error)) - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 211, __pyx_L5_error) +*/ + __Pyx_TraceLine(211,37,0,__PYX_ERR(0, 211, __pyx_L5_error)) + __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 211, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); - __Pyx_INCREF(__pyx_n_s_lte_2); - __Pyx_GIVEREF(__pyx_n_s_lte_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_n_s_lte_2)) __PYX_ERR(1, 211, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_lte_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_lte_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_mstate_global->__pyx_n_u_lte_2) != (0)) __PYX_ERR(0, 211, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lte); __Pyx_GIVEREF(__pyx_v_self->query_lte); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte)) __PYX_ERR(1, 211, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte) != (0)) __PYX_ERR(0, 211, __pyx_L5_error); /* "hunter/_predicates.pyx":212 * ('_lt', self.query_lt), @@ -8423,16 +8236,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_gt', self.query_gt), # <<<<<<<<<<<<<< * ('_gte', self.query_gte), * ] - */ - __Pyx_TraceLine(212,0,__PYX_ERR(1, 212, __pyx_L5_error)) - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 212, __pyx_L5_error) +*/ + __Pyx_TraceLine(212,40,0,__PYX_ERR(0, 212, __pyx_L5_error)) + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 212, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); - __Pyx_INCREF(__pyx_n_s_gt_2); - __Pyx_GIVEREF(__pyx_n_s_gt_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_n_s_gt_2)) __PYX_ERR(1, 212, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_gt_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_gt_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_mstate_global->__pyx_n_u_gt_2) != (0)) __PYX_ERR(0, 212, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gt); __Pyx_GIVEREF(__pyx_v_self->query_gt); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt)) __PYX_ERR(1, 212, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt) != (0)) __PYX_ERR(0, 212, __pyx_L5_error); /* "hunter/_predicates.pyx":213 * ('_lte', self.query_lte), @@ -8440,16 +8253,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ('_gte', self.query_gte), # <<<<<<<<<<<<<< * ] * if mapping - */ - __Pyx_TraceLine(213,0,__PYX_ERR(1, 213, __pyx_L5_error)) - __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 213, __pyx_L5_error) +*/ + __Pyx_TraceLine(213,43,0,__PYX_ERR(0, 213, __pyx_L5_error)) + __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 213, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_11); - __Pyx_INCREF(__pyx_n_s_gte_2); - __Pyx_GIVEREF(__pyx_n_s_gte_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_n_s_gte_2)) __PYX_ERR(1, 213, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_gte_2); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_gte_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_mstate_global->__pyx_n_u_gte_2) != (0)) __PYX_ERR(0, 213, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gte); __Pyx_GIVEREF(__pyx_v_self->query_gte); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte)) __PYX_ERR(1, 213, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte) != (0)) __PYX_ERR(0, 213, __pyx_L5_error); /* "hunter/_predicates.pyx":203 * ', '.join([ @@ -8457,30 +8270,30 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * for kind, mapping in [ # <<<<<<<<<<<<<< * ('', self.query_eq), * ('_in', self.query_in), - */ - __Pyx_TraceLine(203,0,__PYX_ERR(1, 203, __pyx_L5_error)) - __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 203, __pyx_L5_error) +*/ + __Pyx_TraceLine(203,15,0,__PYX_ERR(0, 203, __pyx_L5_error)) + __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_6); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_7); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_8); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_9); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_10); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_11); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11)) __PYX_ERR(1, 203, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11) != (0)) __PYX_ERR(0, 203, __pyx_L5_error); __pyx_t_2 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; @@ -8497,33 +8310,35 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj for (;;) { if (__pyx_t_13 >= 10) break; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13); __Pyx_INCREF(__pyx_t_12); __pyx_t_13++; if (unlikely((0 < 0))) __PYX_ERR(1, 203, __pyx_L5_error) + __pyx_t_12 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13)); #else - __pyx_t_12 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 203, __pyx_L5_error) - __Pyx_GOTREF(__pyx_t_12); + __pyx_t_12 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_13); #endif + ++__pyx_t_13; + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 203, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_12); if (likely(__pyx_t_12 != Py_None)) { PyObject* sequence = __pyx_t_12; - Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); + Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 203, __pyx_L5_error) + __PYX_ERR(0, 203, __pyx_L5_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); __Pyx_INCREF(__pyx_t_10); + __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); __Pyx_INCREF(__pyx_t_9); #else - __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 203, __pyx_L5_error) + __pyx_t_10 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 203, __pyx_L5_error) + __pyx_t_9 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 203, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); #endif __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } else { - __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 203, __pyx_L5_error) + __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(0, 203, __pyx_L5_error) } __Pyx_XGOTREF(__pyx_cur_scope->__pyx_8genexpr1__pyx_v_kind); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_8genexpr1__pyx_v_kind, __pyx_t_10); @@ -8531,6 +8346,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj __pyx_t_10 = 0; __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_mapping, __pyx_t_9); __pyx_t_9 = 0; + __Pyx_TraceLine(203,12,0,__PYX_ERR(0, 203, __pyx_L5_error)) /* "hunter/_predicates.pyx":215 * ('_gte', self.query_gte), @@ -8538,9 +8354,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * if mapping # <<<<<<<<<<<<<< * ]) * ) - */ - __Pyx_TraceLine(215,0,__PYX_ERR(1, 215, __pyx_L5_error)) - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr1__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 215, __pyx_L5_error) +*/ + __Pyx_TraceLine(215,47,0,__PYX_ERR(0, 215, __pyx_L5_error)) + __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr1__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(0, 215, __pyx_L5_error) if (__pyx_t_14) { /* "hunter/_predicates.pyx":202 @@ -8549,15 +8365,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) # <<<<<<<<<<<<<< * for kind, mapping in [ * ('', self.query_eq), - */ - __Pyx_TraceLine(202,0,__PYX_ERR(1, 202, __pyx_L5_error)) - __pyx_t_12 = __pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexpr(((PyObject*)__pyx_cur_scope), __pyx_8genexpr1__pyx_v_mapping); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 202, __pyx_L5_error) +*/ + __Pyx_TraceLine(202,11,0,__PYX_ERR(0, 202, __pyx_L5_error)) + __pyx_t_12 = __pyx_pf_6hunter_11_predicates_5Query_7__str___8genexpr1_genexpr(((PyObject*)__pyx_cur_scope), __pyx_8genexpr1__pyx_v_mapping); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 202, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); - __pyx_t_9 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 202, __pyx_L5_error) + __pyx_t_9 = __Pyx_Generator_GetInlinedResult(__pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 202, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(1, 201, __pyx_L5_error) + __pyx_t_12 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__4, __pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 202, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_12))) __PYX_ERR(0, 201, __pyx_L5_error) + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; /* "hunter/_predicates.pyx":215 * ('_gte', self.query_gte), @@ -8565,7 +8384,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * if mapping # <<<<<<<<<<<<<< * ]) * ) - */ +*/ } /* "hunter/_predicates.pyx":203 @@ -8574,8 +8393,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * for kind, mapping in [ # <<<<<<<<<<<<<< * ('', self.query_eq), * ('_in', self.query_in), - */ - __Pyx_TraceLine(203,0,__PYX_ERR(1, 203, __pyx_L5_error)) +*/ + __Pyx_TraceLine(203,12,0,__PYX_ERR(0, 203, __pyx_L5_error)) } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_mapping); __pyx_8genexpr1__pyx_v_mapping = 0; @@ -8592,9 +8411,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * ', '.join([ # <<<<<<<<<<<<<< * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) * for kind, mapping in [ - */ - __Pyx_TraceLine(201,0,__PYX_ERR(1, 201, __pyx_L1_error)) - __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 201, __pyx_L1_error) +*/ + __Pyx_TraceLine(201,6,0,__PYX_ERR(0, 201, __pyx_L1_error)) + __pyx_t_11 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__4, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -8604,13 +8423,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * return 'Query(%s)' % ( # <<<<<<<<<<<<<< * ', '.join([ * ', '.join(f'{key}{kind}={value!r}' for key, value in mapping) - */ - __Pyx_TraceLine(200,0,__PYX_ERR(1, 200, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 200, __pyx_L1_error) +*/ + __Pyx_TraceLine(200,3,0,__PYX_ERR(0, 200, __pyx_L1_error)) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 200, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":199 @@ -8619,7 +8439,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * def __str__(self): # <<<<<<<<<<<<<< * return 'Query(%s)' % ( * ', '.join([ - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -8635,6 +8455,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); __Pyx_XDECREF(__pyx_t_12); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 199, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; @@ -8642,7 +8468,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj __Pyx_XDECREF(__pyx_8genexpr1__pyx_v_0); __Pyx_DECREF((PyObject *)__pyx_cur_scope); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -8653,7 +8479,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_2__str__(struct __pyx_obj * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ' '.join([ * fmt % (mapping,) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -8674,7 +8500,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob PyObject *__pyx_8genexpr3__pyx_v_fmt = NULL; PyObject *__pyx_8genexpr3__pyx_v_mapping = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -8693,8 +8519,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 219, 0, __PYX_ERR(1, 219, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 219, 0, 0, 0, __PYX_ERR(0, 219, __pyx_L1_error)); /* "hunter/_predicates.pyx":220 * @@ -8702,11 +8529,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * return '' % ' '.join([ # <<<<<<<<<<<<<< * fmt % (mapping,) * for fmt, mapping in [ - */ - __Pyx_TraceLine(220,0,__PYX_ERR(1, 220, __pyx_L1_error)) +*/ + __Pyx_TraceLine(220,1,0,__PYX_ERR(0, 220, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); { /* enter inner scope */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 220, __pyx_L5_error) + __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_1); /* "hunter/_predicates.pyx":223 @@ -8715,16 +8542,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_eq=%r', self.query_eq), # <<<<<<<<<<<<<< * ('query_in=%r', self.query_in), * ('query_contains=%r', self.query_contains), - */ - __Pyx_TraceLine(223,0,__PYX_ERR(1, 223, __pyx_L5_error)) - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 223, __pyx_L5_error) +*/ + __Pyx_TraceLine(223,15,0,__PYX_ERR(0, 223, __pyx_L5_error)) + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 223, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_kp_s_query_eq_r); - __Pyx_GIVEREF(__pyx_kp_s_query_eq_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_s_query_eq_r)) __PYX_ERR(1, 223, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_eq_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_eq_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_mstate_global->__pyx_kp_u_query_eq_r) != (0)) __PYX_ERR(0, 223, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_eq); __Pyx_GIVEREF(__pyx_v_self->query_eq); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq)) __PYX_ERR(1, 223, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->query_eq) != (0)) __PYX_ERR(0, 223, __pyx_L5_error); /* "hunter/_predicates.pyx":224 * for fmt, mapping in [ @@ -8732,16 +8559,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_in=%r', self.query_in), # <<<<<<<<<<<<<< * ('query_contains=%r', self.query_contains), * ('query_startswith=%r', self.query_startswith), - */ - __Pyx_TraceLine(224,0,__PYX_ERR(1, 224, __pyx_L5_error)) - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 224, __pyx_L5_error) +*/ + __Pyx_TraceLine(224,18,0,__PYX_ERR(0, 224, __pyx_L5_error)) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 224, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_kp_s_query_in_r); - __Pyx_GIVEREF(__pyx_kp_s_query_in_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_kp_s_query_in_r)) __PYX_ERR(1, 224, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_in_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_in_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_mstate_global->__pyx_kp_u_query_in_r) != (0)) __PYX_ERR(0, 224, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_in); __Pyx_GIVEREF(__pyx_v_self->query_in); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in)) __PYX_ERR(1, 224, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->query_in) != (0)) __PYX_ERR(0, 224, __pyx_L5_error); /* "hunter/_predicates.pyx":225 * ('query_eq=%r', self.query_eq), @@ -8749,16 +8576,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_contains=%r', self.query_contains), # <<<<<<<<<<<<<< * ('query_startswith=%r', self.query_startswith), * ('query_endswith=%r', self.query_endswith), - */ - __Pyx_TraceLine(225,0,__PYX_ERR(1, 225, __pyx_L5_error)) - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 225, __pyx_L5_error) +*/ + __Pyx_TraceLine(225,21,0,__PYX_ERR(0, 225, __pyx_L5_error)) + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 225, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_INCREF(__pyx_kp_s_query_contains_r); - __Pyx_GIVEREF(__pyx_kp_s_query_contains_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_kp_s_query_contains_r)) __PYX_ERR(1, 225, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_contains_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_contains_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_mstate_global->__pyx_kp_u_query_contains_r) != (0)) __PYX_ERR(0, 225, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_contains); __Pyx_GIVEREF(__pyx_v_self->query_contains); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains)) __PYX_ERR(1, 225, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self->query_contains) != (0)) __PYX_ERR(0, 225, __pyx_L5_error); /* "hunter/_predicates.pyx":226 * ('query_in=%r', self.query_in), @@ -8766,16 +8593,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_startswith=%r', self.query_startswith), # <<<<<<<<<<<<<< * ('query_endswith=%r', self.query_endswith), * ('query_regex=%r', self.query_regex), - */ - __Pyx_TraceLine(226,0,__PYX_ERR(1, 226, __pyx_L5_error)) - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 226, __pyx_L5_error) +*/ + __Pyx_TraceLine(226,24,0,__PYX_ERR(0, 226, __pyx_L5_error)) + __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 226, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_kp_s_query_startswith_r); - __Pyx_GIVEREF(__pyx_kp_s_query_startswith_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_kp_s_query_startswith_r)) __PYX_ERR(1, 226, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_startswith_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_startswith_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_mstate_global->__pyx_kp_u_query_startswith_r) != (0)) __PYX_ERR(0, 226, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_startswith); __Pyx_GIVEREF(__pyx_v_self->query_startswith); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith)) __PYX_ERR(1, 226, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->query_startswith) != (0)) __PYX_ERR(0, 226, __pyx_L5_error); /* "hunter/_predicates.pyx":227 * ('query_contains=%r', self.query_contains), @@ -8783,16 +8610,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_endswith=%r', self.query_endswith), # <<<<<<<<<<<<<< * ('query_regex=%r', self.query_regex), * ('query_lt=%r', self.query_lt), - */ - __Pyx_TraceLine(227,0,__PYX_ERR(1, 227, __pyx_L5_error)) - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 227, __pyx_L5_error) +*/ + __Pyx_TraceLine(227,27,0,__PYX_ERR(0, 227, __pyx_L5_error)) + __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 227, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_INCREF(__pyx_kp_s_query_endswith_r); - __Pyx_GIVEREF(__pyx_kp_s_query_endswith_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_kp_s_query_endswith_r)) __PYX_ERR(1, 227, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_endswith_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_endswith_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_mstate_global->__pyx_kp_u_query_endswith_r) != (0)) __PYX_ERR(0, 227, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_endswith); __Pyx_GIVEREF(__pyx_v_self->query_endswith); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith)) __PYX_ERR(1, 227, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_self->query_endswith) != (0)) __PYX_ERR(0, 227, __pyx_L5_error); /* "hunter/_predicates.pyx":228 * ('query_startswith=%r', self.query_startswith), @@ -8800,16 +8627,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_regex=%r', self.query_regex), # <<<<<<<<<<<<<< * ('query_lt=%r', self.query_lt), * ('query_lte=%r', self.query_lte), - */ - __Pyx_TraceLine(228,0,__PYX_ERR(1, 228, __pyx_L5_error)) - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 228, __pyx_L5_error) +*/ + __Pyx_TraceLine(228,30,0,__PYX_ERR(0, 228, __pyx_L5_error)) + __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 228, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_7); - __Pyx_INCREF(__pyx_kp_s_query_regex_r); - __Pyx_GIVEREF(__pyx_kp_s_query_regex_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_kp_s_query_regex_r)) __PYX_ERR(1, 228, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_regex_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_regex_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_mstate_global->__pyx_kp_u_query_regex_r) != (0)) __PYX_ERR(0, 228, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_regex); __Pyx_GIVEREF(__pyx_v_self->query_regex); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex)) __PYX_ERR(1, 228, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_self->query_regex) != (0)) __PYX_ERR(0, 228, __pyx_L5_error); /* "hunter/_predicates.pyx":229 * ('query_endswith=%r', self.query_endswith), @@ -8817,16 +8644,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_lt=%r', self.query_lt), # <<<<<<<<<<<<<< * ('query_lte=%r', self.query_lte), * ('query_gt=%r', self.query_gt), - */ - __Pyx_TraceLine(229,0,__PYX_ERR(1, 229, __pyx_L5_error)) - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 229, __pyx_L5_error) +*/ + __Pyx_TraceLine(229,33,0,__PYX_ERR(0, 229, __pyx_L5_error)) + __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 229, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_8); - __Pyx_INCREF(__pyx_kp_s_query_lt_r); - __Pyx_GIVEREF(__pyx_kp_s_query_lt_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_kp_s_query_lt_r)) __PYX_ERR(1, 229, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_lt_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_lt_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_mstate_global->__pyx_kp_u_query_lt_r) != (0)) __PYX_ERR(0, 229, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lt); __Pyx_GIVEREF(__pyx_v_self->query_lt); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt)) __PYX_ERR(1, 229, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->query_lt) != (0)) __PYX_ERR(0, 229, __pyx_L5_error); /* "hunter/_predicates.pyx":230 * ('query_regex=%r', self.query_regex), @@ -8834,16 +8661,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_lte=%r', self.query_lte), # <<<<<<<<<<<<<< * ('query_gt=%r', self.query_gt), * ('query_gte=%r', self.query_gte), - */ - __Pyx_TraceLine(230,0,__PYX_ERR(1, 230, __pyx_L5_error)) - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 230, __pyx_L5_error) +*/ + __Pyx_TraceLine(230,36,0,__PYX_ERR(0, 230, __pyx_L5_error)) + __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 230, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); - __Pyx_INCREF(__pyx_kp_s_query_lte_r); - __Pyx_GIVEREF(__pyx_kp_s_query_lte_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_kp_s_query_lte_r)) __PYX_ERR(1, 230, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_lte_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_lte_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_mstate_global->__pyx_kp_u_query_lte_r) != (0)) __PYX_ERR(0, 230, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_lte); __Pyx_GIVEREF(__pyx_v_self->query_lte); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte)) __PYX_ERR(1, 230, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_self->query_lte) != (0)) __PYX_ERR(0, 230, __pyx_L5_error); /* "hunter/_predicates.pyx":231 * ('query_lt=%r', self.query_lt), @@ -8851,16 +8678,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_gt=%r', self.query_gt), # <<<<<<<<<<<<<< * ('query_gte=%r', self.query_gte), * ] - */ - __Pyx_TraceLine(231,0,__PYX_ERR(1, 231, __pyx_L5_error)) - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 231, __pyx_L5_error) +*/ + __Pyx_TraceLine(231,39,0,__PYX_ERR(0, 231, __pyx_L5_error)) + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 231, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); - __Pyx_INCREF(__pyx_kp_s_query_gt_r); - __Pyx_GIVEREF(__pyx_kp_s_query_gt_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_kp_s_query_gt_r)) __PYX_ERR(1, 231, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_gt_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_gt_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_mstate_global->__pyx_kp_u_query_gt_r) != (0)) __PYX_ERR(0, 231, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gt); __Pyx_GIVEREF(__pyx_v_self->query_gt); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt)) __PYX_ERR(1, 231, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_self->query_gt) != (0)) __PYX_ERR(0, 231, __pyx_L5_error); /* "hunter/_predicates.pyx":232 * ('query_lte=%r', self.query_lte), @@ -8868,16 +8695,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * ('query_gte=%r', self.query_gte), # <<<<<<<<<<<<<< * ] * if mapping - */ - __Pyx_TraceLine(232,0,__PYX_ERR(1, 232, __pyx_L5_error)) - __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 232, __pyx_L5_error) +*/ + __Pyx_TraceLine(232,42,0,__PYX_ERR(0, 232, __pyx_L5_error)) + __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 232, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_11); - __Pyx_INCREF(__pyx_kp_s_query_gte_r); - __Pyx_GIVEREF(__pyx_kp_s_query_gte_r); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_kp_s_query_gte_r)) __PYX_ERR(1, 232, __pyx_L5_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_query_gte_r); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_kp_u_query_gte_r); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_mstate_global->__pyx_kp_u_query_gte_r) != (0)) __PYX_ERR(0, 232, __pyx_L5_error); __Pyx_INCREF(__pyx_v_self->query_gte); __Pyx_GIVEREF(__pyx_v_self->query_gte); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte)) __PYX_ERR(1, 232, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_self->query_gte) != (0)) __PYX_ERR(0, 232, __pyx_L5_error); /* "hunter/_predicates.pyx":222 * return '' % ' '.join([ @@ -8885,30 +8712,30 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * for fmt, mapping in [ # <<<<<<<<<<<<<< * ('query_eq=%r', self.query_eq), * ('query_in=%r', self.query_in), - */ - __Pyx_TraceLine(222,0,__PYX_ERR(1, 222, __pyx_L5_error)) - __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 222, __pyx_L5_error) +*/ + __Pyx_TraceLine(222,14,0,__PYX_ERR(0, 222, __pyx_L5_error)) + __pyx_t_12 = PyTuple_New(10); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_3) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_t_5) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_6); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 4, __pyx_t_6) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_7); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 5, __pyx_t_7) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_8); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 6, __pyx_t_8) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_9); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 7, __pyx_t_9) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_10); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 8, __pyx_t_10) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __Pyx_GIVEREF(__pyx_t_11); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11)) __PYX_ERR(1, 222, __pyx_L5_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 9, __pyx_t_11) != (0)) __PYX_ERR(0, 222, __pyx_L5_error); __pyx_t_2 = 0; __pyx_t_3 = 0; __pyx_t_4 = 0; @@ -8925,38 +8752,41 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob for (;;) { if (__pyx_t_13 >= 10) break; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13); __Pyx_INCREF(__pyx_t_12); __pyx_t_13++; if (unlikely((0 < 0))) __PYX_ERR(1, 222, __pyx_L5_error) + __pyx_t_12 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_13)); #else - __pyx_t_12 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_13); __pyx_t_13++; if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 222, __pyx_L5_error) - __Pyx_GOTREF(__pyx_t_12); + __pyx_t_12 = __Pyx_PySequence_ITEM(__pyx_t_11, __pyx_t_13); #endif + ++__pyx_t_13; + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 222, __pyx_L5_error) + __Pyx_GOTREF(__pyx_t_12); if (likely(__pyx_t_12 != Py_None)) { PyObject* sequence = __pyx_t_12; - Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); + Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 222, __pyx_L5_error) + __PYX_ERR(0, 222, __pyx_L5_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); __Pyx_INCREF(__pyx_t_10); + __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); __Pyx_INCREF(__pyx_t_9); #else - __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 222, __pyx_L5_error) + __pyx_t_10 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 222, __pyx_L5_error) + __pyx_t_9 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 222, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); #endif __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } else { - __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 222, __pyx_L5_error) + __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(0, 222, __pyx_L5_error) } __Pyx_XDECREF_SET(__pyx_8genexpr3__pyx_v_fmt, __pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF_SET(__pyx_8genexpr3__pyx_v_mapping, __pyx_t_9); __pyx_t_9 = 0; + __Pyx_TraceLine(222,11,0,__PYX_ERR(0, 222, __pyx_L5_error)) /* "hunter/_predicates.pyx":234 * ('query_gte=%r', self.query_gte), @@ -8964,9 +8794,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * if mapping # <<<<<<<<<<<<<< * ]) * - */ - __Pyx_TraceLine(234,0,__PYX_ERR(1, 234, __pyx_L5_error)) - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr3__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(1, 234, __pyx_L5_error) +*/ + __Pyx_TraceLine(234,46,0,__PYX_ERR(0, 234, __pyx_L5_error)) + __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_8genexpr3__pyx_v_mapping); if (unlikely((__pyx_t_14 < 0))) __PYX_ERR(0, 234, __pyx_L5_error) if (__pyx_t_14) { /* "hunter/_predicates.pyx":221 @@ -8975,17 +8805,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * fmt % (mapping,) # <<<<<<<<<<<<<< * for fmt, mapping in [ * ('query_eq=%r', self.query_eq), - */ - __Pyx_TraceLine(221,0,__PYX_ERR(1, 221, __pyx_L5_error)) - __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(1, 221, __pyx_L5_error) +*/ + __Pyx_TraceLine(221,10,0,__PYX_ERR(0, 221, __pyx_L5_error)) + __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 221, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_INCREF(__pyx_8genexpr3__pyx_v_mapping); __Pyx_GIVEREF(__pyx_8genexpr3__pyx_v_mapping); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_8genexpr3__pyx_v_mapping)) __PYX_ERR(1, 221, __pyx_L5_error); - __pyx_t_9 = PyNumber_Remainder(__pyx_8genexpr3__pyx_v_fmt, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(1, 221, __pyx_L5_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_8genexpr3__pyx_v_mapping) != (0)) __PYX_ERR(0, 221, __pyx_L5_error); + __pyx_t_9 = PyNumber_Remainder(__pyx_8genexpr3__pyx_v_fmt, __pyx_t_12); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 221, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(1, 220, __pyx_L5_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_9))) __PYX_ERR(0, 220, __pyx_L5_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; /* "hunter/_predicates.pyx":234 @@ -8994,7 +8824,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * if mapping # <<<<<<<<<<<<<< * ]) * - */ +*/ } /* "hunter/_predicates.pyx":222 @@ -9003,8 +8833,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * for fmt, mapping in [ # <<<<<<<<<<<<<< * ('query_eq=%r', self.query_eq), * ('query_in=%r', self.query_in), - */ - __Pyx_TraceLine(222,0,__PYX_ERR(1, 222, __pyx_L5_error)) +*/ + __Pyx_TraceLine(222,11,0,__PYX_ERR(0, 222, __pyx_L5_error)) } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_fmt); __pyx_8genexpr3__pyx_v_fmt = 0; @@ -9023,16 +8853,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * return '' % ' '.join([ # <<<<<<<<<<<<<< * fmt % (mapping,) * for fmt, mapping in [ - */ - __Pyx_TraceLine(220,0,__PYX_ERR(1, 220, __pyx_L1_error)) - __pyx_t_11 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(1, 220, __pyx_L1_error) +*/ + __Pyx_TraceLine(220,6,0,__PYX_ERR(0, 220, __pyx_L1_error)) + __pyx_t_11 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__6, __pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_hunter_predicates_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 220, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_hunter_predicates_Query_s, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 220, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":219 @@ -9041,7 +8872,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ' '.join([ * fmt % (mapping,) - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -9057,13 +8888,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); __Pyx_XDECREF(__pyx_t_12); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 219, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_fmt); __Pyx_XDECREF(__pyx_8genexpr3__pyx_v_mapping); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9074,7 +8911,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_4__repr__(struct __pyx_ob * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Query) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -9093,7 +8930,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_7__eq__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -9101,8 +8938,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 237, 0, __PYX_ERR(1, 237, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 237, 0, 0, 0, __PYX_ERR(0, 237, __pyx_L1_error)); /* "hunter/_predicates.pyx":238 * @@ -9110,8 +8948,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * return ( # <<<<<<<<<<<<<< * isinstance(other, Query) * and self.query_eq == ( other).query_eq - */ - __Pyx_TraceLine(238,0,__PYX_ERR(1, 238, __pyx_L1_error)) +*/ + __Pyx_TraceLine(238,1,0,__PYX_ERR(0, 238, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":239 @@ -9120,12 +8958,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * isinstance(other, Query) # <<<<<<<<<<<<<< * and self.query_eq == ( other).query_eq * and self.query_startswith == ( other).query_startswith - */ - __Pyx_TraceLine(239,0,__PYX_ERR(1, 239, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Query); +*/ + __Pyx_TraceLine(239,5,0,__PYX_ERR(0, 239, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 239, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -9138,10 +8976,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_eq == ( other).query_eq # <<<<<<<<<<<<<< * and self.query_startswith == ( other).query_startswith * and self.query_endswith == ( other).query_endswith - */ - __Pyx_TraceLine(240,0,__PYX_ERR(1, 240, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_eq, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_eq, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 240, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 240, __pyx_L1_error) +*/ + __Pyx_TraceLine(240,12,0,__PYX_ERR(0, 240, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_eq, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_eq, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 240, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 240, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9157,10 +8995,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_startswith == ( other).query_startswith # <<<<<<<<<<<<<< * and self.query_endswith == ( other).query_endswith * and self.query_in == ( other).query_in - */ - __Pyx_TraceLine(241,0,__PYX_ERR(1, 241, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_startswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_startswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 241, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 241, __pyx_L1_error) +*/ + __Pyx_TraceLine(241,19,0,__PYX_ERR(0, 241, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_startswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_startswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 241, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 241, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9176,10 +9014,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_endswith == ( other).query_endswith # <<<<<<<<<<<<<< * and self.query_in == ( other).query_in * and self.query_contains == ( other).query_contains - */ - __Pyx_TraceLine(242,0,__PYX_ERR(1, 242, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_endswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_endswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 242, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 242, __pyx_L1_error) +*/ + __Pyx_TraceLine(242,26,0,__PYX_ERR(0, 242, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_endswith, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_endswith, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 242, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 242, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9195,10 +9033,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_in == ( other).query_in # <<<<<<<<<<<<<< * and self.query_contains == ( other).query_contains * and self.query_regex == ( other).query_regex - */ - __Pyx_TraceLine(243,0,__PYX_ERR(1, 243, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_in, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_in, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 243, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 243, __pyx_L1_error) +*/ + __Pyx_TraceLine(243,33,0,__PYX_ERR(0, 243, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_in, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_in, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 243, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 243, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9214,10 +9052,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_contains == ( other).query_contains # <<<<<<<<<<<<<< * and self.query_regex == ( other).query_regex * and self.query_lt == ( other).query_lt - */ - __Pyx_TraceLine(244,0,__PYX_ERR(1, 244, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_contains, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_contains, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 244, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 244, __pyx_L1_error) +*/ + __Pyx_TraceLine(244,40,0,__PYX_ERR(0, 244, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_contains, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_contains, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 244, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 244, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9233,10 +9071,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_regex == ( other).query_regex # <<<<<<<<<<<<<< * and self.query_lt == ( other).query_lt * and self.query_lte == ( other).query_lte - */ - __Pyx_TraceLine(245,0,__PYX_ERR(1, 245, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_regex, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_regex, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 245, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 245, __pyx_L1_error) +*/ + __Pyx_TraceLine(245,47,0,__PYX_ERR(0, 245, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_regex, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_regex, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 245, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 245, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9252,10 +9090,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_lt == ( other).query_lt # <<<<<<<<<<<<<< * and self.query_lte == ( other).query_lte * and self.query_gt == ( other).query_gt - */ - __Pyx_TraceLine(246,0,__PYX_ERR(1, 246, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 246, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 246, __pyx_L1_error) +*/ + __Pyx_TraceLine(246,54,0,__PYX_ERR(0, 246, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 246, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 246, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9271,10 +9109,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_lte == ( other).query_lte # <<<<<<<<<<<<<< * and self.query_gt == ( other).query_gt * and self.query_gte == ( other).query_gte - */ - __Pyx_TraceLine(247,0,__PYX_ERR(1, 247, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 247, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 247, __pyx_L1_error) +*/ + __Pyx_TraceLine(247,61,0,__PYX_ERR(0, 247, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_lte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_lte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 247, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 247, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9290,10 +9128,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_gt == ( other).query_gt # <<<<<<<<<<<<<< * and self.query_gte == ( other).query_gte * ) - */ - __Pyx_TraceLine(248,0,__PYX_ERR(1, 248, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 248, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 248, __pyx_L1_error) +*/ + __Pyx_TraceLine(248,68,0,__PYX_ERR(0, 248, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gt, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gt, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 248, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 248, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -9309,15 +9147,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * and self.query_gte == ( other).query_gte # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(249,0,__PYX_ERR(1, 249, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 249, __pyx_L1_error) +*/ + __Pyx_TraceLine(249,75,0,__PYX_ERR(0, 249, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->query_gte, ((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_other)->query_gte, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 249, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 238, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":237 @@ -9326,17 +9165,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Query) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 237, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9347,7 +9192,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_6__eq__(struct __pyx_obj_ * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_Query_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -9362,87 +9207,82 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9__call__(PyObject *__pyx PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 252, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 252, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 252, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 252, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 252, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 252, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 252, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 252, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 252, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Query.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 252, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 252, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_8__call__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self), __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 252, 0, __PYX_ERR(1, 252, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 252, 0, 0, 0, __PYX_ERR(0, 252, __pyx_L1_error)); /* "hunter/_predicates.pyx":253 * @@ -9450,13 +9290,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_ob * return fast_Query_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): - */ - __Pyx_TraceLine(253,0,__PYX_ERR(1, 253, __pyx_L1_error)) +*/ + __Pyx_TraceLine(253,1,0,__PYX_ERR(0, 253, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Query_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 253, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Query_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 253, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":252 @@ -9465,16 +9306,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_ob * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_Query_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 252, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9485,7 +9332,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8__call__(struct __pyx_ob * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -9504,15 +9351,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11__or__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 255, 0, __PYX_ERR(1, 255, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 255, 0, 0, 0, __PYX_ERR(0, 255, __pyx_L1_error)); /* "hunter/_predicates.pyx":256 * @@ -9520,22 +9370,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_ * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(256,0,__PYX_ERR(1, 256, __pyx_L1_error)) +*/ + __Pyx_TraceLine(256,1,0,__PYX_ERR(0, 256, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 256, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 256, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 256, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 256, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 256, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 256, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":255 @@ -9544,17 +9396,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_ * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 255, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9565,7 +9424,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_10__or__(PyObject *__pyx_ * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -9584,15 +9443,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_13__and__(PyObject *__pyx static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 258, 0, __PYX_ERR(1, 258, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 258, 0, 0, 0, __PYX_ERR(0, 258, __pyx_L1_error)); /* "hunter/_predicates.pyx":259 * @@ -9600,22 +9462,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(259,0,__PYX_ERR(1, 259, __pyx_L1_error)) +*/ + __Pyx_TraceLine(259,1,0,__PYX_ERR(0, 259, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 259, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 259, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 259, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 259, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 259, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 259, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":258 @@ -9624,17 +9488,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 258, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9645,7 +9516,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_12__and__(PyObject *__pyx * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -9664,14 +9535,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_15__invert__(PyObject *__ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14__invert__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 261, 0, __PYX_ERR(1, 261, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 261, 0, 0, 0, __PYX_ERR(0, 261, __pyx_L1_error)); /* "hunter/_predicates.pyx":262 * @@ -9679,13 +9554,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14__invert__(struct __pyx * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_Query_call(Query self, Event event): - */ - __Pyx_TraceLine(262,0,__PYX_ERR(1, 262, __pyx_L1_error)) +*/ + __Pyx_TraceLine(262,1,0,__PYX_ERR(0, 262, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 262, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, ((PyObject *)__pyx_v_self)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 262, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 262, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":261 @@ -9694,16 +9580,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14__invert__(struct __pyx * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 261, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9714,7 +9608,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14__invert__(struct __pyx * readonly tuple query_contains # <<<<<<<<<<<<<< * readonly tuple query_endswith * readonly tuple query_eq - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_contains_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9733,25 +9627,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_contains_1__get__ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_contains___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 10, 0, __PYX_ERR(2, 10, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 10, 0, 0, 0, __PYX_ERR(2, 10, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_contains); __pyx_r = __pyx_v_self->query_contains; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 10, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 10, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_contains.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9762,7 +9664,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_contains___get__( * readonly tuple query_endswith # <<<<<<<<<<<<<< * readonly tuple query_eq * readonly tuple query_gt - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_endswith_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9781,25 +9683,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_14query_endswith_1__get__ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_endswith___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 11, 0, __PYX_ERR(2, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 11, 0, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_endswith); __pyx_r = __pyx_v_self->query_endswith; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_endswith.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9810,7 +9720,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_14query_endswith___get__( * readonly tuple query_eq # <<<<<<<<<<<<<< * readonly tuple query_gt * readonly tuple query_gte - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_eq_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9829,25 +9739,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_eq_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_eq___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 12, 0, __PYX_ERR(2, 12, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 12, 0, 0, 0, __PYX_ERR(2, 12, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_eq); __pyx_r = __pyx_v_self->query_eq; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 12, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 12, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_eq.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9858,7 +9776,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_eq___get__(struct * readonly tuple query_gt # <<<<<<<<<<<<<< * readonly tuple query_gte * readonly tuple query_in - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_gt_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9877,25 +9795,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_gt_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_gt___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 13, 0, __PYX_ERR(2, 13, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 13, 0, 0, 0, __PYX_ERR(2, 13, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_gt); __pyx_r = __pyx_v_self->query_gt; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 13, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 13, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_gt.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9906,7 +9832,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_gt___get__(struct * readonly tuple query_gte # <<<<<<<<<<<<<< * readonly tuple query_in * readonly tuple query_lt - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_gte_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9925,25 +9851,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_gte_1__get__(PyObj static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_gte___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 14, 0, __PYX_ERR(2, 14, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 14, 0, 0, 0, __PYX_ERR(2, 14, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_gte); __pyx_r = __pyx_v_self->query_gte; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 14, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 14, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_gte.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -9954,7 +9888,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_gte___get__(struct * readonly tuple query_in # <<<<<<<<<<<<<< * readonly tuple query_lt * readonly tuple query_lte - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_in_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -9973,25 +9907,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_in_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_in___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 15, 0, __PYX_ERR(2, 15, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 15, 0, 0, 0, __PYX_ERR(2, 15, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_in); __pyx_r = __pyx_v_self->query_in; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 15, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 15, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_in.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10002,7 +9944,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_in___get__(struct * readonly tuple query_lt # <<<<<<<<<<<<<< * readonly tuple query_lte * readonly tuple query_regex - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_lt_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10021,25 +9963,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_8query_lt_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_lt___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 16, 0, __PYX_ERR(2, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 16, 0, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_lt); __pyx_r = __pyx_v_self->query_lt; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_lt.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10050,7 +10000,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_8query_lt___get__(struct * readonly tuple query_lte # <<<<<<<<<<<<<< * readonly tuple query_regex * readonly tuple query_startswith - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_lte_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10069,25 +10019,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_9query_lte_1__get__(PyObj static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_lte___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 17, 0, __PYX_ERR(2, 17, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 17, 0, 0, 0, __PYX_ERR(2, 17, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_lte); __pyx_r = __pyx_v_self->query_lte; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 17, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 17, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_lte.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10098,7 +10056,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_9query_lte___get__(struct * readonly tuple query_regex # <<<<<<<<<<<<<< * readonly tuple query_startswith * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11query_regex_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10117,25 +10075,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_11query_regex_1__get__(Py static PyObject *__pyx_pf_6hunter_11_predicates_5Query_11query_regex___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 18, 0, __PYX_ERR(2, 18, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 18, 0, 0, 0, __PYX_ERR(2, 18, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_regex); __pyx_r = __pyx_v_self->query_regex; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 18, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 18, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_regex.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10146,7 +10112,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_11query_regex___get__(str * readonly tuple query_startswith # <<<<<<<<<<<<<< * * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -10165,25 +10131,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16query_startswith___get__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 19, 0, __PYX_ERR(2, 19, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 19, 0, 0, 0, __PYX_ERR(2, 19, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->query_startswith); __pyx_r = __pyx_v_self->query_startswith; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 19, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 19, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.query_startswith.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10192,7 +10166,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16query_startswith___get_ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__(PyObject *__pyx_v_self, @@ -10202,7 +10176,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -10218,16 +10192,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self)); /* function exit code */ @@ -10240,7 +10215,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -10250,9 +10225,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__11) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -10260,40 +10235,40 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * state = (self.query_contains, self.query_endswith, self.query_eq, self.query_gt, self.query_gte, self.query_in, self.query_lt, self.query_lte, self.query_regex, self.query_startswith) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(10); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,2,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(10); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->query_contains); __Pyx_GIVEREF(__pyx_v_self->query_contains); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->query_contains)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->query_contains) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_endswith); __Pyx_GIVEREF(__pyx_v_self->query_endswith); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->query_endswith)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->query_endswith) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_eq); __Pyx_GIVEREF(__pyx_v_self->query_eq); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_self->query_eq)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_self->query_eq) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_gt); __Pyx_GIVEREF(__pyx_v_self->query_gt); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_self->query_gt)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_self->query_gt) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_gte); __Pyx_GIVEREF(__pyx_v_self->query_gte); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_v_self->query_gte)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_v_self->query_gte) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_in); __Pyx_GIVEREF(__pyx_v_self->query_in); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 5, __pyx_v_self->query_in)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 5, __pyx_v_self->query_in) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_lt); __Pyx_GIVEREF(__pyx_v_self->query_lt); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 6, __pyx_v_self->query_lt)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 6, __pyx_v_self->query_lt) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_lte); __Pyx_GIVEREF(__pyx_v_self->query_lte); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 7, __pyx_v_self->query_lte)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 7, __pyx_v_self->query_lte) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_regex); __Pyx_GIVEREF(__pyx_v_self->query_regex); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 8, __pyx_v_self->query_regex)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 8, __pyx_v_self->query_regex) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->query_startswith); __Pyx_GIVEREF(__pyx_v_self->query_startswith); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 9, __pyx_v_self->query_startswith)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 9, __pyx_v_self->query_startswith) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -10303,9 +10278,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,24,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v__dict = __pyx_t_1; __pyx_t_1 = 0; @@ -10316,8 +10291,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,31,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_2 = (__pyx_v__dict != Py_None); if (__pyx_t_2) { @@ -10327,14 +10302,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,33,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3)); @@ -10346,8 +10321,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self.query_contains is not None or self.query_endswith is not None or self.query_eq is not None or self.query_gt is not None or self.query_gte is not None or self.query_in is not None or self.query_lt is not None or self.query_lte is not None or self.query_regex is not None or self.query_startswith is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,35,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -10356,7 +10331,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -10366,8 +10341,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * use_setstate = self.query_contains is not None or self.query_endswith is not None or self.query_eq is not None or self.query_gt is not None or self.query_gte is not None or self.query_in is not None or self.query_lt is not None or self.query_lte is not None or self.query_regex is not None or self.query_startswith is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_Query, (type(self), 0x5503a44, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,41,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_4 = (__pyx_v_self->query_contains != ((PyObject*)Py_None)); if (!__pyx_t_4) { @@ -10436,8 +10411,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Query, (type(self), 0x5503a44, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,87,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -10446,35 +10421,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * return __pyx_unpickle_Query, (type(self), 0x5503a44, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,88,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_Query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_89143876); - __Pyx_GIVEREF(__pyx_int_89143876); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_89143876)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_89143876); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_89143876); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_89143876) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_5; __pyx_t_5 = 0; + __Pyx_TraceReturnValue(__pyx_r, 88, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -10483,7 +10459,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Query, (type(self), 0x5503a44, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -10492,33 +10468,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Query__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,96,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pyx_unpickle_Query); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_89143876); - __Pyx_GIVEREF(__pyx_int_89143876); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_89143876)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_89143876); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_89143876); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_89143876) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 96, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -10526,20 +10503,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10549,7 +10532,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_16__reduce_cython__(struc * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__(PyObject *__pyx_v_self, @@ -10559,7 +10542,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -10580,7 +10563,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -10588,47 +10571,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Query.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -10637,11 +10612,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -10649,24 +10621,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__12) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Query__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -10675,18 +10647,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(str * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Query.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -10697,14 +10676,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_5Query_18__setstate_cython__(str * cdef inline fast_Query_call(Query self, Event event): # <<<<<<<<<<<<<< * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { CYTHON_UNUSED PyObject *__pyx_v_key = NULL; PyObject *__pyx_v_entry = NULL; PyObject *__pyx_v_value_from_event = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; @@ -10715,12 +10694,13 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str PyObject *(*__pyx_t_7)(PyObject *); int __pyx_t_8; int __pyx_t_9; - int __pyx_t_10; + size_t __pyx_t_10; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Query_call", 1); - __Pyx_TraceCall("fast_Query_call", __pyx_f[1], 264, 0, __PYX_ERR(1, 264, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[45])) + __Pyx_RefNannySetupContext("fast_Query_call", 0); + __Pyx_TraceStartFunc("fast_Query_call", __pyx_f[0], 264, 0, 0, 0, __PYX_ERR(0, 264, __pyx_L1_error)); /* "hunter/_predicates.pyx":265 * @@ -10728,64 +10708,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_eq: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: - */ - __Pyx_TraceLine(265,0,__PYX_ERR(1, 265, __pyx_L1_error)) +*/ + __Pyx_TraceLine(265,5,0,__PYX_ERR(0, 265, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_eq == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 265, __pyx_L1_error) + __PYX_ERR(0, 265, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_eq; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 265, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 265, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 265, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 265, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 265, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 265, __pyx_L1_error) + __PYX_ERR(0, 265, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_4); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_5); } else { - __pyx_t_4 = PyList_GET_ITEM(sequence, 0); - __pyx_t_5 = PyList_GET_ITEM(sequence, 1); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 265, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 265, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); } - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 265, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 265, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 265, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L5_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L5_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 265, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 265, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L6_unpacking_done; @@ -10793,13 +10779,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 265, __pyx_L1_error) + __PYX_ERR(0, 265, __pyx_L1_error) __pyx_L6_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceLine(265,1,0,__PYX_ERR(0, 265, __pyx_L1_error)) /* "hunter/_predicates.pyx":266 * cdef inline fast_Query_call(Query self, Event event): @@ -10807,9 +10794,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if value_from_event != ( entry).value: * return False - */ - __Pyx_TraceLine(266,0,__PYX_ERR(1, 266, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 266, __pyx_L1_error) +*/ + __Pyx_TraceLine(266,10,0,__PYX_ERR(0, 266, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -10820,10 +10807,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if value_from_event != ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_in: - */ - __Pyx_TraceLine(267,0,__PYX_ERR(1, 267, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 267, __pyx_L1_error) - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 267, __pyx_L1_error) +*/ + __Pyx_TraceLine(267,17,0,__PYX_ERR(0, 267, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 267, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 267, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_8) { @@ -10833,11 +10820,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_in: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(268,0,__PYX_ERR(1, 268, __pyx_L1_error)) +*/ + __Pyx_TraceLine(268,18,0,__PYX_ERR(0, 268, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 268, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -10847,7 +10835,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if value_from_event != ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_in: - */ +*/ } /* "hunter/_predicates.pyx":265 @@ -10856,8 +10844,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_eq: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if value_from_event != ( entry).value: - */ - __Pyx_TraceLine(265,0,__PYX_ERR(1, 265, __pyx_L1_error)) +*/ + __Pyx_TraceLine(265,1,0,__PYX_ERR(0, 265, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -10867,64 +10855,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_in: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: - */ - __Pyx_TraceLine(269,0,__PYX_ERR(1, 269, __pyx_L1_error)) +*/ + __Pyx_TraceLine(269,24,0,__PYX_ERR(0, 269, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_in == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 269, __pyx_L1_error) + __PYX_ERR(0, 269, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_in; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 269, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 269, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 269, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 269, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 269, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 269, __pyx_L1_error) + __PYX_ERR(0, 269, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_5); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_4); } else { - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_4 = PyList_GET_ITEM(sequence, 1); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 269, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 269, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 269, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 269, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 269, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 269, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 269, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L12_unpacking_done; @@ -10932,13 +10926,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 269, __pyx_L1_error) + __PYX_ERR(0, 269, __pyx_L1_error) __pyx_L12_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; + __Pyx_TraceLine(269,20,0,__PYX_ERR(0, 269, __pyx_L1_error)) /* "hunter/_predicates.pyx":270 * return False @@ -10946,9 +10941,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if (value_from_event) not in ( entry).value: * return False - */ - __Pyx_TraceLine(270,0,__PYX_ERR(1, 270, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 270, __pyx_L1_error) +*/ + __Pyx_TraceLine(270,29,0,__PYX_ERR(0, 270, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -10959,10 +10954,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if (value_from_event) not in ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_contains: - */ - __Pyx_TraceLine(271,0,__PYX_ERR(1, 271, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 271, __pyx_L1_error) - __pyx_t_8 = (__Pyx_PySequence_ContainsTF(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 271, __pyx_L1_error) +*/ + __Pyx_TraceLine(271,33,0,__PYX_ERR(0, 271, __pyx_L1_error)) + if (!(likely(PyUnicode_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(0, 271, __pyx_L1_error) + __pyx_t_8 = (__Pyx_PySequence_ContainsTF(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 271, __pyx_L1_error) if (__pyx_t_8) { /* "hunter/_predicates.pyx":272 @@ -10971,11 +10966,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_contains: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(272,0,__PYX_ERR(1, 272, __pyx_L1_error)) +*/ + __Pyx_TraceLine(272,38,0,__PYX_ERR(0, 272, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 38, 0, __PYX_ERR(0, 272, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -10985,7 +10981,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if (value_from_event) not in ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_contains: - */ +*/ } /* "hunter/_predicates.pyx":269 @@ -10994,8 +10990,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_in: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if (value_from_event) not in ( entry).value: - */ - __Pyx_TraceLine(269,0,__PYX_ERR(1, 269, __pyx_L1_error)) +*/ + __Pyx_TraceLine(269,20,0,__PYX_ERR(0, 269, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11005,64 +11001,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_contains: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): - */ - __Pyx_TraceLine(273,0,__PYX_ERR(1, 273, __pyx_L1_error)) +*/ + __Pyx_TraceLine(273,44,0,__PYX_ERR(0, 273, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_contains == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 273, __pyx_L1_error) + __PYX_ERR(0, 273, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_contains; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 273, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 273, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 273, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 273, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 273, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 273, __pyx_L1_error) + __PYX_ERR(0, 273, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_4); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_5); } else { - __pyx_t_4 = PyList_GET_ITEM(sequence, 0); - __pyx_t_5 = PyList_GET_ITEM(sequence, 1); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 273, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 273, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); } - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 273, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 273, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 273, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 273, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 273, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L18_unpacking_done; @@ -11070,13 +11072,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 273, __pyx_L1_error) + __PYX_ERR(0, 273, __pyx_L1_error) __pyx_L18_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceLine(273,40,0,__PYX_ERR(0, 273, __pyx_L1_error)) /* "hunter/_predicates.pyx":274 * return False @@ -11084,9 +11087,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if ( entry).value not in (value_from_event): * return False - */ - __Pyx_TraceLine(274,0,__PYX_ERR(1, 274, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 274, __pyx_L1_error) +*/ + __Pyx_TraceLine(274,49,0,__PYX_ERR(0, 274, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11097,10 +11100,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if ( entry).value not in (value_from_event): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_startswith: - */ - __Pyx_TraceLine(275,0,__PYX_ERR(1, 275, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 275, __pyx_L1_error) - __pyx_t_8 = (__Pyx_PySequence_ContainsTF(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, __pyx_v_value_from_event, Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 275, __pyx_L1_error) +*/ + __Pyx_TraceLine(275,57,0,__PYX_ERR(0, 275, __pyx_L1_error)) + if (!(likely(PyUnicode_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(0, 275, __pyx_L1_error) + if (unlikely(__pyx_v_value_from_event == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); + __PYX_ERR(0, 275, __pyx_L1_error) + } + __pyx_t_8 = (__Pyx_PyUnicode_ContainsTF(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, ((PyObject*)__pyx_v_value_from_event), Py_NE)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 275, __pyx_L1_error) if (__pyx_t_8) { /* "hunter/_predicates.pyx":276 @@ -11109,11 +11116,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_startswith: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(276,0,__PYX_ERR(1, 276, __pyx_L1_error)) +*/ + __Pyx_TraceLine(276,58,0,__PYX_ERR(0, 276, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 58, 0, __PYX_ERR(0, 276, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11123,7 +11131,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if ( entry).value not in (value_from_event): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_startswith: - */ +*/ } /* "hunter/_predicates.pyx":273 @@ -11132,8 +11140,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_contains: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if ( entry).value not in (value_from_event): - */ - __Pyx_TraceLine(273,0,__PYX_ERR(1, 273, __pyx_L1_error)) +*/ + __Pyx_TraceLine(273,40,0,__PYX_ERR(0, 273, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11143,64 +11151,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_startswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): - */ - __Pyx_TraceLine(277,0,__PYX_ERR(1, 277, __pyx_L1_error)) +*/ + __Pyx_TraceLine(277,64,0,__PYX_ERR(0, 277, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_startswith == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 277, __pyx_L1_error) + __PYX_ERR(0, 277, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_startswith; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 277, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 277, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 277, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 277, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 277, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 277, __pyx_L1_error) + __PYX_ERR(0, 277, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_5); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_4); } else { - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_4 = PyList_GET_ITEM(sequence, 1); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 277, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 277, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 277, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 277, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 277, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L23_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L23_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 277, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 277, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L24_unpacking_done; @@ -11208,13 +11222,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 277, __pyx_L1_error) + __PYX_ERR(0, 277, __pyx_L1_error) __pyx_L24_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; + __Pyx_TraceLine(277,60,0,__PYX_ERR(0, 277, __pyx_L1_error)) /* "hunter/_predicates.pyx":278 * return False @@ -11222,9 +11237,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not (value_from_event).startswith(( entry).value): * return False - */ - __Pyx_TraceLine(278,0,__PYX_ERR(1, 278, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 278, __pyx_L1_error) +*/ + __Pyx_TraceLine(278,69,0,__PYX_ERR(0, 278, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11235,14 +11250,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not (value_from_event).startswith(( entry).value): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_endswith: - */ - __Pyx_TraceLine(279,0,__PYX_ERR(1, 279, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 279, __pyx_L1_error) +*/ + __Pyx_TraceLine(279,74,0,__PYX_ERR(0, 279, __pyx_L1_error)) + if (!(likely(PyUnicode_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(0, 279, __pyx_L1_error) if (unlikely(__pyx_v_value_from_event == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "startswith"); - __PYX_ERR(1, 279, __pyx_L1_error) + __PYX_ERR(0, 279, __pyx_L1_error) } - __pyx_t_8 = __Pyx_PyStr_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, -1); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(1, 279, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyUnicode_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, -1); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 279, __pyx_L1_error) __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { @@ -11252,11 +11267,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_endswith: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(280,0,__PYX_ERR(1, 280, __pyx_L1_error)) +*/ + __Pyx_TraceLine(280,80,0,__PYX_ERR(0, 280, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 80, 0, __PYX_ERR(0, 280, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11266,7 +11282,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not (value_from_event).startswith(( entry).value): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_endswith: - */ +*/ } /* "hunter/_predicates.pyx":277 @@ -11275,8 +11291,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_startswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).startswith(( entry).value): - */ - __Pyx_TraceLine(277,0,__PYX_ERR(1, 277, __pyx_L1_error)) +*/ + __Pyx_TraceLine(277,60,0,__PYX_ERR(0, 277, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11286,64 +11302,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_endswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): - */ - __Pyx_TraceLine(281,0,__PYX_ERR(1, 281, __pyx_L1_error)) +*/ + __Pyx_TraceLine(281,86,0,__PYX_ERR(0, 281, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_endswith == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 281, __pyx_L1_error) + __PYX_ERR(0, 281, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_endswith; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 281, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 281, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 281, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 281, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 281, __pyx_L1_error) + __PYX_ERR(0, 281, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_4); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_5); } else { - __pyx_t_4 = PyList_GET_ITEM(sequence, 0); - __pyx_t_5 = PyList_GET_ITEM(sequence, 1); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 281, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 281, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); } - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 281, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 281, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 281, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L29_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L29_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 281, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 281, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L30_unpacking_done; @@ -11351,13 +11373,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 281, __pyx_L1_error) + __PYX_ERR(0, 281, __pyx_L1_error) __pyx_L30_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceLine(281,82,0,__PYX_ERR(0, 281, __pyx_L1_error)) /* "hunter/_predicates.pyx":282 * return False @@ -11365,9 +11388,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not (value_from_event).endswith(( entry).value): * return False - */ - __Pyx_TraceLine(282,0,__PYX_ERR(1, 282, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error) +*/ + __Pyx_TraceLine(282,91,0,__PYX_ERR(0, 282, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11378,14 +11401,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not (value_from_event).endswith(( entry).value): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_regex: - */ - __Pyx_TraceLine(283,0,__PYX_ERR(1, 283, __pyx_L1_error)) - if (!(likely(PyString_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(1, 283, __pyx_L1_error) +*/ + __Pyx_TraceLine(283,96,0,__PYX_ERR(0, 283, __pyx_L1_error)) + if (!(likely(PyUnicode_CheckExact(__pyx_v_value_from_event)) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_v_value_from_event))) __PYX_ERR(0, 283, __pyx_L1_error) if (unlikely(__pyx_v_value_from_event == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "endswith"); - __PYX_ERR(1, 283, __pyx_L1_error) + __PYX_ERR(0, 283, __pyx_L1_error) } - __pyx_t_9 = __Pyx_PyStr_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, 1); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 283, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyUnicode_Tailmatch(((PyObject*)__pyx_v_value_from_event), ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, 0, PY_SSIZE_T_MAX, 1); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 283, __pyx_L1_error) __pyx_t_8 = (!__pyx_t_9); if (__pyx_t_8) { @@ -11395,11 +11418,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_regex: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(284,0,__PYX_ERR(1, 284, __pyx_L1_error)) +*/ + __Pyx_TraceLine(284,102,0,__PYX_ERR(0, 284, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 102, 0, __PYX_ERR(0, 284, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11409,7 +11433,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not (value_from_event).endswith(( entry).value): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_regex: - */ +*/ } /* "hunter/_predicates.pyx":281 @@ -11418,8 +11442,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_endswith: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not (value_from_event).endswith(( entry).value): - */ - __Pyx_TraceLine(281,0,__PYX_ERR(1, 281, __pyx_L1_error)) +*/ + __Pyx_TraceLine(281,82,0,__PYX_ERR(0, 281, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11429,64 +11453,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_regex: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): - */ - __Pyx_TraceLine(285,0,__PYX_ERR(1, 285, __pyx_L1_error)) +*/ + __Pyx_TraceLine(285,108,0,__PYX_ERR(0, 285, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_regex == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 285, __pyx_L1_error) + __PYX_ERR(0, 285, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_regex; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 285, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 285, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 285, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 285, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 285, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 285, __pyx_L1_error) + __PYX_ERR(0, 285, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_5); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_4); } else { - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_4 = PyList_GET_ITEM(sequence, 1); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 285, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 285, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 285, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 285, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 285, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L35_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L35_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 285, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 285, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L36_unpacking_done; @@ -11494,13 +11524,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 285, __pyx_L1_error) + __PYX_ERR(0, 285, __pyx_L1_error) __pyx_L36_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; + __Pyx_TraceLine(285,104,0,__PYX_ERR(0, 285, __pyx_L1_error)) /* "hunter/_predicates.pyx":286 * return False @@ -11508,9 +11539,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not ( entry).value.match(value_from_event): * return False - */ - __Pyx_TraceLine(286,0,__PYX_ERR(1, 286, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 286, __pyx_L1_error) +*/ + __Pyx_TraceLine(286,113,0,__PYX_ERR(0, 286, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11521,33 +11552,19 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not ( entry).value.match(value_from_event): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_gt: - */ - __Pyx_TraceLine(287,0,__PYX_ERR(1, 287, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, __pyx_n_s_match); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 287, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = NULL; +*/ + __Pyx_TraceLine(287,119,0,__PYX_ERR(0, 287, __pyx_L1_error)) + __pyx_t_4 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value; + __Pyx_INCREF(__pyx_t_4); __pyx_t_10 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_10 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_value_from_event}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_10, 1+__pyx_t_10); - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 287, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v_value_from_event}; + __pyx_t_3 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_match, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 287, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { @@ -11558,11 +11575,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_gt: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(288,0,__PYX_ERR(1, 288, __pyx_L1_error)) +*/ + __Pyx_TraceLine(288,123,0,__PYX_ERR(0, 288, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 123, 0, __PYX_ERR(0, 288, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11572,7 +11590,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not ( entry).value.match(value_from_event): # <<<<<<<<<<<<<< * return False * for key, entry in self.query_gt: - */ +*/ } /* "hunter/_predicates.pyx":285 @@ -11581,8 +11599,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_regex: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not ( entry).value.match(value_from_event): - */ - __Pyx_TraceLine(285,0,__PYX_ERR(1, 285, __pyx_L1_error)) +*/ + __Pyx_TraceLine(285,104,0,__PYX_ERR(0, 285, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11592,64 +11610,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_gt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: - */ - __Pyx_TraceLine(289,0,__PYX_ERR(1, 289, __pyx_L1_error)) +*/ + __Pyx_TraceLine(289,129,0,__PYX_ERR(0, 289, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_gt == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 289, __pyx_L1_error) + __PYX_ERR(0, 289, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_gt; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 289, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 289, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 289, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 289, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 289, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 289, __pyx_L1_error) + __PYX_ERR(0, 289, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_4); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_5); } else { - __pyx_t_4 = PyList_GET_ITEM(sequence, 0); - __pyx_t_5 = PyList_GET_ITEM(sequence, 1); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 289, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 289, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); } - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 289, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 289, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 289, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L41_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L41_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 289, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 289, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L42_unpacking_done; @@ -11657,13 +11681,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 289, __pyx_L1_error) + __PYX_ERR(0, 289, __pyx_L1_error) __pyx_L42_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceLine(289,125,0,__PYX_ERR(0, 289, __pyx_L1_error)) /* "hunter/_predicates.pyx":290 * return False @@ -11671,9 +11696,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event > ( entry).value: * return False - */ - __Pyx_TraceLine(290,0,__PYX_ERR(1, 290, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 290, __pyx_L1_error) +*/ + __Pyx_TraceLine(290,134,0,__PYX_ERR(0, 290, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11684,10 +11709,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event > ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_gte: - */ - __Pyx_TraceLine(291,0,__PYX_ERR(1, 291, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 291, __pyx_L1_error) - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 291, __pyx_L1_error) +*/ + __Pyx_TraceLine(291,142,0,__PYX_ERR(0, 291, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(0, 291, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_8 = (!__pyx_t_9); if (__pyx_t_8) { @@ -11698,11 +11723,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_gte: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(292,0,__PYX_ERR(1, 292, __pyx_L1_error)) +*/ + __Pyx_TraceLine(292,143,0,__PYX_ERR(0, 292, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 143, 0, __PYX_ERR(0, 292, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11712,7 +11738,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event > ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_gte: - */ +*/ } /* "hunter/_predicates.pyx":289 @@ -11721,8 +11747,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_gt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event > ( entry).value: - */ - __Pyx_TraceLine(289,0,__PYX_ERR(1, 289, __pyx_L1_error)) +*/ + __Pyx_TraceLine(289,125,0,__PYX_ERR(0, 289, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11732,64 +11758,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_gte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: - */ - __Pyx_TraceLine(293,0,__PYX_ERR(1, 293, __pyx_L1_error)) +*/ + __Pyx_TraceLine(293,149,0,__PYX_ERR(0, 293, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_gte == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 293, __pyx_L1_error) + __PYX_ERR(0, 293, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_gte; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 293, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 293, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 293, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 293, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 293, __pyx_L1_error) + __PYX_ERR(0, 293, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_5); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_4); } else { - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_4 = PyList_GET_ITEM(sequence, 1); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 293, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 293, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 293, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L47_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L47_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 293, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 293, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L48_unpacking_done; @@ -11797,13 +11829,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 293, __pyx_L1_error) + __PYX_ERR(0, 293, __pyx_L1_error) __pyx_L48_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; + __Pyx_TraceLine(293,145,0,__PYX_ERR(0, 293, __pyx_L1_error)) /* "hunter/_predicates.pyx":294 * return False @@ -11811,9 +11844,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event >= ( entry).value: * return False - */ - __Pyx_TraceLine(294,0,__PYX_ERR(1, 294, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 294, __pyx_L1_error) +*/ + __Pyx_TraceLine(294,154,0,__PYX_ERR(0, 294, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11824,10 +11857,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event >= ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_lt: - */ - __Pyx_TraceLine(295,0,__PYX_ERR(1, 295, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 295, __pyx_L1_error) - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 295, __pyx_L1_error) +*/ + __Pyx_TraceLine(295,162,0,__PYX_ERR(0, 295, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_GE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 295, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 295, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { @@ -11838,11 +11871,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_lt: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(296,0,__PYX_ERR(1, 296, __pyx_L1_error)) +*/ + __Pyx_TraceLine(296,163,0,__PYX_ERR(0, 296, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 163, 0, __PYX_ERR(0, 296, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11852,7 +11886,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event >= ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_lt: - */ +*/ } /* "hunter/_predicates.pyx":293 @@ -11861,8 +11895,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_gte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event >= ( entry).value: - */ - __Pyx_TraceLine(293,0,__PYX_ERR(1, 293, __pyx_L1_error)) +*/ + __Pyx_TraceLine(293,145,0,__PYX_ERR(0, 293, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11872,64 +11906,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_lt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: - */ - __Pyx_TraceLine(297,0,__PYX_ERR(1, 297, __pyx_L1_error)) +*/ + __Pyx_TraceLine(297,169,0,__PYX_ERR(0, 297, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_lt == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 297, __pyx_L1_error) + __PYX_ERR(0, 297, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_lt; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 297, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 297, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 297, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 297, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 297, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 297, __pyx_L1_error) + __PYX_ERR(0, 297, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_4); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_5); } else { - __pyx_t_4 = PyList_GET_ITEM(sequence, 0); - __pyx_t_5 = PyList_GET_ITEM(sequence, 1); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 297, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); } - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 297, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 297, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 297, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L53_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L53_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 297, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 297, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L54_unpacking_done; @@ -11937,13 +11977,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 297, __pyx_L1_error) + __PYX_ERR(0, 297, __pyx_L1_error) __pyx_L54_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_5); __pyx_t_5 = 0; + __Pyx_TraceLine(297,165,0,__PYX_ERR(0, 297, __pyx_L1_error)) /* "hunter/_predicates.pyx":298 * return False @@ -11951,9 +11992,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event < ( entry).value: * return False - */ - __Pyx_TraceLine(298,0,__PYX_ERR(1, 298, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 298, __pyx_L1_error) +*/ + __Pyx_TraceLine(298,174,0,__PYX_ERR(0, 298, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -11964,10 +12005,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event < ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_lte: - */ - __Pyx_TraceLine(299,0,__PYX_ERR(1, 299, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 299, __pyx_L1_error) - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 299, __pyx_L1_error) +*/ + __Pyx_TraceLine(299,182,0,__PYX_ERR(0, 299, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 299, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(0, 299, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_8 = (!__pyx_t_9); if (__pyx_t_8) { @@ -11978,11 +12019,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * for key, entry in self.query_lte: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(300,0,__PYX_ERR(1, 300, __pyx_L1_error)) +*/ + __Pyx_TraceLine(300,183,0,__PYX_ERR(0, 300, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 183, 0, __PYX_ERR(0, 300, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -11992,7 +12034,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event < ( entry).value: # <<<<<<<<<<<<<< * return False * for key, entry in self.query_lte: - */ +*/ } /* "hunter/_predicates.pyx":297 @@ -12001,8 +12043,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_lt: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event < ( entry).value: - */ - __Pyx_TraceLine(297,0,__PYX_ERR(1, 297, __pyx_L1_error)) +*/ + __Pyx_TraceLine(297,165,0,__PYX_ERR(0, 297, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -12012,64 +12054,70 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_lte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: - */ - __Pyx_TraceLine(301,0,__PYX_ERR(1, 301, __pyx_L1_error)) +*/ + __Pyx_TraceLine(301,189,0,__PYX_ERR(0, 301, __pyx_L1_error)) if (unlikely(__pyx_v_self->query_lte == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 301, __pyx_L1_error) + __PYX_ERR(0, 301, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->query_lte; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 301, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 301, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 301, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 301, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 301, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { PyObject* sequence = __pyx_t_3; Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(1, 301, __pyx_L1_error) + __PYX_ERR(0, 301, __pyx_L1_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __Pyx_INCREF(__pyx_t_5); + __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); + __Pyx_INCREF(__pyx_t_4); } else { - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_4 = PyList_GET_ITEM(sequence, 1); + __pyx_t_5 = __Pyx_PyList_GetItemRef(sequence, 0); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 301, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_5); + __pyx_t_4 = __Pyx_PyList_GetItemRef(sequence, 1); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 301, __pyx_L1_error) + __Pyx_XGOTREF(__pyx_t_4); } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); #else - __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 301, __pyx_L1_error) + __pyx_t_5 = __Pyx_PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 301, __pyx_L1_error) + __pyx_t_4 = __Pyx_PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 301, __pyx_L1_error) + __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); + __pyx_t_7 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_6); index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L59_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L59_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(1, 301, __pyx_L1_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 301, __pyx_L1_error) __pyx_t_7 = NULL; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L60_unpacking_done; @@ -12077,13 +12125,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(1, 301, __pyx_L1_error) + __PYX_ERR(0, 301, __pyx_L1_error) __pyx_L60_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_entry, __pyx_t_4); __pyx_t_4 = 0; + __Pyx_TraceLine(301,185,0,__PYX_ERR(0, 301, __pyx_L1_error)) /* "hunter/_predicates.pyx":302 * return False @@ -12091,9 +12140,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * value_from_event = ( entry).getter(event) # <<<<<<<<<<<<<< * if not value_from_event <= ( entry).value: * return False - */ - __Pyx_TraceLine(302,0,__PYX_ERR(1, 302, __pyx_L1_error)) - __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 302, __pyx_L1_error) +*/ + __Pyx_TraceLine(302,194,0,__PYX_ERR(0, 302, __pyx_L1_error)) + __pyx_t_3 = ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->getter(__pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_value_from_event, __pyx_t_3); __pyx_t_3 = 0; @@ -12104,10 +12153,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event <= ( entry).value: # <<<<<<<<<<<<<< * return False * - */ - __Pyx_TraceLine(303,0,__PYX_ERR(1, 303, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 303, __pyx_L1_error) - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 303, __pyx_L1_error) +*/ + __Pyx_TraceLine(303,202,0,__PYX_ERR(0, 303, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_value_from_event, ((struct __pyx_obj_6hunter_11_predicates_QueryEntry *)__pyx_v_entry)->value, Py_LE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 303, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 303, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { @@ -12118,11 +12167,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return False # <<<<<<<<<<<<<< * * return True - */ - __Pyx_TraceLine(304,0,__PYX_ERR(1, 304, __pyx_L1_error)) +*/ + __Pyx_TraceLine(304,203,0,__PYX_ERR(0, 304, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 203, 0, __PYX_ERR(0, 304, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -12132,7 +12182,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * if not value_from_event <= ( entry).value: # <<<<<<<<<<<<<< * return False * - */ +*/ } /* "hunter/_predicates.pyx":301 @@ -12141,8 +12191,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * for key, entry in self.query_lte: # <<<<<<<<<<<<<< * value_from_event = ( entry).getter(event) * if not value_from_event <= ( entry).value: - */ - __Pyx_TraceLine(301,0,__PYX_ERR(1, 301, __pyx_L1_error)) +*/ + __Pyx_TraceLine(301,185,0,__PYX_ERR(0, 301, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -12152,11 +12202,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * return True # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(306,0,__PYX_ERR(1, 306, __pyx_L1_error)) +*/ + __Pyx_TraceLine(306,205,0,__PYX_ERR(0, 306, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; + __Pyx_TraceReturnValue(__pyx_r, 205, 0, __PYX_ERR(0, 306, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":264 @@ -12165,7 +12216,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * cdef inline fast_Query_call(Query self, Event event): # <<<<<<<<<<<<<< * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -12174,6 +12225,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 264, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_Query_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; @@ -12181,7 +12238,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str __Pyx_XDECREF(__pyx_v_entry); __Pyx_XDECREF(__pyx_v_value_from_event); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12192,7 +12249,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Query_call(str * def __init__(self, condition, *actions): # <<<<<<<<<<<<<< * if not actions: * raise TypeError('Must give at least one action.') - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -12208,7 +12265,7 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; @@ -12221,48 +12278,40 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self } __Pyx_GOTREF(__pyx_v_actions); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_condition,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_condition,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 317, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { default: - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 317, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 317, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - const Py_ssize_t used_pos_args = (kwd_pos_args < 1) ? kwd_pos_args : 1; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, used_pos_args, "__init__") < 0)) __PYX_ERR(1, 317, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + const Py_ssize_t used_pos_args = (kwd_pos_args < 1) ? kwd_pos_args : 1; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, used_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 317, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 1, i); __PYX_ERR(0, 317, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs < 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 317, __pyx_L3_error) } __pyx_v_condition = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 1, __pyx_nargs); __PYX_ERR(1, 317, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 1, __pyx_nargs); __PYX_ERR(0, 317, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_DECREF(__pyx_v_actions); __pyx_v_actions = 0; __Pyx_AddTraceback("hunter._predicates.When.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -12272,13 +12321,10 @@ static int __pyx_pw_6hunter_11_predicates_4When_1__init__(PyObject *__pyx_v_self __pyx_r = __pyx_pf_6hunter_11_predicates_4When___init__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self), __pyx_v_condition, __pyx_v_actions); /* function exit code */ - __Pyx_DECREF(__pyx_v_actions); - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __Pyx_DECREF(__pyx_v_actions); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12290,7 +12336,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0) { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *__pyx_cur_scope; @@ -12300,11 +12346,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(CYTHON_U const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("genexpr", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 322, __pyx_L1_error) + __PYX_ERR(0, 322, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -12312,7 +12358,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(CYTHON_U __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_8__init___2generator1, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_init___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 322, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_8__init___2generator1, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_genexpr, __pyx_mstate_global->__pyx_n_u_init___locals_genexpr, __pyx_mstate_global->__pyx_n_u_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -12332,7 +12378,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *__pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)__pyx_generator->closure); PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; PyObject *__pyx_t_3 = NULL; @@ -12340,24 +12386,28 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; + size_t __pyx_t_8; int __pyx_t_9; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 322, 0, __PYX_ERR(1, 322, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L8_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 322, 0, 0, 0, __PYX_ERR(0, 322, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 322, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 322, __pyx_L1_error) + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 322, 0, 0, 0, __PYX_ERR(0, 322, __pyx_L1_error)); + if (unlikely(__pyx_sent_value != Py_None)) { + if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator"); + __PYX_ERR(0, 322, __pyx_L1_error) + } /* "hunter/_predicates.pyx":323 * self.actions = tuple( @@ -12365,29 +12415,32 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py * for action in actions) # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(323,0,__PYX_ERR(1, 323, __pyx_L1_error)) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 323, __pyx_L1_error) } +*/ + __Pyx_TraceLine(323,0,0,__PYX_ERR(0, 323, __pyx_L1_error)) + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(0, 323, __pyx_L1_error) } __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 323, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 323, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 323, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 323, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 323, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_action); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_action, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceLine(323,0,0,__PYX_ERR(0, 323, __pyx_L1_error)) /* "hunter/_predicates.pyx":322 * self.condition = condition @@ -12395,68 +12448,67 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * - */ - __Pyx_TraceLine(322,0,__PYX_ERR(1, 322, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_isclass); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 322, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = NULL; - __pyx_t_8 = 0; +*/ + __Pyx_TraceLine(322,0,0,__PYX_ERR(0, 322, __pyx_L1_error)) + __pyx_t_6 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_isclass); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_8 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_7))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); + assert(__pyx_t_6); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_7); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_7, __pyx__function); + __pyx_t_8 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_cur_scope->__pyx_v_action}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 322, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_action}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(1, 322, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (__pyx_t_9) { } else { __pyx_t_4 = __pyx_t_9; goto __pyx_L6_bool_binop_done; } - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_Action); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 322, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_Action); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = PyObject_IsSubclass(__pyx_cur_scope->__pyx_v_action, __pyx_t_5); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 322, __pyx_L1_error) + __pyx_t_9 = PyObject_IsSubclass(__pyx_cur_scope->__pyx_v_action, __pyx_t_5); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_4 = __pyx_t_9; __pyx_L6_bool_binop_done:; if (__pyx_t_4) { + __pyx_t_7 = NULL; __Pyx_INCREF(__pyx_cur_scope->__pyx_v_action); - __pyx_t_6 = __pyx_cur_scope->__pyx_v_action; __pyx_t_7 = NULL; - __pyx_t_8 = 0; + __pyx_t_6 = __pyx_cur_scope->__pyx_v_action; + __pyx_t_8 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } + assert(__pyx_t_7); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6); + __Pyx_INCREF(__pyx_t_7); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_6, __pyx__function); + __pyx_t_8 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_7, NULL}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 0+__pyx_t_8); + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 322, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); } __pyx_t_3 = __pyx_t_5; __pyx_t_5 = 0; @@ -12469,19 +12521,20 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py __Pyx_XGIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; + __Pyx_TraceYield(__pyx_r, 0, __PYX_ERR(0, 322, __pyx_L1_error)); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); __Pyx_Coroutine_ResetAndClearException(__pyx_generator); /* return from generator, yielding value */ __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L8_resume_from_yield:; + __Pyx_TraceResumeGen("genexpr", __pyx_f[0], 322, 0, __PYX_ERR(0, 322, __pyx_L1_error)); __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_1); __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 322, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 322, __pyx_L1_error) /* "hunter/_predicates.pyx":323 * self.actions = tuple( @@ -12489,11 +12542,12 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py * for action in actions) # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(323,0,__PYX_ERR(1, 323, __pyx_L1_error)) +*/ + __Pyx_TraceLine(323,0,0,__PYX_ERR(0, 323, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 322, __pyx_L1_error)); /* "hunter/_predicates.pyx":322 * self.condition = condition @@ -12501,27 +12555,31 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * - */ +*/ /* function exit code */ - PyErr_SetNone(PyExc_StopIteration); + __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_Generator_Replace_StopIteration(0); __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_PyErr_Occurred()) { + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionUnwind(0, 0); + } __pyx_L0:; - __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); #if !CYTHON_USE_EXC_INFO_STACK __Pyx_Coroutine_ResetAndClearException(__pyx_generator); #endif __pyx_generator->resume_label = -1; __Pyx_Coroutine_clear((PyObject*)__pyx_generator); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12532,22 +12590,25 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1(__py * def __init__(self, condition, *actions): # <<<<<<<<<<<<<< * if not actions: * raise TypeError('Must give at least one action.') - */ +*/ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self, PyObject *__pyx_v_condition, PyObject *__pyx_v_actions) { PyObject *__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1 = 0; int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + size_t __pyx_t_6; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 317, 0, __PYX_ERR(1, 317, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[47])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 317, 0, 0, 0, __PYX_ERR(0, 317, __pyx_L1_error)); /* "hunter/_predicates.pyx":318 * @@ -12555,9 +12616,10 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * if not actions: # <<<<<<<<<<<<<< * raise TypeError('Must give at least one action.') * self.condition = condition - */ - __Pyx_TraceLine(318,0,__PYX_ERR(1, 318, __pyx_L1_error)) - __pyx_t_1 = (PyTuple_GET_SIZE(__pyx_v_actions) != 0); +*/ + __Pyx_TraceLine(318,3,0,__PYX_ERR(0, 318, __pyx_L1_error)) + __pyx_t_1 = (__Pyx_PyTuple_GET_SIZE(__pyx_v_actions) != 0); + if (unlikely(((!CYTHON_ASSUME_SAFE_MACROS) && __pyx_t_1 < 0))) __PYX_ERR(0, 318, __pyx_L1_error) __pyx_t_2 = (!__pyx_t_1); if (unlikely(__pyx_t_2)) { @@ -12567,13 +12629,23 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * raise TypeError('Must give at least one action.') # <<<<<<<<<<<<<< * self.condition = condition * self.actions = tuple( - */ - __Pyx_TraceLine(319,0,__PYX_ERR(1, 319, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 319, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); +*/ + __Pyx_TraceLine(319,6,0,__PYX_ERR(0, 319, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_5 = __pyx_builtin_TypeError; + __pyx_t_6 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Must_give_at_least_one_action}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__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_3)) __PYX_ERR(0, 319, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + } __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(1, 319, __pyx_L1_error) + __PYX_ERR(0, 319, __pyx_L1_error) /* "hunter/_predicates.pyx":318 * @@ -12581,7 +12653,7 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * if not actions: # <<<<<<<<<<<<<< * raise TypeError('Must give at least one action.') * self.condition = condition - */ +*/ } /* "hunter/_predicates.pyx":320 @@ -12590,8 +12662,8 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * self.condition = condition # <<<<<<<<<<<<<< * self.actions = tuple( * action() if isclass(action) and issubclass(action, Action) else action - */ - __Pyx_TraceLine(320,0,__PYX_ERR(1, 320, __pyx_L1_error)) +*/ + __Pyx_TraceLine(320,8,0,__PYX_ERR(0, 320, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_condition); __Pyx_GIVEREF(__pyx_v_condition); __Pyx_GOTREF(__pyx_v_self->condition); @@ -12604,9 +12676,9 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * for action in actions) * - */ - __Pyx_TraceLine(322,0,__PYX_ERR(1, 322, __pyx_L1_error)) - __pyx_t_3 = __pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(NULL, __pyx_v_actions); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 322, __pyx_L1_error) +*/ + __Pyx_TraceLine(322,15,0,__PYX_ERR(0, 322, __pyx_L1_error)) + __pyx_t_3 = __pyx_pf_6hunter_11_predicates_4When_8__init___genexpr(NULL, __pyx_v_actions); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); /* "hunter/_predicates.pyx":321 @@ -12615,16 +12687,16 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * self.actions = tuple( # <<<<<<<<<<<<<< * action() if isclass(action) and issubclass(action, Action) else action * for action in actions) - */ - __Pyx_TraceLine(321,0,__PYX_ERR(1, 321, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 321, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); +*/ + __Pyx_TraceLine(321,14,0,__PYX_ERR(0, 321, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 321, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GIVEREF(__pyx_t_4); + __Pyx_GIVEREF(__pyx_t_5); __Pyx_GOTREF(__pyx_v_self->actions); __Pyx_DECREF(__pyx_v_self->actions); - __pyx_v_self->actions = ((PyObject*)__pyx_t_4); - __pyx_t_4 = 0; + __pyx_v_self->actions = ((PyObject*)__pyx_t_5); + __pyx_t_5 = 0; /* "hunter/_predicates.pyx":317 * """ @@ -12632,19 +12704,27 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * def __init__(self, condition, *actions): # <<<<<<<<<<<<<< * if not actions: * raise TypeError('Must give at least one action.') - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 317, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 317, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_XDECREF(__pyx_gb_6hunter_11_predicates_4When_8__init___2generator1); - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12655,7 +12735,7 @@ static int __pyx_pf_6hunter_11_predicates_4When___init__(struct __pyx_obj_6hunte * def __str__(self): # <<<<<<<<<<<<<< * return 'When(%s, %s)' % ( * self.condition, - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_3__str__(PyObject *__pyx_v_self); /*proto*/ @@ -12679,7 +12759,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< * ) * - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0) { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *__pyx_cur_scope; @@ -12689,11 +12769,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(CYTHON_UN const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("genexpr", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 328, __pyx_L1_error) + __PYX_ERR(0, 328, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -12701,7 +12781,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(CYTHON_UN __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_7__str___2generator2, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 328, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_4When_7__str___2generator2, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[48]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_genexpr, __pyx_mstate_global->__pyx_n_u_str___locals_genexpr, __pyx_mstate_global->__pyx_n_u_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -12721,7 +12801,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *__pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)__pyx_generator->closure); PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; PyObject *__pyx_t_3 = NULL; @@ -12730,82 +12810,76 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 328, 0, __PYX_ERR(1, 328, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; - case 1: goto __pyx_L6_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 328, 0, 0, 0, __PYX_ERR(0, 328, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 328, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 328, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 328, __pyx_L1_error) } + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 328, 0, 0, 0, __PYX_ERR(0, 328, __pyx_L1_error)); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_r); + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(0, 328, __pyx_L1_error) } if (unlikely(__pyx_cur_scope->__pyx_genexpr_arg_0 == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 328, __pyx_L1_error) + __PYX_ERR(0, 328, __pyx_L1_error) } __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 328, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 328, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 328, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 328, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_p); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_p, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Repr(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 328, __pyx_L1_error) + __Pyx_TraceLine(328,0,0,__PYX_ERR(0, 328, __pyx_L1_error)) + __pyx_t_3 = PyObject_Repr(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - __Pyx_XGIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, yielding value */ - __pyx_generator->resume_label = 1; - return __pyx_r; - __pyx_L6_resume_from_yield:; - __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_1); - __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 328, __pyx_L1_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_3))) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 328, __pyx_L1_error)); /* function exit code */ - PyErr_SetNone(PyExc_StopIteration); goto __pyx_L0; __pyx_L1_error:; - __Pyx_Generator_Replace_StopIteration(0); + __Pyx_XDECREF(__pyx_r); __pyx_r = 0; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_PyErr_Occurred()) { + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionUnwind(0, 0); + } __pyx_L0:; - __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); #if !CYTHON_USE_EXC_INFO_STACK __Pyx_Coroutine_ResetAndClearException(__pyx_generator); #endif __pyx_generator->resume_label = -1; __Pyx_Coroutine_clear((PyObject*)__pyx_generator); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12816,20 +12890,23 @@ static PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2(__pyx * def __str__(self): # <<<<<<<<<<<<<< * return 'When(%s, %s)' % ( * self.condition, - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self) { PyObject *__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2 = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4[5]; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 1); - __Pyx_TraceCall("__str__", __pyx_f[1], 325, 0, __PYX_ERR(1, 325, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[49])) + __Pyx_RefNannySetupContext("__str__", 0); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 325, 0, 0, 0, __PYX_ERR(0, 325, __pyx_L1_error)); /* "hunter/_predicates.pyx":326 * @@ -12837,40 +12914,42 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ * return 'When(%s, %s)' % ( # <<<<<<<<<<<<<< * self.condition, * ', '.join(repr(p) for p in self.actions) - */ - __Pyx_TraceLine(326,0,__PYX_ERR(1, 326, __pyx_L1_error)) +*/ + __Pyx_TraceLine(326,1,0,__PYX_ERR(0, 326, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_predicates.pyx":328 - * return 'When(%s, %s)' % ( - * self.condition, - * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< - * ) - * - */ - __Pyx_TraceLine(328,0,__PYX_ERR(1, 328, __pyx_L1_error)) - __pyx_t_1 = __pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(NULL, __pyx_v_self->actions); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 328, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 328, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_predicates.pyx":327 * def __str__(self): * return 'When(%s, %s)' % ( * self.condition, # <<<<<<<<<<<<<< * ', '.join(repr(p) for p in self.actions) * ) - */ - __Pyx_TraceLine(327,0,__PYX_ERR(1, 327, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 327, __pyx_L1_error) +*/ + __Pyx_TraceLine(327,4,0,__PYX_ERR(0, 327, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->condition), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->condition)) __PYX_ERR(1, 327, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2)) __PYX_ERR(1, 327, __pyx_L1_error); - __pyx_t_2 = 0; + + /* "hunter/_predicates.pyx":328 + * return 'When(%s, %s)' % ( + * self.condition, + * ', '.join(repr(p) for p in self.actions) # <<<<<<<<<<<<<< + * ) + * +*/ + __Pyx_TraceLine(328,8,0,__PYX_ERR(0, 328, __pyx_L1_error)) + __pyx_t_2 = __pyx_pf_6hunter_11_predicates_4When_7__str___genexpr(NULL, __pyx_v_self->actions); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_3 = __Pyx_Generator_GetInlinedResult(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__4, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_4[0] = __pyx_mstate_global->__pyx_kp_u_When; + __pyx_t_4[1] = __pyx_t_1; + __pyx_t_4[2] = __pyx_mstate_global->__pyx_kp_u__4; + __pyx_t_4[3] = __pyx_t_2; + __pyx_t_4[4] = __pyx_mstate_global->__pyx_kp_u__7; /* "hunter/_predicates.pyx":326 * @@ -12878,13 +12957,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ * return 'When(%s, %s)' % ( # <<<<<<<<<<<<<< * self.condition, * ', '.join(repr(p) for p in self.actions) - */ - __Pyx_TraceLine(326,0,__PYX_ERR(1, 326, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_When_s_s, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 326, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); +*/ + __Pyx_TraceLine(326,2,0,__PYX_ERR(0, 326, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_4, 5, 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2)); + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_r = __pyx_t_3; + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 326, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":325 @@ -12893,18 +12975,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ * def __str__(self): # <<<<<<<<<<<<<< * return 'When(%s, %s)' % ( * self.condition, - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 325, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_gb_6hunter_11_predicates_4When_7__str___2generator2); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12915,7 +13004,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_2__str__(struct __pyx_obj_ * def __repr__(self): # <<<<<<<<<<<<<< * return '' % (self.condition, self.actions) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -12934,15 +13023,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3[5]; + PyObject *__pyx_t_4 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 331, 0, __PYX_ERR(1, 331, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[50])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 331, 0, 0, 0, __PYX_ERR(0, 331, __pyx_L1_error)); /* "hunter/_predicates.pyx":332 * @@ -12950,22 +13042,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj * return '' % (self.condition, self.actions) # <<<<<<<<<<<<<< * * def __eq__(self, other): - */ - __Pyx_TraceLine(332,0,__PYX_ERR(1, 332, __pyx_L1_error)) +*/ + __Pyx_TraceLine(332,1,0,__PYX_ERR(0, 332, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 332, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->condition), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 332, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->condition)) __PYX_ERR(1, 332, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->actions); - __Pyx_GIVEREF(__pyx_v_self->actions); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->actions)) __PYX_ERR(1, 332, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_When_conditi, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 332, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->actions), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 332, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); + __pyx_t_3[0] = __pyx_mstate_global->__pyx_kp_u_hunter__predicates_When_conditi; + __pyx_t_3[1] = __pyx_t_1; + __pyx_t_3[2] = __pyx_mstate_global->__pyx_kp_u_actions; + __pyx_t_3[3] = __pyx_t_2; + __pyx_t_3[4] = __pyx_mstate_global->__pyx_kp_u__8; + __pyx_t_4 = __Pyx_PyUnicode_Join(__pyx_t_3, 5, 36 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 10 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2)); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 332, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 332, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":331 @@ -12974,17 +13070,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj * def __repr__(self): # <<<<<<<<<<<<<< * return '' % (self.condition, self.actions) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 331, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -12995,7 +13098,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_4__repr__(struct __pyx_obj * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, When) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -13014,7 +13117,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7__eq__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -13022,8 +13125,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 334, 0, __PYX_ERR(1, 334, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[51])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 334, 0, 0, 0, __PYX_ERR(0, 334, __pyx_L1_error)); /* "hunter/_predicates.pyx":335 * @@ -13031,8 +13135,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 * return ( # <<<<<<<<<<<<<< * isinstance(other, When) * and self.condition == ( other).condition - */ - __Pyx_TraceLine(335,0,__PYX_ERR(1, 335, __pyx_L1_error)) +*/ + __Pyx_TraceLine(335,1,0,__PYX_ERR(0, 335, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":336 @@ -13041,12 +13145,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 * isinstance(other, When) # <<<<<<<<<<<<<< * and self.condition == ( other).condition * and self.actions == ( other).actions - */ - __Pyx_TraceLine(336,0,__PYX_ERR(1, 336, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_When); +*/ + __Pyx_TraceLine(336,5,0,__PYX_ERR(0, 336, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 336, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 336, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -13059,10 +13163,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 * and self.condition == ( other).condition # <<<<<<<<<<<<<< * and self.actions == ( other).actions * ) - */ - __Pyx_TraceLine(337,0,__PYX_ERR(1, 337, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 337, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 337, __pyx_L1_error) +*/ + __Pyx_TraceLine(337,12,0,__PYX_ERR(0, 337, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 337, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 337, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -13078,15 +13182,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 * and self.actions == ( other).actions # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(338,0,__PYX_ERR(1, 338, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->actions, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->actions, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 338, __pyx_L1_error) +*/ + __Pyx_TraceLine(338,19,0,__PYX_ERR(0, 338, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->actions, ((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_other)->actions, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 338, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 335, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":334 @@ -13095,17 +13200,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, When) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 334, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13116,7 +13227,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_6__eq__(struct __pyx_obj_6 * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_When_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -13131,87 +13242,82 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9__call__(PyObject *__pyx_ PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 341, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 341, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 341, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 341, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 341, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 341, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 341, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 341, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 341, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.When.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 341, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 341, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_4When_8__call__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self), __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 341, 0, __PYX_ERR(1, 341, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[52])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 341, 0, 0, 0, __PYX_ERR(0, 341, __pyx_L1_error)); /* "hunter/_predicates.pyx":342 * @@ -13219,13 +13325,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj * return fast_When_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): - */ - __Pyx_TraceLine(342,0,__PYX_ERR(1, 342, __pyx_L1_error)) +*/ + __Pyx_TraceLine(342,1,0,__PYX_ERR(0, 342, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_When_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 342, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_When_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 342, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":341 @@ -13234,16 +13341,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_When_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 341, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13254,7 +13367,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_8__call__(struct __pyx_obj * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -13273,15 +13386,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_11__or__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 344, 0, __PYX_ERR(1, 344, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[53])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 344, 0, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); /* "hunter/_predicates.pyx":345 * @@ -13289,22 +13405,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(345,0,__PYX_ERR(1, 345, __pyx_L1_error)) +*/ + __Pyx_TraceLine(345,1,0,__PYX_ERR(0, 345, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 345, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 345, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 345, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 345, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 345, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":344 @@ -13313,17 +13431,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13334,7 +13459,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_10__or__(PyObject *__pyx_v * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -13353,15 +13478,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_13__and__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 347, 0, __PYX_ERR(1, 347, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[54])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 347, 0, 0, 0, __PYX_ERR(0, 347, __pyx_L1_error)); /* "hunter/_predicates.pyx":348 * @@ -13369,22 +13497,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_ * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(348,0,__PYX_ERR(1, 348, __pyx_L1_error)) +*/ + __Pyx_TraceLine(348,1,0,__PYX_ERR(0, 348, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 348, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 348, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 348, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 348, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 348, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 348, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":347 @@ -13393,17 +13523,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_ * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 347, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13414,7 +13551,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_12__and__(PyObject *__pyx_ * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -13433,14 +13570,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_15__invert__(PyObject *__p static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 350, 0, __PYX_ERR(1, 350, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[55])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 350, 0, 0, 0, __PYX_ERR(0, 350, __pyx_L1_error)); /* "hunter/_predicates.pyx":351 * @@ -13448,13 +13589,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_ * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_When_call(When self, Event event): - */ - __Pyx_TraceLine(351,0,__PYX_ERR(1, 351, __pyx_L1_error)) +*/ + __Pyx_TraceLine(351,1,0,__PYX_ERR(0, 351, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 351, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, ((PyObject *)__pyx_v_self)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 351, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":350 @@ -13463,16 +13615,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_ * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 350, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13483,7 +13643,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_14__invert__(struct __pyx_ * readonly object condition # <<<<<<<<<<<<<< * readonly tuple actions * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9condition_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -13502,25 +13662,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_9condition_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_4When_9condition___get__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 43, 0, __PYX_ERR(2, 43, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[56])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 43, 0, 0, 0, __PYX_ERR(2, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->condition); __pyx_r = __pyx_v_self->condition; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 43, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 43, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.condition.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13531,7 +13699,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_9condition___get__(struct * readonly tuple actions # <<<<<<<<<<<<<< * * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -13550,25 +13718,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(PyObject static PyObject *__pyx_pf_6hunter_11_predicates_4When_7actions___get__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 44, 0, __PYX_ERR(2, 44, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[57])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 44, 0, 0, 0, __PYX_ERR(2, 44, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->actions); __pyx_r = __pyx_v_self->actions; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 44, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 44, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.actions.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13577,7 +13753,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_7actions___get__(struct __ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__(PyObject *__pyx_v_self, @@ -13587,7 +13763,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -13603,16 +13779,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self)); /* function exit code */ @@ -13625,7 +13802,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -13635,9 +13812,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__14) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -13645,16 +13822,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * state = (self.actions, self.condition) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,2,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->actions); __Pyx_GIVEREF(__pyx_v_self->actions); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->actions)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->actions) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->condition)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->condition) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -13664,9 +13841,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,8,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v__dict = __pyx_t_1; __pyx_t_1 = 0; @@ -13677,8 +13854,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,15,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_2 = (__pyx_v__dict != Py_None); if (__pyx_t_2) { @@ -13688,14 +13865,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,17,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3)); @@ -13707,8 +13884,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self.actions is not None or self.condition is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,19,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -13717,7 +13894,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -13727,8 +13904,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * use_setstate = self.actions is not None or self.condition is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_When, (type(self), 0xe710366, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,25,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_4 = (__pyx_v_self->actions != ((PyObject*)Py_None)); if (!__pyx_t_4) { @@ -13749,8 +13926,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_When, (type(self), 0xe710366, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,31,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -13759,35 +13936,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * return __pyx_unpickle_When, (type(self), 0xe710366, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_When, (type(self), 0xe710366, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,32,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_When); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_242287462); - __Pyx_GIVEREF(__pyx_int_242287462); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_242287462)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_242287462); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_242287462); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_242287462) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_5; __pyx_t_5 = 0; + __Pyx_TraceReturnValue(__pyx_r, 32, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -13796,7 +13974,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_When, (type(self), 0xe710366, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -13805,33 +13983,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * return __pyx_unpickle_When, (type(self), 0xe710366, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_When__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,40,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pyx_unpickle_When); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_242287462); - __Pyx_GIVEREF(__pyx_int_242287462); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_242287462)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_242287462); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_242287462); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_242287462) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 40, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -13839,20 +14018,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -13862,7 +14047,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_16__reduce_cython__(struct * return __pyx_unpickle_When, (type(self), 0xe710366, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__(PyObject *__pyx_v_self, @@ -13872,7 +14057,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -13893,7 +14078,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -13901,47 +14086,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.When.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -13950,11 +14127,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -13962,24 +14136,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__15) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_When, (type(self), 0xe710366, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_When__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -13988,18 +14162,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(stru * return __pyx_unpickle_When, (type(self), 0xe710366, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.When.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14010,13 +14191,13 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4When_18__setstate_cython__(stru * cdef inline fast_When_call(When self, Event event): # <<<<<<<<<<<<<< * cdef object result * - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_v_result = 0; PyObject *__pyx_v_action = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -14024,12 +14205,13 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru Py_ssize_t __pyx_t_4; PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; + size_t __pyx_t_7; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_When_call", 1); - __Pyx_TraceCall("fast_When_call", __pyx_f[1], 353, 0, __PYX_ERR(1, 353, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[60])) + __Pyx_RefNannySetupContext("fast_When_call", 0); + __Pyx_TraceStartFunc("fast_When_call", __pyx_f[0], 353, 0, 0, 0, __PYX_ERR(0, 353, __pyx_L1_error)); /* "hunter/_predicates.pyx":356 * cdef object result @@ -14037,11 +14219,11 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * result = fast_call(self.condition, event) # <<<<<<<<<<<<<< * * if result: - */ - __Pyx_TraceLine(356,0,__PYX_ERR(1, 356, __pyx_L1_error)) +*/ + __Pyx_TraceLine(356,5,0,__PYX_ERR(0, 356, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->condition; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 356, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_result = __pyx_t_2; @@ -14053,9 +14235,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * if result: # <<<<<<<<<<<<<< * for action in self.actions: * action(event) - */ - __Pyx_TraceLine(358,0,__PYX_ERR(1, 358, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 358, __pyx_L1_error) +*/ + __Pyx_TraceLine(358,8,0,__PYX_ERR(0, 358, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 358, __pyx_L1_error) if (__pyx_t_3) { /* "hunter/_predicates.pyx":359 @@ -14064,30 +14246,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * for action in self.actions: # <<<<<<<<<<<<<< * action(event) * - */ - __Pyx_TraceLine(359,0,__PYX_ERR(1, 359, __pyx_L1_error)) +*/ + __Pyx_TraceLine(359,12,0,__PYX_ERR(0, 359, __pyx_L1_error)) if (unlikely(__pyx_v_self->actions == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 359, __pyx_L1_error) + __PYX_ERR(0, 359, __pyx_L1_error) } __pyx_t_2 = __pyx_v_self->actions; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 359, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 359, __pyx_L1_error) #endif if (__pyx_t_4 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely((0 < 0))) __PYX_ERR(1, 359, __pyx_L1_error) + __pyx_t_1 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4)); #else - __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 359, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_4); #endif + ++__pyx_t_4; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 359, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_XDECREF_SET(__pyx_v_action, __pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceLine(359,9,0,__PYX_ERR(0, 359, __pyx_L1_error)) /* "hunter/_predicates.pyx":360 * if result: @@ -14095,30 +14280,30 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * action(event) # <<<<<<<<<<<<<< * * return result - */ - __Pyx_TraceLine(360,0,__PYX_ERR(1, 360, __pyx_L1_error)) +*/ + __Pyx_TraceLine(360,14,0,__PYX_ERR(0, 360, __pyx_L1_error)) + __pyx_t_5 = NULL; __Pyx_INCREF(__pyx_v_action); - __pyx_t_5 = __pyx_v_action; __pyx_t_6 = NULL; - __pyx_t_7 = 0; + __pyx_t_6 = __pyx_v_action; + __pyx_t_7 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_6)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_7 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); + assert(__pyx_t_5); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6); + __Pyx_INCREF(__pyx_t_5); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_6, __pyx__function); + __pyx_t_7 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_6, ((PyObject *)__pyx_v_event)}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 360, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_5, ((PyObject *)__pyx_v_event)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 360, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -14128,8 +14313,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * for action in self.actions: # <<<<<<<<<<<<<< * action(event) * - */ - __Pyx_TraceLine(359,0,__PYX_ERR(1, 359, __pyx_L1_error)) +*/ + __Pyx_TraceLine(359,9,0,__PYX_ERR(0, 359, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -14139,7 +14324,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * if result: # <<<<<<<<<<<<<< * for action in self.actions: * action(event) - */ +*/ } /* "hunter/_predicates.pyx":362 @@ -14148,11 +14333,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * return result # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(362,0,__PYX_ERR(1, 362, __pyx_L1_error)) +*/ + __Pyx_TraceLine(362,16,0,__PYX_ERR(0, 362, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_result); __pyx_r = __pyx_v_result; + __Pyx_TraceReturnValue(__pyx_r, 16, 0, __PYX_ERR(0, 362, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":353 @@ -14161,7 +14347,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * cdef inline fast_When_call(When self, Event event): # <<<<<<<<<<<<<< * cdef object result * - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -14169,13 +14355,19 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 353, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_When_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_result); __Pyx_XDECREF(__pyx_v_action); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14186,7 +14378,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_When_call(stru * def __init__(self, condition, predicate=None, watermark=0): # <<<<<<<<<<<<<< * self.condition = condition * self.predicate = predicate - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -14203,66 +14395,58 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_condition,&__pyx_n_s_predicate,&__pyx_n_s_watermark,0}; - values[1] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); - values[2] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)__pyx_int_0)); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_condition,&__pyx_mstate_global->__pyx_n_u_predicate,&__pyx_mstate_global->__pyx_n_u_watermark,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 371, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 371, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 371, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 371, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate); - if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_watermark); - if (value) { values[2] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 371, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 371, __pyx_L3_error) + if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_int_0)); + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 3, i); __PYX_ERR(0, 371, __pyx_L3_error) } } } else { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 371, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 371, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 371, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } + if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_int_0)); } __pyx_v_condition = values[0]; __pyx_v_predicate = values[1]; @@ -14270,15 +14454,12 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 3, __pyx_nargs); __PYX_ERR(1, 371, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 371, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.From.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -14287,11 +14468,8 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self __pyx_r = __pyx_pf_6hunter_11_predicates_4From___init__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), __pyx_v_condition, __pyx_v_predicate, __pyx_v_watermark); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -14299,14 +14477,15 @@ static int __pyx_pw_6hunter_11_predicates_4From_1__init__(PyObject *__pyx_v_self static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self, PyObject *__pyx_v_condition, PyObject *__pyx_v_predicate, PyObject *__pyx_v_watermark) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 371, 0, __PYX_ERR(1, 371, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[61])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 371, 0, 0, 0, __PYX_ERR(0, 371, __pyx_L1_error)); /* "hunter/_predicates.pyx":372 * @@ -14314,8 +14493,8 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * self.condition = condition # <<<<<<<<<<<<<< * self.predicate = predicate * self.watermark = watermark - */ - __Pyx_TraceLine(372,0,__PYX_ERR(1, 372, __pyx_L1_error)) +*/ + __Pyx_TraceLine(372,3,0,__PYX_ERR(0, 372, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_condition); __Pyx_GIVEREF(__pyx_v_condition); __Pyx_GOTREF(__pyx_v_self->condition); @@ -14328,8 +14507,8 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * self.predicate = predicate # <<<<<<<<<<<<<< * self.watermark = watermark * self.origin_depth = -1 - */ - __Pyx_TraceLine(373,0,__PYX_ERR(1, 373, __pyx_L1_error)) +*/ + __Pyx_TraceLine(373,6,0,__PYX_ERR(0, 373, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->predicate); @@ -14342,9 +14521,9 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * self.watermark = watermark # <<<<<<<<<<<<<< * self.origin_depth = -1 * self.origin_calls = -1 - */ - __Pyx_TraceLine(374,0,__PYX_ERR(1, 374, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_watermark); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 374, __pyx_L1_error) +*/ + __Pyx_TraceLine(374,11,0,__PYX_ERR(0, 374, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_As_int(__pyx_v_watermark); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 374, __pyx_L1_error) __pyx_v_self->watermark = __pyx_t_1; /* "hunter/_predicates.pyx":375 @@ -14353,8 +14532,8 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * self.origin_depth = -1 # <<<<<<<<<<<<<< * self.origin_calls = -1 * - */ - __Pyx_TraceLine(375,0,__PYX_ERR(1, 375, __pyx_L1_error)) +*/ + __Pyx_TraceLine(375,12,0,__PYX_ERR(0, 375, __pyx_L1_error)) __pyx_v_self->origin_depth = -1; /* "hunter/_predicates.pyx":376 @@ -14363,8 +14542,8 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * self.origin_calls = -1 # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(376,0,__PYX_ERR(1, 376, __pyx_L1_error)) +*/ + __Pyx_TraceLine(376,15,0,__PYX_ERR(0, 376, __pyx_L1_error)) __pyx_v_self->origin_calls = -1; /* "hunter/_predicates.pyx":371 @@ -14373,16 +14552,23 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * def __init__(self, condition, predicate=None, watermark=0): # <<<<<<<<<<<<<< * self.condition = condition * self.predicate = predicate - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 371, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 371, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14393,7 +14579,7 @@ static int __pyx_pf_6hunter_11_predicates_4From___init__(struct __pyx_obj_6hunte * def __str__(self): # <<<<<<<<<<<<<< * return 'From(%s, %s, watermark=%s)' % ( * self.condition, self.predicate, self.watermark - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_3__str__(PyObject *__pyx_v_self); /*proto*/ @@ -14412,15 +14598,19 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_3__str__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4[7]; + PyObject *__pyx_t_5 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 1); - __Pyx_TraceCall("__str__", __pyx_f[1], 378, 0, __PYX_ERR(1, 378, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[62])) + __Pyx_RefNannySetupContext("__str__", 0); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 378, 0, 0, 0, __PYX_ERR(0, 378, __pyx_L1_error)); /* "hunter/_predicates.pyx":379 * @@ -14428,8 +14618,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ * return 'From(%s, %s, watermark=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) - */ - __Pyx_TraceLine(379,0,__PYX_ERR(1, 379, __pyx_L1_error)) +*/ + __Pyx_TraceLine(379,1,0,__PYX_ERR(0, 379, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":380 @@ -14438,21 +14628,21 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ * self.condition, self.predicate, self.watermark # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(380,0,__PYX_ERR(1, 380, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 380, __pyx_L1_error) +*/ + __Pyx_TraceLine(380,4,0,__PYX_ERR(0, 380, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->condition), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 380, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->predicate), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition)) __PYX_ERR(1, 380, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->predicate); - __Pyx_GIVEREF(__pyx_v_self->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->predicate)) __PYX_ERR(1, 380, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1)) __PYX_ERR(1, 380, __pyx_L1_error); - __pyx_t_1 = 0; + __pyx_t_3 = __Pyx_PyUnicode_From_int(__pyx_v_self->watermark, 0, ' ', 'd'); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 380, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4[0] = __pyx_mstate_global->__pyx_kp_u_From; + __pyx_t_4[1] = __pyx_t_1; + __pyx_t_4[2] = __pyx_mstate_global->__pyx_kp_u__4; + __pyx_t_4[3] = __pyx_t_2; + __pyx_t_4[4] = __pyx_mstate_global->__pyx_kp_u_watermark_2; + __pyx_t_4[5] = __pyx_t_3; + __pyx_t_4[6] = __pyx_mstate_global->__pyx_kp_u__7; /* "hunter/_predicates.pyx":379 * @@ -14460,13 +14650,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ * return 'From(%s, %s, watermark=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) - */ - __Pyx_TraceLine(379,0,__PYX_ERR(1, 379, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_From_s_s_watermark_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 379, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); +*/ + __Pyx_TraceLine(379,2,0,__PYX_ERR(0, 379, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyUnicode_Join(__pyx_t_4, 7, 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 12 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2)); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 379, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_r = __pyx_t_5; + __pyx_t_5 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 379, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":378 @@ -14475,17 +14669,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ * def __str__(self): # <<<<<<<<<<<<<< * return 'From(%s, %s, watermark=%s)' % ( * self.condition, self.predicate, self.watermark - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 378, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14496,7 +14698,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_2__str__(struct __pyx_obj_ * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * self.condition, self.predicate, self.watermark - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -14515,15 +14717,19 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4[7]; + PyObject *__pyx_t_5 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 383, 0, __PYX_ERR(1, 383, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[63])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 383, 0, 0, 0, __PYX_ERR(0, 383, __pyx_L1_error)); /* "hunter/_predicates.pyx":384 * @@ -14531,8 +14737,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) - */ - __Pyx_TraceLine(384,0,__PYX_ERR(1, 384, __pyx_L1_error)) +*/ + __Pyx_TraceLine(384,1,0,__PYX_ERR(0, 384, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":385 @@ -14541,21 +14747,21 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj * self.condition, self.predicate, self.watermark # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(385,0,__PYX_ERR(1, 385, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 385, __pyx_L1_error) +*/ + __Pyx_TraceLine(385,4,0,__PYX_ERR(0, 385, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->condition), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 385, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->predicate), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition)) __PYX_ERR(1, 385, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->predicate); - __Pyx_GIVEREF(__pyx_v_self->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self->predicate)) __PYX_ERR(1, 385, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1)) __PYX_ERR(1, 385, __pyx_L1_error); - __pyx_t_1 = 0; + __pyx_t_3 = __Pyx_PyUnicode_From_int(__pyx_v_self->watermark, 0, ' ', 'd'); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 385, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4[0] = __pyx_mstate_global->__pyx_kp_u_hunter__predicates_From_conditi; + __pyx_t_4[1] = __pyx_t_1; + __pyx_t_4[2] = __pyx_mstate_global->__pyx_kp_u_predicate_2; + __pyx_t_4[3] = __pyx_t_2; + __pyx_t_4[4] = __pyx_mstate_global->__pyx_kp_u_watermark_2; + __pyx_t_4[5] = __pyx_t_3; + __pyx_t_4[6] = __pyx_mstate_global->__pyx_kp_u__8; /* "hunter/_predicates.pyx":384 * @@ -14563,13 +14769,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.predicate, self.watermark * ) - */ - __Pyx_TraceLine(384,0,__PYX_ERR(1, 384, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_From_conditi, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 384, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); +*/ + __Pyx_TraceLine(384,2,0,__PYX_ERR(0, 384, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyUnicode_Join(__pyx_t_4, 7, 36 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 12 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2)); + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 384, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_r = __pyx_t_5; + __pyx_t_5 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 384, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":383 @@ -14578,17 +14788,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * self.condition, self.predicate, self.watermark - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 383, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14599,7 +14817,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_4__repr__(struct __pyx_obj * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, From) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -14618,7 +14836,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_7__eq__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -14626,8 +14844,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 388, 0, __PYX_ERR(1, 388, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[64])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 388, 0, 0, 0, __PYX_ERR(0, 388, __pyx_L1_error)); /* "hunter/_predicates.pyx":389 * @@ -14635,8 +14854,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 * return ( # <<<<<<<<<<<<<< * isinstance(other, From) * and self.condition == ( other).condition - */ - __Pyx_TraceLine(389,0,__PYX_ERR(1, 389, __pyx_L1_error)) +*/ + __Pyx_TraceLine(389,1,0,__PYX_ERR(0, 389, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":390 @@ -14645,12 +14864,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 * isinstance(other, From) # <<<<<<<<<<<<<< * and self.condition == ( other).condition * and self.predicate == ( other).predicate - */ - __Pyx_TraceLine(390,0,__PYX_ERR(1, 390, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_From); +*/ + __Pyx_TraceLine(390,5,0,__PYX_ERR(0, 390, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 390, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 390, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -14663,10 +14882,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 * and self.condition == ( other).condition # <<<<<<<<<<<<<< * and self.predicate == ( other).predicate * ) - */ - __Pyx_TraceLine(391,0,__PYX_ERR(1, 391, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 391, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 391, __pyx_L1_error) +*/ + __Pyx_TraceLine(391,12,0,__PYX_ERR(0, 391, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 391, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 391, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -14682,15 +14901,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 * and self.predicate == ( other).predicate # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(392,0,__PYX_ERR(1, 392, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 392, __pyx_L1_error) +*/ + __Pyx_TraceLine(392,19,0,__PYX_ERR(0, 392, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 392, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 389, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":388 @@ -14699,17 +14919,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, From) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 388, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14720,7 +14946,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_6__eq__(struct __pyx_obj_6 * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_From_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -14735,87 +14961,82 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9__call__(PyObject *__pyx_ PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 395, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 395, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 395, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 395, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 395, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 395, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 395, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 395, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 395, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.From.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 395, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 395, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_4From_8__call__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 395, 0, __PYX_ERR(1, 395, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[65])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 395, 0, 0, 0, __PYX_ERR(0, 395, __pyx_L1_error)); /* "hunter/_predicates.pyx":396 * @@ -14823,13 +15044,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj * return fast_From_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): - */ - __Pyx_TraceLine(396,0,__PYX_ERR(1, 396, __pyx_L1_error)) +*/ + __Pyx_TraceLine(396,1,0,__PYX_ERR(0, 396, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_From_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 396, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_From_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 396, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 396, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":395 @@ -14838,16 +15060,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_From_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 395, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14858,7 +15086,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_8__call__(struct __pyx_obj * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -14877,15 +15105,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_11__or__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 398, 0, __PYX_ERR(1, 398, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[66])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 398, 0, 0, 0, __PYX_ERR(0, 398, __pyx_L1_error)); /* "hunter/_predicates.pyx":399 * @@ -14893,22 +15124,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(399,0,__PYX_ERR(1, 399, __pyx_L1_error)) +*/ + __Pyx_TraceLine(399,1,0,__PYX_ERR(0, 399, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 399, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 399, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 399, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 399, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 399, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 399, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":398 @@ -14917,17 +15150,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 398, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -14938,7 +15178,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_10__or__(PyObject *__pyx_v * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -14957,15 +15197,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_13__and__(PyObject *__pyx_ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 401, 0, __PYX_ERR(1, 401, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[67])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 401, 0, 0, 0, __PYX_ERR(0, 401, __pyx_L1_error)); /* "hunter/_predicates.pyx":402 * @@ -14973,22 +15216,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_ * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(402,0,__PYX_ERR(1, 402, __pyx_L1_error)) +*/ + __Pyx_TraceLine(402,1,0,__PYX_ERR(0, 402, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 402, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 402, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 402, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 402, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 402, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 402, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":401 @@ -14997,17 +15242,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_ * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 401, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15018,7 +15270,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12__and__(PyObject *__pyx_ * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -15037,14 +15289,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_15__invert__(PyObject *__p static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 404, 0, __PYX_ERR(1, 404, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[68])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 404, 0, 0, 0, __PYX_ERR(0, 404, __pyx_L1_error)); /* "hunter/_predicates.pyx":405 * @@ -15052,13 +15308,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_ * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_From_call(From self, Event event): - */ - __Pyx_TraceLine(405,0,__PYX_ERR(1, 405, __pyx_L1_error)) +*/ + __Pyx_TraceLine(405,1,0,__PYX_ERR(0, 405, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 405, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, ((PyObject *)__pyx_v_self)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 405, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 405, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":404 @@ -15067,16 +15334,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_ * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 404, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15087,7 +15362,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_14__invert__(struct __pyx_ * readonly object condition # <<<<<<<<<<<<<< * readonly object predicate * readonly int watermark - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9condition_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -15106,25 +15381,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9condition_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_4From_9condition___get__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 50, 0, __PYX_ERR(2, 50, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[69])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 50, 0, 0, 0, __PYX_ERR(2, 50, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->condition); __pyx_r = __pyx_v_self->condition; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 50, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 50, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.condition.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15135,7 +15418,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9condition___get__(struct * readonly object predicate # <<<<<<<<<<<<<< * readonly int watermark * readonly int origin_depth - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9predicate_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -15154,25 +15437,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9predicate_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_4From_9predicate___get__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 51, 0, __PYX_ERR(2, 51, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[70])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 51, 0, 0, 0, __PYX_ERR(2, 51, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicate); __pyx_r = __pyx_v_self->predicate; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 51, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 51, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.predicate.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15183,7 +15474,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9predicate___get__(struct * readonly int watermark # <<<<<<<<<<<<<< * readonly int origin_depth * readonly int origin_calls - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9watermark_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -15202,29 +15493,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_9watermark_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_4From_9watermark___get__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 52, 0, __PYX_ERR(2, 52, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[71])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 52, 0, 0, 0, __PYX_ERR(2, 52, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 52, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 52, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 52, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.watermark.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15235,7 +15534,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_9watermark___get__(struct * readonly int origin_depth # <<<<<<<<<<<<<< * readonly int origin_calls * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_depth_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -15254,29 +15553,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_depth_1__get__(Py static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_depth___get__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 53, 0, __PYX_ERR(2, 53, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[72])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 53, 0, 0, 0, __PYX_ERR(2, 53, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 53, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->origin_depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 53, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 53, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.origin_depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15287,7 +15594,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_depth___get__(str * readonly int origin_calls # <<<<<<<<<<<<<< * * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -15306,29 +15613,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(Py static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_calls___get__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 54, 0, __PYX_ERR(2, 54, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[73])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 54, 0, 0, 0, __PYX_ERR(2, 54, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 54, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->origin_calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 54, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 54, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 54, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.origin_calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15337,7 +15652,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_12origin_calls___get__(str * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__(PyObject *__pyx_v_self, @@ -15347,7 +15662,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -15363,16 +15678,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self)); /* function exit code */ @@ -15385,7 +15701,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -15396,9 +15712,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__16) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -15406,28 +15722,28 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * state = (self.condition, self.origin_calls, self.origin_depth, self.predicate, self.watermark) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->origin_calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,5,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->origin_calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->origin_depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_self->origin_depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_v_self->watermark); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(5); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->predicate); __Pyx_GIVEREF(__pyx_v_self->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_v_self->predicate)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_v_self->predicate) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_t_3) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; @@ -15440,9 +15756,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_4 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_4 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_v__dict = __pyx_t_4; __pyx_t_4 = 0; @@ -15453,8 +15769,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,21,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_5 = (__pyx_v__dict != Py_None); if (__pyx_t_5) { @@ -15464,14 +15780,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3)); @@ -15483,8 +15799,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self.condition is not None or self.predicate is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,25,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -15493,7 +15809,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -15503,8 +15819,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * use_setstate = self.condition is not None or self.predicate is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_From, (type(self), 0xcfd05cc, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_6 = (__pyx_v_self->condition != Py_None); if (!__pyx_t_6) { @@ -15525,8 +15841,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_From, (type(self), 0xcfd05cc, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,37,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -15535,35 +15851,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * return __pyx_unpickle_From, (type(self), 0xcfd05cc, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,38,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_From); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_217908684); - __Pyx_GIVEREF(__pyx_int_217908684); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_217908684)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_217908684); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_217908684); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_mstate_global->__pyx_int_217908684) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_4 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 38, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -15572,7 +15889,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_From, (type(self), 0xcfd05cc, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -15581,33 +15898,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_From__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,46,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_pyx_unpickle_From); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_217908684); - __Pyx_GIVEREF(__pyx_int_217908684); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_217908684)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_217908684); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_217908684); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_mstate_global->__pyx_int_217908684) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 46, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -15615,7 +15933,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -15623,13 +15941,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15639,7 +15963,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_16__reduce_cython__(struct * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__(PyObject *__pyx_v_self, @@ -15649,7 +15973,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -15670,7 +15994,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -15678,47 +16002,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.From.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -15727,11 +16043,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -15739,24 +16052,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__17) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_From__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -15765,18 +16078,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(stru * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.From.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -15787,7 +16107,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4From_18__setstate_cython__(stru * cdef inline fast_From_call(From self, Event event): # <<<<<<<<<<<<<< * cdef object result * cdef int delta_depth - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_v_result = 0; @@ -15795,7 +16115,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru int __pyx_v_delta_calls; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_relative_event = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -15804,8 +16124,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_From_call", 1); - __Pyx_TraceCall("fast_From_call", __pyx_f[1], 407, 0, __PYX_ERR(1, 407, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[76])) + __Pyx_RefNannySetupContext("fast_From_call", 0); + __Pyx_TraceStartFunc("fast_From_call", __pyx_f[0], 407, 0, 0, 0, __PYX_ERR(0, 407, __pyx_L1_error)); /* "hunter/_predicates.pyx":412 * cdef int delta_calls @@ -15813,8 +16134,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if self.origin_depth == -1: # <<<<<<<<<<<<<< * result = fast_call(self.condition, event) * - */ - __Pyx_TraceLine(412,0,__PYX_ERR(1, 412, __pyx_L1_error)) +*/ + __Pyx_TraceLine(412,4,0,__PYX_ERR(0, 412, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->origin_depth == -1L); if (__pyx_t_1) { @@ -15824,11 +16145,11 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * result = fast_call(self.condition, event) # <<<<<<<<<<<<<< * * if result: - */ - __Pyx_TraceLine(413,0,__PYX_ERR(1, 413, __pyx_L1_error)) +*/ + __Pyx_TraceLine(413,10,0,__PYX_ERR(0, 413, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->condition; __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_2, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 413, __pyx_L1_error) + __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_2, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 413, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_result = __pyx_t_3; @@ -15840,9 +16161,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if result: # <<<<<<<<<<<<<< * self.origin_depth = event.depth * self.origin_calls = event.calls - */ - __Pyx_TraceLine(415,0,__PYX_ERR(1, 415, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(1, 415, __pyx_L1_error) +*/ + __Pyx_TraceLine(415,13,0,__PYX_ERR(0, 415, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 415, __pyx_L1_error) if (__pyx_t_1) { /* "hunter/_predicates.pyx":416 @@ -15851,8 +16172,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * self.origin_depth = event.depth # <<<<<<<<<<<<<< * self.origin_calls = event.calls * delta_depth = delta_calls = 0 - */ - __Pyx_TraceLine(416,0,__PYX_ERR(1, 416, __pyx_L1_error)) +*/ + __Pyx_TraceLine(416,17,0,__PYX_ERR(0, 416, __pyx_L1_error)) __pyx_t_4 = __pyx_v_event->depth; __pyx_v_self->origin_depth = __pyx_t_4; @@ -15862,8 +16183,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * self.origin_calls = event.calls # <<<<<<<<<<<<<< * delta_depth = delta_calls = 0 * else: - */ - __Pyx_TraceLine(417,0,__PYX_ERR(1, 417, __pyx_L1_error)) +*/ + __Pyx_TraceLine(417,21,0,__PYX_ERR(0, 417, __pyx_L1_error)) __pyx_t_4 = __pyx_v_event->calls; __pyx_v_self->origin_calls = __pyx_t_4; @@ -15873,8 +16194,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * delta_depth = delta_calls = 0 # <<<<<<<<<<<<<< * else: * return False - */ - __Pyx_TraceLine(418,0,__PYX_ERR(1, 418, __pyx_L1_error)) +*/ + __Pyx_TraceLine(418,24,0,__PYX_ERR(0, 418, __pyx_L1_error)) __pyx_v_delta_depth = 0; __pyx_v_delta_calls = 0; @@ -15884,7 +16205,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if result: # <<<<<<<<<<<<<< * self.origin_depth = event.depth * self.origin_calls = event.calls - */ +*/ goto __pyx_L4; } @@ -15894,12 +16215,13 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * return False # <<<<<<<<<<<<<< * else: * delta_depth = event.depth - self.origin_depth - */ - __Pyx_TraceLine(420,0,__PYX_ERR(1, 420, __pyx_L1_error)) +*/ + __Pyx_TraceLine(420,25,0,__PYX_ERR(0, 420, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 25, 0, __PYX_ERR(0, 420, __pyx_L1_error)); goto __pyx_L0; } __pyx_L4:; @@ -15910,7 +16232,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if self.origin_depth == -1: # <<<<<<<<<<<<<< * result = fast_call(self.condition, event) * - */ +*/ goto __pyx_L3; } @@ -15920,8 +16242,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * delta_depth = event.depth - self.origin_depth # <<<<<<<<<<<<<< * delta_calls = event.calls - self.origin_calls * if delta_depth < self.watermark: - */ - __Pyx_TraceLine(422,0,__PYX_ERR(1, 422, __pyx_L1_error)) +*/ + __Pyx_TraceLine(422,27,0,__PYX_ERR(0, 422, __pyx_L1_error)) /*else*/ { __pyx_v_delta_depth = (__pyx_v_event->depth - __pyx_v_self->origin_depth); @@ -15931,8 +16253,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * delta_calls = event.calls - self.origin_calls # <<<<<<<<<<<<<< * if delta_depth < self.watermark: * self.origin_depth = -1 - */ - __Pyx_TraceLine(423,0,__PYX_ERR(1, 423, __pyx_L1_error)) +*/ + __Pyx_TraceLine(423,36,0,__PYX_ERR(0, 423, __pyx_L1_error)) __pyx_v_delta_calls = (__pyx_v_event->calls - __pyx_v_self->origin_calls); /* "hunter/_predicates.pyx":424 @@ -15941,8 +16263,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if delta_depth < self.watermark: # <<<<<<<<<<<<<< * self.origin_depth = -1 * return False - */ - __Pyx_TraceLine(424,0,__PYX_ERR(1, 424, __pyx_L1_error)) +*/ + __Pyx_TraceLine(424,41,0,__PYX_ERR(0, 424, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_delta_depth < __pyx_v_self->watermark); if (__pyx_t_1) { @@ -15952,8 +16274,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * self.origin_depth = -1 # <<<<<<<<<<<<<< * return False * - */ - __Pyx_TraceLine(425,0,__PYX_ERR(1, 425, __pyx_L1_error)) +*/ + __Pyx_TraceLine(425,44,0,__PYX_ERR(0, 425, __pyx_L1_error)) __pyx_v_self->origin_depth = -1; /* "hunter/_predicates.pyx":426 @@ -15962,11 +16284,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * return False # <<<<<<<<<<<<<< * * if self.predicate is None: - */ - __Pyx_TraceLine(426,0,__PYX_ERR(1, 426, __pyx_L1_error)) +*/ + __Pyx_TraceLine(426,47,0,__PYX_ERR(0, 426, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 47, 0, __PYX_ERR(0, 426, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":424 @@ -15975,7 +16298,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if delta_depth < self.watermark: # <<<<<<<<<<<<<< * self.origin_depth = -1 * return False - */ +*/ } } __pyx_L3:; @@ -15986,8 +16309,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if self.predicate is None: # <<<<<<<<<<<<<< * return True * else: - */ - __Pyx_TraceLine(428,0,__PYX_ERR(1, 428, __pyx_L1_error)) +*/ + __Pyx_TraceLine(428,53,0,__PYX_ERR(0, 428, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->predicate == Py_None); if (__pyx_t_1) { @@ -15997,11 +16320,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * return True # <<<<<<<<<<<<<< * else: * relative_event = fast_clone(event) - */ - __Pyx_TraceLine(429,0,__PYX_ERR(1, 429, __pyx_L1_error)) +*/ + __Pyx_TraceLine(429,54,0,__PYX_ERR(0, 429, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; + __Pyx_TraceReturnValue(__pyx_r, 54, 0, __PYX_ERR(0, 429, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":428 @@ -16010,7 +16334,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * if self.predicate is None: # <<<<<<<<<<<<<< * return True * else: - */ +*/ } /* "hunter/_predicates.pyx":431 @@ -16019,10 +16343,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * relative_event = fast_clone(event) # <<<<<<<<<<<<<< * relative_event.depth = delta_depth * relative_event.calls = delta_calls - */ - __Pyx_TraceLine(431,0,__PYX_ERR(1, 431, __pyx_L1_error)) +*/ + __Pyx_TraceLine(431,56,0,__PYX_ERR(0, 431, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_event)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 431, __pyx_L1_error) + __pyx_t_3 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_event)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_v_relative_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_3); __pyx_t_3 = 0; @@ -16033,8 +16357,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * relative_event.depth = delta_depth # <<<<<<<<<<<<<< * relative_event.calls = delta_calls * return fast_call(self.predicate, relative_event) - */ - __Pyx_TraceLine(432,0,__PYX_ERR(1, 432, __pyx_L1_error)) +*/ + __Pyx_TraceLine(432,60,0,__PYX_ERR(0, 432, __pyx_L1_error)) __pyx_v_relative_event->depth = __pyx_v_delta_depth; /* "hunter/_predicates.pyx":433 @@ -16043,8 +16367,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * relative_event.calls = delta_calls # <<<<<<<<<<<<<< * return fast_call(self.predicate, relative_event) * - */ - __Pyx_TraceLine(433,0,__PYX_ERR(1, 433, __pyx_L1_error)) +*/ + __Pyx_TraceLine(433,63,0,__PYX_ERR(0, 433, __pyx_L1_error)) __pyx_v_relative_event->calls = __pyx_v_delta_calls; /* "hunter/_predicates.pyx":434 @@ -16053,16 +16377,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * return fast_call(self.predicate, relative_event) # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(434,0,__PYX_ERR(1, 434, __pyx_L1_error)) +*/ + __Pyx_TraceLine(434,66,0,__PYX_ERR(0, 434, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_3 = __pyx_v_self->predicate; __Pyx_INCREF(__pyx_t_3); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_3, __pyx_v_relative_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 434, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_3, __pyx_v_relative_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 66, 0, __PYX_ERR(0, 434, __pyx_L1_error)); goto __pyx_L0; } @@ -16072,19 +16397,25 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * cdef inline fast_From_call(From self, Event event): # <<<<<<<<<<<<<< * cdef object result * cdef int delta_depth - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 407, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_From_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_result); __Pyx_XDECREF((PyObject *)__pyx_v_relative_event); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16095,7 +16426,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_From_call(stru * def __init__(self, *predicates): # <<<<<<<<<<<<<< * self.predicates = predicates * - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_3And_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -16106,13 +16437,15 @@ static int __pyx_pw_6hunter_11_predicates_3And_1__init__(PyObject *__pyx_v_self, int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_VARARGS(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return -1; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__init__", __pyx_kwds); return -1;} __Pyx_INCREF(__pyx_args); __pyx_v_predicates = __pyx_args; __pyx_r = __pyx_pf_6hunter_11_predicates_3And___init__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self), __pyx_v_predicates); @@ -16125,13 +16458,14 @@ static int __pyx_pw_6hunter_11_predicates_3And_1__init__(PyObject *__pyx_v_self, static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self, PyObject *__pyx_v_predicates) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 442, 0, __PYX_ERR(1, 442, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[77])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 442, 0, 0, 0, __PYX_ERR(0, 442, __pyx_L1_error)); /* "hunter/_predicates.pyx":443 * """ @@ -16139,8 +16473,8 @@ static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter * self.predicates = predicates # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(443,0,__PYX_ERR(1, 443, __pyx_L1_error)) +*/ + __Pyx_TraceLine(443,1,0,__PYX_ERR(0, 443, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicates); __Pyx_GIVEREF(__pyx_v_predicates); __Pyx_GOTREF(__pyx_v_self->predicates); @@ -16153,16 +16487,23 @@ static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter * def __init__(self, *predicates): # <<<<<<<<<<<<<< * self.predicates = predicates * - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 442, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 442, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16173,7 +16514,7 @@ static int __pyx_pf_6hunter_11_predicates_3And___init__(struct __pyx_obj_6hunter * def __str__(self): # <<<<<<<<<<<<<< * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_3__str__(PyObject *__pyx_v_self); /*proto*/ @@ -16197,7 +16538,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0) { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *__pyx_cur_scope; @@ -16207,11 +16548,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(CYTHON_UNU const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("genexpr", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 446, __pyx_L1_error) + __PYX_ERR(0, 446, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -16219,7 +16560,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(CYTHON_UNU __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_3And_7__str___2generator3, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 446, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_3And_7__str___2generator3, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[78]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_genexpr, __pyx_mstate_global->__pyx_n_u_str___locals_genexpr, __pyx_mstate_global->__pyx_n_u_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(0, 446, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -16239,7 +16580,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *__pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)__pyx_generator->closure); PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; PyObject *__pyx_t_3 = NULL; @@ -16248,82 +16589,76 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 446, 0, __PYX_ERR(1, 446, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; - case 1: goto __pyx_L6_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 446, 0, 0, 0, __PYX_ERR(0, 446, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 446, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 446, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 446, __pyx_L1_error) } + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 446, 0, 0, 0, __PYX_ERR(0, 446, __pyx_L1_error)); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 446, __pyx_L1_error) + __pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 446, __pyx_L1_error) + __Pyx_GOTREF(__pyx_r); + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(0, 446, __pyx_L1_error) } if (unlikely(__pyx_cur_scope->__pyx_genexpr_arg_0 == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 446, __pyx_L1_error) + __PYX_ERR(0, 446, __pyx_L1_error) } __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 446, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 446, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 446, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 446, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 446, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_p); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_p, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Str(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 446, __pyx_L1_error) + __Pyx_TraceLine(446,0,0,__PYX_ERR(0, 446, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - __Pyx_XGIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, yielding value */ - __pyx_generator->resume_label = 1; - return __pyx_r; - __pyx_L6_resume_from_yield:; - __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_1); - __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 446, __pyx_L1_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_3))) __PYX_ERR(0, 446, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 446, __pyx_L1_error)); /* function exit code */ - PyErr_SetNone(PyExc_StopIteration); goto __pyx_L0; __pyx_L1_error:; - __Pyx_Generator_Replace_StopIteration(0); + __Pyx_XDECREF(__pyx_r); __pyx_r = 0; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_PyErr_Occurred()) { + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionUnwind(0, 0); + } __pyx_L0:; - __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); #if !CYTHON_USE_EXC_INFO_STACK __Pyx_Coroutine_ResetAndClearException(__pyx_generator); #endif __pyx_generator->resume_label = -1; __Pyx_Coroutine_clear((PyObject*)__pyx_generator); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16334,20 +16669,21 @@ static PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3(__pyx_ * def __str__(self): # <<<<<<<<<<<<<< * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) * - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self) { PyObject *__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3 = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 1); - __Pyx_TraceCall("__str__", __pyx_f[1], 445, 0, __PYX_ERR(1, 445, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[79])) + __Pyx_RefNannySetupContext("__str__", 0); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 445, 0, 0, 0, __PYX_ERR(0, 445, __pyx_L1_error)); /* "hunter/_predicates.pyx":446 * @@ -16355,19 +16691,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6 * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): - */ - __Pyx_TraceLine(446,0,__PYX_ERR(1, 446, __pyx_L1_error)) +*/ + __Pyx_TraceLine(446,1,0,__PYX_ERR(0, 446, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 446, __pyx_L1_error) + __pyx_t_1 = __pyx_pf_6hunter_11_predicates_3And_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 446, __pyx_L1_error) + __pyx_t_2 = __Pyx_Generator_GetInlinedResult(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_And_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 446, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__4, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __pyx_t_2 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_And_s, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 446, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_r = __pyx_t_2; + __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 446, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":445 @@ -16376,18 +16716,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6 * def __str__(self): # <<<<<<<<<<<<<< * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 445, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_gb_6hunter_11_predicates_3And_7__str___2generator3); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16398,7 +16744,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_2__str__(struct __pyx_obj_6 * def __repr__(self): # <<<<<<<<<<<<<< * return '' % (self.predicates,) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -16417,15 +16763,17 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_2[3]; + PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 448, 0, __PYX_ERR(1, 448, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[80])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 448, 0, 0, 0, __PYX_ERR(0, 448, __pyx_L1_error)); /* "hunter/_predicates.pyx":449 * @@ -16433,20 +16781,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_ * return '' % (self.predicates,) # <<<<<<<<<<<<<< * * def __eq__(self, other): - */ - __Pyx_TraceLine(449,0,__PYX_ERR(1, 449, __pyx_L1_error)) +*/ + __Pyx_TraceLine(449,1,0,__PYX_ERR(0, 449, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 449, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->predicates), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 449, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self->predicates); - __Pyx_GIVEREF(__pyx_v_self->predicates); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(1, 449, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_And_predicat, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 449, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2[0] = __pyx_mstate_global->__pyx_kp_u_hunter__predicates_And_predicat; + __pyx_t_2[1] = __pyx_t_1; + __pyx_t_2[2] = __pyx_mstate_global->__pyx_kp_u__8; + __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_2, 3, 36 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1)); + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 449, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; + __pyx_r = __pyx_t_3; + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 449, __pyx_L1_error)); + goto __pyx_L0; /* "hunter/_predicates.pyx":448 * return 'And(%s)' % ', '.join(str(p) for p in self.predicates) @@ -16454,17 +16804,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_ * def __repr__(self): # <<<<<<<<<<<<<< * return '' % (self.predicates,) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 448, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16475,7 +16831,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_4__repr__(struct __pyx_obj_ * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, And) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -16494,7 +16850,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_7__eq__(PyObject *__pyx_v_s static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -16502,8 +16858,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 451, 0, __PYX_ERR(1, 451, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[81])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 451, 0, 0, 0, __PYX_ERR(0, 451, __pyx_L1_error)); /* "hunter/_predicates.pyx":452 * @@ -16511,8 +16868,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h * return ( # <<<<<<<<<<<<<< * isinstance(other, And) * and self.predicates == ( other).predicates - */ - __Pyx_TraceLine(452,0,__PYX_ERR(1, 452, __pyx_L1_error)) +*/ + __Pyx_TraceLine(452,1,0,__PYX_ERR(0, 452, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":453 @@ -16521,12 +16878,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h * isinstance(other, And) # <<<<<<<<<<<<<< * and self.predicates == ( other).predicates * ) - */ - __Pyx_TraceLine(453,0,__PYX_ERR(1, 453, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_And); +*/ + __Pyx_TraceLine(453,5,0,__PYX_ERR(0, 453, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 453, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 453, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -16539,15 +16896,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h * and self.predicates == ( other).predicates # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(454,0,__PYX_ERR(1, 454, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 454, __pyx_L1_error) +*/ + __Pyx_TraceLine(454,12,0,__PYX_ERR(0, 454, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 454, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 452, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":451 @@ -16556,17 +16914,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, And) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 451, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16577,7 +16941,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_6__eq__(struct __pyx_obj_6h * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_And_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -16592,87 +16956,82 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_9__call__(PyObject *__pyx_v PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 457, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 457, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 457, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 457, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 457, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 457, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 457, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 457, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 457, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.And.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 457, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 457, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_3And_8__call__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self), __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 457, 0, __PYX_ERR(1, 457, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[82])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 457, 0, 0, 0, __PYX_ERR(0, 457, __pyx_L1_error)); /* "hunter/_predicates.pyx":458 * @@ -16680,13 +17039,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_ * return fast_And_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): - */ - __Pyx_TraceLine(458,0,__PYX_ERR(1, 458, __pyx_L1_error)) +*/ + __Pyx_TraceLine(458,1,0,__PYX_ERR(0, 458, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_And_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 458, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_And_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 458, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 458, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":457 @@ -16695,16 +17055,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_ * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_And_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 457, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16715,7 +17081,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_8__call__(struct __pyx_obj_ * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -16734,15 +17100,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_11__or__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 460, 0, __PYX_ERR(1, 460, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[83])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 460, 0, 0, 0, __PYX_ERR(0, 460, __pyx_L1_error)); /* "hunter/_predicates.pyx":461 * @@ -16750,22 +17119,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_ * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(461,0,__PYX_ERR(1, 461, __pyx_L1_error)) +*/ + __Pyx_TraceLine(461,1,0,__PYX_ERR(0, 461, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 461, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 461, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 461, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 461, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 461, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 461, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":460 @@ -16774,17 +17145,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_ * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 460, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16795,7 +17173,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10__or__(PyObject *__pyx_v_ * def __and__(self, other): # <<<<<<<<<<<<<< * cdef list predicates * if type(self) is And: - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -16815,7 +17193,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_13__and__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_v_predicates = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -16824,8 +17202,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 463, 0, __PYX_ERR(1, 463, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[84])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 463, 0, 0, 0, __PYX_ERR(0, 463, __pyx_L1_error)); /* "hunter/_predicates.pyx":465 * def __and__(self, other): @@ -16833,9 +17212,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * if type(self) is And: # <<<<<<<<<<<<<< * predicates = list(( self).predicates) * else: - */ - __Pyx_TraceLine(465,0,__PYX_ERR(1, 465, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_And)); +*/ + __Pyx_TraceLine(465,6,0,__PYX_ERR(0, 465, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":466 @@ -16844,9 +17223,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * predicates = list(( self).predicates) # <<<<<<<<<<<<<< * else: * predicates = [self] - */ - __Pyx_TraceLine(466,0,__PYX_ERR(1, 466, __pyx_L1_error)) - __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 466, __pyx_L1_error) +*/ + __Pyx_TraceLine(466,9,0,__PYX_ERR(0, 466, __pyx_L1_error)) + __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 466, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; @@ -16857,7 +17236,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * if type(self) is And: # <<<<<<<<<<<<<< * predicates = list(( self).predicates) * else: - */ +*/ goto __pyx_L3; } @@ -16867,14 +17246,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * predicates = [self] # <<<<<<<<<<<<<< * if isinstance(other, And): * predicates.extend(( other).predicates) - */ - __Pyx_TraceLine(468,0,__PYX_ERR(1, 468, __pyx_L1_error)) +*/ + __Pyx_TraceLine(468,14,0,__PYX_ERR(0, 468, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 468, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 468, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self)) __PYX_ERR(1, 468, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self) != (0)) __PYX_ERR(0, 468, __pyx_L1_error); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; } @@ -16886,9 +17265,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * if isinstance(other, And): # <<<<<<<<<<<<<< * predicates.extend(( other).predicates) * else: - */ - __Pyx_TraceLine(469,0,__PYX_ERR(1, 469, __pyx_L1_error)) - __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_And); +*/ + __Pyx_TraceLine(469,20,0,__PYX_ERR(0, 469, __pyx_L1_error)) + __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); if (__pyx_t_1) { /* "hunter/_predicates.pyx":470 @@ -16897,11 +17276,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * predicates.extend(( other).predicates) # <<<<<<<<<<<<<< * else: * predicates.append(other) - */ - __Pyx_TraceLine(470,0,__PYX_ERR(1, 470, __pyx_L1_error)) +*/ + __Pyx_TraceLine(470,26,0,__PYX_ERR(0, 470, __pyx_L1_error)) __pyx_t_2 = ((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_other)->predicates; __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 470, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 470, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_predicates.pyx":469 @@ -16910,7 +17289,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * if isinstance(other, And): # <<<<<<<<<<<<<< * predicates.extend(( other).predicates) * else: - */ +*/ goto __pyx_L4; } @@ -16920,10 +17299,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * predicates.append(other) # <<<<<<<<<<<<<< * return And(*predicates) * - */ - __Pyx_TraceLine(472,0,__PYX_ERR(1, 472, __pyx_L1_error)) +*/ + __Pyx_TraceLine(472,29,0,__PYX_ERR(0, 472, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 472, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 472, __pyx_L1_error) } __pyx_L4:; @@ -16933,16 +17312,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * return And(*predicates) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(473,0,__PYX_ERR(1, 473, __pyx_L1_error)) +*/ + __Pyx_TraceLine(473,31,0,__PYX_ERR(0, 473, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 473, __pyx_L1_error) + __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 473, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 31, 0, __PYX_ERR(0, 473, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":463 @@ -16951,18 +17331,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * def __and__(self, other): # <<<<<<<<<<<<<< * cdef list predicates * if type(self) is And: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 463, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_predicates); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -16973,7 +17359,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_12__and__(PyObject *__pyx_v * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -16992,14 +17378,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_15__invert__(PyObject *__py static PyObject *__pyx_pf_6hunter_11_predicates_3And_14__invert__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 475, 0, __PYX_ERR(1, 475, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[85])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 475, 0, 0, 0, __PYX_ERR(0, 475, __pyx_L1_error)); /* "hunter/_predicates.pyx":476 * @@ -17007,13 +17397,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_14__invert__(struct __pyx_o * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_And_call(And self, Event event): - */ - __Pyx_TraceLine(476,0,__PYX_ERR(1, 476, __pyx_L1_error)) +*/ + __Pyx_TraceLine(476,1,0,__PYX_ERR(0, 476, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 476, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, ((PyObject *)__pyx_v_self)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 476, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 476, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":475 @@ -17022,16 +17423,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_14__invert__(struct __pyx_o * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 475, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17042,7 +17451,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_14__invert__(struct __pyx_o * readonly tuple predicates # <<<<<<<<<<<<<< * * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -17061,25 +17470,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(PyObj static PyObject *__pyx_pf_6hunter_11_predicates_3And_10predicates___get__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 25, 0, __PYX_ERR(2, 25, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[86])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 25, 0, 0, 0, __PYX_ERR(2, 25, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicates); __pyx_r = __pyx_v_self->predicates; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 25, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 25, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.predicates.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17088,7 +17505,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_10predicates___get__(struct * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__(PyObject *__pyx_v_self, @@ -17098,7 +17515,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -17114,16 +17531,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self)); /* function exit code */ @@ -17136,7 +17554,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -17145,9 +17563,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__18) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -17155,13 +17573,13 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * state = (self.predicates,) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,2,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicates); __Pyx_GIVEREF(__pyx_v_self->predicates); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -17171,9 +17589,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,6,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v__dict = __pyx_t_1; __pyx_t_1 = 0; @@ -17184,8 +17602,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,13,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_2 = (__pyx_v__dict != Py_None); if (__pyx_t_2) { @@ -17195,14 +17613,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,15,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3)); @@ -17214,8 +17632,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self.predicates is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,17,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -17224,7 +17642,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -17234,8 +17652,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * use_setstate = self.predicates is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_And, (type(self), 0x8e21672, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,21,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_2 = (__pyx_v_self->predicates != ((PyObject*)Py_None)); __pyx_v_use_setstate = __pyx_t_2; @@ -17248,8 +17666,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_And, (type(self), 0x8e21672, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,24,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -17258,35 +17676,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * return __pyx_unpickle_And, (type(self), 0x8e21672, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_And, (type(self), 0x8e21672, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,25,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_And); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_149034610); - __Pyx_GIVEREF(__pyx_int_149034610); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_149034610); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_149034610) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 25, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -17295,7 +17714,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_And, (type(self), 0x8e21672, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -17304,33 +17723,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * return __pyx_unpickle_And, (type(self), 0x8e21672, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_And__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,33,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pyx_unpickle_And); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_149034610); - __Pyx_GIVEREF(__pyx_int_149034610); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_149034610); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_149034610) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 33, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -17338,20 +17758,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17361,7 +17787,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_16__reduce_cython__(struct * return __pyx_unpickle_And, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__(PyObject *__pyx_v_self, @@ -17371,7 +17797,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -17392,7 +17818,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -17400,47 +17826,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.And.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -17449,11 +17867,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -17461,24 +17876,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__19) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_And, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_And__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -17487,18 +17902,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(struc * return __pyx_unpickle_And, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.And.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17509,12 +17931,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3And_18__setstate_cython__(struc * cdef inline fast_And_call(And self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if not fast_call(predicate, event): - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_v_predicate = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; @@ -17524,8 +17946,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_And_call", 1); - __Pyx_TraceCall("fast_And_call", __pyx_f[1], 478, 0, __PYX_ERR(1, 478, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[89])) + __Pyx_RefNannySetupContext("fast_And_call", 0); + __Pyx_TraceStartFunc("fast_And_call", __pyx_f[0], 478, 0, 0, 0, __PYX_ERR(0, 478, __pyx_L1_error)); /* "hunter/_predicates.pyx":479 * @@ -17533,30 +17956,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * for predicate in self.predicates: # <<<<<<<<<<<<<< * if not fast_call(predicate, event): * return False - */ - __Pyx_TraceLine(479,0,__PYX_ERR(1, 479, __pyx_L1_error)) +*/ + __Pyx_TraceLine(479,4,0,__PYX_ERR(0, 479, __pyx_L1_error)) if (unlikely(__pyx_v_self->predicates == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 479, __pyx_L1_error) + __PYX_ERR(0, 479, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->predicates; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 479, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 479, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 479, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 479, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 479, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_predicate, __pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceLine(479,1,0,__PYX_ERR(0, 479, __pyx_L1_error)) /* "hunter/_predicates.pyx":480 * cdef inline fast_And_call(And self, Event event): @@ -17564,11 +17990,11 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * if not fast_call(predicate, event): # <<<<<<<<<<<<<< * return False * else: - */ - __Pyx_TraceLine(480,0,__PYX_ERR(1, 480, __pyx_L1_error)) - __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 480, __pyx_L1_error) +*/ + __Pyx_TraceLine(480,8,0,__PYX_ERR(0, 480, __pyx_L1_error)) + __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(1, 480, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 480, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_5 = (!__pyx_t_4); if (__pyx_t_5) { @@ -17579,11 +18005,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * return False # <<<<<<<<<<<<<< * else: * return True - */ - __Pyx_TraceLine(481,0,__PYX_ERR(1, 481, __pyx_L1_error)) +*/ + __Pyx_TraceLine(481,11,0,__PYX_ERR(0, 481, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 11, 0, __PYX_ERR(0, 481, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -17593,7 +18020,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * if not fast_call(predicate, event): # <<<<<<<<<<<<<< * return False * else: - */ +*/ } /* "hunter/_predicates.pyx":479 @@ -17602,8 +18029,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * for predicate in self.predicates: # <<<<<<<<<<<<<< * if not fast_call(predicate, event): * return False - */ - __Pyx_TraceLine(479,0,__PYX_ERR(1, 479, __pyx_L1_error)) +*/ + __Pyx_TraceLine(479,1,0,__PYX_ERR(0, 479, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /*else*/ { @@ -17614,11 +18041,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * return True # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(483,0,__PYX_ERR(1, 483, __pyx_L1_error)) +*/ + __Pyx_TraceLine(483,13,0,__PYX_ERR(0, 483, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; + __Pyx_TraceReturnValue(__pyx_r, 13, 0, __PYX_ERR(0, 483, __pyx_L1_error)); goto __pyx_L0; } @@ -17628,18 +18056,24 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * cdef inline fast_And_call(And self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if not fast_call(predicate, event): - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 478, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_And_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_predicate); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17650,7 +18084,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_And_call(struc * def __init__(self, *predicates): # <<<<<<<<<<<<<< * self.predicates = predicates * - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_2Or_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -17661,13 +18095,15 @@ static int __pyx_pw_6hunter_11_predicates_2Or_1__init__(PyObject *__pyx_v_self, int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_VARARGS(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return -1; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__init__", __pyx_kwds); return -1;} __Pyx_INCREF(__pyx_args); __pyx_v_predicates = __pyx_args; __pyx_r = __pyx_pf_6hunter_11_predicates_2Or___init__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self), __pyx_v_predicates); @@ -17680,13 +18116,14 @@ static int __pyx_pw_6hunter_11_predicates_2Or_1__init__(PyObject *__pyx_v_self, static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self, PyObject *__pyx_v_predicates) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 492, 0, __PYX_ERR(1, 492, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[90])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 492, 0, 0, 0, __PYX_ERR(0, 492, __pyx_L1_error)); /* "hunter/_predicates.pyx":493 * @@ -17694,8 +18131,8 @@ static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_ * self.predicates = predicates # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(493,0,__PYX_ERR(1, 493, __pyx_L1_error)) +*/ + __Pyx_TraceLine(493,1,0,__PYX_ERR(0, 493, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicates); __Pyx_GIVEREF(__pyx_v_predicates); __Pyx_GOTREF(__pyx_v_self->predicates); @@ -17708,16 +18145,23 @@ static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_ * def __init__(self, *predicates): # <<<<<<<<<<<<<< * self.predicates = predicates * - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 492, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 492, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17728,7 +18172,7 @@ static int __pyx_pf_6hunter_11_predicates_2Or___init__(struct __pyx_obj_6hunter_ * def __str__(self): # <<<<<<<<<<<<<< * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_3__str__(PyObject *__pyx_v_self); /*proto*/ @@ -17752,7 +18196,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_genexpr_arg_0) { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *__pyx_cur_scope; @@ -17762,11 +18206,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(CYTHON_UNUS const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("genexpr", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr, __pyx_mstate_global->__pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(1, 496, __pyx_L1_error) + __PYX_ERR(0, 496, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -17774,7 +18218,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(CYTHON_UNUS __Pyx_INCREF(__pyx_cur_scope->__pyx_genexpr_arg_0); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_genexpr_arg_0); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4, NULL, (PyObject *) __pyx_cur_scope, __pyx_n_s_genexpr, __pyx_n_s_str___locals_genexpr, __pyx_n_s_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(1, 496, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[91]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_genexpr, __pyx_mstate_global->__pyx_n_u_str___locals_genexpr, __pyx_mstate_global->__pyx_n_u_hunter__predicates); if (unlikely(!gen)) __PYX_ERR(0, 496, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -17794,7 +18238,7 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C { struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *__pyx_cur_scope = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)__pyx_generator->closure); PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; PyObject *__pyx_t_3 = NULL; @@ -17803,82 +18247,76 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C int __pyx_clineno = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr", 0); - __Pyx_TraceCall("genexpr", __pyx_f[1], 496, 0, __PYX_ERR(1, 496, __pyx_L1_error)); switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; - case 1: goto __pyx_L6_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 496, 0, 0, 0, __PYX_ERR(0, 496, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 496, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 496, __pyx_L1_error) - if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(1, 496, __pyx_L1_error) } + __Pyx_TraceStartGen("genexpr", __pyx_f[0], 496, 0, 0, 0, __PYX_ERR(0, 496, __pyx_L1_error)); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 496, __pyx_L1_error) + __pyx_r = PyList_New(0); if (unlikely(!__pyx_r)) __PYX_ERR(0, 496, __pyx_L1_error) + __Pyx_GOTREF(__pyx_r); + if (unlikely(!__pyx_cur_scope->__pyx_genexpr_arg_0)) { __Pyx_RaiseUnboundLocalError(".0"); __PYX_ERR(0, 496, __pyx_L1_error) } if (unlikely(__pyx_cur_scope->__pyx_genexpr_arg_0 == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 496, __pyx_L1_error) + __PYX_ERR(0, 496, __pyx_L1_error) } __pyx_t_1 = __pyx_cur_scope->__pyx_genexpr_arg_0; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 496, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 496, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 496, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 496, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 496, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_p); __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_p, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Str(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 496, __pyx_L1_error) + __Pyx_TraceLine(496,0,0,__PYX_ERR(0, 496, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_p); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - __Pyx_XGIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, yielding value */ - __pyx_generator->resume_label = 1; - return __pyx_r; - __pyx_L6_resume_from_yield:; - __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_1); - __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(1, 496, __pyx_L1_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_r, (PyObject*)__pyx_t_3))) __PYX_ERR(0, 496, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 496, __pyx_L1_error)); /* function exit code */ - PyErr_SetNone(PyExc_StopIteration); goto __pyx_L0; __pyx_L1_error:; - __Pyx_Generator_Replace_StopIteration(0); + __Pyx_XDECREF(__pyx_r); __pyx_r = 0; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_PyErr_Occurred()) { + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_TraceExceptionUnwind(0, 0); + } __pyx_L0:; - __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); #if !CYTHON_USE_EXC_INFO_STACK __Pyx_Coroutine_ResetAndClearException(__pyx_generator); #endif __pyx_generator->resume_label = -1; __Pyx_Coroutine_clear((PyObject*)__pyx_generator); - __Pyx_TraceReturn(__pyx_r, 0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17889,20 +18327,21 @@ static PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4(__pyx_C * def __str__(self): # <<<<<<<<<<<<<< * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) * - */ +*/ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self) { PyObject *__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4 = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 1); - __Pyx_TraceCall("__str__", __pyx_f[1], 495, 0, __PYX_ERR(1, 495, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[92])) + __Pyx_RefNannySetupContext("__str__", 0); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 495, 0, 0, 0, __PYX_ERR(0, 495, __pyx_L1_error)); /* "hunter/_predicates.pyx":496 * @@ -17910,19 +18349,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6h * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) # <<<<<<<<<<<<<< * * def __repr__(self): - */ - __Pyx_TraceLine(496,0,__PYX_ERR(1, 496, __pyx_L1_error)) +*/ + __Pyx_TraceLine(496,1,0,__PYX_ERR(0, 496, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 496, __pyx_L1_error) + __pyx_t_1 = __pyx_pf_6hunter_11_predicates_2Or_7__str___genexpr(NULL, __pyx_v_self->predicates); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyString_Join(__pyx_kp_s__8, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 496, __pyx_L1_error) + __pyx_t_2 = __Pyx_Generator_GetInlinedResult(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Or_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 496, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__4, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __pyx_t_2 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Or_s, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 496, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_r = __pyx_t_2; + __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 496, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":495 @@ -17931,18 +18374,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6h * def __str__(self): # <<<<<<<<<<<<<< * return 'Or(%s)' % ', '.join(str(p) for p in self.predicates) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 495, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_gb_6hunter_11_predicates_2Or_7__str___2generator4); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -17953,7 +18402,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_2__str__(struct __pyx_obj_6h * def __repr__(self): # <<<<<<<<<<<<<< * return '' % (self.predicates,) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -17972,15 +18421,17 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_2[3]; + PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 498, 0, __PYX_ERR(1, 498, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[93])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 498, 0, 0, 0, __PYX_ERR(0, 498, __pyx_L1_error)); /* "hunter/_predicates.pyx":499 * @@ -17988,19 +18439,21 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6 * return '' % (self.predicates,) # <<<<<<<<<<<<<< * * def __eq__(self, other): - */ - __Pyx_TraceLine(499,0,__PYX_ERR(1, 499, __pyx_L1_error)) +*/ + __Pyx_TraceLine(499,1,0,__PYX_ERR(0, 499, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 499, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->predicates), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self->predicates); - __Pyx_GIVEREF(__pyx_v_self->predicates); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(1, 499, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_hunter__predicates_Or_predicate, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 499, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2[0] = __pyx_mstate_global->__pyx_kp_u_hunter__predicates_Or_predicate; + __pyx_t_2[1] = __pyx_t_1; + __pyx_t_2[2] = __pyx_mstate_global->__pyx_kp_u__8; + __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_2, 3, 35 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1)); + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 499, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_r = __pyx_t_3; + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 499, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":498 @@ -18009,17 +18462,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6 * def __repr__(self): # <<<<<<<<<<<<<< * return '' % (self.predicates,) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 498, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18030,7 +18489,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_4__repr__(struct __pyx_obj_6 * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Or) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -18049,7 +18508,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_7__eq__(PyObject *__pyx_v_se static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -18057,8 +18516,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 501, 0, __PYX_ERR(1, 501, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[94])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 501, 0, 0, 0, __PYX_ERR(0, 501, __pyx_L1_error)); /* "hunter/_predicates.pyx":502 * @@ -18066,8 +18526,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu * return ( # <<<<<<<<<<<<<< * isinstance(other, Or) * and self.predicates == ( other).predicates - */ - __Pyx_TraceLine(502,0,__PYX_ERR(1, 502, __pyx_L1_error)) +*/ + __Pyx_TraceLine(502,1,0,__PYX_ERR(0, 502, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":503 @@ -18076,12 +18536,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu * isinstance(other, Or) # <<<<<<<<<<<<<< * and self.predicates == ( other).predicates * ) - */ - __Pyx_TraceLine(503,0,__PYX_ERR(1, 503, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Or); +*/ + __Pyx_TraceLine(503,5,0,__PYX_ERR(0, 503, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 503, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -18094,15 +18554,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu * and self.predicates == ( other).predicates # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(504,0,__PYX_ERR(1, 504, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 504, __pyx_L1_error) +*/ + __Pyx_TraceLine(504,12,0,__PYX_ERR(0, 504, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicates, ((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_other)->predicates, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 504, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 502, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":501 @@ -18111,17 +18572,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Or) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 501, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18132,7 +18599,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_6__eq__(struct __pyx_obj_6hu * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_Or_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -18147,87 +18614,82 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_9__call__(PyObject *__pyx_v_ PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 507, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 507, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 507, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 507, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 507, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 507, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 507, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 507, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 507, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Or.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 507, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 507, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_8__call__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self), __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 507, 0, __PYX_ERR(1, 507, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[95])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 507, 0, 0, 0, __PYX_ERR(0, 507, __pyx_L1_error)); /* "hunter/_predicates.pyx":508 * @@ -18235,13 +18697,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6 * return fast_Or_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): - */ - __Pyx_TraceLine(508,0,__PYX_ERR(1, 508, __pyx_L1_error)) +*/ + __Pyx_TraceLine(508,1,0,__PYX_ERR(0, 508, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Or_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 508, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Or_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 508, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 508, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":507 @@ -18250,16 +18713,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6 * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_Or_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 507, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18270,7 +18739,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_8__call__(struct __pyx_obj_6 * def __or__(self, other): # <<<<<<<<<<<<<< * cdef list predicates * if type(self) is Or: - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -18290,7 +18759,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_11__or__(PyObject *__pyx_v_s static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_v_predicates = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; @@ -18299,8 +18768,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 510, 0, __PYX_ERR(1, 510, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[96])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 510, 0, 0, 0, __PYX_ERR(0, 510, __pyx_L1_error)); /* "hunter/_predicates.pyx":512 * def __or__(self, other): @@ -18308,9 +18778,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * if type(self) is Or: # <<<<<<<<<<<<<< * predicates = list(( self).predicates) * else: - */ - __Pyx_TraceLine(512,0,__PYX_ERR(1, 512, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Or)); +*/ + __Pyx_TraceLine(512,6,0,__PYX_ERR(0, 512, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":513 @@ -18319,9 +18789,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * predicates = list(( self).predicates) # <<<<<<<<<<<<<< * else: * predicates = [self] - */ - __Pyx_TraceLine(513,0,__PYX_ERR(1, 513, __pyx_L1_error)) - __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 513, __pyx_L1_error) +*/ + __Pyx_TraceLine(513,9,0,__PYX_ERR(0, 513, __pyx_L1_error)) + __pyx_t_2 = PySequence_List(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)->predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; @@ -18332,7 +18802,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * if type(self) is Or: # <<<<<<<<<<<<<< * predicates = list(( self).predicates) * else: - */ +*/ goto __pyx_L3; } @@ -18342,14 +18812,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * predicates = [self] # <<<<<<<<<<<<<< * if type(other) is Or: * predicates.extend(( other).predicates) - */ - __Pyx_TraceLine(515,0,__PYX_ERR(1, 515, __pyx_L1_error)) +*/ + __Pyx_TraceLine(515,14,0,__PYX_ERR(0, 515, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 515, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self)) __PYX_ERR(1, 515, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self) != (0)) __PYX_ERR(0, 515, __pyx_L1_error); __pyx_v_predicates = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; } @@ -18361,9 +18831,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * if type(other) is Or: # <<<<<<<<<<<<<< * predicates.extend(( other).predicates) * else: - */ - __Pyx_TraceLine(516,0,__PYX_ERR(1, 516, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Or)); +*/ + __Pyx_TraceLine(516,21,0,__PYX_ERR(0, 516, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":517 @@ -18372,11 +18842,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * predicates.extend(( other).predicates) # <<<<<<<<<<<<<< * else: * predicates.append(other) - */ - __Pyx_TraceLine(517,0,__PYX_ERR(1, 517, __pyx_L1_error)) +*/ + __Pyx_TraceLine(517,27,0,__PYX_ERR(0, 517, __pyx_L1_error)) __pyx_t_2 = ((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_other)->predicates; __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 517, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Extend(__pyx_v_predicates, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 517, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_predicates.pyx":516 @@ -18385,7 +18855,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * if type(other) is Or: # <<<<<<<<<<<<<< * predicates.extend(( other).predicates) * else: - */ +*/ goto __pyx_L4; } @@ -18395,10 +18865,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * predicates.append(other) # <<<<<<<<<<<<<< * return Or(*predicates) * - */ - __Pyx_TraceLine(519,0,__PYX_ERR(1, 519, __pyx_L1_error)) +*/ + __Pyx_TraceLine(519,30,0,__PYX_ERR(0, 519, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(1, 519, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyList_Append(__pyx_v_predicates, __pyx_v_other); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 519, __pyx_L1_error) } __pyx_L4:; @@ -18408,16 +18878,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * return Or(*predicates) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(520,0,__PYX_ERR(1, 520, __pyx_L1_error)) +*/ + __Pyx_TraceLine(520,32,0,__PYX_ERR(0, 520, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 520, __pyx_L1_error) + __pyx_t_2 = PySequence_Tuple(__pyx_v_predicates); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 520, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 32, 0, __PYX_ERR(0, 520, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":510 @@ -18426,18 +18897,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * def __or__(self, other): # <<<<<<<<<<<<<< * cdef list predicates * if type(self) is Or: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 510, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_predicates); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18448,7 +18925,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10__or__(PyObject *__pyx_v_s * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -18467,15 +18944,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_13__and__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 522, 0, __PYX_ERR(1, 522, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[97])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 522, 0, 0, 0, __PYX_ERR(0, 522, __pyx_L1_error)); /* "hunter/_predicates.pyx":523 * @@ -18483,22 +18963,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_ * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(523,0,__PYX_ERR(1, 523, __pyx_L1_error)) +*/ + __Pyx_TraceLine(523,1,0,__PYX_ERR(0, 523, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 523, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 523, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 523, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 523, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 523, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 523, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":522 @@ -18507,17 +18989,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_ * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 522, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18528,7 +19017,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_12__and__(PyObject *__pyx_v_ * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -18547,14 +19036,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_15__invert__(PyObject *__pyx static PyObject *__pyx_pf_6hunter_11_predicates_2Or_14__invert__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 525, 0, __PYX_ERR(1, 525, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[98])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 525, 0, 0, 0, __PYX_ERR(0, 525, __pyx_L1_error)); /* "hunter/_predicates.pyx":526 * @@ -18562,13 +19055,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_14__invert__(struct __pyx_ob * return Not(self) # <<<<<<<<<<<<<< * * cdef inline fast_Or_call(Or self, Event event): - */ - __Pyx_TraceLine(526,0,__PYX_ERR(1, 526, __pyx_L1_error)) +*/ + __Pyx_TraceLine(526,1,0,__PYX_ERR(0, 526, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 526, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, ((PyObject *)__pyx_v_self)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 526, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 526, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":525 @@ -18577,16 +19081,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_14__invert__(struct __pyx_ob * def __invert__(self): # <<<<<<<<<<<<<< * return Not(self) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 525, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18597,7 +19109,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_14__invert__(struct __pyx_ob * readonly tuple predicates # <<<<<<<<<<<<<< * * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -18616,25 +19128,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10predicates___get__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 31, 0, __PYX_ERR(2, 31, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[99])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 31, 0, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicates); __pyx_r = __pyx_v_self->predicates; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.predicates.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18643,7 +19163,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_10predicates___get__(struct * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__(PyObject *__pyx_v_self, @@ -18653,7 +19173,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -18669,16 +19189,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self)); /* function exit code */ @@ -18691,7 +19212,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -18700,9 +19221,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__20) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -18710,13 +19231,13 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * state = (self.predicates,) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,2,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicates); __Pyx_GIVEREF(__pyx_v_self->predicates); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicates) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -18726,9 +19247,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,6,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v__dict = __pyx_t_1; __pyx_t_1 = 0; @@ -18739,8 +19260,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,13,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_2 = (__pyx_v__dict != Py_None); if (__pyx_t_2) { @@ -18750,14 +19271,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,15,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3)); @@ -18769,8 +19290,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self.predicates is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,17,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -18779,7 +19300,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -18789,8 +19310,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * use_setstate = self.predicates is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_Or, (type(self), 0x8e21672, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,21,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_2 = (__pyx_v_self->predicates != ((PyObject*)Py_None)); __pyx_v_use_setstate = __pyx_t_2; @@ -18803,8 +19324,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Or, (type(self), 0x8e21672, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,24,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -18813,35 +19334,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * return __pyx_unpickle_Or, (type(self), 0x8e21672, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,25,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_Or); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_149034610); - __Pyx_GIVEREF(__pyx_int_149034610); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_149034610); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_149034610) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 25, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -18850,7 +19372,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Or, (type(self), 0x8e21672, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -18859,33 +19381,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Or__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,33,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pyx_unpickle_Or); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_149034610); - __Pyx_GIVEREF(__pyx_int_149034610); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_149034610)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_149034610); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_149034610); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_149034610) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 33, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -18893,20 +19416,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -18916,7 +19445,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_16__reduce_cython__(struct _ * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__(PyObject *__pyx_v_self, @@ -18926,7 +19455,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -18947,7 +19476,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -18955,47 +19484,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Or.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -19004,11 +19525,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -19016,24 +19534,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__21) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Or__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -19042,18 +19560,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(struct * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Or.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19064,12 +19589,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2Or_18__setstate_cython__(struct * cdef inline fast_Or_call(Or self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if fast_call(predicate, event): - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_v_predicate = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; @@ -19078,8 +19603,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Or_call", 1); - __Pyx_TraceCall("fast_Or_call", __pyx_f[1], 528, 0, __PYX_ERR(1, 528, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[102])) + __Pyx_RefNannySetupContext("fast_Or_call", 0); + __Pyx_TraceStartFunc("fast_Or_call", __pyx_f[0], 528, 0, 0, 0, __PYX_ERR(0, 528, __pyx_L1_error)); /* "hunter/_predicates.pyx":529 * @@ -19087,30 +19613,33 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * for predicate in self.predicates: # <<<<<<<<<<<<<< * if fast_call(predicate, event): * return True - */ - __Pyx_TraceLine(529,0,__PYX_ERR(1, 529, __pyx_L1_error)) +*/ + __Pyx_TraceLine(529,4,0,__PYX_ERR(0, 529, __pyx_L1_error)) if (unlikely(__pyx_v_self->predicates == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 529, __pyx_L1_error) + __PYX_ERR(0, 529, __pyx_L1_error) } __pyx_t_1 = __pyx_v_self->predicates; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; for (;;) { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 529, __pyx_L1_error) + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 529, __pyx_L1_error) #endif if (__pyx_t_2 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely((0 < 0))) __PYX_ERR(1, 529, __pyx_L1_error) + __pyx_t_3 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2)); #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 529, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_2); #endif + ++__pyx_t_2; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 529, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_XDECREF_SET(__pyx_v_predicate, __pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceLine(529,1,0,__PYX_ERR(0, 529, __pyx_L1_error)) /* "hunter/_predicates.pyx":530 * cdef inline fast_Or_call(Or self, Event event): @@ -19118,11 +19647,11 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * if fast_call(predicate, event): # <<<<<<<<<<<<<< * return True * else: - */ - __Pyx_TraceLine(530,0,__PYX_ERR(1, 530, __pyx_L1_error)) - __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 530, __pyx_L1_error) +*/ + __Pyx_TraceLine(530,7,0,__PYX_ERR(0, 530, __pyx_L1_error)) + __pyx_t_3 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_predicate, __pyx_v_event); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(1, 530, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 530, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_4) { @@ -19132,11 +19661,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * return True # <<<<<<<<<<<<<< * else: * return False - */ - __Pyx_TraceLine(531,0,__PYX_ERR(1, 531, __pyx_L1_error)) +*/ + __Pyx_TraceLine(531,10,0,__PYX_ERR(0, 531, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_True); __pyx_r = Py_True; + __Pyx_TraceReturnValue(__pyx_r, 10, 0, __PYX_ERR(0, 531, __pyx_L1_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L0; @@ -19146,7 +19676,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * if fast_call(predicate, event): # <<<<<<<<<<<<<< * return True * else: - */ +*/ } /* "hunter/_predicates.pyx":529 @@ -19155,8 +19685,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * for predicate in self.predicates: # <<<<<<<<<<<<<< * if fast_call(predicate, event): * return True - */ - __Pyx_TraceLine(529,0,__PYX_ERR(1, 529, __pyx_L1_error)) +*/ + __Pyx_TraceLine(529,1,0,__PYX_ERR(0, 529, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /*else*/ { @@ -19167,11 +19697,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * return False # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(533,0,__PYX_ERR(1, 533, __pyx_L1_error)) +*/ + __Pyx_TraceLine(533,12,0,__PYX_ERR(0, 533, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(Py_False); __pyx_r = Py_False; + __Pyx_TraceReturnValue(__pyx_r, 12, 0, __PYX_ERR(0, 533, __pyx_L1_error)); goto __pyx_L0; } @@ -19181,18 +19712,24 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * cdef inline fast_Or_call(Or self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if fast_call(predicate, event): - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 528, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_Or_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF(__pyx_v_predicate); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19203,7 +19740,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Or_call(struct * def __init__(self, predicate): # <<<<<<<<<<<<<< * self.predicate = predicate * - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -19218,54 +19755,46 @@ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_predicate,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_predicate,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 540, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 540, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 540, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 540, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 540, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, i); __PYX_ERR(0, 540, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 540, __pyx_L3_error) } __pyx_v_predicate = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 540, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 540, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Not.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -19274,11 +19803,8 @@ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, __pyx_r = __pyx_pf_6hunter_11_predicates_3Not___init__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), __pyx_v_predicate); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -19286,13 +19812,14 @@ static int __pyx_pw_6hunter_11_predicates_3Not_1__init__(PyObject *__pyx_v_self, static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self, PyObject *__pyx_v_predicate) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 540, 0, __PYX_ERR(1, 540, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[103])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 540, 0, 0, 0, __PYX_ERR(0, 540, __pyx_L1_error)); /* "hunter/_predicates.pyx":541 * """ @@ -19300,8 +19827,8 @@ static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter * self.predicate = predicate # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(541,0,__PYX_ERR(1, 541, __pyx_L1_error)) +*/ + __Pyx_TraceLine(541,1,0,__PYX_ERR(0, 541, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->predicate); @@ -19314,16 +19841,23 @@ static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter * def __init__(self, predicate): # <<<<<<<<<<<<<< * self.predicate = predicate * - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 540, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 540, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19334,7 +19868,7 @@ static int __pyx_pf_6hunter_11_predicates_3Not___init__(struct __pyx_obj_6hunter * def __str__(self): # <<<<<<<<<<<<<< * return 'Not(%s)' % self.predicate * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_3__str__(PyObject *__pyx_v_self); /*proto*/ @@ -19353,14 +19887,15 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_3__str__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 1); - __Pyx_TraceCall("__str__", __pyx_f[1], 543, 0, __PYX_ERR(1, 543, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[104])) + __Pyx_RefNannySetupContext("__str__", 0); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 543, 0, 0, 0, __PYX_ERR(0, 543, __pyx_L1_error)); /* "hunter/_predicates.pyx":544 * @@ -19368,13 +19903,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6 * return 'Not(%s)' % self.predicate # <<<<<<<<<<<<<< * * def __repr__(self): - */ - __Pyx_TraceLine(544,0,__PYX_ERR(1, 544, __pyx_L1_error)) +*/ + __Pyx_TraceLine(544,1,0,__PYX_ERR(0, 544, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Not_s, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 544, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyUnicode_FormatSafe(__pyx_mstate_global->__pyx_kp_u_Not_s, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 544, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 544, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":543 @@ -19383,16 +19919,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6 * def __str__(self): # <<<<<<<<<<<<<< * return 'Not(%s)' % self.predicate * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 543, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19403,7 +19945,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_2__str__(struct __pyx_obj_6 * def __repr__(self): # <<<<<<<<<<<<<< * return '' % self.predicate * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -19422,14 +19964,15 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 546, 0, __PYX_ERR(1, 546, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[105])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 546, 0, 0, 0, __PYX_ERR(0, 546, __pyx_L1_error)); /* "hunter/_predicates.pyx":547 * @@ -19437,13 +19980,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_ * return '' % self.predicate # <<<<<<<<<<<<<< * * def __eq__(self, other): - */ - __Pyx_TraceLine(547,0,__PYX_ERR(1, 547, __pyx_L1_error)) +*/ + __Pyx_TraceLine(547,1,0,__PYX_ERR(0, 547, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyString_FormatSafe(__pyx_kp_s_hunter__predicates_Not_predicat, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 547, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyUnicode_FormatSafe(__pyx_mstate_global->__pyx_kp_u_hunter__predicates_Not_predicat, __pyx_v_self->predicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 547, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":546 @@ -19452,16 +19996,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_ * def __repr__(self): # <<<<<<<<<<<<<< * return '' % self.predicate * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 546, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19472,7 +20022,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_4__repr__(struct __pyx_obj_ * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Not) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_7__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -19491,7 +20041,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_7__eq__(PyObject *__pyx_v_s static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -19499,8 +20049,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 549, 0, __PYX_ERR(1, 549, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[106])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 549, 0, 0, 0, __PYX_ERR(0, 549, __pyx_L1_error)); /* "hunter/_predicates.pyx":550 * @@ -19508,8 +20059,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h * return ( # <<<<<<<<<<<<<< * isinstance(other, Not) * and self.predicate == ( other).predicate - */ - __Pyx_TraceLine(550,0,__PYX_ERR(1, 550, __pyx_L1_error)) +*/ + __Pyx_TraceLine(550,1,0,__PYX_ERR(0, 550, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":551 @@ -19518,12 +20069,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h * isinstance(other, Not) # <<<<<<<<<<<<<< * and self.predicate == ( other).predicate * ) - */ - __Pyx_TraceLine(551,0,__PYX_ERR(1, 551, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Not); +*/ + __Pyx_TraceLine(551,5,0,__PYX_ERR(0, 551, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 551, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 551, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -19536,15 +20087,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h * and self.predicate == ( other).predicate # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(552,0,__PYX_ERR(1, 552, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 552, __pyx_L1_error) +*/ + __Pyx_TraceLine(552,12,0,__PYX_ERR(0, 552, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->predicate, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 550, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":549 @@ -19553,17 +20105,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Not) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 549, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19574,7 +20132,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_6__eq__(struct __pyx_obj_6h * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_Not_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -19589,87 +20147,82 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9__call__(PyObject *__pyx_v PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 555, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 555, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 555, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 555, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 555, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 555, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 555, __pyx_L3_error) } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 555, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 555, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Not.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(1, 555, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_event), __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, 1, "event", 0))) __PYX_ERR(0, 555, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_8__call__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), __pyx_v_event); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 555, 0, __PYX_ERR(1, 555, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[107])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 555, 0, 0, 0, __PYX_ERR(0, 555, __pyx_L1_error)); /* "hunter/_predicates.pyx":556 * @@ -19677,13 +20230,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_ * return fast_Not_call(self, event) # <<<<<<<<<<<<<< * * def __or__(self, other): - */ - __Pyx_TraceLine(556,0,__PYX_ERR(1, 556, __pyx_L1_error)) +*/ + __Pyx_TraceLine(556,1,0,__PYX_ERR(0, 556, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Not_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 556, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Not_call(__pyx_v_self, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 556, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 556, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":555 @@ -19692,16 +20246,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_ * def __call__(self, Event event): # <<<<<<<<<<<<<< * return fast_Not_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 555, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19712,7 +20272,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_8__call__(struct __pyx_obj_ * def __or__(self, other): # <<<<<<<<<<<<<< * if type(self) is Not and type(other) is Not: * return Not(And(( self).predicate, ( other).predicate)) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -19731,17 +20291,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_11__or__(PyObject *__pyx_v_ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 558, 0, __PYX_ERR(1, 558, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[108])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 558, 0, 0, 0, __PYX_ERR(0, 558, __pyx_L1_error)); /* "hunter/_predicates.pyx":559 * @@ -19749,15 +20315,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< * return Not(And(( self).predicate, ( other).predicate)) * else: - */ - __Pyx_TraceLine(559,0,__PYX_ERR(1, 559, __pyx_L1_error)) - __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); +*/ + __Pyx_TraceLine(559,6,0,__PYX_ERR(0, 559, __pyx_L1_error)) + __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not)); if (__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L4_bool_binop_done; } - __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); + __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not)); __pyx_t_1 = __pyx_t_2; __pyx_L4_bool_binop_done:; if (__pyx_t_1) { @@ -19768,25 +20334,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ * return Not(And(( self).predicate, ( other).predicate)) # <<<<<<<<<<<<<< * else: * return Or(self, other) - */ - __Pyx_TraceLine(560,0,__PYX_ERR(1, 560, __pyx_L1_error)) +*/ + __Pyx_TraceLine(560,13,0,__PYX_ERR(0, 560, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 560, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); - __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate)) __PYX_ERR(1, 560, __pyx_L1_error); - __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate)) __PYX_ERR(1, 560, __pyx_L1_error); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 560, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 560, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_r = __pyx_t_3; + __pyx_t_4 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_7 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_8 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_7, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate}; + __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_9, (3-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 560, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_6); + } + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_t_6)}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF((PyObject *)__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 560, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + __pyx_r = ((PyObject *)__pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 13, 0, __PYX_ERR(0, 560, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":559 @@ -19795,7 +20373,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< * return Not(And(( self).predicate, ( other).predicate)) * else: - */ +*/ } /* "hunter/_predicates.pyx":562 @@ -19804,23 +20382,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(562,0,__PYX_ERR(1, 562, __pyx_L1_error)) +*/ + __Pyx_TraceLine(562,24,0,__PYX_ERR(0, 562, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 562, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self)) __PYX_ERR(1, 562, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_other)) __PYX_ERR(1, 562, __pyx_L1_error); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 562, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_t_5 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_6 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_v_self, __pyx_v_other}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_9, (3-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 562, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + __pyx_r = ((PyObject *)__pyx_t_3); + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 24, 0, __PYX_ERR(0, 562, __pyx_L1_error)); goto __pyx_L0; } @@ -19830,17 +20410,27 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ * def __or__(self, other): # <<<<<<<<<<<<<< * if type(self) is Not and type(other) is Not: * return Not(And(( self).predicate, ( other).predicate)) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 558, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19851,7 +20441,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_10__or__(PyObject *__pyx_v_ * def __and__(self, other): # <<<<<<<<<<<<<< * if type(self) is Not and type(other) is Not: * return Not(Or(( self).predicate, ( other).predicate)) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -19870,17 +20460,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_13__and__(PyObject *__pyx_v static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 564, 0, __PYX_ERR(1, 564, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[109])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 564, 0, 0, 0, __PYX_ERR(0, 564, __pyx_L1_error)); /* "hunter/_predicates.pyx":565 * @@ -19888,15 +20484,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< * return Not(Or(( self).predicate, ( other).predicate)) * else: - */ - __Pyx_TraceLine(565,0,__PYX_ERR(1, 565, __pyx_L1_error)) - __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); +*/ + __Pyx_TraceLine(565,6,0,__PYX_ERR(0, 565, __pyx_L1_error)) + __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_self)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not)); if (__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L4_bool_binop_done; } - __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); + __pyx_t_2 = (((PyObject *)Py_TYPE(__pyx_v_other)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not)); __pyx_t_1 = __pyx_t_2; __pyx_L4_bool_binop_done:; if (__pyx_t_1) { @@ -19907,25 +20503,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v * return Not(Or(( self).predicate, ( other).predicate)) # <<<<<<<<<<<<<< * else: * return And(self, other) - */ - __Pyx_TraceLine(566,0,__PYX_ERR(1, 566, __pyx_L1_error)) +*/ + __Pyx_TraceLine(566,13,0,__PYX_ERR(0, 566, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 566, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); - __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate)) __PYX_ERR(1, 566, __pyx_L1_error); - __Pyx_INCREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - __Pyx_GIVEREF(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate)) __PYX_ERR(1, 566, __pyx_L1_error); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 566, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 566, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_r = __pyx_t_3; + __pyx_t_4 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_7 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_8 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_7, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)->predicate, ((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_other)->predicate}; + __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_9, (3-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 566, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_6); + } + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_t_6)}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF((PyObject *)__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 566, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + __pyx_r = ((PyObject *)__pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 13, 0, __PYX_ERR(0, 566, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":565 @@ -19934,7 +20542,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v * if type(self) is Not and type(other) is Not: # <<<<<<<<<<<<<< * return Not(Or(( self).predicate, ( other).predicate)) * else: - */ +*/ } /* "hunter/_predicates.pyx":568 @@ -19943,23 +20551,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(568,0,__PYX_ERR(1, 568, __pyx_L1_error)) +*/ + __Pyx_TraceLine(568,24,0,__PYX_ERR(0, 568, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 568, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_self)) __PYX_ERR(1, 568, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_other)) __PYX_ERR(1, 568, __pyx_L1_error); - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 568, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_t_5 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_6 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_v_self, __pyx_v_other}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_9, (3-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 568, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + __pyx_r = ((PyObject *)__pyx_t_3); + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 24, 0, __PYX_ERR(0, 568, __pyx_L1_error)); goto __pyx_L0; } @@ -19969,17 +20579,27 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v * def __and__(self, other): # <<<<<<<<<<<<<< * if type(self) is Not and type(other) is Not: * return Not(Or(( self).predicate, ( other).predicate)) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 564, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -19990,7 +20610,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_12__and__(PyObject *__pyx_v * def __invert__(self): # <<<<<<<<<<<<<< * return self.predicate * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -20009,13 +20629,14 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_15__invert__(PyObject *__py static PyObject *__pyx_pf_6hunter_11_predicates_3Not_14__invert__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 570, 0, __PYX_ERR(1, 570, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[110])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 570, 0, 0, 0, __PYX_ERR(0, 570, __pyx_L1_error)); /* "hunter/_predicates.pyx":571 * @@ -20023,11 +20644,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_14__invert__(struct __pyx_o * return self.predicate # <<<<<<<<<<<<<< * * cdef inline fast_Not_call(Not self, Event event): - */ - __Pyx_TraceLine(571,0,__PYX_ERR(1, 571, __pyx_L1_error)) +*/ + __Pyx_TraceLine(571,1,0,__PYX_ERR(0, 571, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicate); __pyx_r = __pyx_v_self->predicate; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 571, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":570 @@ -20036,15 +20658,21 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_14__invert__(struct __pyx_o * def __invert__(self): # <<<<<<<<<<<<<< * return self.predicate * - */ +*/ /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 570, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20055,7 +20683,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_14__invert__(struct __pyx_o * readonly object predicate # <<<<<<<<<<<<<< * * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -20074,25 +20702,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(PyObjec static PyObject *__pyx_pf_6hunter_11_predicates_3Not_9predicate___get__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 37, 0, __PYX_ERR(2, 37, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[111])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 37, 0, 0, 0, __PYX_ERR(2, 37, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->predicate); __pyx_r = __pyx_v_self->predicate; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 37, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 37, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.predicate.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20101,7 +20737,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_9predicate___get__(struct _ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__(PyObject *__pyx_v_self, @@ -20111,7 +20747,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -20127,16 +20763,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self)); /* function exit code */ @@ -20149,7 +20786,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -20158,9 +20795,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__22) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -20168,13 +20805,13 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * state = (self.predicate,) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,2,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->predicate); __Pyx_GIVEREF(__pyx_v_self->predicate); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicate)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->predicate) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_v_state = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; @@ -20184,9 +20821,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,6,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v__dict = __pyx_t_1; __pyx_t_1 = 0; @@ -20197,8 +20834,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,13,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_2 = (__pyx_v__dict != Py_None); if (__pyx_t_2) { @@ -20208,14 +20845,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,15,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_3)); @@ -20227,8 +20864,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self.predicate is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,17,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -20237,7 +20874,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -20247,8 +20884,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * use_setstate = self.predicate is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_Not, (type(self), 0x23761c9, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,21,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_2 = (__pyx_v_self->predicate != Py_None); __pyx_v_use_setstate = __pyx_t_2; @@ -20261,8 +20898,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Not, (type(self), 0x23761c9, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,24,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -20271,35 +20908,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * return __pyx_unpickle_Not, (type(self), 0x23761c9, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,25,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_Not); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_37183945); - __Pyx_GIVEREF(__pyx_int_37183945); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_37183945)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_37183945); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_37183945); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_37183945) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 25, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -20308,7 +20946,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Not, (type(self), 0x23761c9, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -20317,33 +20955,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Not__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,33,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pyx_unpickle_Not); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_37183945); - __Pyx_GIVEREF(__pyx_int_37183945); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_37183945)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_37183945); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_37183945); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_mstate_global->__pyx_int_37183945) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 33, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -20351,20 +20990,26 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20374,7 +21019,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_16__reduce_cython__(struct * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__(PyObject *__pyx_v_self, @@ -20384,7 +21029,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -20405,7 +21050,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -20413,47 +21058,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Not.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -20462,11 +21099,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -20474,24 +21108,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__23) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Not__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -20500,18 +21134,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(struc * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Not.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20522,11 +21163,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_3Not_18__setstate_cython__(struc * cdef inline fast_Not_call(Not self, Event event): # <<<<<<<<<<<<<< * return not fast_call(self.predicate, event) * - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -20534,8 +21175,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Not_call", 1); - __Pyx_TraceCall("fast_Not_call", __pyx_f[1], 573, 0, __PYX_ERR(1, 573, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[114])) + __Pyx_RefNannySetupContext("fast_Not_call", 0); + __Pyx_TraceStartFunc("fast_Not_call", __pyx_f[0], 573, 0, 0, 0, __PYX_ERR(0, 573, __pyx_L1_error)); /* "hunter/_predicates.pyx":574 * @@ -20543,20 +21185,21 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struc * return not fast_call(self.predicate, event) # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(574,0,__PYX_ERR(1, 574, __pyx_L1_error)) +*/ + __Pyx_TraceLine(574,1,0,__PYX_ERR(0, 574, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_v_self->predicate; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 574, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 574, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 574, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyBool_FromLong((!__pyx_t_3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 574, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBool_FromLong((!__pyx_t_3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 574, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":573 @@ -20565,17 +21208,23 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struc * cdef inline fast_Not_call(Not self, Event event): # <<<<<<<<<<<<<< * return not fast_call(self.predicate, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 573, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_Not_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20586,22 +21235,23 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Not_call(struc * cdef inline fast_call(callable, Event event): # <<<<<<<<<<<<<< * if type(callable) is Query: * return fast_Query_call( callable, event) - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject *__pyx_v_callable, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_5; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_call", 1); - __Pyx_TraceCall("fast_call", __pyx_f[1], 577, 0, __PYX_ERR(1, 577, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[115])) + __Pyx_RefNannySetupContext("fast_call", 0); + __Pyx_TraceStartFunc("fast_call", __pyx_f[0], 577, 0, 0, 0, __PYX_ERR(0, 577, __pyx_L1_error)); /* "hunter/_predicates.pyx":578 * @@ -20609,9 +21259,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * if type(callable) is Query: # <<<<<<<<<<<<<< * return fast_Query_call( callable, event) * elif type(callable) is Or: - */ - __Pyx_TraceLine(578,0,__PYX_ERR(1, 578, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Query)); +*/ + __Pyx_TraceLine(578,6,0,__PYX_ERR(0, 578, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":579 @@ -20620,13 +21270,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_Query_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is Or: * return fast_Or_call( callable, event) - */ - __Pyx_TraceLine(579,0,__PYX_ERR(1, 579, __pyx_L1_error)) +*/ + __Pyx_TraceLine(579,7,0,__PYX_ERR(0, 579, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Query_call(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 579, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Query_call(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 7, 0, __PYX_ERR(0, 579, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":578 @@ -20635,7 +21286,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * if type(callable) is Query: # <<<<<<<<<<<<<< * return fast_Query_call( callable, event) * elif type(callable) is Or: - */ +*/ } /* "hunter/_predicates.pyx":580 @@ -20644,9 +21295,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is Or: # <<<<<<<<<<<<<< * return fast_Or_call( callable, event) * elif type(callable) is And: - */ - __Pyx_TraceLine(580,0,__PYX_ERR(1, 580, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Or)); +*/ + __Pyx_TraceLine(580,17,0,__PYX_ERR(0, 580, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":581 @@ -20655,13 +21306,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_Or_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is And: * return fast_And_call( callable, event) - */ - __Pyx_TraceLine(581,0,__PYX_ERR(1, 581, __pyx_L1_error)) +*/ + __Pyx_TraceLine(581,18,0,__PYX_ERR(0, 581, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Or_call(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 581, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Or_call(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 581, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":580 @@ -20670,7 +21322,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is Or: # <<<<<<<<<<<<<< * return fast_Or_call( callable, event) * elif type(callable) is And: - */ +*/ } /* "hunter/_predicates.pyx":582 @@ -20679,9 +21331,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is And: # <<<<<<<<<<<<<< * return fast_And_call( callable, event) * elif type(callable) is Not: - */ - __Pyx_TraceLine(582,0,__PYX_ERR(1, 582, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_And)); +*/ + __Pyx_TraceLine(582,28,0,__PYX_ERR(0, 582, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":583 @@ -20690,13 +21342,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_And_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is Not: * return fast_Not_call( callable, event) - */ - __Pyx_TraceLine(583,0,__PYX_ERR(1, 583, __pyx_L1_error)) +*/ + __Pyx_TraceLine(583,29,0,__PYX_ERR(0, 583, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_And_call(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 583, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_And_call(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(0, 583, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":582 @@ -20705,7 +21358,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is And: # <<<<<<<<<<<<<< * return fast_And_call( callable, event) * elif type(callable) is Not: - */ +*/ } /* "hunter/_predicates.pyx":584 @@ -20714,9 +21367,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is Not: # <<<<<<<<<<<<<< * return fast_Not_call( callable, event) * elif type(callable) is When: - */ - __Pyx_TraceLine(584,0,__PYX_ERR(1, 584, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Not)); +*/ + __Pyx_TraceLine(584,39,0,__PYX_ERR(0, 584, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":585 @@ -20725,13 +21378,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_Not_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is When: * return fast_When_call( callable, event) - */ - __Pyx_TraceLine(585,0,__PYX_ERR(1, 585, __pyx_L1_error)) +*/ + __Pyx_TraceLine(585,40,0,__PYX_ERR(0, 585, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Not_call(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 585, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Not_call(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 40, 0, __PYX_ERR(0, 585, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":584 @@ -20740,7 +21394,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is Not: # <<<<<<<<<<<<<< * return fast_Not_call( callable, event) * elif type(callable) is When: - */ +*/ } /* "hunter/_predicates.pyx":586 @@ -20749,9 +21403,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is When: # <<<<<<<<<<<<<< * return fast_When_call( callable, event) * elif type(callable) is From: - */ - __Pyx_TraceLine(586,0,__PYX_ERR(1, 586, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_When)); +*/ + __Pyx_TraceLine(586,50,0,__PYX_ERR(0, 586, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":587 @@ -20760,13 +21414,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_When_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is From: * return fast_From_call( callable, event) - */ - __Pyx_TraceLine(587,0,__PYX_ERR(1, 587, __pyx_L1_error)) +*/ + __Pyx_TraceLine(587,51,0,__PYX_ERR(0, 587, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_When_call(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 587, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_When_call(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 51, 0, __PYX_ERR(0, 587, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":586 @@ -20775,7 +21430,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is When: # <<<<<<<<<<<<<< * return fast_When_call( callable, event) * elif type(callable) is From: - */ +*/ } /* "hunter/_predicates.pyx":588 @@ -20784,9 +21439,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is From: # <<<<<<<<<<<<<< * return fast_From_call( callable, event) * elif type(callable) is Backlog: - */ - __Pyx_TraceLine(588,0,__PYX_ERR(1, 588, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_From)); +*/ + __Pyx_TraceLine(588,61,0,__PYX_ERR(0, 588, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":589 @@ -20795,13 +21450,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_From_call( callable, event) # <<<<<<<<<<<<<< * elif type(callable) is Backlog: * return fast_Backlog_call( callable, event) - */ - __Pyx_TraceLine(589,0,__PYX_ERR(1, 589, __pyx_L1_error)) +*/ + __Pyx_TraceLine(589,62,0,__PYX_ERR(0, 589, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_From_call(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 589, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_From_call(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 62, 0, __PYX_ERR(0, 589, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":588 @@ -20810,7 +21466,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is From: # <<<<<<<<<<<<<< * return fast_From_call( callable, event) * elif type(callable) is Backlog: - */ +*/ } /* "hunter/_predicates.pyx":590 @@ -20819,9 +21475,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is Backlog: # <<<<<<<<<<<<<< * return fast_Backlog_call( callable, event) * else: - */ - __Pyx_TraceLine(590,0,__PYX_ERR(1, 590, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog)); +*/ + __Pyx_TraceLine(590,72,0,__PYX_ERR(0, 590, __pyx_L1_error)) + __pyx_t_1 = (((PyObject *)Py_TYPE(__pyx_v_callable)) == ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog)); if (__pyx_t_1) { /* "hunter/_predicates.pyx":591 @@ -20830,13 +21486,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return fast_Backlog_call( callable, event) # <<<<<<<<<<<<<< * else: * return callable(event) - */ - __Pyx_TraceLine(591,0,__PYX_ERR(1, 591, __pyx_L1_error)) +*/ + __Pyx_TraceLine(591,73,0,__PYX_ERR(0, 591, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 591, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_callable), __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 73, 0, __PYX_ERR(0, 591, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":590 @@ -20845,7 +21502,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * elif type(callable) is Backlog: # <<<<<<<<<<<<<< * return fast_Backlog_call( callable, event) * else: - */ +*/ } /* "hunter/_predicates.pyx":593 @@ -20854,35 +21511,36 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * return callable(event) # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(593,0,__PYX_ERR(1, 593, __pyx_L1_error)) +*/ + __Pyx_TraceLine(593,79,0,__PYX_ERR(0, 593, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); + __pyx_t_3 = NULL; __Pyx_INCREF(__pyx_v_callable); - __pyx_t_3 = __pyx_v_callable; __pyx_t_4 = NULL; - __pyx_t_5 = 0; + __pyx_t_4 = __pyx_v_callable; + __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); + assert(__pyx_t_3); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_4, __pyx__function); + __pyx_t_5 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_v_event)}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 593, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, ((PyObject *)__pyx_v_event)}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_r = __pyx_t_2; __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 79, 0, __PYX_ERR(0, 593, __pyx_L1_error)); goto __pyx_L0; } @@ -20892,18 +21550,24 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * cdef inline fast_call(callable, Event event): # <<<<<<<<<<<<<< * if type(callable) is Query: * return fast_Query_call( callable, event) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 577, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -20914,7 +21578,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_call(PyObject * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): # <<<<<<<<<<<<<< * self.action = action() if isclass(action) and issubclass(action, Action) else action * if not isinstance(self.action, ColorStreamAction): - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -20935,114 +21599,98 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_condition,&__pyx_n_s_size,&__pyx_n_s_stack,&__pyx_n_s_vars,&__pyx_n_s_strip,&__pyx_n_s_action,&__pyx_n_s_filter,0}; - values[1] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)__pyx_int_100)); - values[2] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)__pyx_int_10)); - values[3] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_False)); - values[4] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_True)); - values[5] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); - values[6] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_condition,&__pyx_mstate_global->__pyx_n_u_size,&__pyx_mstate_global->__pyx_n_u_stack,&__pyx_mstate_global->__pyx_n_u_vars,&__pyx_mstate_global->__pyx_n_u_strip,&__pyx_mstate_global->__pyx_n_u_action,&__pyx_mstate_global->__pyx_n_u_filter,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 598, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 7: values[6] = __Pyx_Arg_VARARGS(__pyx_args, 6); + case 7: + values[6] = __Pyx_ArgRef_VARARGS(__pyx_args, 6); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 6: values[5] = __Pyx_Arg_VARARGS(__pyx_args, 5); + case 6: + values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 5: values[4] = __Pyx_Arg_VARARGS(__pyx_args, 4); + case 5: + values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 4: values[3] = __Pyx_Arg_VARARGS(__pyx_args, 3); + case 4: + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 598, __pyx_L3_error) + if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_int_100)); + if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_int_10)); + if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)Py_False)); + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_True)); + if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[6]) values[6] = __Pyx_NewRef(((PyObject *)Py_None)); + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 7, i); __PYX_ERR(0, 598, __pyx_L3_error) } + } + } else { switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_condition)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; + case 7: + values[6] = __Pyx_ArgRef_VARARGS(__pyx_args, 6); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_size); - if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - } + case 6: + values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_stack); - if (value) { values[2] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - } + case 5: + values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 598, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 4: + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_vars); - if (value) { values[3] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - } + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 4: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_strip); - if (value) { values[4] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - } + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 598, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 5: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_action); - if (value) { values[5] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 6: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_filter); - if (value) { values[6] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 598, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 598, __pyx_L3_error) - } - } else { - switch (__pyx_nargs) { - case 7: values[6] = __Pyx_Arg_VARARGS(__pyx_args, 6); - CYTHON_FALLTHROUGH; - case 6: values[5] = __Pyx_Arg_VARARGS(__pyx_args, 5); - CYTHON_FALLTHROUGH; - case 5: values[4] = __Pyx_Arg_VARARGS(__pyx_args, 4); - CYTHON_FALLTHROUGH; - case 4: values[3] = __Pyx_Arg_VARARGS(__pyx_args, 3); - CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); - CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); - CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 598, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } + if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_int_100)); + if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_int_10)); + if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)Py_False)); + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_True)); + if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[6]) values[6] = __Pyx_NewRef(((PyObject *)Py_None)); } __pyx_v_condition = values[0]; __pyx_v_size = values[1]; @@ -21054,15 +21702,12 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 7, __pyx_nargs); __PYX_ERR(1, 598, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 0, 1, 7, __pyx_nargs); __PYX_ERR(0, 598, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Backlog.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -21071,11 +21716,8 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog___init__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), __pyx_v_condition, __pyx_v_size, __pyx_v_stack, __pyx_v_vars, __pyx_v_strip, __pyx_v_action, __pyx_v_filter); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -21083,20 +21725,22 @@ static int __pyx_pw_6hunter_11_predicates_7Backlog_1__init__(PyObject *__pyx_v_s static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self, PyObject *__pyx_v_condition, PyObject *__pyx_v_size, PyObject *__pyx_v_stack, PyObject *__pyx_v_vars, PyObject *__pyx_v_strip, PyObject *__pyx_v_action, PyObject *__pyx_v_filter) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; + size_t __pyx_t_6; int __pyx_t_7; + int __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); - __Pyx_TraceCall("__init__", __pyx_f[1], 598, 0, __PYX_ERR(1, 598, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[116])) + __Pyx_RefNannySetupContext("__init__", 0); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 598, 0, 0, 0, __PYX_ERR(0, 598, __pyx_L1_error)); /* "hunter/_predicates.pyx":599 * cdef class Backlog: @@ -21104,68 +21748,67 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.action = action() if isclass(action) and issubclass(action, Action) else action # <<<<<<<<<<<<<< * if not isinstance(self.action, ColorStreamAction): * raise TypeError("Action %r must be a ColorStreamAction." % self.action) - */ - __Pyx_TraceLine(599,0,__PYX_ERR(1, 599, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_isclass); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 599, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = NULL; - __pyx_t_6 = 0; +*/ + __Pyx_TraceLine(599,12,0,__PYX_ERR(0, 599, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_isclass); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 599, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_5, __pyx__function); + __pyx_t_6 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_action}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 599, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v_action}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__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_3)) __PYX_ERR(0, 599, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(1, 599, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 599, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_7) { } else { __pyx_t_2 = __pyx_t_7; goto __pyx_L3_bool_binop_done; } - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 599, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 599, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyObject_IsSubclass(__pyx_v_action, __pyx_t_3); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(1, 599, __pyx_L1_error) + __pyx_t_7 = PyObject_IsSubclass(__pyx_v_action, __pyx_t_3); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 599, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_2 = __pyx_t_7; __pyx_L3_bool_binop_done:; if (__pyx_t_2) { + __pyx_t_5 = NULL; __Pyx_INCREF(__pyx_v_action); - __pyx_t_4 = __pyx_v_action; __pyx_t_5 = NULL; - __pyx_t_6 = 0; + __pyx_t_4 = __pyx_v_action; + __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_6 = 1; - } + assert(__pyx_t_5); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_5); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_4, __pyx__function); + __pyx_t_6 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 0+__pyx_t_6); + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 599, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 599, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); } __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -21185,13 +21828,13 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * if not isinstance(self.action, ColorStreamAction): # <<<<<<<<<<<<<< * raise TypeError("Action %r must be a ColorStreamAction." % self.action) * self.condition = condition - */ - __Pyx_TraceLine(600,0,__PYX_ERR(1, 600, __pyx_L1_error)) +*/ + __Pyx_TraceLine(600,25,0,__PYX_ERR(0, 600, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->action; __Pyx_INCREF(__pyx_t_1); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ColorStreamAction); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 600, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_ColorStreamAction); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_IsInstance(__pyx_t_1, __pyx_t_3); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(1, 600, __pyx_L1_error) + __pyx_t_2 = PyObject_IsInstance(__pyx_t_1, __pyx_t_3); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 600, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = (!__pyx_t_2); @@ -21203,16 +21846,26 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * raise TypeError("Action %r must be a ColorStreamAction." % self.action) # <<<<<<<<<<<<<< * self.condition = condition * self.queue = deque(maxlen=size) - */ - __Pyx_TraceLine(601,0,__PYX_ERR(1, 601, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Action_r_must_be_a_ColorStreamAc, __pyx_v_self->action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 601, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 601, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); +*/ + __Pyx_TraceLine(601,29,0,__PYX_ERR(0, 601, __pyx_L1_error)) + __pyx_t_1 = NULL; + __Pyx_INCREF(__pyx_builtin_TypeError); + __pyx_t_4 = __pyx_builtin_TypeError; + __pyx_t_5 = __Pyx_PyUnicode_FormatSafe(__pyx_mstate_global->__pyx_kp_u_Action_r_must_be_a_ColorStreamAc, __pyx_v_self->action); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 601, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_t_5}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 601, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + } + __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(1, 601, __pyx_L1_error) + __PYX_ERR(0, 601, __pyx_L1_error) /* "hunter/_predicates.pyx":600 * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): @@ -21220,7 +21873,7 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * if not isinstance(self.action, ColorStreamAction): # <<<<<<<<<<<<<< * raise TypeError("Action %r must be a ColorStreamAction." % self.action) * self.condition = condition - */ +*/ } /* "hunter/_predicates.pyx":602 @@ -21229,8 +21882,8 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.condition = condition # <<<<<<<<<<<<<< * self.queue = deque(maxlen=size) * self.size = size - */ - __Pyx_TraceLine(602,0,__PYX_ERR(1, 602, __pyx_L1_error)) +*/ + __Pyx_TraceLine(602,34,0,__PYX_ERR(0, 602, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_condition); __Pyx_GIVEREF(__pyx_v_condition); __Pyx_GOTREF(__pyx_v_self->condition); @@ -21243,22 +21896,40 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.queue = deque(maxlen=size) # <<<<<<<<<<<<<< * self.size = size * self.stack = stack - */ - __Pyx_TraceLine(603,0,__PYX_ERR(1, 603, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_deque); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 603, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 603, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maxlen, __pyx_v_size) < 0) __PYX_ERR(1, 603, __pyx_L1_error) - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 603, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GIVEREF(__pyx_t_4); +*/ + __Pyx_TraceLine(603,40,0,__PYX_ERR(0, 603, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_deque); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 603, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = 1; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_5, __pyx__function); + __pyx_t_6 = 0; + } + #endif + { + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_4, NULL}; + __pyx_t_1 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 603, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_maxlen, __pyx_v_size, __pyx_t_1, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 603, __pyx_L1_error) + __pyx_t_3 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_5, __pyx_callargs+__pyx_t_6, (1-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_1); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 603, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + } + __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->queue); __Pyx_DECREF(__pyx_v_self->queue); - __pyx_v_self->queue = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_v_self->queue = __pyx_t_3; + __pyx_t_3 = 0; /* "hunter/_predicates.pyx":604 * self.condition = condition @@ -21266,10 +21937,10 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.size = size # <<<<<<<<<<<<<< * self.stack = stack * self.strip = strip - */ - __Pyx_TraceLine(604,0,__PYX_ERR(1, 604, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 604, __pyx_L1_error) - __pyx_v_self->size = __pyx_t_6; +*/ + __Pyx_TraceLine(604,45,0,__PYX_ERR(0, 604, __pyx_L1_error)) + __pyx_t_8 = __Pyx_PyLong_As_int(__pyx_v_size); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 604, __pyx_L1_error) + __pyx_v_self->size = __pyx_t_8; /* "hunter/_predicates.pyx":605 * self.queue = deque(maxlen=size) @@ -21277,10 +21948,10 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.stack = stack # <<<<<<<<<<<<<< * self.strip = strip * self.vars = vars - */ - __Pyx_TraceLine(605,0,__PYX_ERR(1, 605, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyInt_As_int(__pyx_v_stack); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 605, __pyx_L1_error) - __pyx_v_self->stack = __pyx_t_6; +*/ + __Pyx_TraceLine(605,48,0,__PYX_ERR(0, 605, __pyx_L1_error)) + __pyx_t_8 = __Pyx_PyLong_As_int(__pyx_v_stack); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 605, __pyx_L1_error) + __pyx_v_self->stack = __pyx_t_8; /* "hunter/_predicates.pyx":606 * self.size = size @@ -21288,9 +21959,9 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.strip = strip # <<<<<<<<<<<<<< * self.vars = vars * self._try_repr = self.action.try_repr if self.vars else None - */ - __Pyx_TraceLine(606,0,__PYX_ERR(1, 606, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_strip); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 606, __pyx_L1_error) +*/ + __Pyx_TraceLine(606,51,0,__PYX_ERR(0, 606, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_strip); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 606, __pyx_L1_error) __pyx_v_self->strip = __pyx_t_7; /* "hunter/_predicates.pyx":607 @@ -21299,9 +21970,9 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self.vars = vars # <<<<<<<<<<<<<< * self._try_repr = self.action.try_repr if self.vars else None * self._filter = filter - */ - __Pyx_TraceLine(607,0,__PYX_ERR(1, 607, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_vars); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 607, __pyx_L1_error) +*/ + __Pyx_TraceLine(607,54,0,__PYX_ERR(0, 607, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_vars); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 607, __pyx_L1_error) __pyx_v_self->vars = __pyx_t_7; /* "hunter/_predicates.pyx":608 @@ -21310,22 +21981,22 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self._try_repr = self.action.try_repr if self.vars else None # <<<<<<<<<<<<<< * self._filter = filter * - */ - __Pyx_TraceLine(608,0,__PYX_ERR(1, 608, __pyx_L1_error)) +*/ + __Pyx_TraceLine(608,61,0,__PYX_ERR(0, 608, __pyx_L1_error)) if (__pyx_v_self->vars) { - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_n_s_try_repr); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 608, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __pyx_t_3; - __pyx_t_3 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_mstate_global->__pyx_n_u_try_repr); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 608, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_3 = __pyx_t_5; + __pyx_t_5 = 0; } else { __Pyx_INCREF(Py_None); - __pyx_t_4 = Py_None; + __pyx_t_3 = Py_None; } - __Pyx_GIVEREF(__pyx_t_4); + __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_try_repr); __Pyx_DECREF(__pyx_v_self->_try_repr); - __pyx_v_self->_try_repr = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_v_self->_try_repr = __pyx_t_3; + __pyx_t_3 = 0; /* "hunter/_predicates.pyx":609 * self.vars = vars @@ -21333,8 +22004,8 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * self._filter = filter # <<<<<<<<<<<<<< * * def __call__(self, event): - */ - __Pyx_TraceLine(609,0,__PYX_ERR(1, 609, __pyx_L1_error)) +*/ + __Pyx_TraceLine(609,63,0,__PYX_ERR(0, 609, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_filter); __Pyx_GIVEREF(__pyx_v_filter); __Pyx_GOTREF(__pyx_v_self->_filter); @@ -21347,20 +22018,27 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * def __init__(self, condition, size=100, stack=10, vars=False, strip=True, action=None, filter=None): # <<<<<<<<<<<<<< * self.action = action() if isclass(action) and issubclass(action, Action) else action * if not isinstance(self.action, ColorStreamAction): - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 598, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 598, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -21371,7 +22049,7 @@ static int __pyx_pf_6hunter_11_predicates_7Backlog___init__(struct __pyx_obj_6hu * def __call__(self, event): # <<<<<<<<<<<<<< * return fast_Backlog_call(self, event) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -21386,54 +22064,46 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__p PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_event,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_event,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 611, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 611, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_event)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 611, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(1, 611, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 611, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, i); __PYX_ERR(0, 611, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 611, __pyx_L3_error) } __pyx_v_event = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 611, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 611, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Backlog.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -21442,11 +22112,8 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__p __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_2__call__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), __pyx_v_event); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -21454,14 +22121,15 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_3__call__(PyObject *__p static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self, PyObject *__pyx_v_event) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[1], 611, 0, __PYX_ERR(1, 611, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[117])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 611, 0, 0, 0, __PYX_ERR(0, 611, __pyx_L1_error)); /* "hunter/_predicates.pyx":612 * @@ -21469,14 +22137,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_ * return fast_Backlog_call(self, event) # <<<<<<<<<<<<<< * * def __str__(self): - */ - __Pyx_TraceLine(612,0,__PYX_ERR(1, 612, __pyx_L1_error)) +*/ + __Pyx_TraceLine(612,1,0,__PYX_ERR(0, 612, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - if (!(likely(((__pyx_v_event) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_event, __pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(1, 612, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(__pyx_v_self, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_event)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 612, __pyx_L1_error) + if (!(likely(((__pyx_v_event) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_event, __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(0, 612, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_Backlog_call(__pyx_v_self, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_event)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 612, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":611 @@ -21485,16 +22154,22 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_ * def __call__(self, event): # <<<<<<<<<<<<<< * return fast_Backlog_call(self, event) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 611, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -21505,7 +22180,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_2__call__(struct __pyx_ * def __str__(self): # <<<<<<<<<<<<<< * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( * self.condition, self.size, self.stack, self.vars, self.action, self._filter - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5__str__(PyObject *__pyx_v_self); /*proto*/ @@ -21524,17 +22199,22 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5__str__(PyObject *__py static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7[13]; + PyObject *__pyx_t_8 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 1); - __Pyx_TraceCall("__str__", __pyx_f[1], 614, 0, __PYX_ERR(1, 614, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[118])) + __Pyx_RefNannySetupContext("__str__", 0); + __Pyx_TraceStartFunc("__str__", __pyx_f[0], 614, 0, 0, 0, __PYX_ERR(0, 614, __pyx_L1_error)); /* "hunter/_predicates.pyx":615 * @@ -21542,8 +22222,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) - */ - __Pyx_TraceLine(615,0,__PYX_ERR(1, 615, __pyx_L1_error)) +*/ + __Pyx_TraceLine(615,1,0,__PYX_ERR(0, 615, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":616 @@ -21552,34 +22232,33 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o * self.condition, self.size, self.stack, self.vars, self.action, self._filter # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(616,0,__PYX_ERR(1, 616, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 616, __pyx_L1_error) +*/ + __Pyx_TraceLine(616,4,0,__PYX_ERR(0, 616, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->condition), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 616, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyUnicode_From_int(__pyx_v_self->size, 0, ' ', 'd'); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 616, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyUnicode_From_int(__pyx_v_self->stack, 0, ' ', 'd'); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 616, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyUnicode_FromBInt_bint(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition)) __PYX_ERR(1, 616, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(1, 616, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2)) __PYX_ERR(1, 616, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_3)) __PYX_ERR(1, 616, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->action); - __Pyx_GIVEREF(__pyx_v_self->action); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_v_self->action)) __PYX_ERR(1, 616, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_filter); - __Pyx_GIVEREF(__pyx_v_self->_filter); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 5, __pyx_v_self->_filter)) __PYX_ERR(1, 616, __pyx_L1_error); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_3 = 0; + __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->action), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 616, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->_filter), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 616, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_Backlog; + __pyx_t_7[1] = __pyx_t_1; + __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_size_2; + __pyx_t_7[3] = __pyx_t_2; + __pyx_t_7[4] = __pyx_mstate_global->__pyx_kp_u_stack_2; + __pyx_t_7[5] = __pyx_t_3; + __pyx_t_7[6] = __pyx_mstate_global->__pyx_kp_u_vars_2; + __pyx_t_7[7] = __pyx_t_4; + __pyx_t_7[8] = __pyx_mstate_global->__pyx_kp_u_action_2; + __pyx_t_7[9] = __pyx_t_5; + __pyx_t_7[10] = __pyx_mstate_global->__pyx_kp_u_filter_2; + __pyx_t_7[11] = __pyx_t_6; + __pyx_t_7[12] = __pyx_mstate_global->__pyx_kp_u__7; /* "hunter/_predicates.pyx":615 * @@ -21587,13 +22266,20 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) - */ - __Pyx_TraceLine(615,0,__PYX_ERR(1, 615, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 615, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); +*/ + __Pyx_TraceLine(615,2,0,__PYX_ERR(0, 615, __pyx_L1_error)) + __pyx_t_8 = __Pyx_PyUnicode_Join(__pyx_t_7, 13, 8 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 7 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 9 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 615, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_r = __pyx_t_8; + __pyx_t_8 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 615, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":614 @@ -21602,7 +22288,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o * def __str__(self): # <<<<<<<<<<<<<< * return 'Backlog(%s, size=%s, stack=%s, vars=%s, action=%s, filter=%s)' % ( * self.condition, self.size, self.stack, self.vars, self.action, self._filter - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -21610,11 +22296,20 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 614, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -21625,7 +22320,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4__str__(struct __pyx_o * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * self.condition, self.size, self.stack, self.vars, self.action, self._filter - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -21644,17 +22339,22 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7__repr__(PyObject *__p static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7[13]; + PyObject *__pyx_t_8 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[1], 619, 0, __PYX_ERR(1, 619, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[119])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 619, 0, 0, 0, __PYX_ERR(0, 619, __pyx_L1_error)); /* "hunter/_predicates.pyx":620 * @@ -21662,8 +22362,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) - */ - __Pyx_TraceLine(620,0,__PYX_ERR(1, 620, __pyx_L1_error)) +*/ + __Pyx_TraceLine(620,1,0,__PYX_ERR(0, 620, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":621 @@ -21672,34 +22372,33 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ * self.condition, self.size, self.stack, self.vars, self.action, self._filter # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(621,0,__PYX_ERR(1, 621, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 621, __pyx_L1_error) +*/ + __Pyx_TraceLine(621,4,0,__PYX_ERR(0, 621, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->condition), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 621, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyUnicode_From_int(__pyx_v_self->size, 0, ' ', 'd'); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 621, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyUnicode_From_int(__pyx_v_self->stack, 0, ' ', 'd'); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 621, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyUnicode_FromBInt_bint(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self->condition)) __PYX_ERR(1, 621, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1)) __PYX_ERR(1, 621, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2)) __PYX_ERR(1, 621, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_3)) __PYX_ERR(1, 621, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->action); - __Pyx_GIVEREF(__pyx_v_self->action); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 4, __pyx_v_self->action)) __PYX_ERR(1, 621, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_filter); - __Pyx_GIVEREF(__pyx_v_self->_filter); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 5, __pyx_v_self->_filter)) __PYX_ERR(1, 621, __pyx_L1_error); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_3 = 0; + __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->action), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 621, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->_filter), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 621, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_hunter_predicates_Backlog_condi; + __pyx_t_7[1] = __pyx_t_1; + __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_size_2; + __pyx_t_7[3] = __pyx_t_2; + __pyx_t_7[4] = __pyx_mstate_global->__pyx_kp_u_stack_2; + __pyx_t_7[5] = __pyx_t_3; + __pyx_t_7[6] = __pyx_mstate_global->__pyx_kp_u_vars_2; + __pyx_t_7[7] = __pyx_t_4; + __pyx_t_7[8] = __pyx_mstate_global->__pyx_kp_u_action_2; + __pyx_t_7[9] = __pyx_t_5; + __pyx_t_7[10] = __pyx_mstate_global->__pyx_kp_u_filter_2; + __pyx_t_7[11] = __pyx_t_6; + __pyx_t_7[12] = __pyx_mstate_global->__pyx_kp_u__8; /* "hunter/_predicates.pyx":620 * @@ -21707,13 +22406,20 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ * return '' % ( # <<<<<<<<<<<<<< * self.condition, self.size, self.stack, self.vars, self.action, self._filter * ) - */ - __Pyx_TraceLine(620,0,__PYX_ERR(1, 620, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_hunter_predicates_Backlog_condi, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 620, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); +*/ + __Pyx_TraceLine(620,2,0,__PYX_ERR(0, 620, __pyx_L1_error)) + __pyx_t_8 = __Pyx_PyUnicode_Join(__pyx_t_7, 13, 38 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 7 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 8 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 9 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 620, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_r = __pyx_t_8; + __pyx_t_8 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 620, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":619 @@ -21722,7 +22428,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * self.condition, self.size, self.stack, self.vars, self.action, self._filter - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -21730,11 +22436,20 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 619, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -21745,7 +22460,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6__repr__(struct __pyx_ * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Backlog) and - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9__eq__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -21764,7 +22479,7 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9__eq__(PyObject *__pyx static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -21772,8 +22487,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__eq__", 1); - __Pyx_TraceCall("__eq__", __pyx_f[1], 624, 0, __PYX_ERR(1, 624, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[120])) + __Pyx_RefNannySetupContext("__eq__", 0); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 624, 0, 0, 0, __PYX_ERR(0, 624, __pyx_L1_error)); /* "hunter/_predicates.pyx":625 * @@ -21781,8 +22497,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * return ( # <<<<<<<<<<<<<< * isinstance(other, Backlog) and * self.condition == ( other).condition and - */ - __Pyx_TraceLine(625,0,__PYX_ERR(1, 625, __pyx_L1_error)) +*/ + __Pyx_TraceLine(625,1,0,__PYX_ERR(0, 625, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_predicates.pyx":626 @@ -21791,12 +22507,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * isinstance(other, Backlog) and # <<<<<<<<<<<<<< * self.condition == ( other).condition and * self.size == ( other).size and - */ - __Pyx_TraceLine(626,0,__PYX_ERR(1, 626, __pyx_L1_error)) - __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_6hunter_11_predicates_Backlog); +*/ + __Pyx_TraceLine(626,5,0,__PYX_ERR(0, 626, __pyx_L1_error)) + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_other, __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 626, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 626, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -21809,10 +22525,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * self.condition == ( other).condition and # <<<<<<<<<<<<<< * self.size == ( other).size and * self.stack == ( other).stack and - */ - __Pyx_TraceLine(627,0,__PYX_ERR(1, 627, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 627, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 627, __pyx_L1_error) +*/ + __Pyx_TraceLine(627,12,0,__PYX_ERR(0, 627, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->condition, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->condition, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 627, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 627, __pyx_L1_error) if (__pyx_t_2) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } else { @@ -21828,12 +22544,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * self.size == ( other).size and # <<<<<<<<<<<<<< * self.stack == ( other).stack and * self.vars == ( other).vars and - */ - __Pyx_TraceLine(628,0,__PYX_ERR(1, 628, __pyx_L1_error)) +*/ + __Pyx_TraceLine(628,16,0,__PYX_ERR(0, 628, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->size == ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->size); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 628, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -21846,12 +22562,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * self.stack == ( other).stack and # <<<<<<<<<<<<<< * self.vars == ( other).vars and * self.action == ( other).action - */ - __Pyx_TraceLine(629,0,__PYX_ERR(1, 629, __pyx_L1_error)) +*/ + __Pyx_TraceLine(629,23,0,__PYX_ERR(0, 629, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->stack == ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->stack); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 629, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -21864,12 +22580,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * self.vars == ( other).vars and # <<<<<<<<<<<<<< * self.action == ( other).action * ) - */ - __Pyx_TraceLine(630,0,__PYX_ERR(1, 630, __pyx_L1_error)) +*/ + __Pyx_TraceLine(630,30,0,__PYX_ERR(0, 630, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->vars == ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->vars); if (__pyx_t_2) { } else { - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 630, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 630, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; @@ -21882,15 +22598,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * self.action == ( other).action # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(631,0,__PYX_ERR(1, 631, __pyx_L1_error)) - __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->action, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->action, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 631, __pyx_L1_error) +*/ + __Pyx_TraceLine(631,40,0,__PYX_ERR(0, 631, __pyx_L1_error)) + __pyx_t_3 = PyObject_RichCompare(__pyx_v_self->action, ((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_other)->action, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 631, __pyx_L1_error) __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_L3_bool_binop_done:; __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 625, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":624 @@ -21899,17 +22616,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * def __eq__(self, other): # <<<<<<<<<<<<<< * return ( * isinstance(other, Backlog) and - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 624, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -21920,7 +22643,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_8__eq__(struct __pyx_ob * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_11__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -21939,15 +22662,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_11__or__(PyObject *__py static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__or__", 1); - __Pyx_TraceCall("__or__", __pyx_f[1], 634, 0, __PYX_ERR(1, 634, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[121])) + __Pyx_RefNannySetupContext("__or__", 0); + __Pyx_TraceStartFunc("__or__", __pyx_f[0], 634, 0, 0, 0, __PYX_ERR(0, 634, __pyx_L1_error)); /* "hunter/_predicates.pyx":635 * @@ -21955,22 +22681,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__py * return Or(self, other) # <<<<<<<<<<<<<< * * def __and__(self, other): - */ - __Pyx_TraceLine(635,0,__PYX_ERR(1, 635, __pyx_L1_error)) +*/ + __Pyx_TraceLine(635,1,0,__PYX_ERR(0, 635, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 635, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 635, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 635, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 635, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 635, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 635, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":634 @@ -21979,17 +22707,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__py * def __or__(self, other): # <<<<<<<<<<<<<< * return Or(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 634, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__or__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22000,7 +22735,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_10__or__(PyObject *__py * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_13__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ @@ -22019,15 +22754,18 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_13__and__(PyObject *__p static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__and__", 1); - __Pyx_TraceCall("__and__", __pyx_f[1], 637, 0, __PYX_ERR(1, 637, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[122])) + __Pyx_RefNannySetupContext("__and__", 0); + __Pyx_TraceStartFunc("__and__", __pyx_f[0], 637, 0, 0, 0, __PYX_ERR(0, 637, __pyx_L1_error)); /* "hunter/_predicates.pyx":638 * @@ -22035,22 +22773,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__p * return And(self, other) # <<<<<<<<<<<<<< * * def __invert__(self): - */ - __Pyx_TraceLine(638,0,__PYX_ERR(1, 638, __pyx_L1_error)) +*/ + __Pyx_TraceLine(638,1,0,__PYX_ERR(0, 638, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 638, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self)) __PYX_ERR(1, 638, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_other); - __Pyx_GIVEREF(__pyx_v_other); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other)) __PYX_ERR(1, 638, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 638, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_self, __pyx_v_other}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 638, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 638, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":637 @@ -22059,17 +22799,24 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__p * def __and__(self, other): # <<<<<<<<<<<<<< * return And(self, other) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 637, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__and__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22080,7 +22827,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_12__and__(PyObject *__p * def __invert__(self): # <<<<<<<<<<<<<< * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_15__invert__(PyObject *__pyx_v_self); /*proto*/ @@ -22099,16 +22846,23 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_15__invert__(PyObject * static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + size_t __pyx_t_7; + PyObject *__pyx_t_8 = NULL; + PyObject *__pyx_t_9 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__invert__", 1); - __Pyx_TraceCall("__invert__", __pyx_f[1], 640, 0, __PYX_ERR(1, 640, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[123])) + __Pyx_RefNannySetupContext("__invert__", 0); + __Pyx_TraceStartFunc("__invert__", __pyx_f[0], 640, 0, 0, 0, __PYX_ERR(0, 640, __pyx_L1_error)); /* "hunter/_predicates.pyx":641 * @@ -22116,38 +22870,54 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __p * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) # <<<<<<<<<<<<<< * * def filter(self, *predicates, **kwargs): - */ - __Pyx_TraceLine(641,0,__PYX_ERR(1, 641, __pyx_L1_error)) +*/ + __Pyx_TraceLine(641,1,0,__PYX_ERR(0, 641, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_CallOneArg(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_v_self->condition); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1)) __PYX_ERR(1, 641, __pyx_L1_error); + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog); + __pyx_t_5 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_6 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __pyx_t_7 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_self->condition}; + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 641, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_4); + } + __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 641, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_5 = __Pyx_PyLong_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 641, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_8 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 641, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_7 = 1; + { + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 5 : 0)] = {__pyx_t_2, ((PyObject *)__pyx_t_4)}; + __pyx_t_9 = __Pyx_MakeVectorcallBuilderKwds(5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 641, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_size, __pyx_t_6, __pyx_t_9, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 641, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_stack, __pyx_t_5, __pyx_t_9, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 641, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_vars, __pyx_t_8, __pyx_t_9, __pyx_callargs+2, 2) < 0) __PYX_ERR(0, 641, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_action, __pyx_v_self->action, __pyx_t_9, __pyx_callargs+2, 3) < 0) __PYX_ERR(0, 641, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_filter, __pyx_v_self->_filter, __pyx_t_9, __pyx_callargs+2, 4) < 0) __PYX_ERR(0, 641, __pyx_L1_error) + __pyx_t_1 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_3, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_9); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF((PyObject *)__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 641, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_r = ((PyObject *)__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_size, __pyx_t_3) < 0) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_stack, __pyx_t_3) < 0) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_vars, __pyx_t_3) < 0) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_action, __pyx_v_self->action) < 0) __PYX_ERR(1, 641, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_v_self->_filter) < 0) __PYX_ERR(1, 641, __pyx_L1_error) - __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 641, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":640 @@ -22156,18 +22926,29 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __p * def __invert__(self): # <<<<<<<<<<<<<< * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) * - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 640, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__invert__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22178,11 +22959,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_14__invert__(struct __p * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< * from hunter import _merge * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_17filter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_17filter = {"filter", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_17filter, METH_VARARGS|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_17filter = {"filter", (PyCFunction)(void(*)(void))(PyCFunctionWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_17filter, METH_VARARGS|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_17filter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_predicates = 0; PyObject *__pyx_v_kwargs = 0; @@ -22191,14 +22972,16 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_17filter(PyObject *__py PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("filter (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "filter", 1))) return NULL; - if (unlikely(__pyx_kwds)) { + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (__pyx_kwds_len > 0) { + if (unlikely(__Pyx_CheckKeywordStrings("filter", __pyx_kwds) == -1)) return NULL; __pyx_v_kwargs = __Pyx_KwargsAsDict_VARARGS(__pyx_kwds, __pyx_kwvalues); if (unlikely(!__pyx_v_kwargs)) return NULL; __Pyx_GOTREF(__pyx_v_kwargs); @@ -22221,19 +23004,24 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_17filter(PyObject *__py static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self, PyObject *__pyx_v_predicates, PyObject *__pyx_v_kwargs) { PyObject *__pyx_v__merge = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_t_3; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + PyObject *__pyx_t_9 = NULL; + size_t __pyx_t_10; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__24) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[124])) __Pyx_RefNannySetupContext("filter", 0); - __Pyx_TraceCall("filter", __pyx_f[1], 643, 0, __PYX_ERR(1, 643, __pyx_L1_error)); + __Pyx_TraceStartFunc("filter", __pyx_f[0], 643, 0, 0, 0, __PYX_ERR(0, 643, __pyx_L1_error)); __Pyx_INCREF(__pyx_v_predicates); /* "hunter/_predicates.pyx":644 @@ -22242,17 +23030,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * from hunter import _merge # <<<<<<<<<<<<<< * * if self._filter is not None: - */ - __Pyx_TraceLine(644,0,__PYX_ERR(1, 644, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 644, __pyx_L1_error) +*/ + __Pyx_TraceLine(644,3,0,__PYX_ERR(0, 644, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_merge); - __Pyx_GIVEREF(__pyx_n_s_merge); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_merge)) __PYX_ERR(1, 644, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_hunter, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 644, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_merge); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_merge); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_merge) != (0)) __PYX_ERR(0, 644, __pyx_L1_error); + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_hunter, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_merge); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 644, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_merge); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v__merge = __pyx_t_1; @@ -22265,8 +23053,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * if self._filter is not None: # <<<<<<<<<<<<<< * predicates = (self._filter, *predicates) * - */ - __Pyx_TraceLine(646,0,__PYX_ERR(1, 646, __pyx_L1_error)) +*/ + __Pyx_TraceLine(646,8,0,__PYX_ERR(0, 646, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_self->_filter != Py_None); if (__pyx_t_3) { @@ -22276,20 +23064,20 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * predicates = (self._filter, *predicates) # <<<<<<<<<<<<<< * * return Backlog( - */ - __Pyx_TraceLine(647,0,__PYX_ERR(1, 647, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 647, __pyx_L1_error) +*/ + __Pyx_TraceLine(647,11,0,__PYX_ERR(0, 647, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_self->_filter); __Pyx_GIVEREF(__pyx_v_self->_filter); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->_filter)) __PYX_ERR(1, 647, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->_filter) != (0)) __PYX_ERR(0, 647, __pyx_L1_error); __pyx_t_2 = __pyx_t_1; __pyx_t_1 = 0; - if (__Pyx_PyList_Extend(__pyx_t_2, __pyx_v_predicates) < 0) __PYX_ERR(1, 647, __pyx_L1_error) + if (__Pyx_PyList_Extend(__pyx_t_2, __pyx_v_predicates) < 0) __PYX_ERR(0, 647, __pyx_L1_error) { PyObject *__pyx_temp = PyList_AsTuple(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); - __pyx_t_2 = __pyx_temp; if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 647, __pyx_L1_error) + __pyx_t_2 = __pyx_temp; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_predicates, ((PyObject*)__pyx_t_2)); @@ -22301,7 +23089,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * if self._filter is not None: # <<<<<<<<<<<<<< * predicates = (self._filter, *predicates) * - */ +*/ } /* "hunter/_predicates.pyx":649 @@ -22310,23 +23098,12 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * return Backlog( # <<<<<<<<<<<<<< * self.condition, * size=self.size, stack=self.stack, vars=self.vars, action=self.action, - */ - __Pyx_TraceLine(649,0,__PYX_ERR(1, 649, __pyx_L1_error)) +*/ + __Pyx_TraceLine(649,13,0,__PYX_ERR(0, 649, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - - /* "hunter/_predicates.pyx":650 - * - * return Backlog( - * self.condition, # <<<<<<<<<<<<<< - * size=self.size, stack=self.stack, vars=self.vars, action=self.action, - * filter=_merge(*predicates, **kwargs) - */ - __Pyx_TraceLine(650,0,__PYX_ERR(1, 650, __pyx_L1_error)) - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 649, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_self->condition); - __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self->condition)) __PYX_ERR(1, 649, __pyx_L1_error); + __pyx_t_1 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog); + __pyx_t_4 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog); /* "hunter/_predicates.pyx":651 * return Backlog( @@ -22334,23 +23111,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * size=self.size, stack=self.stack, vars=self.vars, action=self.action, # <<<<<<<<<<<<<< * filter=_merge(*predicates, **kwargs) * ) - */ - __Pyx_TraceLine(651,0,__PYX_ERR(1, 651, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_size, __pyx_t_4) < 0) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_stack, __pyx_t_4) < 0) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_vars, __pyx_t_4) < 0) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_action, __pyx_v_self->action) < 0) __PYX_ERR(1, 651, __pyx_L1_error) +*/ + __Pyx_TraceLine(651,20,0,__PYX_ERR(0, 651, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyLong_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 651, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 651, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 651, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); /* "hunter/_predicates.pyx":652 * self.condition, @@ -22358,30 +23126,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * filter=_merge(*predicates, **kwargs) # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(652,0,__PYX_ERR(1, 652, __pyx_L1_error)) - __pyx_t_4 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 652, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v__merge, __pyx_v_predicates, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 652, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_t_5) < 0) __PYX_ERR(1, 651, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "hunter/_predicates.pyx":649 - * predicates = (self._filter, *predicates) - * - * return Backlog( # <<<<<<<<<<<<<< - * self.condition, - * size=self.size, stack=self.stack, vars=self.vars, action=self.action, - */ - __Pyx_TraceLine(649,0,__PYX_ERR(1, 649, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 649, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(652,34,0,__PYX_ERR(0, 652, __pyx_L1_error)) + __pyx_t_8 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 652, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_v__merge, __pyx_v_predicates, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 652, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __pyx_t_10 = 1; + { + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 5 : 0)] = {__pyx_t_1, __pyx_v_self->condition}; + __pyx_t_8 = __Pyx_MakeVectorcallBuilderKwds(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 649, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_size, __pyx_t_5, __pyx_t_8, __pyx_callargs+2, 0) < 0) __PYX_ERR(0, 649, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_stack, __pyx_t_6, __pyx_t_8, __pyx_callargs+2, 1) < 0) __PYX_ERR(0, 649, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_vars, __pyx_t_7, __pyx_t_8, __pyx_callargs+2, 2) < 0) __PYX_ERR(0, 649, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_action, __pyx_v_self->action, __pyx_t_8, __pyx_callargs+2, 3) < 0) __PYX_ERR(0, 649, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_filter, __pyx_t_9, __pyx_t_8, __pyx_callargs+2, 4) < 0) __PYX_ERR(0, 649, __pyx_L1_error) + __pyx_t_2 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_4, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_8); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 649, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_2); + } + __pyx_r = ((PyObject *)__pyx_t_2); + __pyx_t_2 = 0; + __Pyx_TraceReturnValue(__pyx_r, 13, 0, __PYX_ERR(0, 649, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":643 @@ -22390,7 +23165,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< * from hunter import _merge * - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -22398,13 +23173,23 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 643, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.filter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_predicates); __Pyx_XDECREF(__pyx_v__merge); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22415,7 +23200,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_16filter(struct __pyx_o * readonly object condition # <<<<<<<<<<<<<< * readonly int size * readonly int stack - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9condition_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22434,25 +23219,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9condition_1__get__(PyO static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9condition___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 60, 0, __PYX_ERR(2, 60, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[125])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 60, 0, 0, 0, __PYX_ERR(2, 60, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->condition); __pyx_r = __pyx_v_self->condition; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 60, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 60, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.condition.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22463,7 +23256,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9condition___get__(stru * readonly int size # <<<<<<<<<<<<<< * readonly int stack * readonly bint vars - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4size_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22482,29 +23275,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4size_1__get__(PyObject static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4size___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 61, 0, __PYX_ERR(2, 61, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[126])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 61, 0, 0, 0, __PYX_ERR(2, 61, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 61, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 61, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 61, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.size.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22515,7 +23316,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4size___get__(struct __ * readonly int stack # <<<<<<<<<<<<<< * readonly bint vars * readonly bint strip - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5stack_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22534,29 +23335,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5stack_1__get__(PyObjec static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5stack___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 62, 0, __PYX_ERR(2, 62, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[127])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 62, 0, 0, 0, __PYX_ERR(2, 62, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 62, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 62, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 62, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.stack.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22567,7 +23376,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5stack___get__(struct _ * readonly bint vars # <<<<<<<<<<<<<< * readonly bint strip * readonly object action - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4vars_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22586,29 +23395,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_4vars_1__get__(PyObject static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4vars___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 63, 0, __PYX_ERR(2, 63, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[128])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 63, 0, 0, 0, __PYX_ERR(2, 63, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 63, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 63, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.vars.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22619,7 +23436,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_4vars___get__(struct __ * readonly bint strip # <<<<<<<<<<<<<< * readonly object action * readonly object _try_repr - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5strip_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22638,29 +23455,37 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5strip_1__get__(PyObjec static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5strip___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 64, 0, __PYX_ERR(2, 64, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[129])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 64, 0, 0, 0, __PYX_ERR(2, 64, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->strip); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 64, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 64, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 64, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.strip.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22671,7 +23496,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5strip___get__(struct _ * readonly object action # <<<<<<<<<<<<<< * readonly object _try_repr * readonly object _filter - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_6action_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22690,25 +23515,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_6action_1__get__(PyObje static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6action___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 65, 0, __PYX_ERR(2, 65, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[130])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 65, 0, 0, 0, __PYX_ERR(2, 65, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->action); __pyx_r = __pyx_v_self->action; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 65, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 65, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.action.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22719,7 +23552,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_6action___get__(struct * readonly object _try_repr # <<<<<<<<<<<<<< * readonly object _filter * readonly object queue - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9_try_repr_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22738,25 +23571,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_9_try_repr_1__get__(PyO static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9_try_repr___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 66, 0, __PYX_ERR(2, 66, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[131])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 66, 0, 0, 0, __PYX_ERR(2, 66, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_try_repr); __pyx_r = __pyx_v_self->_try_repr; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 66, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 66, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog._try_repr.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22767,7 +23608,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_9_try_repr___get__(stru * readonly object _filter # <<<<<<<<<<<<<< * readonly object queue * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7_filter_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22786,25 +23627,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_7_filter_1__get__(PyObj static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_7_filter___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 67, 0, __PYX_ERR(2, 67, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[132])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 67, 0, 0, 0, __PYX_ERR(2, 67, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_filter); __pyx_r = __pyx_v_self->_filter; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 67, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 67, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog._filter.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22815,7 +23664,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_7_filter___get__(struct * readonly object queue # <<<<<<<<<<<<<< * * cdef fast_And_call(And self, Event event) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5queue_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -22834,25 +23683,33 @@ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_5queue_1__get__(PyObjec static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5queue___get__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[2], 68, 0, __PYX_ERR(2, 68, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[133])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 68, 0, 0, 0, __PYX_ERR(2, 68, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->queue); __pyx_r = __pyx_v_self->queue; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 68, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 68, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.queue.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -22861,7 +23718,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_5queue___get__(struct _ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_19__reduce_cython__(PyObject *__pyx_v_self, @@ -22871,7 +23728,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_19__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -22887,16 +23744,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self)); /* function exit code */ @@ -22909,7 +23767,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str PyObject *__pyx_v__dict = 0; int __pyx_v_use_setstate; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -22921,9 +23779,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__25) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":5 * cdef object _dict @@ -22931,41 +23789,41 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * state = (self._filter, self._try_repr, self.action, self.condition, self.queue, self.size, self.stack, self.strip, self.vars) # <<<<<<<<<<<<<< * _dict = getattr(self, '__dict__', None) * if _dict is not None: - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,13,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_self->stack); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->strip); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->strip); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->vars); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(9); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_5 = PyTuple_New(9); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_self->_filter); __Pyx_GIVEREF(__pyx_v_self->_filter); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->_filter)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->_filter) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->_try_repr); __Pyx_GIVEREF(__pyx_v_self->_try_repr); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->_try_repr)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->_try_repr) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->action); __Pyx_GIVEREF(__pyx_v_self->action); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_self->action)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_self->action) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->condition); __Pyx_GIVEREF(__pyx_v_self->condition); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_v_self->condition)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_v_self->condition) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_INCREF(__pyx_v_self->queue); __Pyx_GIVEREF(__pyx_v_self->queue); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_v_self->queue)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_v_self->queue) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_t_1) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 6, __pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 6, __pyx_t_2) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 7, __pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 7, __pyx_t_3) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 8, __pyx_t_4)) __PYX_ERR(0, 5, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 8, __pyx_t_4) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); __pyx_t_1 = 0; __pyx_t_2 = 0; __pyx_t_3 = 0; @@ -22979,9 +23837,9 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< * if _dict is not None: * state += (_dict,) - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_5 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,22,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_5 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v__dict = __pyx_t_5; __pyx_t_5 = 0; @@ -22992,8 +23850,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) +*/ + __Pyx_TraceLine(7,29,0,__PYX_ERR(1, 7, __pyx_L1_error)) __pyx_t_6 = (__pyx_v__dict != Py_None); if (__pyx_t_6) { @@ -23003,14 +23861,14 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * state += (_dict,) # <<<<<<<<<<<<<< * use_setstate = True * else: - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8, __pyx_L1_error) +*/ + __Pyx_TraceLine(8,31,0,__PYX_ERR(1, 8, __pyx_L1_error)) + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v__dict); __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v__dict)) __PYX_ERR(0, 8, __pyx_L1_error); - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 8, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v__dict) != (0)) __PYX_ERR(1, 8, __pyx_L1_error); + __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_4)); @@ -23022,8 +23880,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * use_setstate = True # <<<<<<<<<<<<<< * else: * use_setstate = self._filter is not None or self._try_repr is not None or self.action is not None or self.condition is not None or self.queue is not None - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) +*/ + __Pyx_TraceLine(9,33,0,__PYX_ERR(1, 9, __pyx_L1_error)) __pyx_v_use_setstate = 1; /* "(tree fragment)":7 @@ -23032,7 +23890,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * if _dict is not None: # <<<<<<<<<<<<<< * state += (_dict,) * use_setstate = True - */ +*/ goto __pyx_L3; } @@ -23042,8 +23900,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * use_setstate = self._filter is not None or self._try_repr is not None or self.action is not None or self.condition is not None or self.queue is not None # <<<<<<<<<<<<<< * if use_setstate: * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, None), state - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,39,0,__PYX_ERR(1, 11, __pyx_L1_error)) /*else*/ { __pyx_t_7 = (__pyx_v_self->_filter != Py_None); if (!__pyx_t_7) { @@ -23082,8 +23940,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, None), state * else: - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,60,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (__pyx_v_use_setstate) { /* "(tree fragment)":13 @@ -23092,35 +23950,36 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, None), state # <<<<<<<<<<<<<< * else: * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,61,0,__PYX_ERR(1, 13, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pyx_unpickle_Backlog); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_21139105); - __Pyx_GIVEREF(__pyx_int_21139105); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_21139105)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_21139105); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_21139105); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_mstate_global->__pyx_int_21139105) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, Py_None)) __PYX_ERR(0, 13, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, Py_None) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state)) __PYX_ERR(0, 13, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 13, __pyx_L1_error); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 61, 0, __PYX_ERR(1, 13, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":12 @@ -23129,7 +23988,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * if use_setstate: # <<<<<<<<<<<<<< * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, None), state * else: - */ +*/ } /* "(tree fragment)":15 @@ -23138,33 +23997,34 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Backlog__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(15,0,__PYX_ERR(0, 15, __pyx_L1_error)) +*/ + __Pyx_TraceLine(15,69,0,__PYX_ERR(1, 15, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle_Backlog); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))))) __PYX_ERR(0, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_int_21139105); - __Pyx_GIVEREF(__pyx_int_21139105); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_21139105)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_21139105); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_21139105); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_mstate_global->__pyx_int_21139105) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_v_state); __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state)) __PYX_ERR(0, 15, __pyx_L1_error); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5) != (0)) __PYX_ERR(1, 15, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_5 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 69, 0, __PYX_ERR(1, 15, __pyx_L1_error)); goto __pyx_L0; } @@ -23172,7 +24032,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -23181,13 +24041,19 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_state); __Pyx_XDECREF(__pyx_v__dict); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -23197,7 +24063,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_18__reduce_cython__(str * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_21__setstate_cython__(PyObject *__pyx_v_self, @@ -23207,7 +24073,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_7Backlog_21__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -23228,7 +24094,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -23236,47 +24102,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 16, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 16, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 16, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 16, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 16, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.Backlog.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -23285,11 +24143,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -23297,24 +24152,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__26) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[0], 16, 0, __PYX_ERR(0, 16, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); /* "(tree fragment)":17 * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) * def __setstate_cython__(self, __pyx_state): * __pyx_unpickle_Backlog__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(17,0,__PYX_ERR(0, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(1, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -23323,18 +24178,25 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(s * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.Backlog.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -23345,15 +24207,15 @@ static PyObject *__pyx_pf_6hunter_11_predicates_7Backlog_20__setstate_cython__(s * cdef inline fast_Backlog_call(Backlog self, Event event): # <<<<<<<<<<<<<< * cdef bint first_is_call * cdef Event detached_event - */ +*/ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v_self, struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event) { int __pyx_v_first_is_call; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_detached_event = 0; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_first_event = 0; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_stack_event = 0; - PyFrameObject *__pyx_v_first_frame = 0; - PyFrameObject *__pyx_v_frame = 0; + FrameType __pyx_v_first_frame = 0; + FrameType __pyx_v_frame = 0; int __pyx_v_backlog_call_depth; int __pyx_v_depth_delta; int __pyx_v_first_depth; @@ -23362,25 +24224,29 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s PyObject *__pyx_v_stack_events = 0; PyObject *__pyx_v_backlog_event = NULL; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; + size_t __pyx_t_4; int __pyx_t_5; long __pyx_t_6; long __pyx_t_7; int __pyx_t_8; - Py_ssize_t __pyx_t_9; - PyObject *(*__pyx_t_10)(PyObject *); + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; + PyObject *__pyx_t_12 = NULL; + Py_ssize_t __pyx_t_13; + PyObject *(*__pyx_t_14)(PyObject *); + int __pyx_t_15; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fast_Backlog_call", 1); - __Pyx_TraceCall("fast_Backlog_call", __pyx_f[1], 655, 0, __PYX_ERR(1, 655, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[136])) + __Pyx_RefNannySetupContext("fast_Backlog_call", 0); + __Pyx_TraceStartFunc("fast_Backlog_call", __pyx_f[0], 655, 0, 0, 0, __PYX_ERR(0, 655, __pyx_L1_error)); /* "hunter/_predicates.pyx":669 * cdef object stack_events @@ -23388,11 +24254,11 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * result = fast_call(self.condition, event) # <<<<<<<<<<<<<< * if result: * if self.queue: - */ - __Pyx_TraceLine(669,0,__PYX_ERR(1, 669, __pyx_L1_error)) +*/ + __Pyx_TraceLine(669,5,0,__PYX_ERR(0, 669, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->condition; __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 669, __pyx_L1_error) + __pyx_t_2 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, __pyx_v_event); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 669, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_result = __pyx_t_2; @@ -23404,9 +24270,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if result: # <<<<<<<<<<<<<< * if self.queue: * self.action.cleanup() - */ - __Pyx_TraceLine(670,0,__PYX_ERR(1, 670, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 670, __pyx_L1_error) +*/ + __Pyx_TraceLine(670,8,0,__PYX_ERR(0, 670, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_result); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 670, __pyx_L1_error) if (__pyx_t_3) { /* "hunter/_predicates.pyx":671 @@ -23415,9 +24281,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self.queue: # <<<<<<<<<<<<<< * self.action.cleanup() * - */ - __Pyx_TraceLine(671,0,__PYX_ERR(1, 671, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_self->queue); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 671, __pyx_L1_error) +*/ + __Pyx_TraceLine(671,11,0,__PYX_ERR(0, 671, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_self->queue); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 671, __pyx_L1_error) if (__pyx_t_3) { /* "hunter/_predicates.pyx":672 @@ -23426,31 +24292,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.action.cleanup() # <<<<<<<<<<<<<< * * first_event = self.queue[0] - */ - __Pyx_TraceLine(672,0,__PYX_ERR(1, 672, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->action, __pyx_n_s_cleanup); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 672, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(672,13,0,__PYX_ERR(0, 672, __pyx_L1_error)) + __pyx_t_1 = __pyx_v_self->action; + __Pyx_INCREF(__pyx_t_1); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 672, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_cleanup, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -23460,9 +24312,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * first_event = self.queue[0] # <<<<<<<<<<<<<< * first_depth = first_event.depth * backlog_call_depth = event.depth - first_depth - */ - __Pyx_TraceLine(674,0,__PYX_ERR(1, 674, __pyx_L1_error)) - __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_self->queue, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 674, __pyx_L1_error) +*/ + __Pyx_TraceLine(674,20,0,__PYX_ERR(0, 674, __pyx_L1_error)) + __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_self->queue, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 674, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); @@ -23476,8 +24328,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * first_depth = first_event.depth # <<<<<<<<<<<<<< * backlog_call_depth = event.depth - first_depth * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid - */ - __Pyx_TraceLine(675,0,__PYX_ERR(1, 675, __pyx_L1_error)) +*/ + __Pyx_TraceLine(675,24,0,__PYX_ERR(0, 675, __pyx_L1_error)) __pyx_t_5 = __pyx_v_first_event->depth; __pyx_v_first_depth = __pyx_t_5; @@ -23487,8 +24339,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * backlog_call_depth = event.depth - first_depth # <<<<<<<<<<<<<< * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) - */ - __Pyx_TraceLine(676,0,__PYX_ERR(1, 676, __pyx_L1_error)) +*/ + __Pyx_TraceLine(676,28,0,__PYX_ERR(0, 676, __pyx_L1_error)) __pyx_v_backlog_call_depth = (__pyx_v_event->depth - __pyx_v_first_depth); /* "hunter/_predicates.pyx":677 @@ -23497,9 +24349,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * first_is_call = first_event.kind == 'call' # note that True is 1, thus the following math is valid # <<<<<<<<<<<<<< * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) * if missing_depth: - */ - __Pyx_TraceLine(677,0,__PYX_ERR(1, 677, __pyx_L1_error)) - __pyx_t_3 = (__Pyx_PyString_Equals(__pyx_v_first_event->kind, __pyx_n_s_call, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 677, __pyx_L1_error) +*/ + __Pyx_TraceLine(677,32,0,__PYX_ERR(0, 677, __pyx_L1_error)) + __pyx_t_3 = (__Pyx_PyUnicode_Equals(__pyx_v_first_event->kind, __pyx_mstate_global->__pyx_n_u_call, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 677, __pyx_L1_error) __pyx_v_first_is_call = __pyx_t_3; /* "hunter/_predicates.pyx":678 @@ -23508,8 +24360,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * missing_depth = min(first_depth, max(0, self.stack - backlog_call_depth + first_is_call)) # <<<<<<<<<<<<<< * if missing_depth: * if first_is_call and first_event.frame is not None: - */ - __Pyx_TraceLine(678,0,__PYX_ERR(1, 678, __pyx_L1_error)) +*/ + __Pyx_TraceLine(678,43,0,__PYX_ERR(0, 678, __pyx_L1_error)) __pyx_t_5 = ((__pyx_v_self->stack - __pyx_v_backlog_call_depth) + __pyx_v_first_is_call); __pyx_t_6 = 0; __pyx_t_3 = (__pyx_t_5 > __pyx_t_6); @@ -23534,8 +24386,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if missing_depth: # <<<<<<<<<<<<<< * if first_is_call and first_event.frame is not None: * first_frame = first_event.frame.f_back - */ - __Pyx_TraceLine(679,0,__PYX_ERR(1, 679, __pyx_L1_error)) +*/ + __Pyx_TraceLine(679,46,0,__PYX_ERR(0, 679, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_missing_depth != 0); if (__pyx_t_3) { @@ -23545,14 +24397,14 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if first_is_call and first_event.frame is not None: # <<<<<<<<<<<<<< * first_frame = first_event.frame.f_back * else: - */ - __Pyx_TraceLine(680,0,__PYX_ERR(1, 680, __pyx_L1_error)) +*/ + __Pyx_TraceLine(680,48,0,__PYX_ERR(0, 680, __pyx_L1_error)) if (__pyx_v_first_is_call) { } else { __pyx_t_3 = __pyx_v_first_is_call; goto __pyx_L7_bool_binop_done; } - __pyx_t_8 = (((PyObject *)__pyx_v_first_event->frame) != Py_None); + __pyx_t_8 = (__pyx_v_first_event->frame != ((FrameType)Py_None)); __pyx_t_3 = __pyx_t_8; __pyx_L7_bool_binop_done:; if (__pyx_t_3) { @@ -23563,12 +24415,11 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * first_frame = first_event.frame.f_back # <<<<<<<<<<<<<< * else: * first_frame = first_event.frame - */ - __Pyx_TraceLine(681,0,__PYX_ERR(1, 681, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_first_event->frame), __pyx_n_s_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 681, __pyx_L1_error) +*/ + __Pyx_TraceLine(681,57,0,__PYX_ERR(0, 681, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_first_event->frame), __pyx_mstate_global->__pyx_n_u_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(1, 681, __pyx_L1_error) - __pyx_v_first_frame = ((PyFrameObject *)__pyx_t_1); + __pyx_v_first_frame = ((FrameType)__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_predicates.pyx":680 @@ -23577,7 +24428,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if first_is_call and first_event.frame is not None: # <<<<<<<<<<<<<< * first_frame = first_event.frame.f_back * else: - */ +*/ goto __pyx_L6; } @@ -23587,12 +24438,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * first_frame = first_event.frame # <<<<<<<<<<<<<< * if first_frame is not None: * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full - */ - __Pyx_TraceLine(683,0,__PYX_ERR(1, 683, __pyx_L1_error)) +*/ + __Pyx_TraceLine(683,60,0,__PYX_ERR(0, 683, __pyx_L1_error)) /*else*/ { __pyx_t_1 = ((PyObject *)__pyx_v_first_event->frame); __Pyx_INCREF(__pyx_t_1); - __pyx_v_first_frame = ((PyFrameObject *)__pyx_t_1); + __pyx_v_first_frame = ((FrameType)__pyx_t_1); __pyx_t_1 = 0; } __pyx_L6:; @@ -23603,9 +24454,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if first_frame is not None: # <<<<<<<<<<<<<< * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full * frame = first_frame - */ - __Pyx_TraceLine(684,0,__PYX_ERR(1, 684, __pyx_L1_error)) - __pyx_t_3 = (((PyObject *)__pyx_v_first_frame) != Py_None); +*/ + __Pyx_TraceLine(684,64,0,__PYX_ERR(0, 684, __pyx_L1_error)) + __pyx_t_3 = (__pyx_v_first_frame != ((FrameType)Py_None)); if (__pyx_t_3) { /* "hunter/_predicates.pyx":685 @@ -23614,31 +24465,30 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full # <<<<<<<<<<<<<< * frame = first_frame * depth_delta = 0 - */ - __Pyx_TraceLine(685,0,__PYX_ERR(1, 685, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_deque); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 685, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(685,67,0,__PYX_ERR(0, 685, __pyx_L1_error)) + __pyx_t_2 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_mstate_global->__pyx_n_u_deque); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 685, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_2))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_2, function); - __pyx_t_5 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_9))) { + __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_9); + assert(__pyx_t_2); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_9); + __Pyx_INCREF(__pyx_t_2); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_9, __pyx__function); + __pyx_t_4 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 685, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } __pyx_v_stack_events = __pyx_t_1; __pyx_t_1 = 0; @@ -23649,9 +24499,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * frame = first_frame # <<<<<<<<<<<<<< * depth_delta = 0 * while frame and depth_delta < missing_depth: - */ - __Pyx_TraceLine(686,0,__PYX_ERR(1, 686, __pyx_L1_error)) - __Pyx_INCREF((PyObject *)__pyx_v_first_frame); +*/ + __Pyx_TraceLine(686,69,0,__PYX_ERR(0, 686, __pyx_L1_error)) + __Pyx_INCREF(__pyx_v_first_frame); __pyx_v_frame = __pyx_v_first_frame; /* "hunter/_predicates.pyx":687 @@ -23660,8 +24510,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * depth_delta = 0 # <<<<<<<<<<<<<< * while frame and depth_delta < missing_depth: * stack_event = Event( - */ - __Pyx_TraceLine(687,0,__PYX_ERR(1, 687, __pyx_L1_error)) +*/ + __Pyx_TraceLine(687,71,0,__PYX_ERR(0, 687, __pyx_L1_error)) __pyx_v_depth_delta = 0; /* "hunter/_predicates.pyx":688 @@ -23670,10 +24520,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * while frame and depth_delta < missing_depth: # <<<<<<<<<<<<<< * stack_event = Event( * frame=frame, kind=0, arg=None, - */ - __Pyx_TraceLine(688,0,__PYX_ERR(1, 688, __pyx_L1_error)) +*/ + __Pyx_TraceLine(688,72,0,__PYX_ERR(0, 688, __pyx_L1_error)) while (1) { - __pyx_t_8 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_frame)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 688, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_frame)); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 688, __pyx_L1_error) if (__pyx_t_8) { } else { __pyx_t_3 = __pyx_t_8; @@ -23684,19 +24534,17 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s __pyx_L12_bool_binop_done:; if (!__pyx_t_3) break; - /* "hunter/_predicates.pyx":690 + /* "hunter/_predicates.pyx":689 + * depth_delta = 0 * while frame and depth_delta < missing_depth: - * stack_event = Event( - * frame=frame, kind=0, arg=None, # <<<<<<<<<<<<<< + * stack_event = Event( # <<<<<<<<<<<<<< + * frame=frame, kind=0, arg=None, * threading_support=event.threading_support, - * depth=first_depth - depth_delta - 1, calls=-1 - */ - __Pyx_TraceLine(690,0,__PYX_ERR(1, 690, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 690, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_frame, ((PyObject *)__pyx_v_frame)) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_kind, __pyx_int_0) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_arg, Py_None) < 0) __PYX_ERR(1, 690, __pyx_L1_error) +*/ + __Pyx_TraceLine(689,80,0,__PYX_ERR(0, 689, __pyx_L1_error)) + __pyx_t_9 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); + __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); /* "hunter/_predicates.pyx":691 * stack_event = Event( @@ -23704,12 +24552,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * threading_support=event.threading_support, # <<<<<<<<<<<<<< * depth=first_depth - depth_delta - 1, calls=-1 * ) - */ - __Pyx_TraceLine(691,0,__PYX_ERR(1, 691, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_event->threading_support); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 691, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_threading_support, __pyx_t_2) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; +*/ + __Pyx_TraceLine(691,89,0,__PYX_ERR(0, 691, __pyx_L1_error)) + __pyx_t_10 = __Pyx_PyBool_FromLong(__pyx_v_event->threading_support); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 691, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); /* "hunter/_predicates.pyx":692 * frame=frame, kind=0, arg=None, @@ -23717,27 +24563,32 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * depth=first_depth - depth_delta - 1, calls=-1 # <<<<<<<<<<<<<< * ) * if not self.vars: - */ - __Pyx_TraceLine(692,0,__PYX_ERR(1, 692, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyInt_From_long(((__pyx_v_first_depth - __pyx_v_depth_delta) - 1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 692, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_depth, __pyx_t_2) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_calls, __pyx_int_neg_1) < 0) __PYX_ERR(1, 690, __pyx_L1_error) - - /* "hunter/_predicates.pyx":689 - * depth_delta = 0 - * while frame and depth_delta < missing_depth: - * stack_event = Event( # <<<<<<<<<<<<<< - * frame=frame, kind=0, arg=None, - * threading_support=event.threading_support, - */ - __Pyx_TraceLine(689,0,__PYX_ERR(1, 689, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 689, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF_SET(__pyx_v_stack_event, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2)); - __pyx_t_2 = 0; +*/ + __Pyx_TraceLine(692,94,0,__PYX_ERR(0, 692, __pyx_L1_error)) + __pyx_t_11 = __Pyx_PyLong_From_long(((__pyx_v_first_depth - __pyx_v_depth_delta) - 1)); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 692, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 6 : 0)] = {__pyx_t_9, NULL}; + __pyx_t_12 = __Pyx_MakeVectorcallBuilderKwds(6); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 689, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_12); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_frame, ((PyObject *)__pyx_v_frame), __pyx_t_12, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 689, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_kind, __pyx_mstate_global->__pyx_int_0, __pyx_t_12, __pyx_callargs+1, 1) < 0) __PYX_ERR(0, 689, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_arg, Py_None, __pyx_t_12, __pyx_callargs+1, 2) < 0) __PYX_ERR(0, 689, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_threading_support, __pyx_t_10, __pyx_t_12, __pyx_callargs+1, 3) < 0) __PYX_ERR(0, 689, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_depth, __pyx_t_11, __pyx_t_12, __pyx_callargs+1, 4) < 0) __PYX_ERR(0, 689, __pyx_L1_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_calls, __pyx_mstate_global->__pyx_int_neg_1, __pyx_t_12, __pyx_callargs+1, 5) < 0) __PYX_ERR(0, 689, __pyx_L1_error) + __pyx_t_1 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_2, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_12); + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 689, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __Pyx_XDECREF_SET(__pyx_v_stack_event, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1)); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":694 * depth=first_depth - depth_delta - 1, calls=-1 @@ -23745,8 +24596,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if not self.vars: # <<<<<<<<<<<<<< * # noinspection PyPropertyAccess * stack_event._locals = {} - */ - __Pyx_TraceLine(694,0,__PYX_ERR(1, 694, __pyx_L1_error)) +*/ + __Pyx_TraceLine(694,99,0,__PYX_ERR(0, 694, __pyx_L1_error)) __pyx_t_3 = (!__pyx_v_self->vars); if (__pyx_t_3) { @@ -23756,15 +24607,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * stack_event._locals = {} # <<<<<<<<<<<<<< * stack_event._globals = {} * stack_event.detached = True - */ - __Pyx_TraceLine(696,0,__PYX_ERR(1, 696, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 696, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); +*/ + __Pyx_TraceLine(696,104,0,__PYX_ERR(0, 696, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 696, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_stack_event->_locals); __Pyx_DECREF(__pyx_v_stack_event->_locals); - __pyx_v_stack_event->_locals = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_v_stack_event->_locals = __pyx_t_1; + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":697 * # noinspection PyPropertyAccess @@ -23772,15 +24623,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * stack_event._globals = {} # <<<<<<<<<<<<<< * stack_event.detached = True * stack_events.appendleft(stack_event) - */ - __Pyx_TraceLine(697,0,__PYX_ERR(1, 697, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 697, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); +*/ + __Pyx_TraceLine(697,107,0,__PYX_ERR(0, 697, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 697, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_stack_event->_globals); __Pyx_DECREF(__pyx_v_stack_event->_globals); - __pyx_v_stack_event->_globals = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_v_stack_event->_globals = __pyx_t_1; + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":698 * stack_event._locals = {} @@ -23788,8 +24639,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * stack_event.detached = True # <<<<<<<<<<<<<< * stack_events.appendleft(stack_event) * frame = frame.f_back - */ - __Pyx_TraceLine(698,0,__PYX_ERR(1, 698, __pyx_L1_error)) +*/ + __Pyx_TraceLine(698,108,0,__PYX_ERR(0, 698, __pyx_L1_error)) __pyx_v_stack_event->detached = 1; /* "hunter/_predicates.pyx":694 @@ -23798,7 +24649,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if not self.vars: # <<<<<<<<<<<<<< * # noinspection PyPropertyAccess * stack_event._locals = {} - */ +*/ } /* "hunter/_predicates.pyx":699 @@ -23807,33 +24658,19 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * stack_events.appendleft(stack_event) # <<<<<<<<<<<<<< * frame = frame.f_back * depth_delta += 1 - */ - __Pyx_TraceLine(699,0,__PYX_ERR(1, 699, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_stack_events, __pyx_n_s_appendleft); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 699, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(699,111,0,__PYX_ERR(0, 699, __pyx_L1_error)) + __pyx_t_2 = __pyx_v_stack_events; + __Pyx_INCREF(__pyx_t_2); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_v_stack_event)}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 699, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_2, ((PyObject *)__pyx_v_stack_event)}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_appendleft, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 699, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_predicates.pyx":700 * stack_event.detached = True @@ -23841,13 +24678,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * frame = frame.f_back # <<<<<<<<<<<<<< * depth_delta += 1 * for stack_event in stack_events: - */ - __Pyx_TraceLine(700,0,__PYX_ERR(1, 700, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_n_s_f_back); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 700, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(1, 700, __pyx_L1_error) - __Pyx_DECREF_SET(__pyx_v_frame, ((PyFrameObject *)__pyx_t_2)); - __pyx_t_2 = 0; +*/ + __Pyx_TraceLine(700,117,0,__PYX_ERR(0, 700, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_mstate_global->__pyx_n_u_f_back); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 700, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF_SET(__pyx_v_frame, ((FrameType)__pyx_t_1)); + __pyx_t_1 = 0; /* "hunter/_predicates.pyx":701 * stack_events.appendleft(stack_event) @@ -23855,8 +24691,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * depth_delta += 1 # <<<<<<<<<<<<<< * for stack_event in stack_events: * if self._filter is None or self._filter(stack_event): - */ - __Pyx_TraceLine(701,0,__PYX_ERR(1, 701, __pyx_L1_error)) +*/ + __Pyx_TraceLine(701,118,0,__PYX_ERR(0, 701, __pyx_L1_error)) __pyx_v_depth_delta = (__pyx_v_depth_delta + 1); } @@ -23866,63 +24702,61 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * for stack_event in stack_events: # <<<<<<<<<<<<<< * if self._filter is None or self._filter(stack_event): * self.action(stack_event) - */ - __Pyx_TraceLine(702,0,__PYX_ERR(1, 702, __pyx_L1_error)) +*/ + __Pyx_TraceLine(702,122,0,__PYX_ERR(0, 702, __pyx_L1_error)) if (likely(PyList_CheckExact(__pyx_v_stack_events)) || PyTuple_CheckExact(__pyx_v_stack_events)) { - __pyx_t_2 = __pyx_v_stack_events; __Pyx_INCREF(__pyx_t_2); - __pyx_t_9 = 0; - __pyx_t_10 = NULL; + __pyx_t_1 = __pyx_v_stack_events; __Pyx_INCREF(__pyx_t_1); + __pyx_t_13 = 0; + __pyx_t_14 = NULL; } else { - __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_stack_events); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 702, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_10 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 702, __pyx_L1_error) + __pyx_t_13 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_stack_events); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 702, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_14 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 702, __pyx_L1_error) } for (;;) { - if (likely(!__pyx_t_10)) { - if (likely(PyList_CheckExact(__pyx_t_2))) { + if (likely(!__pyx_t_14)) { + if (likely(PyList_CheckExact(__pyx_t_1))) { { - Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 702, __pyx_L1_error) + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 702, __pyx_L1_error) #endif - if (__pyx_t_9 >= __pyx_temp) break; + if (__pyx_t_13 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 702, __pyx_L1_error) - #else - __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 702, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - #endif + __pyx_t_2 = __Pyx_PyList_GetItemRef(__pyx_t_1, __pyx_t_13); + ++__pyx_t_13; } else { { - Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 702, __pyx_L1_error) + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 702, __pyx_L1_error) #endif - if (__pyx_t_9 >= __pyx_temp) break; + if (__pyx_t_13 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 702, __pyx_L1_error) + __pyx_t_2 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_13)); #else - __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 702, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_13); #endif + ++__pyx_t_13; } + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 702, __pyx_L1_error) } else { - __pyx_t_1 = __pyx_t_10(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { + __pyx_t_2 = __pyx_t_14(__pyx_t_1); + if (unlikely(!__pyx_t_2)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 702, __pyx_L1_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 702, __pyx_L1_error) + PyErr_Clear(); } break; } - __Pyx_GOTREF(__pyx_t_1); } - if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(1, 702, __pyx_L1_error) - __Pyx_XDECREF_SET(__pyx_v_stack_event, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1)); - __pyx_t_1 = 0; + __Pyx_GOTREF(__pyx_t_2); + if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event))))) __PYX_ERR(0, 702, __pyx_L1_error) + __Pyx_XDECREF_SET(__pyx_v_stack_event, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2)); + __pyx_t_2 = 0; + __Pyx_TraceLine(702,120,0,__PYX_ERR(0, 702, __pyx_L1_error)) /* "hunter/_predicates.pyx":703 * depth_delta += 1 @@ -23930,39 +24764,39 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self._filter is None or self._filter(stack_event): # <<<<<<<<<<<<<< * self.action(stack_event) * for backlog_event in self.queue: - */ - __Pyx_TraceLine(703,0,__PYX_ERR(1, 703, __pyx_L1_error)) +*/ + __Pyx_TraceLine(703,127,0,__PYX_ERR(0, 703, __pyx_L1_error)) __pyx_t_8 = (__pyx_v_self->_filter == Py_None); if (!__pyx_t_8) { } else { __pyx_t_3 = __pyx_t_8; goto __pyx_L18_bool_binop_done; } + __pyx_t_12 = NULL; __Pyx_INCREF(__pyx_v_self->_filter); - __pyx_t_4 = __pyx_v_self->_filter; __pyx_t_11 = NULL; - __pyx_t_5 = 0; + __pyx_t_11 = __pyx_v_self->_filter; + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_11)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } + if (likely(PyMethod_Check(__pyx_t_11))) { + __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_11); + assert(__pyx_t_12); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_11); + __Pyx_INCREF(__pyx_t_12); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_11, __pyx__function); + __pyx_t_4 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_11, ((PyObject *)__pyx_v_stack_event)}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 703, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_12, ((PyObject *)__pyx_v_stack_event)}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_11, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 703, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 703, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 703, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_3 = __pyx_t_8; __pyx_L18_bool_binop_done:; if (__pyx_t_3) { @@ -23973,32 +24807,32 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.action(stack_event) # <<<<<<<<<<<<<< * for backlog_event in self.queue: * if self._filter is None: - */ - __Pyx_TraceLine(704,0,__PYX_ERR(1, 704, __pyx_L1_error)) +*/ + __Pyx_TraceLine(704,135,0,__PYX_ERR(0, 704, __pyx_L1_error)) + __pyx_t_11 = NULL; __Pyx_INCREF(__pyx_v_self->action); - __pyx_t_4 = __pyx_v_self->action; __pyx_t_11 = NULL; - __pyx_t_5 = 0; + __pyx_t_12 = __pyx_v_self->action; + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_11)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } + if (likely(PyMethod_Check(__pyx_t_12))) { + __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_12); + assert(__pyx_t_11); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_12); + __Pyx_INCREF(__pyx_t_11); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_12, __pyx__function); + __pyx_t_4 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_11, ((PyObject *)__pyx_v_stack_event)}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 704, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 704, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_predicates.pyx":703 * depth_delta += 1 @@ -24006,7 +24840,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self._filter is None or self._filter(stack_event): # <<<<<<<<<<<<<< * self.action(stack_event) * for backlog_event in self.queue: - */ +*/ } /* "hunter/_predicates.pyx":702 @@ -24015,10 +24849,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * for stack_event in stack_events: # <<<<<<<<<<<<<< * if self._filter is None or self._filter(stack_event): * self.action(stack_event) - */ - __Pyx_TraceLine(702,0,__PYX_ERR(1, 702, __pyx_L1_error)) +*/ + __Pyx_TraceLine(702,120,0,__PYX_ERR(0, 702, __pyx_L1_error)) } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_predicates.pyx":684 * else: @@ -24026,7 +24860,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if first_frame is not None: # <<<<<<<<<<<<<< * stack_events = deque() # a new deque because self.queue is limited, we can't add while it's full * frame = first_frame - */ +*/ } /* "hunter/_predicates.pyx":679 @@ -24035,7 +24869,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if missing_depth: # <<<<<<<<<<<<<< * if first_is_call and first_event.frame is not None: * first_frame = first_event.frame.f_back - */ +*/ } /* "hunter/_predicates.pyx":705 @@ -24044,62 +24878,60 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * for backlog_event in self.queue: # <<<<<<<<<<<<<< * if self._filter is None: * self.action(backlog_event) - */ - __Pyx_TraceLine(705,0,__PYX_ERR(1, 705, __pyx_L1_error)) +*/ + __Pyx_TraceLine(705,139,0,__PYX_ERR(0, 705, __pyx_L1_error)) if (likely(PyList_CheckExact(__pyx_v_self->queue)) || PyTuple_CheckExact(__pyx_v_self->queue)) { - __pyx_t_2 = __pyx_v_self->queue; __Pyx_INCREF(__pyx_t_2); - __pyx_t_9 = 0; - __pyx_t_10 = NULL; + __pyx_t_1 = __pyx_v_self->queue; __Pyx_INCREF(__pyx_t_1); + __pyx_t_13 = 0; + __pyx_t_14 = NULL; } else { - __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_self->queue); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 705, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_10 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(1, 705, __pyx_L1_error) + __pyx_t_13 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_self->queue); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 705, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_14 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 705, __pyx_L1_error) } for (;;) { - if (likely(!__pyx_t_10)) { - if (likely(PyList_CheckExact(__pyx_t_2))) { + if (likely(!__pyx_t_14)) { + if (likely(PyList_CheckExact(__pyx_t_1))) { { - Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 705, __pyx_L1_error) + Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 705, __pyx_L1_error) #endif - if (__pyx_t_9 >= __pyx_temp) break; + if (__pyx_t_13 >= __pyx_temp) break; } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 705, __pyx_L1_error) - #else - __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 705, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - #endif + __pyx_t_2 = __Pyx_PyList_GetItemRef(__pyx_t_1, __pyx_t_13); + ++__pyx_t_13; } else { { - Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_2); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(1, 705, __pyx_L1_error) + Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 705, __pyx_L1_error) #endif - if (__pyx_t_9 >= __pyx_temp) break; + if (__pyx_t_13 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; if (unlikely((0 < 0))) __PYX_ERR(1, 705, __pyx_L1_error) + __pyx_t_2 = __Pyx_NewRef(PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_13)); #else - __pyx_t_1 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 705, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_13); #endif + ++__pyx_t_13; } + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 705, __pyx_L1_error) } else { - __pyx_t_1 = __pyx_t_10(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { + __pyx_t_2 = __pyx_t_14(__pyx_t_1); + if (unlikely(!__pyx_t_2)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(1, 705, __pyx_L1_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 705, __pyx_L1_error) + PyErr_Clear(); } break; } - __Pyx_GOTREF(__pyx_t_1); } - __Pyx_XDECREF_SET(__pyx_v_backlog_event, __pyx_t_1); - __pyx_t_1 = 0; + __Pyx_GOTREF(__pyx_t_2); + __Pyx_XDECREF_SET(__pyx_v_backlog_event, __pyx_t_2); + __pyx_t_2 = 0; + __Pyx_TraceLine(705,137,0,__PYX_ERR(0, 705, __pyx_L1_error)) /* "hunter/_predicates.pyx":706 * self.action(stack_event) @@ -24107,8 +24939,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self._filter is None: # <<<<<<<<<<<<<< * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): - */ - __Pyx_TraceLine(706,0,__PYX_ERR(1, 706, __pyx_L1_error)) +*/ + __Pyx_TraceLine(706,145,0,__PYX_ERR(0, 706, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_self->_filter == Py_None); if (__pyx_t_3) { @@ -24118,32 +24950,32 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.action(backlog_event) # <<<<<<<<<<<<<< * elif fast_call(self._filter, backlog_event): * self.action(backlog_event) - */ - __Pyx_TraceLine(707,0,__PYX_ERR(1, 707, __pyx_L1_error)) +*/ + __Pyx_TraceLine(707,148,0,__PYX_ERR(0, 707, __pyx_L1_error)) + __pyx_t_12 = NULL; __Pyx_INCREF(__pyx_v_self->action); - __pyx_t_4 = __pyx_v_self->action; __pyx_t_11 = NULL; - __pyx_t_5 = 0; + __pyx_t_11 = __pyx_v_self->action; + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_11)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } + if (likely(PyMethod_Check(__pyx_t_11))) { + __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_11); + assert(__pyx_t_12); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_11); + __Pyx_INCREF(__pyx_t_12); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_11, __pyx__function); + __pyx_t_4 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_v_backlog_event}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 707, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_12, __pyx_v_backlog_event}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_11, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 707, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_predicates.pyx":706 * self.action(stack_event) @@ -24151,7 +24983,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self._filter is None: # <<<<<<<<<<<<<< * self.action(backlog_event) * elif fast_call(self._filter, backlog_event): - */ +*/ goto __pyx_L23; } @@ -24161,15 +24993,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * elif fast_call(self._filter, backlog_event): # <<<<<<<<<<<<<< * self.action(backlog_event) * self.queue.clear() - */ - __Pyx_TraceLine(708,0,__PYX_ERR(1, 708, __pyx_L1_error)) - __pyx_t_1 = __pyx_v_self->_filter; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_1, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_backlog_event)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 708, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 708, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(708,153,0,__PYX_ERR(0, 708, __pyx_L1_error)) + __pyx_t_2 = __pyx_v_self->_filter; + __Pyx_INCREF(__pyx_t_2); + __pyx_t_11 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_t_2, ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_backlog_event)); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 708, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_11); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 708, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; if (__pyx_t_3) { /* "hunter/_predicates.pyx":709 @@ -24178,32 +25010,32 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.action(backlog_event) # <<<<<<<<<<<<<< * self.queue.clear() * else: - */ - __Pyx_TraceLine(709,0,__PYX_ERR(1, 709, __pyx_L1_error)) +*/ + __Pyx_TraceLine(709,158,0,__PYX_ERR(0, 709, __pyx_L1_error)) + __pyx_t_2 = NULL; __Pyx_INCREF(__pyx_v_self->action); - __pyx_t_1 = __pyx_v_self->action; __pyx_t_11 = NULL; - __pyx_t_5 = 0; + __pyx_t_12 = __pyx_v_self->action; + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_11)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); - __pyx_t_5 = 1; - } + if (likely(PyMethod_Check(__pyx_t_12))) { + __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_12); + assert(__pyx_t_2); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_12); + __Pyx_INCREF(__pyx_t_2); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_12, __pyx__function); + __pyx_t_4 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_v_backlog_event}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 709, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_v_backlog_event}; + __pyx_t_11 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 709, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; /* "hunter/_predicates.pyx":708 * if self._filter is None: @@ -24211,7 +25043,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * elif fast_call(self._filter, backlog_event): # <<<<<<<<<<<<<< * self.action(backlog_event) * self.queue.clear() - */ +*/ } __pyx_L23:; @@ -24221,10 +25053,10 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * for backlog_event in self.queue: # <<<<<<<<<<<<<< * if self._filter is None: * self.action(backlog_event) - */ - __Pyx_TraceLine(705,0,__PYX_ERR(1, 705, __pyx_L1_error)) +*/ + __Pyx_TraceLine(705,137,0,__PYX_ERR(0, 705, __pyx_L1_error)) } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_predicates.pyx":710 * elif fast_call(self._filter, backlog_event): @@ -24232,33 +25064,19 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.queue.clear() # <<<<<<<<<<<<<< * else: * if self.strip and event.depth < 1: - */ - __Pyx_TraceLine(710,0,__PYX_ERR(1, 710, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->queue, __pyx_n_s_clear); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 710, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_1)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(710,161,0,__PYX_ERR(0, 710, __pyx_L1_error)) + __pyx_t_11 = __pyx_v_self->queue; + __Pyx_INCREF(__pyx_t_11); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 710, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_11, NULL}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_clear, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 710, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_predicates.pyx":671 * result = fast_call(self.condition, event) @@ -24266,7 +25084,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self.queue: # <<<<<<<<<<<<<< * self.action.cleanup() * - */ +*/ } /* "hunter/_predicates.pyx":670 @@ -24275,7 +25093,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if result: # <<<<<<<<<<<<<< * if self.queue: * self.action.cleanup() - */ +*/ goto __pyx_L3; } @@ -24285,8 +25103,8 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self.strip and event.depth < 1: # <<<<<<<<<<<<<< * # Looks like we're back to depth 0 for some reason. * # Delete everything because we don't want to see what is likely just a long stream of useless returns. - */ - __Pyx_TraceLine(712,0,__PYX_ERR(1, 712, __pyx_L1_error)) +*/ + __Pyx_TraceLine(712,164,0,__PYX_ERR(0, 712, __pyx_L1_error)) /*else*/ { if (__pyx_v_self->strip) { } else { @@ -24304,33 +25122,19 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.queue.clear() # <<<<<<<<<<<<<< * if self._filter is None or self._filter(event): * detached_event = fast_detach(event, self._try_repr) - */ - __Pyx_TraceLine(715,0,__PYX_ERR(1, 715, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->queue, __pyx_n_s_clear); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 715, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_1)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(715,173,0,__PYX_ERR(0, 715, __pyx_L1_error)) + __pyx_t_11 = __pyx_v_self->queue; + __Pyx_INCREF(__pyx_t_11); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 715, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_11, NULL}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_clear, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 715, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_predicates.pyx":712 * self.queue.clear() @@ -24338,7 +25142,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self.strip and event.depth < 1: # <<<<<<<<<<<<<< * # Looks like we're back to depth 0 for some reason. * # Delete everything because we don't want to see what is likely just a long stream of useless returns. - */ +*/ } /* "hunter/_predicates.pyx":716 @@ -24347,39 +25151,39 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self._filter is None or self._filter(event): # <<<<<<<<<<<<<< * detached_event = fast_detach(event, self._try_repr) * detached_event.frame = event.frame - */ - __Pyx_TraceLine(716,0,__PYX_ERR(1, 716, __pyx_L1_error)) +*/ + __Pyx_TraceLine(716,180,0,__PYX_ERR(0, 716, __pyx_L1_error)) __pyx_t_8 = (__pyx_v_self->_filter == Py_None); if (!__pyx_t_8) { } else { __pyx_t_3 = __pyx_t_8; goto __pyx_L29_bool_binop_done; } + __pyx_t_11 = NULL; __Pyx_INCREF(__pyx_v_self->_filter); - __pyx_t_4 = __pyx_v_self->_filter; __pyx_t_1 = NULL; - __pyx_t_5 = 0; + __pyx_t_12 = __pyx_v_self->_filter; + __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_1)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_5 = 1; - } + if (likely(PyMethod_Check(__pyx_t_12))) { + __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_12); + assert(__pyx_t_11); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_12); + __Pyx_INCREF(__pyx_t_11); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_12, __pyx__function); + __pyx_t_4 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_1, ((PyObject *)__pyx_v_event)}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 716, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_11, ((PyObject *)__pyx_v_event)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 716, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(1, 716, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 < 0))) __PYX_ERR(0, 716, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_t_8; __pyx_L29_bool_binop_done:; if (__pyx_t_3) { @@ -24390,15 +25194,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * detached_event = fast_detach(event, self._try_repr) # <<<<<<<<<<<<<< * detached_event.frame = event.frame * self.queue.append(detached_event) - */ - __Pyx_TraceLine(717,0,__PYX_ERR(1, 717, __pyx_L1_error)) - __pyx_t_2 = __pyx_v_self->_try_repr; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_4 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_event, __pyx_t_2)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 717, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_detached_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_4); - __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(717,191,0,__PYX_ERR(0, 717, __pyx_L1_error)) + __pyx_t_1 = __pyx_v_self->_try_repr; + __Pyx_INCREF(__pyx_t_1); + __pyx_t_12 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_event, __pyx_t_1)); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 717, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_12); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_v_detached_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_12); + __pyx_t_12 = 0; /* "hunter/_predicates.pyx":718 * if self._filter is None or self._filter(event): @@ -24406,15 +25210,15 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * detached_event.frame = event.frame # <<<<<<<<<<<<<< * self.queue.append(detached_event) * - */ - __Pyx_TraceLine(718,0,__PYX_ERR(1, 718, __pyx_L1_error)) - __pyx_t_4 = ((PyObject *)__pyx_v_event->frame); - __Pyx_INCREF(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_GOTREF((PyObject *)__pyx_v_detached_event->frame); - __Pyx_DECREF((PyObject *)__pyx_v_detached_event->frame); - __pyx_v_detached_event->frame = ((PyFrameObject *)__pyx_t_4); - __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(718,195,0,__PYX_ERR(0, 718, __pyx_L1_error)) + __pyx_t_12 = ((PyObject *)__pyx_v_event->frame); + __Pyx_INCREF(__pyx_t_12); + __Pyx_GIVEREF(__pyx_t_12); + __Pyx_GOTREF(__pyx_v_detached_event->frame); + __Pyx_DECREF(__pyx_v_detached_event->frame); + __pyx_v_detached_event->frame = ((FrameType)__pyx_t_12); + __pyx_t_12 = 0; /* "hunter/_predicates.pyx":719 * detached_event = fast_detach(event, self._try_repr) @@ -24422,9 +25226,9 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.queue.append(detached_event) # <<<<<<<<<<<<<< * * return result - */ - __Pyx_TraceLine(719,0,__PYX_ERR(1, 719, __pyx_L1_error)) - __pyx_t_12 = __Pyx_PyObject_Append(__pyx_v_self->queue, ((PyObject *)__pyx_v_detached_event)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(1, 719, __pyx_L1_error) +*/ + __Pyx_TraceLine(719,199,0,__PYX_ERR(0, 719, __pyx_L1_error)) + __pyx_t_15 = __Pyx_PyObject_Append(__pyx_v_self->queue, ((PyObject *)__pyx_v_detached_event)); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(0, 719, __pyx_L1_error) /* "hunter/_predicates.pyx":716 * # Delete everything because we don't want to see what is likely just a long stream of useless returns. @@ -24432,7 +25236,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * if self._filter is None or self._filter(event): # <<<<<<<<<<<<<< * detached_event = fast_detach(event, self._try_repr) * detached_event.frame = event.frame - */ +*/ } } __pyx_L3:; @@ -24441,11 +25245,12 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * self.queue.append(detached_event) * * return result # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(721,0,__PYX_ERR(1, 721, __pyx_L1_error)) +*/ + __Pyx_TraceLine(721,201,0,__PYX_ERR(0, 721, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_result); __pyx_r = __pyx_v_result; + __Pyx_TraceReturnValue(__pyx_r, 201, 0, __PYX_ERR(0, 721, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_predicates.pyx":655 @@ -24454,27 +25259,35 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * cdef inline fast_Backlog_call(Backlog self, Event event): # <<<<<<<<<<<<<< * cdef bint first_is_call * cdef Event detached_event - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); + __Pyx_XDECREF(__pyx_t_12); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 655, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.fast_Backlog_call", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF((PyObject *)__pyx_v_detached_event); __Pyx_XDECREF((PyObject *)__pyx_v_first_event); __Pyx_XDECREF((PyObject *)__pyx_v_stack_event); - __Pyx_XDECREF((PyObject *)__pyx_v_first_frame); - __Pyx_XDECREF((PyObject *)__pyx_v_frame); + __Pyx_XDECREF(__pyx_v_first_frame); + __Pyx_XDECREF(__pyx_v_frame); __Pyx_XDECREF(__pyx_v_result); __Pyx_XDECREF(__pyx_v_stack_events); __Pyx_XDECREF(__pyx_v_backlog_event); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -24483,7 +25296,7 @@ static CYTHON_INLINE PyObject *__pyx_f_6hunter_11_predicates_fast_Backlog_call(s * def __pyx_unpickle_Query(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_1__pyx_unpickle_Query(PyObject *__pyx_self, @@ -24493,7 +25306,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query = {"__pyx_unpickle_Query", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_1__pyx_unpickle_Query, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query = {"__pyx_unpickle_Query", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_1__pyx_unpickle_Query, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_1__pyx_unpickle_Query(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -24516,7 +25329,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Query (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -24524,75 +25337,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_Query") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_Query", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Query", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Query", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -24601,11 +25392,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -24615,19 +25403,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__27) - __Pyx_RefNannySetupContext("__pyx_unpickle_Query", 1); - __Pyx_TraceCall("__pyx_unpickle_Query", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Query", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Query", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -24635,11 +25422,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * if __pyx_checksum not in (0x5503a44, 0x9ea0a45, 0x4eca0a2): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x5503a44, 0x9ea0a45, 0x4eca0a2) = (query_contains, query_endswith, query_eq, query_gt, query_gte, query_in, query_lt, query_lte, query_regex, query_startswith))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__28, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[0], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -24649,17 +25436,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x5503a44, 0x9ea0a45, 0x4eca0a2) = (query_contains, query_endswith, query_eq, query_gt, query_gte, query_in, query_lt, query_lte, query_regex, query_startswith))" % __pyx_checksum * __pyx_result = Query.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -24672,16 +25459,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x5503a44, 0x9ea0a45, 0x4eca0a2) = (query_contains, query_endswith, query_eq, query_gt, query_gte, query_in, query_lt, query_lte, query_regex, query_startswith))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = Query.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -24689,7 +25476,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * if __pyx_checksum not in (0x5503a44, 0x9ea0a45, 0x4eca0a2): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x5503a44, 0x9ea0a45, 0x4eca0a2) = (query_contains, query_endswith, query_eq, query_gt, query_gte, query_in, query_lt, query_lte, query_regex, query_startswith))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -24698,31 +25485,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * __pyx_result = Query.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_Query__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_Query), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -24733,8 +25506,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -24744,10 +25517,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * __pyx_unpickle_Query__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_Query__set_state(Query __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(((struct __pyx_obj_6hunter_11_predicates_Query *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -24757,7 +25530,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -24766,31 +25539,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_Query__set_state(Query __pyx_result, tuple __pyx_state): * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_Query(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Query", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -24801,11 +25580,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates___pyx_unpickle_Query(CYTHON_UNUS * cdef __pyx_unpickle_Query__set_state(Query __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(struct __pyx_obj_6hunter_11_predicates_Query *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -24814,12 +25593,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; + size_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Query__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_Query__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[138])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Query__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Query__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -24827,15 +25607,15 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] # <<<<<<<<<<<<<< * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[10]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_contains); __Pyx_DECREF(__pyx_v___pyx_result->query_contains); @@ -24843,11 +25623,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_endswith); __Pyx_DECREF(__pyx_v___pyx_result->query_endswith); @@ -24855,11 +25635,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_eq); __Pyx_DECREF(__pyx_v___pyx_result->query_eq); @@ -24867,11 +25647,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_gt); __Pyx_DECREF(__pyx_v___pyx_result->query_gt); @@ -24879,11 +25659,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_gte); __Pyx_DECREF(__pyx_v___pyx_result->query_gte); @@ -24891,11 +25671,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_in); __Pyx_DECREF(__pyx_v___pyx_result->query_in); @@ -24903,11 +25683,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 6, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 6, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_lt); __Pyx_DECREF(__pyx_v___pyx_result->query_lt); @@ -24915,11 +25695,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 7, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 7, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_lte); __Pyx_DECREF(__pyx_v___pyx_result->query_lte); @@ -24927,11 +25707,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 8, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 8, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_regex); __Pyx_DECREF(__pyx_v___pyx_result->query_regex); @@ -24939,11 +25719,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 9, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 9, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->query_startswith); __Pyx_DECREF(__pyx_v___pyx_result->query_startswith); @@ -24955,20 +25735,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[10]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,54,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 10); if (__pyx_t_4) { } else { __pyx_t_2 = __pyx_t_4; goto __pyx_L4_bool_binop_done; } - __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_2 = __pyx_t_4; __pyx_L4_bool_binop_done:; if (__pyx_t_2) { @@ -24977,41 +25757,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[10]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_update); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,63,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = __pyx_t_6; + __Pyx_INCREF(__pyx_t_5); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) + __PYX_ERR(1, 14, __pyx_L1_error) } - __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 10, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = NULL; + __pyx_t_7 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 10, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_7}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25020,7 +25786,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[10]) - */ +*/ } /* "(tree fragment)":11 @@ -25029,21 +25795,28 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s * cdef __pyx_unpickle_Query__set_state(Query __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Query__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -25052,7 +25825,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Query__set_state(s * def __pyx_unpickle_When(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_3__pyx_unpickle_When(PyObject *__pyx_self, @@ -25062,7 +25835,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When = {"__pyx_unpickle_When", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3__pyx_unpickle_When, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When = {"__pyx_unpickle_When", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3__pyx_unpickle_When, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_3__pyx_unpickle_When(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -25085,7 +25858,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_When (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -25093,75 +25866,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_When") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_When", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_When", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_When", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -25170,11 +25921,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -25184,19 +25932,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__29) - __Pyx_RefNannySetupContext("__pyx_unpickle_When", 1); - __Pyx_TraceCall("__pyx_unpickle_When", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])) + __Pyx_RefNannySetupContext("__pyx_unpickle_When", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_When", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -25204,11 +25951,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * if __pyx_checksum not in (0xe710366, 0x7718bb4, 0xb55b71c): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xe710366, 0x7718bb4, 0xb55b71c) = (actions, condition))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__30, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[1], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -25218,17 +25965,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xe710366, 0x7718bb4, 0xb55b71c) = (actions, condition))" % __pyx_checksum * __pyx_result = When.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -25241,16 +25988,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xe710366, 0x7718bb4, 0xb55b71c) = (actions, condition))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = When.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -25258,7 +26005,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * if __pyx_checksum not in (0xe710366, 0x7718bb4, 0xb55b71c): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xe710366, 0x7718bb4, 0xb55b71c) = (actions, condition))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -25267,31 +26014,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * __pyx_result = When.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_When__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_When), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -25302,8 +26035,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -25313,10 +26046,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * __pyx_unpickle_When__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_When__set_state(When __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(((struct __pyx_obj_6hunter_11_predicates_When *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25326,7 +26059,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -25335,31 +26068,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_When__set_state(When __pyx_result, tuple __pyx_state): * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_When(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_When", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -25370,11 +26109,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_2__pyx_unpickle_When(CYTHON_UNUS * cdef __pyx_unpickle_When__set_state(When __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(struct __pyx_obj_6hunter_11_predicates_When *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -25383,12 +26122,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; + size_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_When__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_When__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[140])) + __Pyx_RefNannySetupContext("__pyx_unpickle_When__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_When__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -25396,15 +26136,15 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] # <<<<<<<<<<<<<< * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[2]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->actions); __Pyx_DECREF(__pyx_v___pyx_result->actions); @@ -25412,9 +26152,9 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->condition); @@ -25427,20 +26167,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[2]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,14,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 2); if (__pyx_t_4) { } else { __pyx_t_2 = __pyx_t_4; goto __pyx_L4_bool_binop_done; } - __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_2 = __pyx_t_4; __pyx_L4_bool_binop_done:; if (__pyx_t_2) { @@ -25449,41 +26189,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[2]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_update); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,23,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = __pyx_t_6; + __Pyx_INCREF(__pyx_t_5); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) + __PYX_ERR(1, 14, __pyx_L1_error) } - __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = NULL; + __pyx_t_7 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_7}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25492,7 +26218,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[2]) - */ +*/ } /* "(tree fragment)":11 @@ -25501,21 +26227,28 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st * cdef __pyx_unpickle_When__set_state(When __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_When__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -25524,7 +26257,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_When__set_state(st * def __pyx_unpickle_From(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_5__pyx_unpickle_From(PyObject *__pyx_self, @@ -25534,7 +26267,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From = {"__pyx_unpickle_From", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5__pyx_unpickle_From, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From = {"__pyx_unpickle_From", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5__pyx_unpickle_From, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_5__pyx_unpickle_From(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -25557,7 +26290,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_From (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -25565,75 +26298,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_From") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_From", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_From", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_From", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -25642,11 +26353,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -25656,19 +26364,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__31) - __Pyx_RefNannySetupContext("__pyx_unpickle_From", 1); - __Pyx_TraceCall("__pyx_unpickle_From", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])) + __Pyx_RefNannySetupContext("__pyx_unpickle_From", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_From", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -25676,11 +26383,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * if __pyx_checksum not in (0xcfd05cc, 0xd4c8954, 0x1acd5f7): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xcfd05cc, 0xd4c8954, 0x1acd5f7) = (condition, origin_calls, origin_depth, predicate, watermark))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__32, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[2], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -25690,17 +26397,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xcfd05cc, 0xd4c8954, 0x1acd5f7) = (condition, origin_calls, origin_depth, predicate, watermark))" % __pyx_checksum * __pyx_result = From.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -25713,16 +26420,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xcfd05cc, 0xd4c8954, 0x1acd5f7) = (condition, origin_calls, origin_depth, predicate, watermark))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = From.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0_3, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -25730,7 +26437,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * if __pyx_checksum not in (0xcfd05cc, 0xd4c8954, 0x1acd5f7): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0xcfd05cc, 0xd4c8954, 0x1acd5f7) = (condition, origin_calls, origin_depth, predicate, watermark))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -25739,31 +26446,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * __pyx_result = From.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_From__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_From), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -25774,8 +26467,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -25785,10 +26478,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * __pyx_unpickle_From__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_From__set_state(From __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(((struct __pyx_obj_6hunter_11_predicates_From *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25798,7 +26491,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -25807,31 +26500,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_From__set_state(From __pyx_result, tuple __pyx_state): * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_From(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_From", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -25842,11 +26541,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_4__pyx_unpickle_From(CYTHON_UNUS * cdef __pyx_unpickle_From__set_state(From __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(struct __pyx_obj_6hunter_11_predicates_From *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -25856,11 +26555,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_From__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_From__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[142])) + __Pyx_RefNannySetupContext("__pyx_unpickle_From__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_From__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -25868,13 +26569,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] # <<<<<<<<<<<<<< * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[5]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->condition); @@ -25883,27 +26584,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->origin_calls = __pyx_t_2; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->origin_depth = __pyx_t_2; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->predicate); @@ -25912,11 +26613,11 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->watermark = __pyx_t_2; @@ -25925,20 +26626,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[5]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,29,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_5 = (__pyx_t_4 > 5); if (__pyx_t_5) { } else { __pyx_t_3 = __pyx_t_5; goto __pyx_L4_bool_binop_done; } - __pyx_t_5 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_5 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_3 = __pyx_t_5; __pyx_L4_bool_binop_done:; if (__pyx_t_3) { @@ -25947,41 +26648,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[5]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,38,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = __pyx_t_7; + __Pyx_INCREF(__pyx_t_6); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) + __PYX_ERR(1, 14, __pyx_L1_error) } - __pyx_t_6 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = NULL; - __pyx_t_2 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_7))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); - if (likely(__pyx_t_8)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_7, function); - __pyx_t_2 = 1; - } - } - #endif + __pyx_t_8 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_6}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_2, 1+__pyx_t_2); - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_8}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -25990,7 +26677,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[5]) - */ +*/ } /* "(tree fragment)":11 @@ -25999,21 +26686,28 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st * cdef __pyx_unpickle_From__set_state(From __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_From__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -26022,7 +26716,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_From__set_state(st * def __pyx_unpickle_And(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_7__pyx_unpickle_And(PyObject *__pyx_self, @@ -26032,7 +26726,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And = {"__pyx_unpickle_And", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7__pyx_unpickle_And, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And = {"__pyx_unpickle_And", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7__pyx_unpickle_And, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_7__pyx_unpickle_And(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -26055,7 +26749,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_And (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -26063,75 +26757,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_And") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_And", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_And", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_And", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -26140,11 +26812,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -26154,19 +26823,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__33) - __Pyx_RefNannySetupContext("__pyx_unpickle_And", 1); - __Pyx_TraceCall("__pyx_unpickle_And", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])) + __Pyx_RefNannySetupContext("__pyx_unpickle_And", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_And", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -26174,11 +26842,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * if __pyx_checksum not in (0x8e21672, 0xc8ea956, 0xaa8cbda): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__34, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[3], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -26188,17 +26856,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum * __pyx_result = And.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -26211,16 +26879,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = And.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -26228,7 +26896,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * if __pyx_checksum not in (0x8e21672, 0xc8ea956, 0xaa8cbda): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -26237,31 +26905,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * __pyx_result = And.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_And__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_And), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -26272,8 +26926,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -26283,10 +26937,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * __pyx_unpickle_And__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_And__set_state(And __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(((struct __pyx_obj_6hunter_11_predicates_And *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -26296,7 +26950,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -26305,31 +26959,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_And__set_state(And __pyx_result, tuple __pyx_state): * __pyx_result.predicates = __pyx_state[0] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_And(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_And", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -26340,11 +27000,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_6__pyx_unpickle_And(CYTHON_UNUSE * cdef __pyx_unpickle_And__set_state(And __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(struct __pyx_obj_6hunter_11_predicates_And *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -26353,12 +27013,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; + size_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_And__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_And__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[144])) + __Pyx_RefNannySetupContext("__pyx_unpickle_And__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_And__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -26366,15 +27027,15 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str * __pyx_result.predicates = __pyx_state[0] # <<<<<<<<<<<<<< * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[1]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->predicates); __Pyx_DECREF(__pyx_v___pyx_result->predicates); @@ -26386,20 +27047,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[1]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,9,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 1); if (__pyx_t_4) { } else { __pyx_t_2 = __pyx_t_4; goto __pyx_L4_bool_binop_done; } - __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_2 = __pyx_t_4; __pyx_L4_bool_binop_done:; if (__pyx_t_2) { @@ -26408,41 +27069,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[1]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_update); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,18,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = __pyx_t_6; + __Pyx_INCREF(__pyx_t_5); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) + __PYX_ERR(1, 14, __pyx_L1_error) } - __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = NULL; + __pyx_t_7 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_7}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -26451,7 +27098,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[1]) - */ +*/ } /* "(tree fragment)":11 @@ -26460,21 +27107,28 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str * cdef __pyx_unpickle_And__set_state(And __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_And__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -26483,7 +27137,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_And__set_state(str * def __pyx_unpickle_Or(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_9__pyx_unpickle_Or(PyObject *__pyx_self, @@ -26493,7 +27147,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or = {"__pyx_unpickle_Or", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_9__pyx_unpickle_Or, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or = {"__pyx_unpickle_Or", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_9__pyx_unpickle_Or, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_9__pyx_unpickle_Or(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -26516,7 +27170,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Or (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -26524,75 +27178,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_Or") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_Or", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Or", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Or", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -26601,11 +27233,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -26615,19 +27244,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__35) - __Pyx_RefNannySetupContext("__pyx_unpickle_Or", 1); - __Pyx_TraceCall("__pyx_unpickle_Or", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Or", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Or", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -26635,11 +27263,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * if __pyx_checksum not in (0x8e21672, 0xc8ea956, 0xaa8cbda): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__34, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[3], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -26649,17 +27277,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum * __pyx_result = Or.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -26672,16 +27300,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = Or.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -26689,7 +27317,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * if __pyx_checksum not in (0x8e21672, 0xc8ea956, 0xaa8cbda): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x8e21672, 0xc8ea956, 0xaa8cbda) = (predicates))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -26698,31 +27326,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * __pyx_result = Or.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_Or__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_Or), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -26733,8 +27347,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -26744,10 +27358,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * __pyx_unpickle_Or__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_Or__set_state(Or __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(((struct __pyx_obj_6hunter_11_predicates_Or *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -26757,7 +27371,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -26766,31 +27380,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_Or__set_state(Or __pyx_result, tuple __pyx_state): * __pyx_result.predicates = __pyx_state[0] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_Or(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Or", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -26801,11 +27421,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_8__pyx_unpickle_Or(CYTHON_UNUSED * cdef __pyx_unpickle_Or__set_state(Or __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(struct __pyx_obj_6hunter_11_predicates_Or *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -26814,12 +27434,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; + size_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Or__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_Or__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[146])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Or__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Or__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -26827,15 +27448,15 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru * __pyx_result.predicates = __pyx_state[0] # <<<<<<<<<<<<<< * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[1]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(0, 12, __pyx_L1_error) + if (!(likely(PyTuple_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_t_1))) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->predicates); __Pyx_DECREF(__pyx_v___pyx_result->predicates); @@ -26847,20 +27468,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[1]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,9,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 1); if (__pyx_t_4) { } else { __pyx_t_2 = __pyx_t_4; goto __pyx_L4_bool_binop_done; } - __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_2 = __pyx_t_4; __pyx_L4_bool_binop_done:; if (__pyx_t_2) { @@ -26869,41 +27490,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[1]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_update); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,18,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = __pyx_t_6; + __Pyx_INCREF(__pyx_t_5); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) + __PYX_ERR(1, 14, __pyx_L1_error) } - __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = NULL; + __pyx_t_7 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_7}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -26912,7 +27519,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[1]) - */ +*/ } /* "(tree fragment)":11 @@ -26921,21 +27528,28 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru * cdef __pyx_unpickle_Or__set_state(Or __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Or__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -26944,7 +27558,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Or__set_state(stru * def __pyx_unpickle_Not(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_11__pyx_unpickle_Not(PyObject *__pyx_self, @@ -26954,7 +27568,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not = {"__pyx_unpickle_Not", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_11__pyx_unpickle_Not, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not = {"__pyx_unpickle_Not", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_11__pyx_unpickle_Not, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_11__pyx_unpickle_Not(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -26977,7 +27591,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Not (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -26985,75 +27599,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_Not") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_Not", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Not", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Not", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -27062,11 +27654,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -27076,19 +27665,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__36) - __Pyx_RefNannySetupContext("__pyx_unpickle_Not", 1); - __Pyx_TraceCall("__pyx_unpickle_Not", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Not", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Not", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -27096,11 +27684,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * if __pyx_checksum not in (0x23761c9, 0x0444431, 0xf670ef6): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x23761c9, 0x0444431, 0xf670ef6) = (predicate))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__37, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[4], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -27110,17 +27698,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x23761c9, 0x0444431, 0xf670ef6) = (predicate))" % __pyx_checksum * __pyx_result = Not.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -27133,16 +27721,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x23761c9, 0x0444431, 0xf670ef6) = (predicate))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = Not.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0_5, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -27150,7 +27738,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * if __pyx_checksum not in (0x23761c9, 0x0444431, 0xf670ef6): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x23761c9, 0x0444431, 0xf670ef6) = (predicate))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -27159,31 +27747,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * __pyx_result = Not.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_Not__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_Not), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -27194,8 +27768,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -27205,10 +27779,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * __pyx_unpickle_Not__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_Not__set_state(Not __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(((struct __pyx_obj_6hunter_11_predicates_Not *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -27218,7 +27792,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -27227,31 +27801,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_Not__set_state(Not __pyx_result, tuple __pyx_state): * __pyx_result.predicate = __pyx_state[0] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_Not(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Not", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -27262,11 +27842,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_10__pyx_unpickle_Not(CYTHON_UNUS * cdef __pyx_unpickle_Not__set_state(Not __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(struct __pyx_obj_6hunter_11_predicates_Not *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -27275,12 +27855,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; + size_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Not__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_Not__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[148])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Not__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Not__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -27288,13 +27869,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str * __pyx_result.predicate = __pyx_state[0] # <<<<<<<<<<<<<< * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[1]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->predicate); @@ -27307,20 +27888,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[1]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,9,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 > 1); if (__pyx_t_4) { } else { __pyx_t_2 = __pyx_t_4; goto __pyx_L4_bool_binop_done; } - __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_2 = __pyx_t_4; __pyx_L4_bool_binop_done:; if (__pyx_t_2) { @@ -27329,41 +27910,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[1]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_update); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,18,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = __pyx_t_6; + __Pyx_INCREF(__pyx_t_5); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) + __PYX_ERR(1, 14, __pyx_L1_error) } - __pyx_t_5 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = NULL; + __pyx_t_7 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_8 = 1; - } - } - #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_7, __pyx_t_5}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_8, 1+__pyx_t_8); - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_7}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -27372,7 +27939,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[1]) - */ +*/ } /* "(tree fragment)":11 @@ -27381,21 +27948,28 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str * cdef __pyx_unpickle_Not__set_state(Not __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Not__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -27404,7 +27978,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Not__set_state(str * def __pyx_unpickle_Backlog(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_11_predicates_13__pyx_unpickle_Backlog(PyObject *__pyx_self, @@ -27414,7 +27988,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog = {"__pyx_unpickle_Backlog", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_13__pyx_unpickle_Backlog, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog = {"__pyx_unpickle_Backlog", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_13__pyx_unpickle_Backlog, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_11_predicates_13__pyx_unpickle_Backlog(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -27437,7 +28011,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -27445,75 +28019,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_checksum)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, 1); __PYX_ERR(0, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, 2); __PYX_ERR(0, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__pyx_unpickle_Backlog") < 0)) __PYX_ERR(0, 1, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_Backlog", 0) < 0) __PYX_ERR(1, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, i); __PYX_ERR(1, 1, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(1, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(1, 1, __pyx_L3_error) } __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L3_error) + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L3_error) __pyx_v___pyx_state = values[2]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Backlog", 1, 3, 3, __pyx_nargs); __PYX_ERR(1, 1, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Backlog", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -27522,11 +28074,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -27536,19 +28085,18 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ PyObject *__pyx_v___pyx_PickleError = 0; PyObject *__pyx_v___pyx_result = 0; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__38) - __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog", 1); - __Pyx_TraceCall("__pyx_unpickle_Backlog", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Backlog", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -27556,11 +28104,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * if __pyx_checksum not in (0x1428ea1, 0xbd128e6, 0x4bbfdb4): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x1428ea1, 0xbd128e6, 0x4bbfdb4) = (_filter, _try_repr, action, condition, queue, size, stack, strip, vars))" % __pyx_checksum - */ - __Pyx_TraceLine(4,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__39, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[5], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { @@ -27570,17 +28118,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x1428ea1, 0xbd128e6, 0x4bbfdb4) = (_filter, _try_repr, action, condition, queue, size, stack, strip, vars))" % __pyx_checksum * __pyx_result = Backlog.__new__(__pyx_type) - */ - __Pyx_TraceLine(5,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(1, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError)) __PYX_ERR(0, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(1, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_1); __pyx_v___pyx_PickleError = __pyx_t_1; @@ -27593,16 +28141,16 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x1428ea1, 0xbd128e6, 0x4bbfdb4) = (_filter, _try_repr, action, condition, queue, size, stack, strip, vars))" % __pyx_checksum # <<<<<<<<<<<<<< * __pyx_result = Backlog.__new__(__pyx_type) * if __pyx_state is not None: - */ - __Pyx_TraceLine(6,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(1, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0_6, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 6, __pyx_L1_error) + __PYX_ERR(1, 6, __pyx_L1_error) /* "(tree fragment)":4 * cdef object __pyx_PickleError @@ -27610,7 +28158,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * if __pyx_checksum not in (0x1428ea1, 0xbd128e6, 0x4bbfdb4): # <<<<<<<<<<<<<< * from pickle import PickleError as __pyx_PickleError * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x1428ea1, 0xbd128e6, 0x4bbfdb4) = (_filter, _try_repr, action, condition, queue, size, stack, strip, vars))" % __pyx_checksum - */ +*/ } /* "(tree fragment)":7 @@ -27619,31 +28167,17 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * __pyx_result = Backlog.__new__(__pyx_type) # <<<<<<<<<<<<<< * if __pyx_state is not None: * __pyx_unpickle_Backlog__set_state( __pyx_result, __pyx_state) - */ - __Pyx_TraceLine(7,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog), __pyx_n_s_new); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(1, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __pyx_v___pyx_result = __pyx_t_1; __pyx_t_1 = 0; @@ -27654,8 +28188,8 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ - __Pyx_TraceLine(8,0,__PYX_ERR(0, 8, __pyx_L1_error)) +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(1, 8, __pyx_L1_error)) __pyx_t_2 = (__pyx_v___pyx_state != Py_None); if (__pyx_t_2) { @@ -27665,10 +28199,10 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * __pyx_unpickle_Backlog__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< * return __pyx_result * cdef __pyx_unpickle_Backlog__set_state(Backlog __pyx_result, tuple __pyx_state): - */ - __Pyx_TraceLine(9,0,__PYX_ERR(0, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(0, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(1, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(1, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state(((struct __pyx_obj_6hunter_11_predicates_Backlog *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -27678,7 +28212,7 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * if __pyx_state is not None: # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state( __pyx_result, __pyx_state) * return __pyx_result - */ +*/ } /* "(tree fragment)":10 @@ -27687,31 +28221,37 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * return __pyx_result # <<<<<<<<<<<<<< * cdef __pyx_unpickle_Backlog__set_state(Backlog __pyx_result, tuple __pyx_state): * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] - */ - __Pyx_TraceLine(10,0,__PYX_ERR(0, 10, __pyx_L1_error)) +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(1, 10, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v___pyx_result); __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(1, 10, __pyx_L1_error)); goto __pyx_L0; /* "(tree fragment)":1 * def __pyx_unpickle_Backlog(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Backlog", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v___pyx_PickleError); __Pyx_XDECREF(__pyx_v___pyx_result); __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -27722,11 +28262,11 @@ static PyObject *__pyx_pf_6hunter_11_predicates_12__pyx_unpickle_Backlog(CYTHON_ * cdef __pyx_unpickle_Backlog__set_state(Backlog __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): - */ +*/ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state(struct __pyx_obj_6hunter_11_predicates_Backlog *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -27736,11 +28276,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog__set_state", 1); - __Pyx_TraceCall("__pyx_unpickle_Backlog__set_state", __pyx_f[0], 11, 0, __PYX_ERR(0, 11, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[150])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Backlog__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Backlog__set_state", __pyx_f[1], 11, 0, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); /* "(tree fragment)":12 * return __pyx_result @@ -27748,13 +28290,13 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] # <<<<<<<<<<<<<< * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[9]) - */ - __Pyx_TraceLine(12,0,__PYX_ERR(0, 12, __pyx_L1_error)) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(1, 12, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->_filter); @@ -27763,9 +28305,9 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->_try_repr); @@ -27774,9 +28316,9 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->action); @@ -27785,9 +28327,9 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->condition); @@ -27796,9 +28338,9 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v___pyx_result->queue); @@ -27807,38 +28349,38 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state __pyx_t_1 = 0; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->size = __pyx_t_2; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 6, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 6, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->stack = __pyx_t_2; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 7, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 7, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->strip = __pyx_t_3; if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 12, __pyx_L1_error) + __PYX_ERR(1, 12, __pyx_L1_error) } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 8, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 8, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v___pyx_result->vars = __pyx_t_3; @@ -27847,20 +28389,20 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[9]) - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) +*/ + __Pyx_TraceLine(13,49,0,__PYX_ERR(1, 13, __pyx_L1_error)) if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 13, __pyx_L1_error) + __PYX_ERR(1, 13, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_5 = (__pyx_t_4 > 9); if (__pyx_t_5) { } else { __pyx_t_3 = __pyx_t_5; goto __pyx_L4_bool_binop_done; } - __pyx_t_5 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_5 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(1, 13, __pyx_L1_error) __pyx_t_3 = __pyx_t_5; __pyx_L4_bool_binop_done:; if (__pyx_t_3) { @@ -27869,41 +28411,27 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): * __pyx_result.__dict__.update(__pyx_state[9]) # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(14,0,__PYX_ERR(0, 14, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 14, __pyx_L1_error) +*/ + __Pyx_TraceLine(14,58,0,__PYX_ERR(1, 14, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = __pyx_t_7; + __Pyx_INCREF(__pyx_t_6); if (unlikely(__pyx_v___pyx_state == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 14, __pyx_L1_error) - } - __pyx_t_6 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 9, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = NULL; - __pyx_t_2 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_7))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); - if (likely(__pyx_t_8)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_7, function); - __pyx_t_2 = 1; - } + __PYX_ERR(1, 14, __pyx_L1_error) } - #endif + __pyx_t_8 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 9, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_8, __pyx_t_6}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_2, 1+__pyx_t_2); - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_8}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -27912,7 +28440,7 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< * __pyx_result.__dict__.update(__pyx_state[9]) - */ +*/ } /* "(tree fragment)":11 @@ -27921,24 +28449,32 @@ static PyObject *__pyx_f_6hunter_11_predicates___pyx_unpickle_Backlog__set_state * cdef __pyx_unpickle_Backlog__set_state(Backlog __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 11, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._predicates.__pyx_unpickle_Backlog__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } +/* #### Code section: module_exttypes ### */ static PyObject *__pyx_tp_new_6hunter_11_predicates_Query(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { struct __pyx_obj_6hunter_11_predicates_Query *p; @@ -27977,7 +28513,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Query(PyObject *o) { Py_CLEAR(p->query_lte); Py_CLEAR(p->query_regex); Py_CLEAR(p->query_startswith); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -27990,6 +28526,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Query(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_Query(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_Query *p = (struct __pyx_obj_6hunter_11_predicates_Query *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->query_contains) { e = (*v)(p->query_contains, a); if (e) return e; } @@ -28124,28 +28664,25 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_5Query_query_startswith(PyO return __pyx_pw_6hunter_11_predicates_5Query_16query_startswith_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_5Query_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_5Query_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_Query[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_5Query_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_5Query_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_5Query_13__and__, METH_O|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Query[] = { - {(char *)"query_contains", __pyx_getprop_6hunter_11_predicates_5Query_query_contains, 0, (char *)0, 0}, - {(char *)"query_endswith", __pyx_getprop_6hunter_11_predicates_5Query_query_endswith, 0, (char *)0, 0}, - {(char *)"query_eq", __pyx_getprop_6hunter_11_predicates_5Query_query_eq, 0, (char *)0, 0}, - {(char *)"query_gt", __pyx_getprop_6hunter_11_predicates_5Query_query_gt, 0, (char *)0, 0}, - {(char *)"query_gte", __pyx_getprop_6hunter_11_predicates_5Query_query_gte, 0, (char *)0, 0}, - {(char *)"query_in", __pyx_getprop_6hunter_11_predicates_5Query_query_in, 0, (char *)0, 0}, - {(char *)"query_lt", __pyx_getprop_6hunter_11_predicates_5Query_query_lt, 0, (char *)0, 0}, - {(char *)"query_lte", __pyx_getprop_6hunter_11_predicates_5Query_query_lte, 0, (char *)0, 0}, - {(char *)"query_regex", __pyx_getprop_6hunter_11_predicates_5Query_query_regex, 0, (char *)0, 0}, - {(char *)"query_startswith", __pyx_getprop_6hunter_11_predicates_5Query_query_startswith, 0, (char *)0, 0}, + {"query_contains", __pyx_getprop_6hunter_11_predicates_5Query_query_contains, 0, 0, 0}, + {"query_endswith", __pyx_getprop_6hunter_11_predicates_5Query_query_endswith, 0, 0, 0}, + {"query_eq", __pyx_getprop_6hunter_11_predicates_5Query_query_eq, 0, 0, 0}, + {"query_gt", __pyx_getprop_6hunter_11_predicates_5Query_query_gt, 0, 0, 0}, + {"query_gte", __pyx_getprop_6hunter_11_predicates_5Query_query_gte, 0, 0, 0}, + {"query_in", __pyx_getprop_6hunter_11_predicates_5Query_query_in, 0, 0, 0}, + {"query_lt", __pyx_getprop_6hunter_11_predicates_5Query_query_lt, 0, 0, 0}, + {"query_lte", __pyx_getprop_6hunter_11_predicates_5Query_query_lte, 0, 0, 0}, + {"query_regex", __pyx_getprop_6hunter_11_predicates_5Query_query_regex, 0, 0, 0}, + {"query_startswith", __pyx_getprop_6hunter_11_predicates_5Query_query_startswith, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -28180,9 +28717,6 @@ static PyNumberMethods __pyx_tp_as_number_Query = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -28196,28 +28730,12 @@ static PyNumberMethods __pyx_tp_as_number_Query = { __pyx_nb_and_6hunter_11_predicates_Query, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_Query, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -28230,12 +28748,8 @@ static PyNumberMethods __pyx_tp_as_number_Query = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { @@ -28252,12 +28766,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_5Query_5__repr__, /*tp_repr*/ &__pyx_tp_as_number_Query, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -28298,13 +28807,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -28314,6 +28821,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Query = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -28339,7 +28849,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_And(PyObject *o) { struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; PyObject_GC_UnTrack(o); Py_CLEAR(p->predicates); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -28352,6 +28862,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_And(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_And(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_And *p = (struct __pyx_obj_6hunter_11_predicates_And *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->predicates) { e = (*v)(p->predicates, a); if (e) return e; } @@ -28396,19 +28910,16 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_3And_predicates(PyObject *o return __pyx_pw_6hunter_11_predicates_3And_10predicates_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3And_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_3And_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_And[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3And_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_3And_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_3And_13__and__, METH_O|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_And[] = { - {(char *)"predicates", __pyx_getprop_6hunter_11_predicates_3And_predicates, 0, (char *)0, 0}, + {"predicates", __pyx_getprop_6hunter_11_predicates_3And_predicates, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -28443,9 +28954,6 @@ static PyNumberMethods __pyx_tp_as_number_And = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -28459,28 +28967,12 @@ static PyNumberMethods __pyx_tp_as_number_And = { __pyx_nb_and_6hunter_11_predicates_And, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_And, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -28493,12 +28985,8 @@ static PyNumberMethods __pyx_tp_as_number_And = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_And = { @@ -28515,12 +29003,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_And = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_3And_5__repr__, /*tp_repr*/ &__pyx_tp_as_number_And, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -28561,13 +29044,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_And = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -28577,6 +29058,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_And = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -28602,7 +29086,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Or(PyObject *o) { struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; PyObject_GC_UnTrack(o); Py_CLEAR(p->predicates); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -28615,6 +29099,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Or(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_Or(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_Or *p = (struct __pyx_obj_6hunter_11_predicates_Or *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->predicates) { e = (*v)(p->predicates, a); if (e) return e; } @@ -28659,19 +29147,16 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_2Or_predicates(PyObject *o, return __pyx_pw_6hunter_11_predicates_2Or_10predicates_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_2Or_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_2Or_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_Or[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_2Or_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_2Or_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_2Or_13__and__, METH_O|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Or[] = { - {(char *)"predicates", __pyx_getprop_6hunter_11_predicates_2Or_predicates, 0, (char *)0, 0}, + {"predicates", __pyx_getprop_6hunter_11_predicates_2Or_predicates, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -28706,9 +29191,6 @@ static PyNumberMethods __pyx_tp_as_number_Or = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -28722,28 +29204,12 @@ static PyNumberMethods __pyx_tp_as_number_Or = { __pyx_nb_and_6hunter_11_predicates_Or, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_Or, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -28756,12 +29222,8 @@ static PyNumberMethods __pyx_tp_as_number_Or = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { @@ -28778,12 +29240,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_2Or_5__repr__, /*tp_repr*/ &__pyx_tp_as_number_Or, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -28824,13 +29281,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -28840,6 +29295,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Or = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -28865,7 +29323,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Not(PyObject *o) { struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; PyObject_GC_UnTrack(o); Py_CLEAR(p->predicate); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -28878,6 +29336,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Not(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_Not(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_Not *p = (struct __pyx_obj_6hunter_11_predicates_Not *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->predicate) { e = (*v)(p->predicate, a); if (e) return e; } @@ -28922,19 +29384,16 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_3Not_predicate(PyObject *o, return __pyx_pw_6hunter_11_predicates_3Not_9predicate_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3Not_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_3Not_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_Not[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_3Not_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_3Not_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_3Not_13__and__, METH_O|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Not[] = { - {(char *)"predicate", __pyx_getprop_6hunter_11_predicates_3Not_predicate, 0, (char *)0, 0}, + {"predicate", __pyx_getprop_6hunter_11_predicates_3Not_predicate, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -28969,9 +29428,6 @@ static PyNumberMethods __pyx_tp_as_number_Not = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -28985,28 +29441,12 @@ static PyNumberMethods __pyx_tp_as_number_Not = { __pyx_nb_and_6hunter_11_predicates_Not, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_Not, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -29019,12 +29459,8 @@ static PyNumberMethods __pyx_tp_as_number_Not = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { @@ -29041,12 +29477,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_3Not_5__repr__, /*tp_repr*/ &__pyx_tp_as_number_Not, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -29087,13 +29518,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -29103,6 +29532,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Not = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -29130,7 +29562,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_When(PyObject *o) { PyObject_GC_UnTrack(o); Py_CLEAR(p->condition); Py_CLEAR(p->actions); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -29143,6 +29575,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_When(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_When(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_When *p = (struct __pyx_obj_6hunter_11_predicates_When *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->condition) { e = (*v)(p->condition, a); if (e) return e; } @@ -29197,20 +29633,17 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_4When_actions(PyObject *o, return __pyx_pw_6hunter_11_predicates_4When_7actions_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4When_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_4When_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_When[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4When_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_4When_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_4When_13__and__, METH_O|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_When[] = { - {(char *)"condition", __pyx_getprop_6hunter_11_predicates_4When_condition, 0, (char *)0, 0}, - {(char *)"actions", __pyx_getprop_6hunter_11_predicates_4When_actions, 0, (char *)0, 0}, + {"condition", __pyx_getprop_6hunter_11_predicates_4When_condition, 0, 0, 0}, + {"actions", __pyx_getprop_6hunter_11_predicates_4When_actions, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -29245,9 +29678,6 @@ static PyNumberMethods __pyx_tp_as_number_When = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -29261,28 +29691,12 @@ static PyNumberMethods __pyx_tp_as_number_When = { __pyx_nb_and_6hunter_11_predicates_When, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_When, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -29295,12 +29709,8 @@ static PyNumberMethods __pyx_tp_as_number_When = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_When = { @@ -29317,12 +29727,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_When = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_4When_5__repr__, /*tp_repr*/ &__pyx_tp_as_number_When, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -29363,13 +29768,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_When = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -29379,6 +29782,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_When = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -29406,7 +29812,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_From(PyObject *o) { PyObject_GC_UnTrack(o); Py_CLEAR(p->condition); Py_CLEAR(p->predicate); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -29419,6 +29825,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_From(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_From(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_From *p = (struct __pyx_obj_6hunter_11_predicates_From *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->condition) { e = (*v)(p->condition, a); if (e) return e; } @@ -29485,23 +29895,20 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_4From_origin_calls(PyObject return __pyx_pw_6hunter_11_predicates_4From_12origin_calls_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4From_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_4From_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_From[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_4From_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_4From_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_4From_13__and__, METH_O|METH_COEXIST, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_From[] = { - {(char *)"condition", __pyx_getprop_6hunter_11_predicates_4From_condition, 0, (char *)0, 0}, - {(char *)"predicate", __pyx_getprop_6hunter_11_predicates_4From_predicate, 0, (char *)0, 0}, - {(char *)"watermark", __pyx_getprop_6hunter_11_predicates_4From_watermark, 0, (char *)0, 0}, - {(char *)"origin_depth", __pyx_getprop_6hunter_11_predicates_4From_origin_depth, 0, (char *)0, 0}, - {(char *)"origin_calls", __pyx_getprop_6hunter_11_predicates_4From_origin_calls, 0, (char *)0, 0}, + {"condition", __pyx_getprop_6hunter_11_predicates_4From_condition, 0, 0, 0}, + {"predicate", __pyx_getprop_6hunter_11_predicates_4From_predicate, 0, 0, 0}, + {"watermark", __pyx_getprop_6hunter_11_predicates_4From_watermark, 0, 0, 0}, + {"origin_depth", __pyx_getprop_6hunter_11_predicates_4From_origin_depth, 0, 0, 0}, + {"origin_calls", __pyx_getprop_6hunter_11_predicates_4From_origin_calls, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -29536,9 +29943,6 @@ static PyNumberMethods __pyx_tp_as_number_From = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -29552,28 +29956,12 @@ static PyNumberMethods __pyx_tp_as_number_From = { __pyx_nb_and_6hunter_11_predicates_From, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_From, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -29586,12 +29974,8 @@ static PyNumberMethods __pyx_tp_as_number_From = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_From = { @@ -29608,12 +29992,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_From = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_4From_5__repr__, /*tp_repr*/ &__pyx_tp_as_number_From, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -29654,13 +30033,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_From = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -29670,6 +30047,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_From = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -29703,7 +30083,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Backlog(PyObject *o) { Py_CLEAR(p->_try_repr); Py_CLEAR(p->_filter); Py_CLEAR(p->queue); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -29716,6 +30096,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_Backlog(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_Backlog(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_Backlog *p = (struct __pyx_obj_6hunter_11_predicates_Backlog *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->condition) { e = (*v)(p->condition, a); if (e) return e; } @@ -29816,28 +30200,25 @@ static PyObject *__pyx_getprop_6hunter_11_predicates_7Backlog_queue(PyObject *o, return __pyx_pw_6hunter_11_predicates_7Backlog_5queue_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_7Backlog_7__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_7Backlog_7__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_Backlog[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_7Backlog_7__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"filter", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_17filter, METH_VARARGS|METH_KEYWORDS, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__or__", (PyCFunction)__pyx_pw_6hunter_11_predicates_7Backlog_11__or__, METH_O|METH_COEXIST, 0}, + {"__and__", (PyCFunction)__pyx_pw_6hunter_11_predicates_7Backlog_13__and__, METH_O|METH_COEXIST, 0}, + {"filter", (PyCFunction)(void(*)(void))(PyCFunctionWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_17filter, METH_VARARGS|METH_KEYWORDS, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_11_predicates_Backlog[] = { - {(char *)"condition", __pyx_getprop_6hunter_11_predicates_7Backlog_condition, 0, (char *)0, 0}, - {(char *)"size", __pyx_getprop_6hunter_11_predicates_7Backlog_size, 0, (char *)0, 0}, - {(char *)"stack", __pyx_getprop_6hunter_11_predicates_7Backlog_stack, 0, (char *)0, 0}, - {(char *)"vars", __pyx_getprop_6hunter_11_predicates_7Backlog_vars, 0, (char *)0, 0}, - {(char *)"strip", __pyx_getprop_6hunter_11_predicates_7Backlog_strip, 0, (char *)0, 0}, - {(char *)"action", __pyx_getprop_6hunter_11_predicates_7Backlog_action, 0, (char *)0, 0}, - {(char *)"_try_repr", __pyx_getprop_6hunter_11_predicates_7Backlog__try_repr, 0, (char *)0, 0}, - {(char *)"_filter", __pyx_getprop_6hunter_11_predicates_7Backlog__filter, 0, (char *)0, 0}, - {(char *)"queue", __pyx_getprop_6hunter_11_predicates_7Backlog_queue, 0, (char *)0, 0}, + {"condition", __pyx_getprop_6hunter_11_predicates_7Backlog_condition, 0, 0, 0}, + {"size", __pyx_getprop_6hunter_11_predicates_7Backlog_size, 0, 0, 0}, + {"stack", __pyx_getprop_6hunter_11_predicates_7Backlog_stack, 0, 0, 0}, + {"vars", __pyx_getprop_6hunter_11_predicates_7Backlog_vars, 0, 0, 0}, + {"strip", __pyx_getprop_6hunter_11_predicates_7Backlog_strip, 0, 0, 0}, + {"action", __pyx_getprop_6hunter_11_predicates_7Backlog_action, 0, 0, 0}, + {"_try_repr", __pyx_getprop_6hunter_11_predicates_7Backlog__try_repr, 0, 0, 0}, + {"_filter", __pyx_getprop_6hunter_11_predicates_7Backlog__filter, 0, 0, 0}, + {"queue", __pyx_getprop_6hunter_11_predicates_7Backlog_queue, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -29871,9 +30252,6 @@ static PyNumberMethods __pyx_tp_as_number_Backlog = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_divide*/ - #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ @@ -29887,28 +30265,12 @@ static PyNumberMethods __pyx_tp_as_number_Backlog = { __pyx_nb_and_6hunter_11_predicates_Backlog, /*nb_and*/ 0, /*nb_xor*/ __pyx_nb_or_6hunter_11_predicates_Backlog, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_coerce*/ - #endif 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif + 0, /*nb_long (reserved)*/ 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_hex*/ - #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) - 0, /*nb_inplace_divide*/ - #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ @@ -29921,12 +30283,8 @@ static PyNumberMethods __pyx_tp_as_number_Backlog = { 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ 0, /*nb_index*/ - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_matrix_multiply*/ - #endif - #if PY_VERSION_HEX >= 0x03050000 0, /*nb_inplace_matrix_multiply*/ - #endif }; static PyTypeObject __pyx_type_6hunter_11_predicates_Backlog = { @@ -29943,12 +30301,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Backlog = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_7Backlog_7__repr__, /*tp_repr*/ &__pyx_tp_as_number_Backlog, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -29989,13 +30342,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Backlog = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -30005,6 +30356,9 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_Backlog = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -30030,7 +30384,7 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_QueryEntry(PyObject *o) { struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; PyObject_GC_UnTrack(o); Py_CLEAR(p->value); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -30043,6 +30397,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates_QueryEntry(PyObject *o) { static int __pyx_tp_traverse_6hunter_11_predicates_QueryEntry(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates_QueryEntry *p = (struct __pyx_obj_6hunter_11_predicates_QueryEntry *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->value) { e = (*v)(p->value, a); if (e) return e; } @@ -30081,14 +30439,9 @@ static PyObject *__pyx_tp_richcompare_6hunter_11_predicates_QueryEntry(PyObject } } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_11_predicates_QueryEntry[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -30126,12 +30479,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_11_predicates_10QueryEntry_3__repr__, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -30172,13 +30520,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -30188,17 +30534,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates_QueryEntry = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -30206,8 +30550,8 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct____str__( o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[--__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -30233,12 +30577,12 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__(P PyObject_GC_UnTrack(o); Py_CLEAR(p->__pyx_8genexpr1__pyx_v_kind); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__ < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct____str__[__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct____str__++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -30252,6 +30596,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct____str__(P static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct____str__(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct____str__ *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_8genexpr1__pyx_v_kind) { e = (*v)(p->__pyx_8genexpr1__pyx_v_kind, a); if (e) return e; } @@ -30297,12 +30645,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -30343,13 +30686,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -30359,17 +30700,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct____str__ #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -30377,8 +30716,8 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_1_genexpr o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[--__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -30406,14 +30745,13 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr( Py_CLEAR(p->__pyx_genexpr_arg_0); Py_CLEAR(p->__pyx_v_key); Py_CLEAR(p->__pyx_v_value); - Py_CLEAR(p->__pyx_t_0); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_1_genexpr[__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_1_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -30427,6 +30765,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_1_genexpr( static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_1_genexpr *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_outer_scope) { e = (*v)(((PyObject *)p->__pyx_outer_scope), a); if (e) return e; } @@ -30439,9 +30781,6 @@ static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_1_genexpr( if (p->__pyx_v_value) { e = (*v)(p->__pyx_v_value, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; - } return 0; } #if CYTHON_USE_TYPE_SPECS @@ -30474,12 +30813,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexp #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -30520,13 +30854,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexp 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -30536,17 +30868,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexp #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -30554,8 +30884,8 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_2_genexpr o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[--__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -30583,12 +30913,12 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr( Py_CLEAR(p->__pyx_v_action); Py_CLEAR(p->__pyx_t_0); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_2_genexpr[__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_2_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -30602,6 +30932,10 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_2_genexpr( static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_2_genexpr(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_2_genexpr *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_genexpr_arg_0) { e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; } @@ -30643,12 +30977,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexp #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -30689,13 +31018,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexp 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -30705,17 +31032,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexp #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -30723,8 +31048,8 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_3_genexpr o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[--__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -30750,14 +31075,13 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr( PyObject_GC_UnTrack(o); Py_CLEAR(p->__pyx_genexpr_arg_0); Py_CLEAR(p->__pyx_v_p); - Py_CLEAR(p->__pyx_t_0); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_3_genexpr[__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_3_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -30771,15 +31095,16 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_3_genexpr( static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_3_genexpr(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_3_genexpr *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_genexpr_arg_0) { e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; } if (p->__pyx_v_p) { e = (*v)(p->__pyx_v_p, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; - } return 0; } #if CYTHON_USE_TYPE_SPECS @@ -30812,12 +31137,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexp #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -30858,13 +31178,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexp 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -30874,17 +31192,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexp #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -30892,8 +31208,8 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_4_genexpr o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[--__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -30919,14 +31235,13 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr( PyObject_GC_UnTrack(o); Py_CLEAR(p->__pyx_genexpr_arg_0); Py_CLEAR(p->__pyx_v_p); - Py_CLEAR(p->__pyx_t_0); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_4_genexpr[__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_4_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -30940,15 +31255,16 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_4_genexpr( static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_4_genexpr(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_genexpr_arg_0) { e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; } if (p->__pyx_v_p) { e = (*v)(p->__pyx_v_p, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; - } return 0; } #if CYTHON_USE_TYPE_SPECS @@ -30981,12 +31297,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexp #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -31027,13 +31338,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexp 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -31043,17 +31352,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexp #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[8]; -static int __pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr = 0; -#endif - static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -31061,8 +31368,8 @@ static PyObject *__pyx_tp_new_6hunter_11_predicates___pyx_scope_struct_5_genexpr o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { - o = (PyObject*)__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[--__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[--__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr]; memset(o, 0, sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); @@ -31088,14 +31395,13 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr( PyObject_GC_UnTrack(o); Py_CLEAR(p->__pyx_genexpr_arg_0); Py_CLEAR(p->__pyx_v_p); - Py_CLEAR(p->__pyx_t_0); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { - __pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr)))) { + __pyx_mstate_global->__pyx_freelist_6hunter_11_predicates___pyx_scope_struct_5_genexpr[__pyx_mstate_global->__pyx_freecount_6hunter_11_predicates___pyx_scope_struct_5_genexpr++] = ((struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -31109,15 +31415,16 @@ static void __pyx_tp_dealloc_6hunter_11_predicates___pyx_scope_struct_5_genexpr( static int __pyx_tp_traverse_6hunter_11_predicates___pyx_scope_struct_5_genexpr(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *p = (struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->__pyx_genexpr_arg_0) { e = (*v)(p->__pyx_genexpr_arg_0, a); if (e) return e; } if (p->__pyx_v_p) { e = (*v)(p->__pyx_v_p, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; - } return 0; } #if CYTHON_USE_TYPE_SPECS @@ -31150,12 +31457,7 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexp #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -31196,13 +31498,11 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexp 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -31212,17 +31512,15 @@ static PyTypeObject __pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexp #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif }; #endif -#if CYTHON_USE_FREELISTS -static struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[8]; -static int __pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = 0; -#endif - static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API @@ -31230,8 +31528,8 @@ static PyObject *__pyx_tp_new___pyx_scope_struct____Pyx_CFunc_6hunter_11_predica o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)))) { - o = (PyObject*)__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[--__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event]; + if (likely((int)(__pyx_mstate_global->__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)))) { + o = (PyObject*)__pyx_mstate_global->__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[--__pyx_mstate_global->__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event]; memset(o, 0, sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)); (void) PyObject_INIT(o, t); } else @@ -31253,12 +31551,12 @@ static void __pyx_tp_dealloc___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicat } #endif #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)))) { - __pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event++] = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)o); + if (((int)(__pyx_mstate_global->__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)))) { + __pyx_mstate_global->__pyx_freelist___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event[__pyx_mstate_global->__pyx_freecount___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event++] = ((struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event *)o); } else #endif { - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -31297,12 +31595,7 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -31343,13 +31636,11 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -31359,6 +31650,9 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -31368,569 +31662,56 @@ static PyTypeObject __pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object static PyMethodDef __pyx_methods[] = { {0, 0, 0, 0} }; -#ifndef CYTHON_SMALL_CODE -#if defined(__clang__) - #define CYTHON_SMALL_CODE -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - #define CYTHON_SMALL_CODE __attribute__((cold)) -#else - #define CYTHON_SMALL_CODE -#endif -#endif -/* #### Code section: pystring_table ### */ +/* #### Code section: initfunc_declarations ### */ +static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate); /*proto*/ +/* #### Code section: init_module ### */ -static int __Pyx_CreateStringTabAndInitStrings(void) { - __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_n_s_Action, __pyx_k_Action, sizeof(__pyx_k_Action), 0, 0, 1, 1}, - {&__pyx_kp_s_Action_r_must_be_a_ColorStreamAc, __pyx_k_Action_r_must_be_a_ColorStreamAc, sizeof(__pyx_k_Action_r_must_be_a_ColorStreamAc), 0, 0, 1, 0}, - {&__pyx_n_s_And, __pyx_k_And, sizeof(__pyx_k_And), 0, 0, 1, 1}, - {&__pyx_n_s_And___reduce_cython, __pyx_k_And___reduce_cython, sizeof(__pyx_k_And___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_And___setstate_cython, __pyx_k_And___setstate_cython, sizeof(__pyx_k_And___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_And_s, __pyx_k_And_s, sizeof(__pyx_k_And_s), 0, 0, 1, 0}, - {&__pyx_n_s_Backlog, __pyx_k_Backlog, sizeof(__pyx_k_Backlog), 0, 0, 1, 1}, - {&__pyx_n_s_Backlog___reduce_cython, __pyx_k_Backlog___reduce_cython, sizeof(__pyx_k_Backlog___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Backlog___setstate_cython, __pyx_k_Backlog___setstate_cython, sizeof(__pyx_k_Backlog___setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Backlog_filter, __pyx_k_Backlog_filter, sizeof(__pyx_k_Backlog_filter), 0, 0, 1, 1}, - {&__pyx_kp_s_Backlog_s_size_s_stack_s_vars_s, __pyx_k_Backlog_s_size_s_stack_s_vars_s, sizeof(__pyx_k_Backlog_s_size_s_stack_s_vars_s), 0, 0, 1, 0}, - {&__pyx_n_s_ColorStreamAction, __pyx_k_ColorStreamAction, sizeof(__pyx_k_ColorStreamAction), 0, 0, 1, 1}, - {&__pyx_n_s_From, __pyx_k_From, sizeof(__pyx_k_From), 0, 0, 1, 1}, - {&__pyx_n_s_From___reduce_cython, __pyx_k_From___reduce_cython, sizeof(__pyx_k_From___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_From___setstate_cython, __pyx_k_From___setstate_cython, sizeof(__pyx_k_From___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_From_s_s_watermark_s, __pyx_k_From_s_s_watermark_s, sizeof(__pyx_k_From_s_s_watermark_s), 0, 0, 1, 0}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0, __pyx_k_Incompatible_checksums_0x_x_vs_0, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0), 0, 0, 1, 0}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_2, __pyx_k_Incompatible_checksums_0x_x_vs_0_2, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_2), 0, 0, 1, 0}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_3, __pyx_k_Incompatible_checksums_0x_x_vs_0_3, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_3), 0, 0, 1, 0}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_4, __pyx_k_Incompatible_checksums_0x_x_vs_0_4, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_4), 0, 0, 1, 0}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_5, __pyx_k_Incompatible_checksums_0x_x_vs_0_5, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_5), 0, 0, 1, 0}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0_6, __pyx_k_Incompatible_checksums_0x_x_vs_0_6, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_6), 0, 0, 1, 0}, - {&__pyx_kp_u_Must_be_one_of, __pyx_k_Must_be_one_of, sizeof(__pyx_k_Must_be_one_of), 0, 1, 0, 0}, - {&__pyx_kp_s_Must_give_at_least_one_action, __pyx_k_Must_give_at_least_one_action, sizeof(__pyx_k_Must_give_at_least_one_action), 0, 0, 1, 0}, - {&__pyx_n_s_Not, __pyx_k_Not, sizeof(__pyx_k_Not), 0, 0, 1, 1}, - {&__pyx_n_s_Not___reduce_cython, __pyx_k_Not___reduce_cython, sizeof(__pyx_k_Not___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Not___setstate_cython, __pyx_k_Not___setstate_cython, sizeof(__pyx_k_Not___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_Not_s, __pyx_k_Not_s, sizeof(__pyx_k_Not_s), 0, 0, 1, 0}, - {&__pyx_n_s_Or, __pyx_k_Or, sizeof(__pyx_k_Or), 0, 0, 1, 1}, - {&__pyx_n_s_Or___reduce_cython, __pyx_k_Or___reduce_cython, sizeof(__pyx_k_Or___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Or___setstate_cython, __pyx_k_Or___setstate_cython, sizeof(__pyx_k_Or___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_Or_s, __pyx_k_Or_s, sizeof(__pyx_k_Or_s), 0, 0, 1, 0}, - {&__pyx_n_s_PickleError, __pyx_k_PickleError, sizeof(__pyx_k_PickleError), 0, 0, 1, 1}, - {&__pyx_n_s_Pyx_CFunc_6hunter_11_predicate, __pyx_k_Pyx_CFunc_6hunter_11_predicate, sizeof(__pyx_k_Pyx_CFunc_6hunter_11_predicate), 0, 0, 1, 1}, - {&__pyx_n_s_Query, __pyx_k_Query, sizeof(__pyx_k_Query), 0, 0, 1, 1}, - {&__pyx_n_s_QueryEntry, __pyx_k_QueryEntry, sizeof(__pyx_k_QueryEntry), 0, 0, 1, 1}, - {&__pyx_n_s_QueryEntry___reduce_cython, __pyx_k_QueryEntry___reduce_cython, sizeof(__pyx_k_QueryEntry___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_QueryEntry___setstate_cython, __pyx_k_QueryEntry___setstate_cython, sizeof(__pyx_k_QueryEntry___setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Query___reduce_cython, __pyx_k_Query___reduce_cython, sizeof(__pyx_k_Query___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Query___setstate_cython, __pyx_k_Query___setstate_cython, sizeof(__pyx_k_Query___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_Query_s, __pyx_k_Query_s, sizeof(__pyx_k_Query_s), 0, 0, 1, 0}, - {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, - {&__pyx_kp_u_Unexpected_argument, __pyx_k_Unexpected_argument, sizeof(__pyx_k_Unexpected_argument), 0, 1, 0, 0}, - {&__pyx_kp_u_Unexpected_operator, __pyx_k_Unexpected_operator, sizeof(__pyx_k_Unexpected_operator), 0, 1, 0, 0}, - {&__pyx_kp_u_Value, __pyx_k_Value, sizeof(__pyx_k_Value), 0, 1, 0, 0}, - {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, - {&__pyx_n_s_When, __pyx_k_When, sizeof(__pyx_k_When), 0, 0, 1, 1}, - {&__pyx_n_s_When___reduce_cython, __pyx_k_When___reduce_cython, sizeof(__pyx_k_When___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_When___setstate_cython, __pyx_k_When___setstate_cython, sizeof(__pyx_k_When___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_When_s_s, __pyx_k_When_s_s, sizeof(__pyx_k_When_s_s), 0, 0, 1, 0}, - {&__pyx_kp_s__10, __pyx_k__10, sizeof(__pyx_k__10), 0, 0, 1, 0}, - {&__pyx_n_s__48, __pyx_k__48, sizeof(__pyx_k__48), 0, 0, 1, 1}, - {&__pyx_n_s__5, __pyx_k__5, sizeof(__pyx_k__5), 0, 0, 1, 1}, - {&__pyx_kp_u__6, __pyx_k__6, sizeof(__pyx_k__6), 0, 1, 0, 0}, - {&__pyx_kp_u__7, __pyx_k__7, sizeof(__pyx_k__7), 0, 1, 0, 0}, - {&__pyx_kp_s__8, __pyx_k__8, sizeof(__pyx_k__8), 0, 0, 1, 0}, - {&__pyx_kp_s__9, __pyx_k__9, sizeof(__pyx_k__9), 0, 0, 1, 0}, - {&__pyx_n_s_action, __pyx_k_action, sizeof(__pyx_k_action), 0, 0, 1, 1}, - {&__pyx_n_s_actions, __pyx_k_actions, sizeof(__pyx_k_actions), 0, 0, 1, 1}, - {&__pyx_n_s_all, __pyx_k_all, sizeof(__pyx_k_all), 0, 0, 1, 1}, - {&__pyx_n_s_append, __pyx_k_append, sizeof(__pyx_k_append), 0, 0, 1, 1}, - {&__pyx_n_s_appendleft, __pyx_k_appendleft, sizeof(__pyx_k_appendleft), 0, 0, 1, 1}, - {&__pyx_n_s_arg, __pyx_k_arg, sizeof(__pyx_k_arg), 0, 0, 1, 1}, - {&__pyx_n_s_args, __pyx_k_args, sizeof(__pyx_k_args), 0, 0, 1, 1}, - {&__pyx_n_s_asyncio_coroutines, __pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 0, 1, 1}, - {&__pyx_n_s_builtin, __pyx_k_builtin, sizeof(__pyx_k_builtin), 0, 0, 1, 1}, - {&__pyx_n_s_call, __pyx_k_call, sizeof(__pyx_k_call), 0, 0, 1, 1}, - {&__pyx_n_s_calls, __pyx_k_calls, sizeof(__pyx_k_calls), 0, 0, 1, 1}, - {&__pyx_n_s_cfunc_to_py, __pyx_k_cfunc_to_py, sizeof(__pyx_k_cfunc_to_py), 0, 0, 1, 1}, - {&__pyx_n_s_cleanup, __pyx_k_cleanup, sizeof(__pyx_k_cleanup), 0, 0, 1, 1}, - {&__pyx_n_s_clear, __pyx_k_clear, sizeof(__pyx_k_clear), 0, 0, 1, 1}, - {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, - {&__pyx_n_s_close, __pyx_k_close, sizeof(__pyx_k_close), 0, 0, 1, 1}, - {&__pyx_n_s_collections, __pyx_k_collections, sizeof(__pyx_k_collections), 0, 0, 1, 1}, - {&__pyx_n_s_compile, __pyx_k_compile, sizeof(__pyx_k_compile), 0, 0, 1, 1}, - {&__pyx_n_s_condition, __pyx_k_condition, sizeof(__pyx_k_condition), 0, 0, 1, 1}, - {&__pyx_n_s_contains, __pyx_k_contains, sizeof(__pyx_k_contains), 0, 0, 1, 1}, - {&__pyx_n_s_contains_2, __pyx_k_contains_2, sizeof(__pyx_k_contains_2), 0, 0, 1, 1}, - {&__pyx_n_s_depth, __pyx_k_depth, sizeof(__pyx_k_depth), 0, 0, 1, 1}, - {&__pyx_n_s_deque, __pyx_k_deque, sizeof(__pyx_k_deque), 0, 0, 1, 1}, - {&__pyx_n_s_dict, __pyx_k_dict, sizeof(__pyx_k_dict), 0, 0, 1, 1}, - {&__pyx_n_s_dict_2, __pyx_k_dict_2, sizeof(__pyx_k_dict_2), 0, 0, 1, 1}, - {&__pyx_kp_u_disable, __pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0, 0}, - {&__pyx_kp_u_enable, __pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0, 0}, - {&__pyx_n_s_endswith, __pyx_k_endswith, sizeof(__pyx_k_endswith), 0, 0, 1, 1}, - {&__pyx_n_s_endswith_2, __pyx_k_endswith_2, sizeof(__pyx_k_endswith_2), 0, 0, 1, 1}, - {&__pyx_n_s_event, __pyx_k_event, sizeof(__pyx_k_event), 0, 0, 1, 1}, - {&__pyx_n_s_ew, __pyx_k_ew, sizeof(__pyx_k_ew), 0, 0, 1, 1}, - {&__pyx_n_s_f_back, __pyx_k_f_back, sizeof(__pyx_k_f_back), 0, 0, 1, 1}, - {&__pyx_n_s_filename, __pyx_k_filename, sizeof(__pyx_k_filename), 0, 0, 1, 1}, - {&__pyx_n_s_filter, __pyx_k_filter, sizeof(__pyx_k_filter), 0, 0, 1, 1}, - {&__pyx_kp_u_for, __pyx_k_for, sizeof(__pyx_k_for), 0, 1, 0, 0}, - {&__pyx_n_s_frame, __pyx_k_frame, sizeof(__pyx_k_frame), 0, 0, 1, 1}, - {&__pyx_n_s_fullsource, __pyx_k_fullsource, sizeof(__pyx_k_fullsource), 0, 0, 1, 1}, - {&__pyx_n_s_function, __pyx_k_function, sizeof(__pyx_k_function), 0, 0, 1, 1}, - {&__pyx_kp_u_gc, __pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0, 0}, - {&__pyx_n_s_genexpr, __pyx_k_genexpr, sizeof(__pyx_k_genexpr), 0, 0, 1, 1}, - {&__pyx_n_s_getstate, __pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 0, 1, 1}, - {&__pyx_n_s_globals, __pyx_k_globals, sizeof(__pyx_k_globals), 0, 0, 1, 1}, - {&__pyx_n_s_gt, __pyx_k_gt, sizeof(__pyx_k_gt), 0, 0, 1, 1}, - {&__pyx_n_s_gt_2, __pyx_k_gt_2, sizeof(__pyx_k_gt_2), 0, 0, 1, 1}, - {&__pyx_n_s_gte, __pyx_k_gte, sizeof(__pyx_k_gte), 0, 0, 1, 1}, - {&__pyx_n_s_gte_2, __pyx_k_gte_2, sizeof(__pyx_k_gte_2), 0, 0, 1, 1}, - {&__pyx_n_s_has, __pyx_k_has, sizeof(__pyx_k_has), 0, 0, 1, 1}, - {&__pyx_n_s_hunter, __pyx_k_hunter, sizeof(__pyx_k_hunter), 0, 0, 1, 1}, - {&__pyx_n_s_hunter__predicates, __pyx_k_hunter__predicates, sizeof(__pyx_k_hunter__predicates), 0, 0, 1, 1}, - {&__pyx_kp_s_hunter__predicates_And_predicat, __pyx_k_hunter__predicates_And_predicat, sizeof(__pyx_k_hunter__predicates_And_predicat), 0, 0, 1, 0}, - {&__pyx_kp_s_hunter__predicates_From_conditi, __pyx_k_hunter__predicates_From_conditi, sizeof(__pyx_k_hunter__predicates_From_conditi), 0, 0, 1, 0}, - {&__pyx_kp_s_hunter__predicates_Not_predicat, __pyx_k_hunter__predicates_Not_predicat, sizeof(__pyx_k_hunter__predicates_Not_predicat), 0, 0, 1, 0}, - {&__pyx_kp_s_hunter__predicates_Or_predicate, __pyx_k_hunter__predicates_Or_predicate, sizeof(__pyx_k_hunter__predicates_Or_predicate), 0, 0, 1, 0}, - {&__pyx_kp_s_hunter__predicates_When_conditi, __pyx_k_hunter__predicates_When_conditi, sizeof(__pyx_k_hunter__predicates_When_conditi), 0, 0, 1, 0}, - {&__pyx_kp_s_hunter_predicates_Backlog_condi, __pyx_k_hunter_predicates_Backlog_condi, sizeof(__pyx_k_hunter_predicates_Backlog_condi), 0, 0, 1, 0}, - {&__pyx_kp_s_hunter_predicates_Query_s, __pyx_k_hunter_predicates_Query_s, sizeof(__pyx_k_hunter_predicates_Query_s), 0, 0, 1, 0}, - {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, - {&__pyx_n_s_in, __pyx_k_in, sizeof(__pyx_k_in), 0, 0, 1, 1}, - {&__pyx_n_s_in_2, __pyx_k_in_2, sizeof(__pyx_k_in_2), 0, 0, 1, 1}, - {&__pyx_n_s_index, __pyx_k_index, sizeof(__pyx_k_index), 0, 0, 1, 1}, - {&__pyx_n_s_init___locals_genexpr, __pyx_k_init___locals_genexpr, sizeof(__pyx_k_init___locals_genexpr), 0, 0, 1, 1}, - {&__pyx_n_s_inspect, __pyx_k_inspect, sizeof(__pyx_k_inspect), 0, 0, 1, 1}, - {&__pyx_n_s_instruction, __pyx_k_instruction, sizeof(__pyx_k_instruction), 0, 0, 1, 1}, - {&__pyx_n_s_is_coroutine, __pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 0, 1, 1}, - {&__pyx_kp_u_is_invalid_Must_be_a_string_lis, __pyx_k_is_invalid_Must_be_a_string_lis, sizeof(__pyx_k_is_invalid_Must_be_a_string_lis), 0, 1, 0, 0}, - {&__pyx_n_s_isclass, __pyx_k_isclass, sizeof(__pyx_k_isclass), 0, 0, 1, 1}, - {&__pyx_kp_u_isenabled, __pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0, 0}, - {&__pyx_n_s_items, __pyx_k_items, sizeof(__pyx_k_items), 0, 0, 1, 1}, - {&__pyx_n_s_join, __pyx_k_join, sizeof(__pyx_k_join), 0, 0, 1, 1}, - {&__pyx_n_s_kind, __pyx_k_kind, sizeof(__pyx_k_kind), 0, 0, 1, 1}, - {&__pyx_n_s_kwargs, __pyx_k_kwargs, sizeof(__pyx_k_kwargs), 0, 0, 1, 1}, - {&__pyx_n_s_lineno, __pyx_k_lineno, sizeof(__pyx_k_lineno), 0, 0, 1, 1}, - {&__pyx_n_s_locals, __pyx_k_locals, sizeof(__pyx_k_locals), 0, 0, 1, 1}, - {&__pyx_n_s_lt, __pyx_k_lt, sizeof(__pyx_k_lt), 0, 0, 1, 1}, - {&__pyx_n_s_lt_2, __pyx_k_lt_2, sizeof(__pyx_k_lt_2), 0, 0, 1, 1}, - {&__pyx_n_s_lte, __pyx_k_lte, sizeof(__pyx_k_lte), 0, 0, 1, 1}, - {&__pyx_n_s_lte_2, __pyx_k_lte_2, sizeof(__pyx_k_lte_2), 0, 0, 1, 1}, - {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, - {&__pyx_n_s_match, __pyx_k_match, sizeof(__pyx_k_match), 0, 0, 1, 1}, - {&__pyx_n_s_maxlen, __pyx_k_maxlen, sizeof(__pyx_k_maxlen), 0, 0, 1, 1}, - {&__pyx_n_s_merge, __pyx_k_merge, sizeof(__pyx_k_merge), 0, 0, 1, 1}, - {&__pyx_n_s_module, __pyx_k_module, sizeof(__pyx_k_module), 0, 0, 1, 1}, - {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, - {&__pyx_n_s_name_2, __pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 0, 1, 1}, - {&__pyx_n_s_new, __pyx_k_new, sizeof(__pyx_k_new), 0, 0, 1, 1}, - {&__pyx_n_s_pickle, __pyx_k_pickle, sizeof(__pyx_k_pickle), 0, 0, 1, 1}, - {&__pyx_n_s_predicate, __pyx_k_predicate, sizeof(__pyx_k_predicate), 0, 0, 1, 1}, - {&__pyx_n_s_predicates, __pyx_k_predicates, sizeof(__pyx_k_predicates), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_PickleError, __pyx_k_pyx_PickleError, sizeof(__pyx_k_pyx_PickleError), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_checksum, __pyx_k_pyx_checksum, sizeof(__pyx_k_pyx_checksum), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_result, __pyx_k_pyx_result, sizeof(__pyx_k_pyx_result), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_state, __pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_type, __pyx_k_pyx_type, sizeof(__pyx_k_pyx_type), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_And, __pyx_k_pyx_unpickle_And, sizeof(__pyx_k_pyx_unpickle_And), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_Backlog, __pyx_k_pyx_unpickle_Backlog, sizeof(__pyx_k_pyx_unpickle_Backlog), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_From, __pyx_k_pyx_unpickle_From, sizeof(__pyx_k_pyx_unpickle_From), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_Not, __pyx_k_pyx_unpickle_Not, sizeof(__pyx_k_pyx_unpickle_Not), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_Or, __pyx_k_pyx_unpickle_Or, sizeof(__pyx_k_pyx_unpickle_Or), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_Query, __pyx_k_pyx_unpickle_Query, sizeof(__pyx_k_pyx_unpickle_Query), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_When, __pyx_k_pyx_unpickle_When, sizeof(__pyx_k_pyx_unpickle_When), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1}, - {&__pyx_kp_s_query_contains_r, __pyx_k_query_contains_r, sizeof(__pyx_k_query_contains_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_endswith_r, __pyx_k_query_endswith_r, sizeof(__pyx_k_query_endswith_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_eq_r, __pyx_k_query_eq_r, sizeof(__pyx_k_query_eq_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_gt_r, __pyx_k_query_gt_r, sizeof(__pyx_k_query_gt_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_gte_r, __pyx_k_query_gte_r, sizeof(__pyx_k_query_gte_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_in_r, __pyx_k_query_in_r, sizeof(__pyx_k_query_in_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_lt_r, __pyx_k_query_lt_r, sizeof(__pyx_k_query_lt_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_lte_r, __pyx_k_query_lte_r, sizeof(__pyx_k_query_lte_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_regex_r, __pyx_k_query_regex_r, sizeof(__pyx_k_query_regex_r), 0, 0, 1, 0}, - {&__pyx_kp_s_query_startswith_r, __pyx_k_query_startswith_r, sizeof(__pyx_k_query_startswith_r), 0, 0, 1, 0}, - {&__pyx_n_s_re, __pyx_k_re, sizeof(__pyx_k_re), 0, 0, 1, 1}, - {&__pyx_n_s_re_compile, __pyx_k_re_compile, sizeof(__pyx_k_re_compile), 0, 0, 1, 1}, - {&__pyx_n_s_reduce, __pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_cython, __pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_ex, __pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 0, 1, 1}, - {&__pyx_n_s_regex, __pyx_k_regex, sizeof(__pyx_k_regex), 0, 0, 1, 1}, - {&__pyx_n_s_regex_2, __pyx_k_regex_2, sizeof(__pyx_k_regex_2), 0, 0, 1, 1}, - {&__pyx_n_s_rx, __pyx_k_rx, sizeof(__pyx_k_rx), 0, 0, 1, 1}, - {&__pyx_n_s_self, __pyx_k_self, sizeof(__pyx_k_self), 0, 0, 1, 1}, - {&__pyx_kp_s_self_getter_cannot_be_converted, __pyx_k_self_getter_cannot_be_converted, sizeof(__pyx_k_self_getter_cannot_be_converted), 0, 0, 1, 0}, - {&__pyx_n_s_send, __pyx_k_send, sizeof(__pyx_k_send), 0, 0, 1, 1}, - {&__pyx_n_s_setstate, __pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 0, 1, 1}, - {&__pyx_n_s_setstate_cython, __pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_size, __pyx_k_size, sizeof(__pyx_k_size), 0, 0, 1, 1}, - {&__pyx_n_s_source, __pyx_k_source, sizeof(__pyx_k_source), 0, 0, 1, 1}, - {&__pyx_n_s_split, __pyx_k_split, sizeof(__pyx_k_split), 0, 0, 1, 1}, - {&__pyx_kp_s_src_hunter__predicates_pyx, __pyx_k_src_hunter__predicates_pyx, sizeof(__pyx_k_src_hunter__predicates_pyx), 0, 0, 1, 0}, - {&__pyx_n_s_stack, __pyx_k_stack, sizeof(__pyx_k_stack), 0, 0, 1, 1}, - {&__pyx_n_s_startswith, __pyx_k_startswith, sizeof(__pyx_k_startswith), 0, 0, 1, 1}, - {&__pyx_n_s_startswith_2, __pyx_k_startswith_2, sizeof(__pyx_k_startswith_2), 0, 0, 1, 1}, - {&__pyx_n_s_state, __pyx_k_state, sizeof(__pyx_k_state), 0, 0, 1, 1}, - {&__pyx_n_s_stdlib, __pyx_k_stdlib, sizeof(__pyx_k_stdlib), 0, 0, 1, 1}, - {&__pyx_n_s_str___locals_genexpr, __pyx_k_str___locals_genexpr, sizeof(__pyx_k_str___locals_genexpr), 0, 0, 1, 1}, - {&__pyx_kp_s_stringsource, __pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 0, 1, 0}, - {&__pyx_n_s_strip, __pyx_k_strip, sizeof(__pyx_k_strip), 0, 0, 1, 1}, - {&__pyx_n_s_sw, __pyx_k_sw, sizeof(__pyx_k_sw), 0, 0, 1, 1}, - {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, - {&__pyx_n_s_threadid, __pyx_k_threadid, sizeof(__pyx_k_threadid), 0, 0, 1, 1}, - {&__pyx_n_s_threading_support, __pyx_k_threading_support, sizeof(__pyx_k_threading_support), 0, 0, 1, 1}, - {&__pyx_n_s_threadname, __pyx_k_threadname, sizeof(__pyx_k_threadname), 0, 0, 1, 1}, - {&__pyx_n_s_throw, __pyx_k_throw, sizeof(__pyx_k_throw), 0, 0, 1, 1}, - {&__pyx_n_s_try_repr, __pyx_k_try_repr, sizeof(__pyx_k_try_repr), 0, 0, 1, 1}, - {&__pyx_n_s_update, __pyx_k_update, sizeof(__pyx_k_update), 0, 0, 1, 1}, - {&__pyx_n_s_use_setstate, __pyx_k_use_setstate, sizeof(__pyx_k_use_setstate), 0, 0, 1, 1}, - {&__pyx_n_s_value, __pyx_k_value, sizeof(__pyx_k_value), 0, 0, 1, 1}, - {&__pyx_n_s_vars, __pyx_k_vars, sizeof(__pyx_k_vars), 0, 0, 1, 1}, - {&__pyx_n_s_watermark, __pyx_k_watermark, sizeof(__pyx_k_watermark), 0, 0, 1, 1}, - {&__pyx_kp_u_with_optional_operators_like, __pyx_k_with_optional_operators_like, sizeof(__pyx_k_with_optional_operators_like), 0, 1, 0, 0}, - {&__pyx_n_s_wrap, __pyx_k_wrap, sizeof(__pyx_k_wrap), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} - }; - return __Pyx_InitStrings(__pyx_string_tab); -} -/* #### Code section: cached_builtins ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 2, __pyx_L1_error) - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(1, 153, __pyx_L1_error) +static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); + /*--- Global init code ---*/ + __pyx_v_6hunter_11_predicates_ALLOWED_KEYS = ((PyObject*)Py_None); Py_INCREF(Py_None); + __pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS = ((PyObject*)Py_None); Py_INCREF(Py_None); + __Pyx_RefNannyFinishContext(); return 0; - __pyx_L1_error:; - return -1; } -/* #### Code section: cached_constants ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { +static int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - - /* "cfunc.to_py":67 - * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): - * def wrap(Event event): # <<<<<<<<<<<<<< - * """wrap(event: 'Event')""" - * return f(event) - */ - __pyx_tuple_ = PyTuple_Pack(1, __pyx_n_s_event); if (unlikely(!__pyx_tuple_)) __PYX_ERR(0, 67, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple_); - __Pyx_GIVEREF(__pyx_tuple_); - __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple_, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_wrap, 67, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 67, __pyx_L1_error) - - /* "hunter/_predicates.pyx":319 - * def __init__(self, condition, *actions): - * if not actions: - * raise TypeError('Must give at least one action.') # <<<<<<<<<<<<<< - * self.condition = condition - * self.actions = tuple( - */ - __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_Must_give_at_least_one_action); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 319, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__13); - __Pyx_GIVEREF(__pyx_tuple__13); - - /* "(tree fragment)":4 - * cdef object __pyx_PickleError - * cdef object __pyx_result - * if __pyx_checksum not in (0x5503a44, 0x9ea0a45, 0x4eca0a2): # <<<<<<<<<<<<<< - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x5503a44, 0x9ea0a45, 0x4eca0a2) = (query_contains, query_endswith, query_eq, query_gt, query_gte, query_in, query_lt, query_lte, query_regex, query_startswith))" % __pyx_checksum - */ - __pyx_tuple__28 = PyTuple_Pack(3, __pyx_int_89143876, __pyx_int_166332997, __pyx_int_82616482); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(0, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__28); - __Pyx_GIVEREF(__pyx_tuple__28); - __pyx_tuple__30 = PyTuple_Pack(3, __pyx_int_242287462, __pyx_int_124881844, __pyx_int_190166812); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(0, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__30); - __Pyx_GIVEREF(__pyx_tuple__30); - __pyx_tuple__32 = PyTuple_Pack(3, __pyx_int_217908684, __pyx_int_223119700, __pyx_int_28104183); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__32); - __Pyx_GIVEREF(__pyx_tuple__32); - __pyx_tuple__34 = PyTuple_Pack(3, __pyx_int_149034610, __pyx_int_210676054, __pyx_int_178834394); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__34); - __Pyx_GIVEREF(__pyx_tuple__34); - __pyx_tuple__37 = PyTuple_Pack(3, __pyx_int_37183945, __pyx_int_4473905, __pyx_int_258412278); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__37); - __Pyx_GIVEREF(__pyx_tuple__37); - __pyx_tuple__39 = PyTuple_Pack(3, __pyx_int_21139105, __pyx_int_198256870, __pyx_int_79429044); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__39); - __Pyx_GIVEREF(__pyx_tuple__39); - - /* "hunter/_predicates.pyx":19 - * - * __all__ = ( - * 'And', # <<<<<<<<<<<<<< - * 'From', - * 'Not', - */ - __pyx_tuple__40 = PyTuple_Pack(6, __pyx_n_s_And, __pyx_n_s_From, __pyx_n_s_Not, __pyx_n_s_Or, __pyx_n_s_Query, __pyx_n_s_When); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(1, 19, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__40); - __Pyx_GIVEREF(__pyx_tuple__40); - - /* "hunter/_predicates.pyx":28 - * - * cdef tuple ALLOWED_KEYS = ( - * 'function', 'module', 'lineno', 'globals', 'stdlib', 'arg', 'locals', 'kind', 'filename', 'source', # <<<<<<<<<<<<<< - * 'fullsource', 'threadname', 'threadid', 'instruction', 'depth', 'calls', 'builtin', - * ) - */ - __pyx_tuple__41 = PyTuple_Pack(17, __pyx_n_s_function, __pyx_n_s_module, __pyx_n_s_lineno, __pyx_n_s_globals, __pyx_n_s_stdlib, __pyx_n_s_arg, __pyx_n_s_locals, __pyx_n_s_kind, __pyx_n_s_filename, __pyx_n_s_source, __pyx_n_s_fullsource, __pyx_n_s_threadname, __pyx_n_s_threadid, __pyx_n_s_instruction, __pyx_n_s_depth, __pyx_n_s_calls, __pyx_n_s_builtin); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(1, 28, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__41); - __Pyx_GIVEREF(__pyx_tuple__41); - - /* "hunter/_predicates.pyx":32 - * ) - * cdef tuple ALLOWED_OPERATORS = ( - * 'startswith', 'endswith', 'in', 'contains', 'regex', # <<<<<<<<<<<<<< - * 'sw', 'ew', 'has', 'rx', - * 'gt', 'gte', 'lt', 'lte', - */ - __pyx_tuple__42 = PyTuple_Pack(13, __pyx_n_s_startswith, __pyx_n_s_endswith, __pyx_n_s_in, __pyx_n_s_contains, __pyx_n_s_regex, __pyx_n_s_sw, __pyx_n_s_ew, __pyx_n_s_has, __pyx_n_s_rx, __pyx_n_s_gt, __pyx_n_s_gte, __pyx_n_s_lt, __pyx_n_s_lte); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(1, 32, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__42); - __Pyx_GIVEREF(__pyx_tuple__42); - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): - */ - __pyx_tuple__43 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__43); - __Pyx_GIVEREF(__pyx_tuple__43); - __pyx_codeobj__3 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__43, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__3)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - */ - __pyx_tuple__44 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_pyx_state); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(0, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__44); - __Pyx_GIVEREF(__pyx_tuple__44); - __pyx_codeobj__4 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 3, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__4)) __PYX_ERR(0, 3, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_tuple__45 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_state, __pyx_n_s_dict_2, __pyx_n_s_use_setstate); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__45); - __Pyx_GIVEREF(__pyx_tuple__45); - __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Query__set_state(self, __pyx_state) - */ - __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_codeobj__14 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__14)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_When, (type(self), 0xe710366, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_When__set_state(self, __pyx_state) - */ - __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_codeobj__16 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__16)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_From__set_state(self, __pyx_state) - */ - __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_codeobj__18 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__18)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_And, (type(self), 0x8e21672, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_And__set_state(self, __pyx_state) - */ - __pyx_codeobj__19 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__19)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_codeobj__20 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__20)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Or__set_state(self, __pyx_state) - */ - __pyx_codeobj__21 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__21)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Not__set_state(self, __pyx_state) - */ - __pyx_codeobj__23 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__23)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "hunter/_predicates.pyx":643 - * return Backlog(Not(self.condition), size=self.size, stack=self.stack, vars=self.vars, action=self.action, filter=self._filter) - * - * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< - * from hunter import _merge - * - */ - __pyx_tuple__46 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_predicates, __pyx_n_s_kwargs, __pyx_n_s_merge); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(1, 643, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__46); - __Pyx_GIVEREF(__pyx_tuple__46); - __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__46, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__predicates_pyx, __pyx_n_s_filter, 643, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(1, 643, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - __pyx_codeobj__25 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__25)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Backlog__set_state(self, __pyx_state) - */ - __pyx_codeobj__26 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__44, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__26)) __PYX_ERR(0, 16, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __pyx_unpickle_Query(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result - */ - __pyx_tuple__47 = PyTuple_Pack(5, __pyx_n_s_pyx_type, __pyx_n_s_pyx_checksum, __pyx_n_s_pyx_state, __pyx_n_s_pyx_PickleError, __pyx_n_s_pyx_result); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__47); - __Pyx_GIVEREF(__pyx_tuple__47); - __pyx_codeobj__27 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Query, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__27)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_codeobj__29 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_When, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__29)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_codeobj__31 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_From, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__31)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_codeobj__33 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_And, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__33)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_codeobj__35 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Or, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__35)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_codeobj__36 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Not, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__36)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_codeobj__38 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Backlog, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__38)) __PYX_ERR(0, 1, __pyx_L1_error) + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); + /*--- Variable export code ---*/ __Pyx_RefNannyFinishContext(); return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; } -/* #### Code section: init_constants ### */ -static CYTHON_SMALL_CODE int __Pyx_InitConstants(void) { - __pyx_umethod_PyDict_Type_items.type = (PyObject*)&PyDict_Type; - __pyx_umethod_PyDict_Type_items.method_name = &__pyx_n_s_items; - __pyx_umethod_PyTuple_Type_index.type = (PyObject*)&PyTuple_Type; - __pyx_umethod_PyTuple_Type_index.method_name = &__pyx_n_s_index; - if (__Pyx_CreateStringTabAndInitStrings() < 0) __PYX_ERR(1, 1, __pyx_L1_error); - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_10 = PyInt_FromLong(10); if (unlikely(!__pyx_int_10)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_100 = PyInt_FromLong(100); if (unlikely(!__pyx_int_100)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_4473905 = PyInt_FromLong(4473905L); if (unlikely(!__pyx_int_4473905)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_21139105 = PyInt_FromLong(21139105L); if (unlikely(!__pyx_int_21139105)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_28104183 = PyInt_FromLong(28104183L); if (unlikely(!__pyx_int_28104183)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_37183945 = PyInt_FromLong(37183945L); if (unlikely(!__pyx_int_37183945)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_79429044 = PyInt_FromLong(79429044L); if (unlikely(!__pyx_int_79429044)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_82616482 = PyInt_FromLong(82616482L); if (unlikely(!__pyx_int_82616482)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_89143876 = PyInt_FromLong(89143876L); if (unlikely(!__pyx_int_89143876)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_124881844 = PyInt_FromLong(124881844L); if (unlikely(!__pyx_int_124881844)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_149034610 = PyInt_FromLong(149034610L); if (unlikely(!__pyx_int_149034610)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_166332997 = PyInt_FromLong(166332997L); if (unlikely(!__pyx_int_166332997)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_178834394 = PyInt_FromLong(178834394L); if (unlikely(!__pyx_int_178834394)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_190166812 = PyInt_FromLong(190166812L); if (unlikely(!__pyx_int_190166812)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_198256870 = PyInt_FromLong(198256870L); if (unlikely(!__pyx_int_198256870)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_210676054 = PyInt_FromLong(210676054L); if (unlikely(!__pyx_int_210676054)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_217908684 = PyInt_FromLong(217908684L); if (unlikely(!__pyx_int_217908684)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_223119700 = PyInt_FromLong(223119700L); if (unlikely(!__pyx_int_223119700)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_242287462 = PyInt_FromLong(242287462L); if (unlikely(!__pyx_int_242287462)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_258412278 = PyInt_FromLong(258412278L); if (unlikely(!__pyx_int_258412278)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) __PYX_ERR(1, 1, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: init_globals ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { - return 0; -} -/* #### Code section: init_module ### */ - -static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ - -static int __Pyx_modinit_global_init_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); - /*--- Global init code ---*/ - __pyx_v_6hunter_11_predicates_ALLOWED_KEYS = ((PyObject*)Py_None); Py_INCREF(Py_None); - __pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS = ((PyObject*)Py_None); Py_INCREF(Py_None); - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_variable_export_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); - /*--- Variable export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_export_code(void) { +static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); /*--- Function export code ---*/ - if (__Pyx_ExportFunction("fast_And_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_And_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_And *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("fast_From_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_From_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_From *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("fast_Not_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_Not_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_Not *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("fast_Or_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_Or_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_Or *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("fast_Query_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_Query_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_Query *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("fast_When_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_When_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_When *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("fast_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_And_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_And_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_And *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_From_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_From_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_From *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_Not_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_Not_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_Not *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_Or_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_Or_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_Or *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_Query_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_Query_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_Query *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_When_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_When_call, "PyObject *(struct __pyx_obj_6hunter_11_predicates_When *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("fast_call", (void (*)(void))__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -31938,35 +31719,33 @@ static int __Pyx_modinit_function_export_code(void) { return -1; } -static int __Pyx_modinit_type_init_code(void) { +static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Query = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Query_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Query)) __PYX_ERR(1, 100, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Query_spec, __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Query_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query)) __PYX_ERR(0, 99, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Query_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(0, 99, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Query = &__pyx_type_6hunter_11_predicates_Query; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = &__pyx_type_6hunter_11_predicates_Query; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Query->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(0, 99, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Query->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Query->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Query->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_UPDATE_DESCRIPTOR_DOC { - PyObject *wrapper = PyObject_GetAttrString((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, "__init__"); if (unlikely(!wrapper)) __PYX_ERR(1, 100, __pyx_L1_error) + PyObject *wrapper = PyObject_GetAttrString((PyObject *)__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query, "__init__"); if (unlikely(!wrapper)) __PYX_ERR(0, 99, __pyx_L1_error) if (__Pyx_IS_TYPE(wrapper, &PyWrapperDescr_Type)) { __pyx_wrapperbase_6hunter_11_predicates_5Query___init__ = *((PyWrapperDescrObject *)wrapper)->d_base; __pyx_wrapperbase_6hunter_11_predicates_5Query___init__.doc = __pyx_doc_6hunter_11_predicates_5Query___init__; @@ -31974,302 +31753,244 @@ static int __Pyx_modinit_type_init_code(void) { } } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Query, (PyObject *) __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(1, 100, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Query, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(0, 99, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) < 0) __PYX_ERR(0, 99, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_And = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_And_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_And)) __PYX_ERR(1, 438, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_And_spec, __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_And_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And)) __PYX_ERR(0, 437, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_And_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(0, 437, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_And = &__pyx_type_6hunter_11_predicates_And; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = &__pyx_type_6hunter_11_predicates_And; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_And->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(0, 437, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_And->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_And->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_And->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_And, (PyObject *) __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(1, 438, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_And, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(0, 437, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) < 0) __PYX_ERR(0, 437, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Or = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Or_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Or)) __PYX_ERR(1, 487, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Or_spec, __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Or_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or)) __PYX_ERR(0, 486, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Or_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(0, 486, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Or = &__pyx_type_6hunter_11_predicates_Or; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = &__pyx_type_6hunter_11_predicates_Or; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Or->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(0, 486, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Or->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Or->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Or->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Or, (PyObject *) __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(1, 487, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Or, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(0, 486, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) < 0) __PYX_ERR(0, 486, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Not = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Not_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Not)) __PYX_ERR(1, 536, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Not_spec, __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Not_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not)) __PYX_ERR(0, 536, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Not_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(0, 536, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Not = &__pyx_type_6hunter_11_predicates_Not; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = &__pyx_type_6hunter_11_predicates_Not; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Not->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(0, 536, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Not->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Not->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Not->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Not, (PyObject *) __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(1, 536, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Not, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(0, 536, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) < 0) __PYX_ERR(0, 536, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_When = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_When_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_When)) __PYX_ERR(1, 310, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_When_spec, __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_When_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When)) __PYX_ERR(0, 309, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_When_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(0, 309, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_When = &__pyx_type_6hunter_11_predicates_When; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = &__pyx_type_6hunter_11_predicates_When; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_When->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(0, 309, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_When->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_When->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_When->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_When, (PyObject *) __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(1, 310, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_When_2, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(0, 309, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) < 0) __PYX_ERR(0, 309, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_From = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_From_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_From)) __PYX_ERR(1, 366, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_From_spec, __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_From_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From)) __PYX_ERR(0, 365, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_From_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(0, 365, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_From = &__pyx_type_6hunter_11_predicates_From; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = &__pyx_type_6hunter_11_predicates_From; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_From->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(0, 365, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_From->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_From->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_From->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_From, (PyObject *) __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(1, 366, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_From_2, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(0, 365, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) < 0) __PYX_ERR(0, 365, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_Backlog = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Backlog_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_Backlog)) __PYX_ERR(1, 597, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Backlog_spec, __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_Backlog_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog)) __PYX_ERR(0, 596, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_Backlog_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(0, 596, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_Backlog = &__pyx_type_6hunter_11_predicates_Backlog; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = &__pyx_type_6hunter_11_predicates_Backlog; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_Backlog->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(0, 596, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_Backlog->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Backlog, (PyObject *) __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(1, 597, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Backlog_2, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(0, 596, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) < 0) __PYX_ERR(0, 596, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates_QueryEntry = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_QueryEntry_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates_QueryEntry)) __PYX_ERR(1, 78, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_QueryEntry_spec, __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates_QueryEntry_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry)) __PYX_ERR(0, 77, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates_QueryEntry_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(0, 77, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates_QueryEntry = &__pyx_type_6hunter_11_predicates_QueryEntry; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry = &__pyx_type_6hunter_11_predicates_QueryEntry; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(0, 77, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates_QueryEntry->tp_dictoffset && __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_QueryEntry, (PyObject *) __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(1, 78, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_QueryEntry, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(0, 77, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_11_predicates_QueryEntry) < 0) __PYX_ERR(0, 77, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__)) __PYX_ERR(1, 199, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(1, 199, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__)) __PYX_ERR(0, 199, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct____str___spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(0, 199, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__ = &__pyx_type_6hunter_11_predicates___pyx_scope_struct____str__; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(1, 199, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__) < 0) __PYX_ERR(0, 199, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct____str__->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr)) __PYX_ERR(1, 202, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(1, 202, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr)) __PYX_ERR(0, 202, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(0, 202, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_1_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(1, 202, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr) < 0) __PYX_ERR(0, 202, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_1_genexpr->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr)) __PYX_ERR(1, 322, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(1, 322, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr)) __PYX_ERR(0, 322, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(0, 322, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_2_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(1, 322, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr) < 0) __PYX_ERR(0, 322, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_2_genexpr->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr)) __PYX_ERR(1, 328, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(1, 328, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr)) __PYX_ERR(0, 328, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(0, 328, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_3_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(1, 328, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr) < 0) __PYX_ERR(0, 328, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_3_genexpr->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr)) __PYX_ERR(1, 446, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(1, 446, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr)) __PYX_ERR(0, 446, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(0, 446, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_4_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(1, 446, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr) < 0) __PYX_ERR(0, 446, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_4_genexpr->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr)) __PYX_ERR(1, 496, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(1, 496, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr)) __PYX_ERR(0, 496, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr_spec, __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(0, 496, __pyx_L1_error) #else - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr = &__pyx_type_6hunter_11_predicates___pyx_scope_struct_5_genexpr; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(1, 496, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr) < 0) __PYX_ERR(0, 496, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_dictoffset && __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_11_predicates___pyx_scope_struct_5_genexpr->tp_getattro = PyObject_GenericGetAttr; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec, NULL); if (unlikely(!__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)) __PYX_ERR(0, 66, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec, __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(0, 66, __pyx_L1_error) + __pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event)) __PYX_ERR(1, 65, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event_spec, __pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(1, 65, __pyx_L1_error) #else - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = &__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; + __pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event = &__pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(0, 66, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event) < 0) __PYX_ERR(1, 65, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_dictoffset && __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_dictoffset && __pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event->tp_getattro = PyObject_GenericGetAttr; } #endif __Pyx_RefNannyFinishContext(); @@ -32279,8 +32000,9 @@ static int __Pyx_modinit_type_init_code(void) { return -1; } -static int __Pyx_modinit_type_import_code(void) { +static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; @@ -32290,29 +32012,52 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 19, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyFrameObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(4, 19, __pyx_L1_error) - __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyCodeObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(4, 22, __pyx_L1_error) - __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 36, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #else + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #endif + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(4, 22, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 35, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter._tracer", "Tracer", sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_7_tracer_Tracer),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(4, 36, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._tracer", "Tracer", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + #else + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(4, 35, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 13, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_0_10(__pyx_t_2, "hunter._event", "Event", sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6_event_Event),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(5, 13, __pyx_L1_error) - __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(5, 13, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._event", "Event", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #else + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(5, 11, __pyx_L1_error) + __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(5, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -32323,26 +32068,28 @@ static int __Pyx_modinit_type_import_code(void) { return -1; } -static int __Pyx_modinit_variable_import_code(void) { +static int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); /*--- Variable import code ---*/ __Pyx_RefNannyFinishContext(); return 0; } -static int __Pyx_modinit_function_import_code(void) { +static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); /*--- Function import code ---*/ - __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (!__pyx_t_1) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_ImportFunction_3_0_10(__pyx_t_1, "fast_clone", (void (**)(void))&__pyx_f_6hunter_6_event_fast_clone, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ImportFunction_3_0_10(__pyx_t_1, "fast_detach", (void (**)(void))&__pyx_f_6hunter_6_event_fast_detach, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *, PyObject *)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_1_2(__pyx_t_1, "fast_clone", (void (**)(void))&__pyx_f_6hunter_6_event_fast_clone, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_1_2(__pyx_t_1, "fast_detach", (void (**)(void))&__pyx_f_6hunter_6_event_fast_detach, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *, PyObject *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -32352,14 +32099,18 @@ static int __Pyx_modinit_function_import_code(void) { return -1; } - -#if PY_MAJOR_VERSION >= 3 #if CYTHON_PEP489_MULTI_PHASE_INIT static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ static int __pyx_pymod_exec__predicates(PyObject* module); /*proto*/ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec__predicates}, + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + {Py_mod_gil, Py_MOD_GIL_USED}, + #endif + #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE + {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, + #endif {0, NULL} }; #endif @@ -32374,12 +32125,10 @@ namespace { PyModuleDef_HEAD_INIT, "_predicates", 0, /* m_doc */ - #if CYTHON_PEP489_MULTI_PHASE_INIT - 0, /* m_size */ - #elif CYTHON_USE_MODULE_STATE - sizeof(__pyx_mstate), /* m_size */ + #if CYTHON_USE_MODULE_STATE + sizeof(__pyx_mstatetype), /* m_size */ #else - -1, /* m_size */ + (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1, /* m_size */ #endif __pyx_methods /* m_methods */, #if CYTHON_PEP489_MULTI_PHASE_INIT @@ -32400,51 +32149,71 @@ namespace { #ifdef __cplusplus } /* anonymous namespace */ #endif -#endif +/* PyModInitFuncType */ #ifndef CYTHON_NO_PYINIT_EXPORT -#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC -#elif PY_MAJOR_VERSION < 3 -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" void -#else -#define __Pyx_PyMODINIT_FUNC void -#endif -#else -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * + #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC #else -#define __Pyx_PyMODINIT_FUNC PyObject * -#endif + #ifdef __cplusplus + #define __Pyx_PyMODINIT_FUNC extern "C" PyObject * + #else + #define __Pyx_PyMODINIT_FUNC PyObject * + #endif #endif - -#if PY_MAJOR_VERSION < 3 -__Pyx_PyMODINIT_FUNC init_predicates(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC init_predicates(void) -#else __Pyx_PyMODINIT_FUNC PyInit__predicates(void) CYTHON_SMALL_CODE; /*proto*/ __Pyx_PyMODINIT_FUNC PyInit__predicates(void) #if CYTHON_PEP489_MULTI_PHASE_INIT { return PyModuleDef_Init(&__pyx_moduledef); } +/* ModuleCreationPEP489 */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 +static PY_INT64_T __Pyx_GetCurrentInterpreterId(void) { + { + PyObject *module = PyImport_ImportModule("_interpreters"); // 3.13+ I think + if (!module) { + PyErr_Clear(); // just try the 3.8-3.12 version + module = PyImport_ImportModule("_xxsubinterpreters"); + if (!module) goto bad; + } + PyObject *current = PyObject_CallMethod(module, "get_current", NULL); + Py_DECREF(module); + if (!current) goto bad; + if (PyTuple_Check(current)) { + PyObject *new_current = PySequence_GetItem(current, 0); + Py_DECREF(current); + current = new_current; + if (!new_current) goto bad; + } + long long as_c_int = PyLong_AsLongLong(current); + Py_DECREF(current); + return as_c_int; + } + bad: + PySys_WriteStderr("__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n"); + return -1; +} +#endif +#if !CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { - #if PY_VERSION_HEX >= 0x030700A1 static PY_INT64_T main_interpreter_id = -1; +#if CYTHON_COMPILING_IN_GRAAL + PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x03090000 + PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API + PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId(); +#else PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); +#endif + if (unlikely(current_id == -1)) { + return -1; + } if (main_interpreter_id == -1) { main_interpreter_id = current_id; - return (unlikely(current_id == -1)) ? -1 : 0; - } else if (unlikely(main_interpreter_id != current_id)) - #else - static PyInterpreterState *main_interpreter = NULL; - PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; - if (!main_interpreter) { - main_interpreter = current_interpreter; - } else if (unlikely(main_interpreter != current_interpreter)) - #endif - { + return 0; + } else if (unlikely(main_interpreter_id != current_id)) { PyErr_SetString( PyExc_ImportError, "Interpreter change detected - this module can only be loaded into one interpreter per process."); @@ -32452,21 +32221,14 @@ static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { } return 0; } -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *module, const char* from_name, const char* to_name, int allow_none) -#else -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) #endif +static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { PyObject *value = PyObject_GetAttrString(spec, from_name); int result = 0; if (likely(value)) { if (allow_none || value != Py_None) { -#if CYTHON_COMPILING_IN_LIMITED_API - result = PyModule_AddObject(module, to_name, value); -#else result = PyDict_SetItemString(moddict, to_name, value); -#endif } Py_DECREF(value); } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { @@ -32479,8 +32241,10 @@ static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) { PyObject *module = NULL, *moddict, *modname; CYTHON_UNUSED_VAR(def); + #if !CYTHON_USE_MODULE_STATE if (__Pyx_check_single_interpreter()) return NULL; + #endif if (__pyx_m) return __Pyx_NewRef(__pyx_m); modname = PyObject_GetAttrString(spec, "name"); @@ -32488,12 +32252,8 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe module = PyModule_NewObject(modname); Py_DECREF(modname); if (unlikely(!module)) goto bad; -#if CYTHON_COMPILING_IN_LIMITED_API - moddict = module; -#else moddict = PyModule_GetDict(module); if (unlikely(!moddict)) goto bad; -#endif if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; @@ -32507,13 +32267,13 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe static CYTHON_SMALL_CODE int __pyx_pymod_exec__predicates(PyObject *__pyx_pyinit_module) #endif -#endif { int stringtab_initialized = 0; #if CYTHON_USE_MODULE_STATE int pystate_addmodule_run = 0; #endif - __Pyx_TraceDeclarations + __pyx_mstatetype *__pyx_mstate = NULL; + __Pyx_TraceDeclarationsFunc PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; @@ -32528,36 +32288,37 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__predicates(PyObject *__pyx_pyinit PyErr_SetString(PyExc_RuntimeError, "Module '_predicates' has already been imported. Re-initialisation is not supported."); return -1; } - #elif PY_MAJOR_VERSION >= 3 + #else if (__pyx_m) return __Pyx_NewRef(__pyx_m); #endif /*--- Module creation code ---*/ #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_m = __pyx_pyinit_module; - Py_INCREF(__pyx_m); - #else - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4("_predicates", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); - if (unlikely(!__pyx_m)) __PYX_ERR(1, 1, __pyx_L1_error) - #elif CYTHON_USE_MODULE_STATE - __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_t_1 = __pyx_pyinit_module; + Py_INCREF(__pyx_t_1); + #else + __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #if CYTHON_USE_MODULE_STATE { - int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); + int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef); __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "_predicates" pseudovariable */ - if (unlikely((add_module_result < 0))) __PYX_ERR(1, 1, __pyx_L1_error) + if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) pystate_addmodule_run = 1; } #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - if (unlikely(!__pyx_m)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_m = __pyx_t_1; #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); #endif + __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); - __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(1, 1, __pyx_L1_error) - Py_INCREF(__pyx_d); - __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(1, 1, __pyx_L1_error) - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) + Py_INCREF(__pyx_mstate->__pyx_d); + __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef("cython_runtime"); if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /* ImportRefnannyAPI */ #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); if (!__Pyx_RefNanny) { @@ -32567,81 +32328,71 @@ if (!__Pyx_RefNanny) { Py_FatalError("failed to import 'refnanny' module"); } #endif - __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit__predicates(void)", 0); - if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + +__Pyx_RefNannySetupContext("PyInit__predicates", 0); + if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Initialize various global constants etc. ---*/ + if (__Pyx_InitConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + stringtab_initialized = 1; + if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #if 0 || defined(__Pyx_CyFunction_USED) || defined(__Pyx_FusedFunction_USED) || defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED) || defined(__Pyx_AsyncGen_USED) + if (__pyx_CommonTypesMetaclass_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif #ifdef __Pyx_CyFunction_USED - if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_FusedFunction_USED - if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_Coroutine_USED - if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_Generator_USED - if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_AsyncGen_USED - if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_StopAsyncIteration_USED - if (__pyx_StopAsyncIteration_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - PyEval_InitThreads(); - #endif - /*--- Initialize various global constants etc. ---*/ - if (__Pyx_InitConstants() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - stringtab_initialized = 1; - if (__Pyx_InitGlobals() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) - if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #endif if (__pyx_module_is_main_hunter___predicates) { - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name_2, __pyx_n_s_main) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_n_u_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) } - #if PY_MAJOR_VERSION >= 3 { - PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(1, 1, __pyx_L1_error) + PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) if (!PyDict_GetItemString(modules, "hunter._predicates")) { - if (unlikely((PyDict_SetItemString(modules, "hunter._predicates", __pyx_m) < 0))) __PYX_ERR(1, 1, __pyx_L1_error) + if (unlikely((PyDict_SetItemString(modules, "hunter._predicates", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) } } - #endif /*--- Builtin init code ---*/ - if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_InitCachedBuiltins(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Constants init code ---*/ - if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_InitCachedConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_CreateCodeObjects(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Global type/function init code ---*/ - (void)__Pyx_modinit_global_init_code(); - (void)__Pyx_modinit_variable_export_code(); - if (unlikely((__Pyx_modinit_function_export_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_init_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_import_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) - (void)__Pyx_modinit_variable_import_code(); - if (unlikely((__Pyx_modinit_function_import_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) + (void)__Pyx_modinit_global_init_code(__pyx_mstate); + (void)__Pyx_modinit_variable_export_code(__pyx_mstate); + if (unlikely((__Pyx_modinit_function_export_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_init_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + (void)__Pyx_modinit_variable_import_code(__pyx_mstate); + if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - if (__Pyx_patch_abc() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #endif - __Pyx_TraceCall("__Pyx_PyMODINIT_FUNC PyInit__predicates(void)", __pyx_f[1], 1, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 8, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); - /* "cfunc.to_py":66 + /* "cfunc.to_py":65 * - * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") - * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): # <<<<<<<<<<<<<< + * + * @cname("__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event") # <<<<<<<<<<<<<< + * cdef object __Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event(object (*f)(Event) ): * def wrap(Event event): - * """wrap(event: 'Event')""" - */ - __Pyx_TraceLine(66,0,__PYX_ERR(0, 66, __pyx_L1_error)) +*/ + __Pyx_TraceLine(65,0,0,__PYX_ERR(1, 65, __pyx_L1_error)) /* "hunter/_predicates.pyx":4 @@ -32650,19 +32401,16 @@ if (!__Pyx_RefNanny) { * from collections import deque # <<<<<<<<<<<<<< * from inspect import isclass * from re import compile as re_compile - */ - __Pyx_TraceLine(4,0,__PYX_ERR(1, 4, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 4, __pyx_L1_error) +*/ + __Pyx_TraceLine(4,19,0,__PYX_ERR(0, 4, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_deque); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_deque); - __Pyx_GIVEREF(__pyx_n_s_deque); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_deque)) __PYX_ERR(1, 4, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_collections, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 4, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_collections, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_deque); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 4, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_deque); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_deque, __pyx_t_2) < 0) __PYX_ERR(1, 4, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_deque, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -32672,19 +32420,16 @@ if (!__Pyx_RefNanny) { * from inspect import isclass # <<<<<<<<<<<<<< * from re import compile as re_compile * - */ - __Pyx_TraceLine(5,0,__PYX_ERR(1, 5, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) +*/ + __Pyx_TraceLine(5,22,0,__PYX_ERR(0, 5, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_isclass); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_isclass); - __Pyx_GIVEREF(__pyx_n_s_isclass); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_isclass)) __PYX_ERR(1, 5, __pyx_L1_error); - __pyx_t_2 = __Pyx_patch_inspect(__Pyx_Import(__pyx_n_s_inspect, __pyx_t_3, 0)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 5, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_inspect, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_isclass); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 5, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_isclass); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_isclass, __pyx_t_3) < 0) __PYX_ERR(1, 5, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_isclass, __pyx_t_3) < 0) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -32694,19 +32439,16 @@ if (!__Pyx_RefNanny) { * from re import compile as re_compile # <<<<<<<<<<<<<< * * cimport cython - */ - __Pyx_TraceLine(6,0,__PYX_ERR(1, 6, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 6, __pyx_L1_error) +*/ + __Pyx_TraceLine(6,25,0,__PYX_ERR(0, 6, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_compile); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_compile); - __Pyx_GIVEREF(__pyx_n_s_compile); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_compile)) __PYX_ERR(1, 6, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_re, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 6, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_re, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_compile); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 6, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_compile); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_re_compile, __pyx_t_2) < 0) __PYX_ERR(1, 6, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_re_compile, __pyx_t_2) < 0) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -32716,19 +32458,16 @@ if (!__Pyx_RefNanny) { * from .actions import Action # <<<<<<<<<<<<<< * from .actions import ColorStreamAction * - */ - __Pyx_TraceLine(15,0,__PYX_ERR(1, 15, __pyx_L1_error)) - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) +*/ + __Pyx_TraceLine(15,45,0,__PYX_ERR(0, 15, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_n_s_Action); - __Pyx_GIVEREF(__pyx_n_s_Action); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_Action)) __PYX_ERR(1, 15, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_actions, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 15, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_actions_2, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Action); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_Action, __pyx_t_3) < 0) __PYX_ERR(1, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Action, __pyx_t_3) < 0) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -32738,19 +32477,16 @@ if (!__Pyx_RefNanny) { * from .actions import ColorStreamAction # <<<<<<<<<<<<<< * * __all__ = ( - */ - __Pyx_TraceLine(16,0,__PYX_ERR(1, 16, __pyx_L1_error)) - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,56,0,__PYX_ERR(0, 16, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_ColorStreamAction); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_n_s_ColorStreamAction); - __Pyx_GIVEREF(__pyx_n_s_ColorStreamAction); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_ColorStreamAction)) __PYX_ERR(1, 16, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_actions, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_actions_2, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_ColorStreamAction); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 16, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_ColorStreamAction); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_ColorStreamAction, __pyx_t_2) < 0) __PYX_ERR(1, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_ColorStreamAction, __pyx_t_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -32760,9 +32496,9 @@ if (!__Pyx_RefNanny) { * 'And', # <<<<<<<<<<<<<< * 'From', * 'Not', - */ - __Pyx_TraceLine(19,0,__PYX_ERR(1, 19, __pyx_L1_error)) - if (PyDict_SetItem(__pyx_d, __pyx_n_s_all, __pyx_tuple__40) < 0) __PYX_ERR(1, 18, __pyx_L1_error) +*/ + __Pyx_TraceLine(19,61,0,__PYX_ERR(0, 19, __pyx_L1_error)) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[6]) < 0) __PYX_ERR(0, 18, __pyx_L1_error) /* "hunter/_predicates.pyx":28 * @@ -32770,12 +32506,12 @@ if (!__Pyx_RefNanny) { * 'function', 'module', 'lineno', 'globals', 'stdlib', 'arg', 'locals', 'kind', 'filename', 'source', # <<<<<<<<<<<<<< * 'fullsource', 'threadname', 'threadid', 'instruction', 'depth', 'calls', 'builtin', * ) - */ - __Pyx_TraceLine(28,0,__PYX_ERR(1, 28, __pyx_L1_error)) - __Pyx_INCREF(__pyx_tuple__41); +*/ + __Pyx_TraceLine(28,70,0,__PYX_ERR(0, 28, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_tuple[7]); __Pyx_XGOTREF(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS); - __Pyx_DECREF_SET(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_tuple__41); - __Pyx_GIVEREF(__pyx_tuple__41); + __Pyx_DECREF_SET(__pyx_v_6hunter_11_predicates_ALLOWED_KEYS, __pyx_mstate_global->__pyx_tuple[7]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[7]); /* "hunter/_predicates.pyx":32 * ) @@ -32783,12 +32519,12 @@ if (!__Pyx_RefNanny) { * 'startswith', 'endswith', 'in', 'contains', 'regex', # <<<<<<<<<<<<<< * 'sw', 'ew', 'has', 'rx', * 'gt', 'gte', 'lt', 'lte', - */ - __Pyx_TraceLine(32,0,__PYX_ERR(1, 32, __pyx_L1_error)) - __Pyx_INCREF(__pyx_tuple__42); +*/ + __Pyx_TraceLine(32,89,0,__PYX_ERR(0, 32, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_tuple[8]); __Pyx_XGOTREF(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS); - __Pyx_DECREF_SET(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS, __pyx_tuple__42); - __Pyx_GIVEREF(__pyx_tuple__42); + __Pyx_DECREF_SET(__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS, __pyx_mstate_global->__pyx_tuple[8]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[8]); /* "hunter/_predicates.pyx":38 * @@ -32796,8 +32532,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_function(Event event): return event.function_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_module(Event event): return event.module_getter() * cdef inline Event_get_lineno(Event event): return event.lineno_getter() - */ - __Pyx_TraceLine(38,0,__PYX_ERR(1, 38, __pyx_L1_error)) +*/ + __Pyx_TraceLine(38,104,0,__PYX_ERR(0, 38, __pyx_L1_error)) /* "hunter/_predicates.pyx":39 @@ -32806,8 +32542,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_module(Event event): return event.module_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_lineno(Event event): return event.lineno_getter() * cdef inline Event_get_globals(Event event): return event.globals_getter() - */ - __Pyx_TraceLine(39,0,__PYX_ERR(1, 39, __pyx_L1_error)) +*/ + __Pyx_TraceLine(39,105,0,__PYX_ERR(0, 39, __pyx_L1_error)) /* "hunter/_predicates.pyx":40 @@ -32816,8 +32552,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_lineno(Event event): return event.lineno_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_globals(Event event): return event.globals_getter() * cdef inline Event_get_stdlib(Event event): return event.stdlib_getter() - */ - __Pyx_TraceLine(40,0,__PYX_ERR(1, 40, __pyx_L1_error)) +*/ + __Pyx_TraceLine(40,106,0,__PYX_ERR(0, 40, __pyx_L1_error)) /* "hunter/_predicates.pyx":41 @@ -32826,8 +32562,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_globals(Event event): return event.globals_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_stdlib(Event event): return event.stdlib_getter() * cdef inline Event_get_arg(Event event): return event.arg - */ - __Pyx_TraceLine(41,0,__PYX_ERR(1, 41, __pyx_L1_error)) +*/ + __Pyx_TraceLine(41,107,0,__PYX_ERR(0, 41, __pyx_L1_error)) /* "hunter/_predicates.pyx":42 @@ -32836,8 +32572,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_stdlib(Event event): return event.stdlib_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_arg(Event event): return event.arg * cdef inline Event_get_locals(Event event): return event.locals_getter() - */ - __Pyx_TraceLine(42,0,__PYX_ERR(1, 42, __pyx_L1_error)) +*/ + __Pyx_TraceLine(42,108,0,__PYX_ERR(0, 42, __pyx_L1_error)) /* "hunter/_predicates.pyx":43 @@ -32846,8 +32582,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_arg(Event event): return event.arg # <<<<<<<<<<<<<< * cdef inline Event_get_locals(Event event): return event.locals_getter() * cdef inline Event_get_kind(Event event): return event.kind - */ - __Pyx_TraceLine(43,0,__PYX_ERR(1, 43, __pyx_L1_error)) +*/ + __Pyx_TraceLine(43,109,0,__PYX_ERR(0, 43, __pyx_L1_error)) /* "hunter/_predicates.pyx":44 @@ -32856,8 +32592,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_locals(Event event): return event.locals_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_kind(Event event): return event.kind * cdef inline Event_get_filename(Event event): return event.filename_getter() - */ - __Pyx_TraceLine(44,0,__PYX_ERR(1, 44, __pyx_L1_error)) +*/ + __Pyx_TraceLine(44,111,0,__PYX_ERR(0, 44, __pyx_L1_error)) /* "hunter/_predicates.pyx":45 @@ -32866,8 +32602,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_kind(Event event): return event.kind # <<<<<<<<<<<<<< * cdef inline Event_get_filename(Event event): return event.filename_getter() * cdef inline Event_get_source(Event event): return event.source_getter() - */ - __Pyx_TraceLine(45,0,__PYX_ERR(1, 45, __pyx_L1_error)) +*/ + __Pyx_TraceLine(45,113,0,__PYX_ERR(0, 45, __pyx_L1_error)) /* "hunter/_predicates.pyx":46 @@ -32876,8 +32612,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_filename(Event event): return event.filename_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_source(Event event): return event.source_getter() * cdef inline Event_get_fullsource(Event event): return event.fullsource_getter() - */ - __Pyx_TraceLine(46,0,__PYX_ERR(1, 46, __pyx_L1_error)) +*/ + __Pyx_TraceLine(46,114,0,__PYX_ERR(0, 46, __pyx_L1_error)) /* "hunter/_predicates.pyx":47 @@ -32886,8 +32622,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_source(Event event): return event.source_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_fullsource(Event event): return event.fullsource_getter() * cdef inline Event_get_threadname(Event event): return event.threadname_getter() - */ - __Pyx_TraceLine(47,0,__PYX_ERR(1, 47, __pyx_L1_error)) +*/ + __Pyx_TraceLine(47,115,0,__PYX_ERR(0, 47, __pyx_L1_error)) /* "hunter/_predicates.pyx":48 @@ -32896,8 +32632,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_fullsource(Event event): return event.fullsource_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_threadname(Event event): return event.threadname_getter() * cdef inline Event_get_threadid(Event event): return event.threadid_getter() - */ - __Pyx_TraceLine(48,0,__PYX_ERR(1, 48, __pyx_L1_error)) +*/ + __Pyx_TraceLine(48,116,0,__PYX_ERR(0, 48, __pyx_L1_error)) /* "hunter/_predicates.pyx":49 @@ -32906,8 +32642,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_threadname(Event event): return event.threadname_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_threadid(Event event): return event.threadid_getter() * cdef inline Event_get_instruction(Event event): return event.instruction_getter() - */ - __Pyx_TraceLine(49,0,__PYX_ERR(1, 49, __pyx_L1_error)) +*/ + __Pyx_TraceLine(49,117,0,__PYX_ERR(0, 49, __pyx_L1_error)) /* "hunter/_predicates.pyx":50 @@ -32916,8 +32652,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_threadid(Event event): return event.threadid_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_instruction(Event event): return event.instruction_getter() * cdef inline Event_get_depth(Event event): return event.depth - */ - __Pyx_TraceLine(50,0,__PYX_ERR(1, 50, __pyx_L1_error)) +*/ + __Pyx_TraceLine(50,118,0,__PYX_ERR(0, 50, __pyx_L1_error)) /* "hunter/_predicates.pyx":51 @@ -32926,8 +32662,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_instruction(Event event): return event.instruction_getter() # <<<<<<<<<<<<<< * cdef inline Event_get_depth(Event event): return event.depth * cdef inline Event_get_calls(Event event): return event.calls - */ - __Pyx_TraceLine(51,0,__PYX_ERR(1, 51, __pyx_L1_error)) +*/ + __Pyx_TraceLine(51,120,0,__PYX_ERR(0, 51, __pyx_L1_error)) /* "hunter/_predicates.pyx":52 @@ -32936,8 +32672,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_depth(Event event): return event.depth # <<<<<<<<<<<<<< * cdef inline Event_get_calls(Event event): return event.calls * cdef inline Event_get_builtin(Event event): return event.builtin - */ - __Pyx_TraceLine(52,0,__PYX_ERR(1, 52, __pyx_L1_error)) +*/ + __Pyx_TraceLine(52,122,0,__PYX_ERR(0, 52, __pyx_L1_error)) /* "hunter/_predicates.pyx":53 @@ -32946,8 +32682,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_calls(Event event): return event.calls # <<<<<<<<<<<<<< * cdef inline Event_get_builtin(Event event): return event.builtin * - */ - __Pyx_TraceLine(53,0,__PYX_ERR(1, 53, __pyx_L1_error)) +*/ + __Pyx_TraceLine(53,124,0,__PYX_ERR(0, 53, __pyx_L1_error)) /* "hunter/_predicates.pyx":54 @@ -32956,8 +32692,8 @@ if (!__Pyx_RefNanny) { * cdef inline Event_get_builtin(Event event): return event.builtin # <<<<<<<<<<<<<< * * cdef Event_getter_typedef[17] Event_getters = [ - */ - __Pyx_TraceLine(54,0,__PYX_ERR(1, 54, __pyx_L1_error)) +*/ + __Pyx_TraceLine(54,126,0,__PYX_ERR(0, 54, __pyx_L1_error)) /* "hunter/_predicates.pyx":56 @@ -32966,8 +32702,8 @@ if (!__Pyx_RefNanny) { * cdef Event_getter_typedef[17] Event_getters = [ # <<<<<<<<<<<<<< * Event_get_function, * Event_get_module, - */ - __Pyx_TraceLine(56,0,__PYX_ERR(1, 56, __pyx_L1_error)) +*/ + __Pyx_TraceLine(56,129,0,__PYX_ERR(0, 56, __pyx_L1_error)) __pyx_t_4[0] = __pyx_f_6hunter_11_predicates_Event_get_function; __pyx_t_4[1] = __pyx_f_6hunter_11_predicates_Event_get_module; __pyx_t_4[2] = __pyx_f_6hunter_11_predicates_Event_get_lineno; @@ -32991,11 +32727,11 @@ if (!__Pyx_RefNanny) { * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_QueryEntry___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__3)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":3 @@ -33003,37 +32739,35 @@ if (!__Pyx_RefNanny) { * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.getter cannot be converted to a Python object for pickling" - */ - __Pyx_TraceLine(3,0,__PYX_ERR(0, 3, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_QueryEntry___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__4)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __Pyx_TraceLine(3,16,0,__PYX_ERR(1, 3, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Query___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__11)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Query); /* "(tree fragment)":16 * else: * return __pyx_unpickle_Query, (type(self), 0x5503a44, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Query___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__12)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Query, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Query); /* "hunter/_predicates.pyx":264 * return Not(self) @@ -33041,34 +32775,32 @@ if (!__Pyx_RefNanny) { * cdef inline fast_Query_call(Query self, Event event): # <<<<<<<<<<<<<< * for key, entry in self.query_eq: * value_from_event = ( entry).getter(event) - */ - __Pyx_TraceLine(264,0,__PYX_ERR(1, 264, __pyx_L1_error)) +*/ + __Pyx_TraceLine(264,169,0,__PYX_ERR(0, 264, __pyx_L1_error)) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_When___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__14)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_When, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_When); /* "(tree fragment)":16 * else: * return __pyx_unpickle_When, (type(self), 0xe710366, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_When___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__15)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_When, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_When); /* "hunter/_predicates.pyx":353 * return Not(self) @@ -33076,34 +32808,32 @@ if (!__Pyx_RefNanny) { * cdef inline fast_When_call(When self, Event event): # <<<<<<<<<<<<<< * cdef object result * - */ - __Pyx_TraceLine(353,0,__PYX_ERR(1, 353, __pyx_L1_error)) +*/ + __Pyx_TraceLine(353,179,0,__PYX_ERR(0, 353, __pyx_L1_error)) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_From___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__16)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_From, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_From); /* "(tree fragment)":16 * else: * return __pyx_unpickle_From, (type(self), 0xcfd05cc, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_From___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__17)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_From, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_From); /* "hunter/_predicates.pyx":407 * return Not(self) @@ -33111,34 +32841,32 @@ if (!__Pyx_RefNanny) { * cdef inline fast_From_call(From self, Event event): # <<<<<<<<<<<<<< * cdef object result * cdef int delta_depth - */ - __Pyx_TraceLine(407,0,__PYX_ERR(1, 407, __pyx_L1_error)) +*/ + __Pyx_TraceLine(407,189,0,__PYX_ERR(0, 407, __pyx_L1_error)) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_And___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__18)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_And, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_And); /* "(tree fragment)":16 * else: * return __pyx_unpickle_And, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_And___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__19)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_And, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_And); /* "hunter/_predicates.pyx":478 * return Not(self) @@ -33146,34 +32874,32 @@ if (!__Pyx_RefNanny) { * cdef inline fast_And_call(And self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if not fast_call(predicate, event): - */ - __Pyx_TraceLine(478,0,__PYX_ERR(1, 478, __pyx_L1_error)) +*/ + __Pyx_TraceLine(478,199,0,__PYX_ERR(0, 478, __pyx_L1_error)) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Or___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__20)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Or, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Or); /* "(tree fragment)":16 * else: * return __pyx_unpickle_Or, (type(self), 0x8e21672, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Or___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__21)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Or, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Or); /* "hunter/_predicates.pyx":528 * return Not(self) @@ -33181,34 +32907,32 @@ if (!__Pyx_RefNanny) { * cdef inline fast_Or_call(Or self, Event event): # <<<<<<<<<<<<<< * for predicate in self.predicates: * if fast_call(predicate, event): - */ - __Pyx_TraceLine(528,0,__PYX_ERR(1, 528, __pyx_L1_error)) +*/ + __Pyx_TraceLine(528,209,0,__PYX_ERR(0, 528, __pyx_L1_error)) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Not___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__22)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Not, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Not); /* "(tree fragment)":16 * else: * return __pyx_unpickle_Not, (type(self), 0x23761c9, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Not___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__23)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Not, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Not); /* "hunter/_predicates.pyx":573 * return self.predicate @@ -33216,8 +32940,8 @@ if (!__Pyx_RefNanny) { * cdef inline fast_Not_call(Not self, Event event): # <<<<<<<<<<<<<< * return not fast_call(self.predicate, event) * - */ - __Pyx_TraceLine(573,0,__PYX_ERR(1, 573, __pyx_L1_error)) +*/ + __Pyx_TraceLine(573,219,0,__PYX_ERR(0, 573, __pyx_L1_error)) /* "hunter/_predicates.pyx":577 @@ -33226,8 +32950,8 @@ if (!__Pyx_RefNanny) { * cdef inline fast_call(callable, Event event): # <<<<<<<<<<<<<< * if type(callable) is Query: * return fast_Query_call( callable, event) - */ - __Pyx_TraceLine(577,0,__PYX_ERR(1, 577, __pyx_L1_error)) +*/ + __Pyx_TraceLine(577,220,0,__PYX_ERR(0, 577, __pyx_L1_error)) /* "hunter/_predicates.pyx":643 @@ -33236,38 +32960,35 @@ if (!__Pyx_RefNanny) { * def filter(self, *predicates, **kwargs): # <<<<<<<<<<<<<< * from hunter import _merge * - */ - __Pyx_TraceLine(643,0,__PYX_ERR(1, 643, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_17filter, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog_filter, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__24)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 643, __pyx_L1_error) +*/ + __Pyx_TraceLine(643,230,0,__PYX_ERR(0, 643, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_17filter, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog_filter, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[124])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_n_s_filter, __pyx_t_3) < 0) __PYX_ERR(1, 643, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_filter, __pyx_t_3) < 0) __PYX_ERR(0, 643, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Backlog); /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * cdef tuple state * cdef object _dict - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog___reduce_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__25)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_n_s_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Backlog); /* "(tree fragment)":16 * else: * return __pyx_unpickle_Backlog, (type(self), 0x1428ea1, state) * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Backlog___setstate_cython, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__26)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) +*/ + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_n_s_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_6hunter_11_predicates_Backlog); /* "hunter/_predicates.pyx":655 * ) @@ -33275,19 +32996,19 @@ if (!__Pyx_RefNanny) { * cdef inline fast_Backlog_call(Backlog self, Event event): # <<<<<<<<<<<<<< * cdef bint first_is_call * cdef Event detached_event - */ - __Pyx_TraceLine(655,0,__PYX_ERR(1, 655, __pyx_L1_error)) +*/ + __Pyx_TraceLine(655,231,0,__PYX_ERR(0, 655, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_Query(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_n_s_pyx_unpickle_Query, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__27)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33296,19 +33017,19 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_Query__set_state(Query __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_When(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_n_s_pyx_unpickle_When, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__29)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33317,19 +33038,19 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_When__set_state(When __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_From(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_n_s_pyx_unpickle_From, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__31)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33338,19 +33059,19 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_From__set_state(From __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_And(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_n_s_pyx_unpickle_And, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__33)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33359,19 +33080,19 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_And__set_state(And __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_Or(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_n_s_pyx_unpickle_Or, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__35)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33380,19 +33101,19 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_Or__set_state(Or __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_Not(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_n_s_pyx_unpickle_Not, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__36)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33401,19 +33122,19 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_Not__set_state(Not __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 * def __pyx_unpickle_Backlog(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< * cdef object __pyx_PickleError * cdef object __pyx_result - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_n_s_pyx_unpickle_Backlog, NULL, __pyx_n_s_hunter__predicates, __pyx_d, ((PyObject *)__pyx_codeobj__38)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":11 @@ -33422,21 +33143,22 @@ if (!__Pyx_RefNanny) { * cdef __pyx_unpickle_Backlog__set_state(Backlog __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) +*/ + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 * # cython: linetrace=True, language_level=3str, c_api_binop_methods=True # <<<<<<<<<<<<<< * from __future__ import absolute_import * - */ - __Pyx_TraceLine(1,0,__PYX_ERR(1, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,8,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceReturnValue(Py_None, 8, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33444,8 +33166,10 @@ if (!__Pyx_RefNanny) { __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_TraceExceptionUnwind(8, 0); if (__pyx_m) { - if (__pyx_d && stringtab_initialized) { + if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); } #if !CYTHON_USE_MODULE_STATE @@ -33466,600 +33190,2452 @@ if (!__Pyx_RefNanny) { __Pyx_RefNannyFinishContext(); #if CYTHON_PEP489_MULTI_PHASE_INIT return (__pyx_m != NULL) ? 0 : -1; - #elif PY_MAJOR_VERSION >= 3 - return __pyx_m; #else - return; + return __pyx_m; #endif } -/* #### Code section: cleanup_globals ### */ -/* #### Code section: cleanup_module ### */ -/* #### Code section: main_method ### */ -/* #### Code section: utility_code_pragmas ### */ -#ifdef _MSC_VER -#pragma warning( push ) -/* Warning 4127: conditional expression is constant - * Cython uses constant conditional expressions to allow in inline functions to be optimized at - * compile-time, so this warning is not useful - */ -#pragma warning( disable : 4127 ) -#endif - +/* #### Code section: pystring_table ### */ +typedef struct { + const char *s; +#if 194 <= 65535 + const unsigned short n; +#elif 194 / 2 < INT_MAX + const unsigned int n; +#elif 194 / 2 < LONG_MAX + const unsigned long n; +#else + const Py_ssize_t n; +#endif +#if 1 <= 31 + const unsigned int encoding : 5; +#elif 1 <= 255 + const unsigned char encoding; +#elif 1 <= 65535 + const unsigned short encoding; +#else + const Py_ssize_t encoding; +#endif + const unsigned int is_unicode : 1; + const unsigned int intern : 1; +} __Pyx_StringTabEntry; +static const char * const __pyx_string_tab_encodings[] = { 0 }; +static const __Pyx_StringTabEntry __pyx_string_tab[] = { + {__pyx_k_, sizeof(__pyx_k_), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ */ + {__pyx_k_ALLOWED_KEYS, sizeof(__pyx_k_ALLOWED_KEYS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ALLOWED_KEYS */ + {__pyx_k_ALLOWED_OPERATORS, sizeof(__pyx_k_ALLOWED_OPERATORS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ALLOWED_OPERATORS */ + {__pyx_k_Action, sizeof(__pyx_k_Action), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Action */ + {__pyx_k_Action_r_must_be_a_ColorStreamAc, sizeof(__pyx_k_Action_r_must_be_a_ColorStreamAc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Action_r_must_be_a_ColorStreamAc */ + {__pyx_k_And, sizeof(__pyx_k_And), 0, 1, 1}, /* PyObject cname: __pyx_n_u_And */ + {__pyx_k_And___reduce_cython, sizeof(__pyx_k_And___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_And___reduce_cython */ + {__pyx_k_And___setstate_cython, sizeof(__pyx_k_And___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_And___setstate_cython */ + {__pyx_k_And_s, sizeof(__pyx_k_And_s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_And_s */ + {__pyx_k_Backlog, sizeof(__pyx_k_Backlog), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Backlog */ + {__pyx_k_Backlog_2, sizeof(__pyx_k_Backlog_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Backlog_2 */ + {__pyx_k_Backlog___reduce_cython, sizeof(__pyx_k_Backlog___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Backlog___reduce_cython */ + {__pyx_k_Backlog___setstate_cython, sizeof(__pyx_k_Backlog___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Backlog___setstate_cython */ + {__pyx_k_Backlog_filter, sizeof(__pyx_k_Backlog_filter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Backlog_filter */ + {__pyx_k_ColorStreamAction, sizeof(__pyx_k_ColorStreamAction), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ColorStreamAction */ + {__pyx_k_Event_get_arg, sizeof(__pyx_k_Event_get_arg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_arg */ + {__pyx_k_Event_get_builtin, sizeof(__pyx_k_Event_get_builtin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_builtin */ + {__pyx_k_Event_get_calls, sizeof(__pyx_k_Event_get_calls), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_calls */ + {__pyx_k_Event_get_depth, sizeof(__pyx_k_Event_get_depth), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_depth */ + {__pyx_k_Event_get_filename, sizeof(__pyx_k_Event_get_filename), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_filename */ + {__pyx_k_Event_get_fullsource, sizeof(__pyx_k_Event_get_fullsource), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_fullsource */ + {__pyx_k_Event_get_function, sizeof(__pyx_k_Event_get_function), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_function */ + {__pyx_k_Event_get_globals, sizeof(__pyx_k_Event_get_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_globals */ + {__pyx_k_Event_get_instruction, sizeof(__pyx_k_Event_get_instruction), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_instruction */ + {__pyx_k_Event_get_kind, sizeof(__pyx_k_Event_get_kind), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_kind */ + {__pyx_k_Event_get_lineno, sizeof(__pyx_k_Event_get_lineno), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_lineno */ + {__pyx_k_Event_get_locals, sizeof(__pyx_k_Event_get_locals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_locals */ + {__pyx_k_Event_get_module, sizeof(__pyx_k_Event_get_module), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_module */ + {__pyx_k_Event_get_source, sizeof(__pyx_k_Event_get_source), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_source */ + {__pyx_k_Event_get_stdlib, sizeof(__pyx_k_Event_get_stdlib), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_stdlib */ + {__pyx_k_Event_get_threadid, sizeof(__pyx_k_Event_get_threadid), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_threadid */ + {__pyx_k_Event_get_threadname, sizeof(__pyx_k_Event_get_threadname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_get_threadname */ + {__pyx_k_Event_getters, sizeof(__pyx_k_Event_getters), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_getters */ + {__pyx_k_False, sizeof(__pyx_k_False), 0, 1, 1}, /* PyObject cname: __pyx_n_u_False */ + {__pyx_k_From, sizeof(__pyx_k_From), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_From */ + {__pyx_k_From_2, sizeof(__pyx_k_From_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_From_2 */ + {__pyx_k_From___reduce_cython, sizeof(__pyx_k_From___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_From___reduce_cython */ + {__pyx_k_From___setstate_cython, sizeof(__pyx_k_From___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_From___setstate_cython */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0 */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0_2, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_2 */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0_3, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_3 */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0_4, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_4 */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0_5, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_5 */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0_6, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0_6), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0_6 */ + {__pyx_k_Must_be_one_of, sizeof(__pyx_k_Must_be_one_of), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Must_be_one_of */ + {__pyx_k_Must_give_at_least_one_action, sizeof(__pyx_k_Must_give_at_least_one_action), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Must_give_at_least_one_action */ + {__pyx_k_Not, sizeof(__pyx_k_Not), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Not */ + {__pyx_k_Not___reduce_cython, sizeof(__pyx_k_Not___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Not___reduce_cython */ + {__pyx_k_Not___setstate_cython, sizeof(__pyx_k_Not___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Not___setstate_cython */ + {__pyx_k_Not_s, sizeof(__pyx_k_Not_s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Not_s */ + {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ + {__pyx_k_Or, sizeof(__pyx_k_Or), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Or */ + {__pyx_k_Or___reduce_cython, sizeof(__pyx_k_Or___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Or___reduce_cython */ + {__pyx_k_Or___setstate_cython, sizeof(__pyx_k_Or___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Or___setstate_cython */ + {__pyx_k_Or_s, sizeof(__pyx_k_Or_s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Or_s */ + {__pyx_k_PickleError, sizeof(__pyx_k_PickleError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PickleError */ + {__pyx_k_Pyx_CFunc_6hunter_11_predicate, sizeof(__pyx_k_Pyx_CFunc_6hunter_11_predicate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pyx_CFunc_6hunter_11_predicate */ + {__pyx_k_Pyx_CFunc_6hunter_11_predicate_2, sizeof(__pyx_k_Pyx_CFunc_6hunter_11_predicate_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pyx_CFunc_6hunter_11_predicate_2 */ + {__pyx_k_Query, sizeof(__pyx_k_Query), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Query */ + {__pyx_k_QueryEntry, sizeof(__pyx_k_QueryEntry), 0, 1, 1}, /* PyObject cname: __pyx_n_u_QueryEntry */ + {__pyx_k_QueryEntry___reduce_cython, sizeof(__pyx_k_QueryEntry___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_QueryEntry___reduce_cython */ + {__pyx_k_QueryEntry___setstate_cython, sizeof(__pyx_k_QueryEntry___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_QueryEntry___setstate_cython */ + {__pyx_k_Query___reduce_cython, sizeof(__pyx_k_Query___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Query___reduce_cython */ + {__pyx_k_Query___setstate_cython, sizeof(__pyx_k_Query___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Query___setstate_cython */ + {__pyx_k_Query_s, sizeof(__pyx_k_Query_s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Query_s */ + {__pyx_k_True, sizeof(__pyx_k_True), 0, 1, 1}, /* PyObject cname: __pyx_n_u_True */ + {__pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TypeError */ + {__pyx_k_Unexpected_argument, sizeof(__pyx_k_Unexpected_argument), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Unexpected_argument */ + {__pyx_k_Unexpected_operator, sizeof(__pyx_k_Unexpected_operator), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Unexpected_operator */ + {__pyx_k_Value, sizeof(__pyx_k_Value), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Value */ + {__pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ValueError */ + {__pyx_k_When, sizeof(__pyx_k_When), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_When */ + {__pyx_k_When_2, sizeof(__pyx_k_When_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_When_2 */ + {__pyx_k_When___reduce_cython, sizeof(__pyx_k_When___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_When___reduce_cython */ + {__pyx_k_When___setstate_cython, sizeof(__pyx_k_When___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_When___setstate_cython */ + {__pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__2 */ + {__pyx_k__3, sizeof(__pyx_k__3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__3 */ + {__pyx_k__4, sizeof(__pyx_k__4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__4 */ + {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__5 */ + {__pyx_k__6, sizeof(__pyx_k__6), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__6 */ + {__pyx_k__7, sizeof(__pyx_k__7), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__7 */ + {__pyx_k__8, sizeof(__pyx_k__8), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__8 */ + {__pyx_k__9, sizeof(__pyx_k__9), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__9 */ + {__pyx_k_action, sizeof(__pyx_k_action), 0, 1, 1}, /* PyObject cname: __pyx_n_u_action */ + {__pyx_k_action_2, sizeof(__pyx_k_action_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_action_2 */ + {__pyx_k_actions, sizeof(__pyx_k_actions), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_actions */ + {__pyx_k_actions_2, sizeof(__pyx_k_actions_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_actions_2 */ + {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */ + {__pyx_k_all, sizeof(__pyx_k_all), 0, 1, 1}, /* PyObject cname: __pyx_n_u_all */ + {__pyx_k_and, sizeof(__pyx_k_and), 0, 1, 1}, /* PyObject cname: __pyx_n_u_and */ + {__pyx_k_append, sizeof(__pyx_k_append), 0, 1, 1}, /* PyObject cname: __pyx_n_u_append */ + {__pyx_k_appendleft, sizeof(__pyx_k_appendleft), 0, 1, 1}, /* PyObject cname: __pyx_n_u_appendleft */ + {__pyx_k_arg, sizeof(__pyx_k_arg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_arg */ + {__pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asyncio_coroutines */ + {__pyx_k_builtin, sizeof(__pyx_k_builtin), 0, 1, 1}, /* PyObject cname: __pyx_n_u_builtin */ + {__pyx_k_call, sizeof(__pyx_k_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_call */ + {__pyx_k_call_2, sizeof(__pyx_k_call_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_call_2 */ + {__pyx_k_callable, sizeof(__pyx_k_callable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_callable */ + {__pyx_k_calls, sizeof(__pyx_k_calls), 0, 1, 1}, /* PyObject cname: __pyx_n_u_calls */ + {__pyx_k_cfunc_to_py, sizeof(__pyx_k_cfunc_to_py), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cfunc_to_py */ + {__pyx_k_cleanup, sizeof(__pyx_k_cleanup), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cleanup */ + {__pyx_k_clear, sizeof(__pyx_k_clear), 0, 1, 1}, /* PyObject cname: __pyx_n_u_clear */ + {__pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cline_in_traceback */ + {__pyx_k_close, sizeof(__pyx_k_close), 0, 1, 1}, /* PyObject cname: __pyx_n_u_close */ + {__pyx_k_collections, sizeof(__pyx_k_collections), 0, 1, 1}, /* PyObject cname: __pyx_n_u_collections */ + {__pyx_k_compile, sizeof(__pyx_k_compile), 0, 1, 1}, /* PyObject cname: __pyx_n_u_compile */ + {__pyx_k_condition, sizeof(__pyx_k_condition), 0, 1, 1}, /* PyObject cname: __pyx_n_u_condition */ + {__pyx_k_contains, sizeof(__pyx_k_contains), 0, 1, 1}, /* PyObject cname: __pyx_n_u_contains */ + {__pyx_k_contains_2, sizeof(__pyx_k_contains_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_contains_2 */ + {__pyx_k_count, sizeof(__pyx_k_count), 0, 1, 1}, /* PyObject cname: __pyx_n_u_count */ + {__pyx_k_depth, sizeof(__pyx_k_depth), 0, 1, 1}, /* PyObject cname: __pyx_n_u_depth */ + {__pyx_k_deque, sizeof(__pyx_k_deque), 0, 1, 1}, /* PyObject cname: __pyx_n_u_deque */ + {__pyx_k_dict, sizeof(__pyx_k_dict), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict */ + {__pyx_k_dict_2, sizeof(__pyx_k_dict_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict_2 */ + {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ + {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ + {__pyx_k_endswith, sizeof(__pyx_k_endswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_endswith */ + {__pyx_k_endswith_2, sizeof(__pyx_k_endswith_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_endswith_2 */ + {__pyx_k_eq, sizeof(__pyx_k_eq), 0, 1, 1}, /* PyObject cname: __pyx_n_u_eq */ + {__pyx_k_event, sizeof(__pyx_k_event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_event */ + {__pyx_k_ew, sizeof(__pyx_k_ew), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ew */ + {__pyx_k_f, sizeof(__pyx_k_f), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f */ + {__pyx_k_f_back, sizeof(__pyx_k_f_back), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f_back */ + {__pyx_k_fast_And_call, sizeof(__pyx_k_fast_And_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_And_call */ + {__pyx_k_fast_Backlog_call, sizeof(__pyx_k_fast_Backlog_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_Backlog_call */ + {__pyx_k_fast_From_call, sizeof(__pyx_k_fast_From_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_From_call */ + {__pyx_k_fast_Not_call, sizeof(__pyx_k_fast_Not_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_Not_call */ + {__pyx_k_fast_Or_call, sizeof(__pyx_k_fast_Or_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_Or_call */ + {__pyx_k_fast_Query_call, sizeof(__pyx_k_fast_Query_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_Query_call */ + {__pyx_k_fast_When_call, sizeof(__pyx_k_fast_When_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_When_call */ + {__pyx_k_fast_call, sizeof(__pyx_k_fast_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fast_call */ + {__pyx_k_filename, sizeof(__pyx_k_filename), 0, 1, 1}, /* PyObject cname: __pyx_n_u_filename */ + {__pyx_k_filter, sizeof(__pyx_k_filter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_filter */ + {__pyx_k_filter_2, sizeof(__pyx_k_filter_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_filter_2 */ + {__pyx_k_fmt, sizeof(__pyx_k_fmt), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fmt */ + {__pyx_k_for, sizeof(__pyx_k_for), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_for */ + {__pyx_k_frame, sizeof(__pyx_k_frame), 0, 1, 1}, /* PyObject cname: __pyx_n_u_frame */ + {__pyx_k_fullsource, sizeof(__pyx_k_fullsource), 0, 1, 1}, /* PyObject cname: __pyx_n_u_fullsource */ + {__pyx_k_func, sizeof(__pyx_k_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func */ + {__pyx_k_function, sizeof(__pyx_k_function), 0, 1, 1}, /* PyObject cname: __pyx_n_u_function */ + {__pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_gc */ + {__pyx_k_genexpr, sizeof(__pyx_k_genexpr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_genexpr */ + {__pyx_k_get, sizeof(__pyx_k_get), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get */ + {__pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getstate */ + {__pyx_k_globals, sizeof(__pyx_k_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals */ + {__pyx_k_gt, sizeof(__pyx_k_gt), 0, 1, 1}, /* PyObject cname: __pyx_n_u_gt */ + {__pyx_k_gt_2, sizeof(__pyx_k_gt_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_gt_2 */ + {__pyx_k_gte, sizeof(__pyx_k_gte), 0, 1, 1}, /* PyObject cname: __pyx_n_u_gte */ + {__pyx_k_gte_2, sizeof(__pyx_k_gte_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_gte_2 */ + {__pyx_k_has, sizeof(__pyx_k_has), 0, 1, 1}, /* PyObject cname: __pyx_n_u_has */ + {__pyx_k_hunter, sizeof(__pyx_k_hunter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter */ + {__pyx_k_hunter__predicates, sizeof(__pyx_k_hunter__predicates), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter__predicates */ + {__pyx_k_hunter__predicates_And_predicat, sizeof(__pyx_k_hunter__predicates_And_predicat), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter__predicates_And_predicat */ + {__pyx_k_hunter__predicates_From_conditi, sizeof(__pyx_k_hunter__predicates_From_conditi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter__predicates_From_conditi */ + {__pyx_k_hunter__predicates_Not_predicat, sizeof(__pyx_k_hunter__predicates_Not_predicat), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter__predicates_Not_predicat */ + {__pyx_k_hunter__predicates_Or_predicate, sizeof(__pyx_k_hunter__predicates_Or_predicate), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter__predicates_Or_predicate */ + {__pyx_k_hunter__predicates_When_conditi, sizeof(__pyx_k_hunter__predicates_When_conditi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter__predicates_When_conditi */ + {__pyx_k_hunter_predicates_Backlog_condi, sizeof(__pyx_k_hunter_predicates_Backlog_condi), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter_predicates_Backlog_condi */ + {__pyx_k_hunter_predicates_Query_s, sizeof(__pyx_k_hunter_predicates_Query_s), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter_predicates_Query_s */ + {__pyx_k_in, sizeof(__pyx_k_in), 0, 1, 1}, /* PyObject cname: __pyx_n_u_in */ + {__pyx_k_in_2, sizeof(__pyx_k_in_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_in_2 */ + {__pyx_k_index, sizeof(__pyx_k_index), 0, 1, 1}, /* PyObject cname: __pyx_n_u_index */ + {__pyx_k_init, sizeof(__pyx_k_init), 0, 1, 1}, /* PyObject cname: __pyx_n_u_init */ + {__pyx_k_init___locals_genexpr, sizeof(__pyx_k_init___locals_genexpr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_init___locals_genexpr */ + {__pyx_k_inspect, sizeof(__pyx_k_inspect), 0, 1, 1}, /* PyObject cname: __pyx_n_u_inspect */ + {__pyx_k_instruction, sizeof(__pyx_k_instruction), 0, 1, 1}, /* PyObject cname: __pyx_n_u_instruction */ + {__pyx_k_invert, sizeof(__pyx_k_invert), 0, 1, 1}, /* PyObject cname: __pyx_n_u_invert */ + {__pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_coroutine */ + {__pyx_k_is_invalid_Must_be_a_string_lis, sizeof(__pyx_k_is_invalid_Must_be_a_string_lis), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_is_invalid_Must_be_a_string_lis */ + {__pyx_k_isclass, sizeof(__pyx_k_isclass), 0, 1, 1}, /* PyObject cname: __pyx_n_u_isclass */ + {__pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_isenabled */ + {__pyx_k_items, sizeof(__pyx_k_items), 0, 1, 1}, /* PyObject cname: __pyx_n_u_items */ + {__pyx_k_key, sizeof(__pyx_k_key), 0, 1, 1}, /* PyObject cname: __pyx_n_u_key */ + {__pyx_k_kind, sizeof(__pyx_k_kind), 0, 1, 1}, /* PyObject cname: __pyx_n_u_kind */ + {__pyx_k_kwargs, sizeof(__pyx_k_kwargs), 0, 1, 1}, /* PyObject cname: __pyx_n_u_kwargs */ + {__pyx_k_lineno, sizeof(__pyx_k_lineno), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lineno */ + {__pyx_k_locals, sizeof(__pyx_k_locals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_locals */ + {__pyx_k_lt, sizeof(__pyx_k_lt), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lt */ + {__pyx_k_lt_2, sizeof(__pyx_k_lt_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lt_2 */ + {__pyx_k_lte, sizeof(__pyx_k_lte), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lte */ + {__pyx_k_lte_2, sizeof(__pyx_k_lte_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_lte_2 */ + {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */ + {__pyx_k_mapping, sizeof(__pyx_k_mapping), 0, 1, 1}, /* PyObject cname: __pyx_n_u_mapping */ + {__pyx_k_match, sizeof(__pyx_k_match), 0, 1, 1}, /* PyObject cname: __pyx_n_u_match */ + {__pyx_k_maxlen, sizeof(__pyx_k_maxlen), 0, 1, 1}, /* PyObject cname: __pyx_n_u_maxlen */ + {__pyx_k_merge, sizeof(__pyx_k_merge), 0, 1, 1}, /* PyObject cname: __pyx_n_u_merge */ + {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module */ + {__pyx_k_module_2, sizeof(__pyx_k_module_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_2 */ + {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ + {__pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name_2 */ + {__pyx_k_new, sizeof(__pyx_k_new), 0, 1, 1}, /* PyObject cname: __pyx_n_u_new */ + {__pyx_k_next, sizeof(__pyx_k_next), 0, 1, 1}, /* PyObject cname: __pyx_n_u_next */ + {__pyx_k_operator, sizeof(__pyx_k_operator), 0, 1, 1}, /* PyObject cname: __pyx_n_u_operator */ + {__pyx_k_or, sizeof(__pyx_k_or), 0, 1, 1}, /* PyObject cname: __pyx_n_u_or */ + {__pyx_k_other, sizeof(__pyx_k_other), 0, 1, 1}, /* PyObject cname: __pyx_n_u_other */ + {__pyx_k_p, sizeof(__pyx_k_p), 0, 1, 1}, /* PyObject cname: __pyx_n_u_p */ + {__pyx_k_parts, sizeof(__pyx_k_parts), 0, 1, 1}, /* PyObject cname: __pyx_n_u_parts */ + {__pyx_k_pickle, sizeof(__pyx_k_pickle), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pickle */ + {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ + {__pyx_k_predicate, sizeof(__pyx_k_predicate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_predicate */ + {__pyx_k_predicate_2, sizeof(__pyx_k_predicate_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_predicate_2 */ + {__pyx_k_predicates, sizeof(__pyx_k_predicates), 0, 1, 1}, /* PyObject cname: __pyx_n_u_predicates */ + {__pyx_k_prefix, sizeof(__pyx_k_prefix), 0, 1, 1}, /* PyObject cname: __pyx_n_u_prefix */ + {__pyx_k_pyx_PickleError, sizeof(__pyx_k_pyx_PickleError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_PickleError */ + {__pyx_k_pyx_checksum, sizeof(__pyx_k_pyx_checksum), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_checksum */ + {__pyx_k_pyx_result, sizeof(__pyx_k_pyx_result), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_result */ + {__pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_state */ + {__pyx_k_pyx_type, sizeof(__pyx_k_pyx_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_type */ + {__pyx_k_pyx_unpickle_And, sizeof(__pyx_k_pyx_unpickle_And), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_And */ + {__pyx_k_pyx_unpickle_And__set_state, sizeof(__pyx_k_pyx_unpickle_And__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_And__set_state */ + {__pyx_k_pyx_unpickle_Backlog, sizeof(__pyx_k_pyx_unpickle_Backlog), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Backlog */ + {__pyx_k_pyx_unpickle_Backlog__set_stat, sizeof(__pyx_k_pyx_unpickle_Backlog__set_stat), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Backlog__set_stat */ + {__pyx_k_pyx_unpickle_From, sizeof(__pyx_k_pyx_unpickle_From), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_From */ + {__pyx_k_pyx_unpickle_From__set_state, sizeof(__pyx_k_pyx_unpickle_From__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_From__set_state */ + {__pyx_k_pyx_unpickle_Not, sizeof(__pyx_k_pyx_unpickle_Not), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Not */ + {__pyx_k_pyx_unpickle_Not__set_state, sizeof(__pyx_k_pyx_unpickle_Not__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Not__set_state */ + {__pyx_k_pyx_unpickle_Or, sizeof(__pyx_k_pyx_unpickle_Or), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Or */ + {__pyx_k_pyx_unpickle_Or__set_state, sizeof(__pyx_k_pyx_unpickle_Or__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Or__set_state */ + {__pyx_k_pyx_unpickle_Query, sizeof(__pyx_k_pyx_unpickle_Query), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Query */ + {__pyx_k_pyx_unpickle_Query__set_state, sizeof(__pyx_k_pyx_unpickle_Query__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Query__set_state */ + {__pyx_k_pyx_unpickle_When, sizeof(__pyx_k_pyx_unpickle_When), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_When */ + {__pyx_k_pyx_unpickle_When__set_state, sizeof(__pyx_k_pyx_unpickle_When__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_When__set_state */ + {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ + {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ + {__pyx_k_query, sizeof(__pyx_k_query), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query */ + {__pyx_k_query_contains, sizeof(__pyx_k_query_contains), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_contains */ + {__pyx_k_query_contains_r, sizeof(__pyx_k_query_contains_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_contains_r */ + {__pyx_k_query_endswith, sizeof(__pyx_k_query_endswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_endswith */ + {__pyx_k_query_endswith_r, sizeof(__pyx_k_query_endswith_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_endswith_r */ + {__pyx_k_query_eq, sizeof(__pyx_k_query_eq), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_eq */ + {__pyx_k_query_eq_r, sizeof(__pyx_k_query_eq_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_eq_r */ + {__pyx_k_query_gt, sizeof(__pyx_k_query_gt), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_gt */ + {__pyx_k_query_gt_r, sizeof(__pyx_k_query_gt_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_gt_r */ + {__pyx_k_query_gte, sizeof(__pyx_k_query_gte), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_gte */ + {__pyx_k_query_gte_r, sizeof(__pyx_k_query_gte_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_gte_r */ + {__pyx_k_query_in, sizeof(__pyx_k_query_in), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_in */ + {__pyx_k_query_in_r, sizeof(__pyx_k_query_in_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_in_r */ + {__pyx_k_query_lt, sizeof(__pyx_k_query_lt), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_lt */ + {__pyx_k_query_lt_r, sizeof(__pyx_k_query_lt_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_lt_r */ + {__pyx_k_query_lte, sizeof(__pyx_k_query_lte), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_lte */ + {__pyx_k_query_lte_r, sizeof(__pyx_k_query_lte_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_lte_r */ + {__pyx_k_query_regex, sizeof(__pyx_k_query_regex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_regex */ + {__pyx_k_query_regex_r, sizeof(__pyx_k_query_regex_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_regex_r */ + {__pyx_k_query_startswith, sizeof(__pyx_k_query_startswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_query_startswith */ + {__pyx_k_query_startswith_r, sizeof(__pyx_k_query_startswith_r), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_query_startswith_r */ + {__pyx_k_re, sizeof(__pyx_k_re), 0, 1, 1}, /* PyObject cname: __pyx_n_u_re */ + {__pyx_k_re_compile, sizeof(__pyx_k_re_compile), 0, 1, 1}, /* PyObject cname: __pyx_n_u_re_compile */ + {__pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce */ + {__pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_cython */ + {__pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_ex */ + {__pyx_k_regex, sizeof(__pyx_k_regex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_regex */ + {__pyx_k_regex_2, sizeof(__pyx_k_regex_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_regex_2 */ + {__pyx_k_repr, sizeof(__pyx_k_repr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_repr */ + {__pyx_k_rx, sizeof(__pyx_k_rx), 0, 1, 1}, /* PyObject cname: __pyx_n_u_rx */ + {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ + {__pyx_k_self_getter_cannot_be_converted, sizeof(__pyx_k_self_getter_cannot_be_converted), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_getter_cannot_be_converted */ + {__pyx_k_send, sizeof(__pyx_k_send), 0, 1, 1}, /* PyObject cname: __pyx_n_u_send */ + {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ + {__pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate */ + {__pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate_cython */ + {__pyx_k_size, sizeof(__pyx_k_size), 0, 1, 1}, /* PyObject cname: __pyx_n_u_size */ + {__pyx_k_size_2, sizeof(__pyx_k_size_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_size_2 */ + {__pyx_k_source, sizeof(__pyx_k_source), 0, 1, 1}, /* PyObject cname: __pyx_n_u_source */ + {__pyx_k_split, sizeof(__pyx_k_split), 0, 1, 1}, /* PyObject cname: __pyx_n_u_split */ + {__pyx_k_src_hunter__predicates_pxd, sizeof(__pyx_k_src_hunter__predicates_pxd), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__predicates_pxd */ + {__pyx_k_src_hunter__predicates_pyx, sizeof(__pyx_k_src_hunter__predicates_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__predicates_pyx */ + {__pyx_k_stack, sizeof(__pyx_k_stack), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stack */ + {__pyx_k_stack_2, sizeof(__pyx_k_stack_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stack_2 */ + {__pyx_k_startswith, sizeof(__pyx_k_startswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_startswith */ + {__pyx_k_startswith_2, sizeof(__pyx_k_startswith_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_startswith_2 */ + {__pyx_k_state, sizeof(__pyx_k_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_state */ + {__pyx_k_stdlib, sizeof(__pyx_k_stdlib), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib */ + {__pyx_k_str, sizeof(__pyx_k_str), 0, 1, 1}, /* PyObject cname: __pyx_n_u_str */ + {__pyx_k_str___locals_genexpr, sizeof(__pyx_k_str___locals_genexpr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_str___locals_genexpr */ + {__pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stringsource */ + {__pyx_k_strip, sizeof(__pyx_k_strip), 0, 1, 1}, /* PyObject cname: __pyx_n_u_strip */ + {__pyx_k_sw, sizeof(__pyx_k_sw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sw */ + {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ + {__pyx_k_threadid, sizeof(__pyx_k_threadid), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadid */ + {__pyx_k_threading_support, sizeof(__pyx_k_threading_support), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threading_support */ + {__pyx_k_threadname, sizeof(__pyx_k_threadname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadname */ + {__pyx_k_throw, sizeof(__pyx_k_throw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_throw */ + {__pyx_k_try_repr, sizeof(__pyx_k_try_repr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_try_repr */ + {__pyx_k_update, sizeof(__pyx_k_update), 0, 1, 1}, /* PyObject cname: __pyx_n_u_update */ + {__pyx_k_use_setstate, sizeof(__pyx_k_use_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_use_setstate */ + {__pyx_k_value, sizeof(__pyx_k_value), 0, 1, 1}, /* PyObject cname: __pyx_n_u_value */ + {__pyx_k_vars, sizeof(__pyx_k_vars), 0, 1, 1}, /* PyObject cname: __pyx_n_u_vars */ + {__pyx_k_vars_2, sizeof(__pyx_k_vars_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_vars_2 */ + {__pyx_k_watermark, sizeof(__pyx_k_watermark), 0, 1, 1}, /* PyObject cname: __pyx_n_u_watermark */ + {__pyx_k_watermark_2, sizeof(__pyx_k_watermark_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_watermark_2 */ + {__pyx_k_with_optional_operators_like, sizeof(__pyx_k_with_optional_operators_like), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_with_optional_operators_like */ + {__pyx_k_wrap, sizeof(__pyx_k_wrap), 0, 1, 1}, /* PyObject cname: __pyx_n_u_wrap */ + {0, 0, 0, 0, 0} +}; +/* InitStrings.proto */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names); -/* #### Code section: utility_code_def ### */ +/* #### Code section: cached_builtins ### */ -/* --- Runtime support code --- */ -/* Refnanny */ -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule(modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, "RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; +static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 153, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; } -#endif +/* #### Code section: cached_constants ### */ -/* PyErrExceptionMatches */ -#if CYTHON_FAST_THREAD_STATE -static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { - Py_ssize_t i, n; - n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 - for (i=0; i__pyx_tuple[0] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_89143876, __pyx_mstate_global->__pyx_int_166332997, __pyx_mstate_global->__pyx_int_82616482); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(1, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); + __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_242287462, __pyx_mstate_global->__pyx_int_124881844, __pyx_mstate_global->__pyx_int_190166812); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(1, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]); + __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_217908684, __pyx_mstate_global->__pyx_int_223119700, __pyx_mstate_global->__pyx_int_28104183); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(1, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[2]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[2]); + __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_149034610, __pyx_mstate_global->__pyx_int_210676054, __pyx_mstate_global->__pyx_int_178834394); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(1, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[3]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[3]); + __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_37183945, __pyx_mstate_global->__pyx_int_4473905, __pyx_mstate_global->__pyx_int_258412278); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(1, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); + __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_21139105, __pyx_mstate_global->__pyx_int_198256870, __pyx_mstate_global->__pyx_int_79429044); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(1, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]); + + /* "hunter/_predicates.pyx":19 + * + * __all__ = ( + * 'And', # <<<<<<<<<<<<<< + * 'From', + * 'Not', +*/ + __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(6, __pyx_mstate_global->__pyx_n_u_And, __pyx_mstate_global->__pyx_n_u_From_2, __pyx_mstate_global->__pyx_n_u_Not, __pyx_mstate_global->__pyx_n_u_Or, __pyx_mstate_global->__pyx_n_u_Query, __pyx_mstate_global->__pyx_n_u_When_2); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 19, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]); + + /* "hunter/_predicates.pyx":28 + * + * cdef tuple ALLOWED_KEYS = ( + * 'function', 'module', 'lineno', 'globals', 'stdlib', 'arg', 'locals', 'kind', 'filename', 'source', # <<<<<<<<<<<<<< + * 'fullsource', 'threadname', 'threadid', 'instruction', 'depth', 'calls', 'builtin', + * ) +*/ + __pyx_mstate_global->__pyx_tuple[7] = PyTuple_Pack(17, __pyx_mstate_global->__pyx_n_u_function, __pyx_mstate_global->__pyx_n_u_module, __pyx_mstate_global->__pyx_n_u_lineno, __pyx_mstate_global->__pyx_n_u_globals, __pyx_mstate_global->__pyx_n_u_stdlib, __pyx_mstate_global->__pyx_n_u_arg, __pyx_mstate_global->__pyx_n_u_locals, __pyx_mstate_global->__pyx_n_u_kind, __pyx_mstate_global->__pyx_n_u_filename, __pyx_mstate_global->__pyx_n_u_source, __pyx_mstate_global->__pyx_n_u_fullsource, __pyx_mstate_global->__pyx_n_u_threadname, __pyx_mstate_global->__pyx_n_u_threadid, __pyx_mstate_global->__pyx_n_u_instruction, __pyx_mstate_global->__pyx_n_u_depth, __pyx_mstate_global->__pyx_n_u_calls, __pyx_mstate_global->__pyx_n_u_builtin); if (unlikely(!__pyx_mstate_global->__pyx_tuple[7])) __PYX_ERR(0, 28, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[7]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[7]); + + /* "hunter/_predicates.pyx":32 + * ) + * cdef tuple ALLOWED_OPERATORS = ( + * 'startswith', 'endswith', 'in', 'contains', 'regex', # <<<<<<<<<<<<<< + * 'sw', 'ew', 'has', 'rx', + * 'gt', 'gte', 'lt', 'lte', +*/ + __pyx_mstate_global->__pyx_tuple[8] = PyTuple_Pack(13, __pyx_mstate_global->__pyx_n_u_startswith, __pyx_mstate_global->__pyx_n_u_endswith, __pyx_mstate_global->__pyx_n_u_in, __pyx_mstate_global->__pyx_n_u_contains, __pyx_mstate_global->__pyx_n_u_regex, __pyx_mstate_global->__pyx_n_u_sw, __pyx_mstate_global->__pyx_n_u_ew, __pyx_mstate_global->__pyx_n_u_has, __pyx_mstate_global->__pyx_n_u_rx, __pyx_mstate_global->__pyx_n_u_gt, __pyx_mstate_global->__pyx_n_u_gte, __pyx_mstate_global->__pyx_n_u_lt, __pyx_mstate_global->__pyx_n_u_lte); if (unlikely(!__pyx_mstate_global->__pyx_tuple[8])) __PYX_ERR(0, 32, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[8]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[8]); + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} +/* #### Code section: init_constants ### */ + +static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_mstate->__pyx_umethod_PyDict_Type_items.type = (PyObject*)&PyDict_Type; + __pyx_mstate->__pyx_umethod_PyDict_Type_items.method_name = &__pyx_mstate->__pyx_n_u_items; + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type; + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop; + __pyx_mstate->__pyx_umethod_PyTuple_Type__index.type = (PyObject*)(&PyTuple_Type); + __pyx_mstate->__pyx_umethod_PyTuple_Type__index.method_name = &__pyx_mstate->__pyx_n_u_index; + if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + __pyx_mstate->__pyx_int_0 = PyLong_FromLong(0); if (unlikely(!__pyx_mstate->__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_10 = PyLong_FromLong(10); if (unlikely(!__pyx_mstate->__pyx_int_10)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_100 = PyLong_FromLong(100); if (unlikely(!__pyx_mstate->__pyx_int_100)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_4473905 = PyLong_FromLong(4473905L); if (unlikely(!__pyx_mstate->__pyx_int_4473905)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_21139105 = PyLong_FromLong(21139105L); if (unlikely(!__pyx_mstate->__pyx_int_21139105)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_28104183 = PyLong_FromLong(28104183L); if (unlikely(!__pyx_mstate->__pyx_int_28104183)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_37183945 = PyLong_FromLong(37183945L); if (unlikely(!__pyx_mstate->__pyx_int_37183945)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_79429044 = PyLong_FromLong(79429044L); if (unlikely(!__pyx_mstate->__pyx_int_79429044)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_82616482 = PyLong_FromLong(82616482L); if (unlikely(!__pyx_mstate->__pyx_int_82616482)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_89143876 = PyLong_FromLong(89143876L); if (unlikely(!__pyx_mstate->__pyx_int_89143876)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_124881844 = PyLong_FromLong(124881844L); if (unlikely(!__pyx_mstate->__pyx_int_124881844)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_149034610 = PyLong_FromLong(149034610L); if (unlikely(!__pyx_mstate->__pyx_int_149034610)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_166332997 = PyLong_FromLong(166332997L); if (unlikely(!__pyx_mstate->__pyx_int_166332997)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_178834394 = PyLong_FromLong(178834394L); if (unlikely(!__pyx_mstate->__pyx_int_178834394)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_190166812 = PyLong_FromLong(190166812L); if (unlikely(!__pyx_mstate->__pyx_int_190166812)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_198256870 = PyLong_FromLong(198256870L); if (unlikely(!__pyx_mstate->__pyx_int_198256870)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_210676054 = PyLong_FromLong(210676054L); if (unlikely(!__pyx_mstate->__pyx_int_210676054)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_217908684 = PyLong_FromLong(217908684L); if (unlikely(!__pyx_mstate->__pyx_int_217908684)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_223119700 = PyLong_FromLong(223119700L); if (unlikely(!__pyx_mstate->__pyx_int_223119700)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_242287462 = PyLong_FromLong(242287462L); if (unlikely(!__pyx_mstate->__pyx_int_242287462)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_258412278 = PyLong_FromLong(258412278L); if (unlikely(!__pyx_mstate->__pyx_int_258412278)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_neg_1 = PyLong_FromLong(-1); if (unlikely(!__pyx_mstate->__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: init_codeobjects ### */ +\ + typedef struct { + unsigned int argcount : 4; + unsigned int num_posonly_args : 1; + unsigned int num_kwonly_args : 1; + unsigned int nlocals : 5; + unsigned int flags : 10; + unsigned int first_line : 10; + unsigned int line_table_length : 14; + } __Pyx_PyCode_New_function_description; +/* NewCodeObj.proto */ +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +); + + +static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { + PyObject* tuple_dedup_map = PyDict_New(); + if (unlikely(!tuple_dedup_map)) return -1; + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 67, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_wrap, __pyx_k_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 65, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_f}; + __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_Pyx_CFunc_6hunter_11_predicate_2, __pyx_k_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 38, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_function, __pyx_k_WE9I, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 39, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_module, __pyx_k_7_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 40, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_lineno, __pyx_k_7_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 41, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_globals, __pyx_k_G5_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 42, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_stdlib, __pyx_k_7_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_arg, __pyx_k_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 44, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_locals, __pyx_k_7_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 45, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_kind, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 46, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_filename, __pyx_k_WE9I, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 47, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_source, __pyx_k_7_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 48, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_fullsource, __pyx_k_we_MQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 49, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_threadname, __pyx_k_we_MQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 50, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_threadid, __pyx_k_WE9I, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 51, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_instruction, __pyx_k_0_u_Oq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 52, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_depth, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 53, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_calls, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 54, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_Event_get_builtin, __pyx_k_G5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 83, 36}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value, __pyx_mstate->__pyx_n_u_name}; + __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_IQ_L_aq_Jm1D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 88, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_t1D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 91, 44}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_G4_F_N_m6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 20, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARKEYWORDS), 106, 623}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_query, __pyx_mstate->__pyx_n_u_query_eq, __pyx_mstate->__pyx_n_u_query_startswith, __pyx_mstate->__pyx_n_u_query_endswith, __pyx_mstate->__pyx_n_u_query_in, __pyx_mstate->__pyx_n_u_query_contains, __pyx_mstate->__pyx_n_u_query_regex, __pyx_mstate->__pyx_n_u_query_lt, __pyx_mstate->__pyx_n_u_query_lte, __pyx_mstate->__pyx_n_u_query_gt, __pyx_mstate->__pyx_n_u_query_gte, __pyx_mstate->__pyx_n_u_key, __pyx_mstate->__pyx_n_u_value, __pyx_mstate->__pyx_n_u_parts, __pyx_mstate->__pyx_n_u_count, __pyx_mstate->__pyx_n_u_prefix, __pyx_mstate->__pyx_n_u_operator, __pyx_mstate->__pyx_n_u_mapping, __pyx_mstate->__pyx_n_u_p}; + __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A0_1_1_1_a_1_A_1_A_E_vQ_ARt5_6_s, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {0, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 202, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_key, __pyx_mstate->__pyx_n_u_value}; + __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_genexpr, __pyx_k__10, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 199, 111}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_mapping, __pyx_mstate->__pyx_n_u_genexpr, __pyx_mstate->__pyx_n_u_genexpr}; + __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_1_Qa_E_F_Q_Q_D_a_D_a_t1_D_T_D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 219, 109}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_fmt, __pyx_mstate->__pyx_n_u_mapping}; + __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_r_E_1_A_A_d_A_d_4q_A_Q_A_Q_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 237, 167}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_Jd_d_D_a_Jd_D_a_M_XV1_Jd_K, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 252, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_avQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 255, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_r, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 258, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_s_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 261, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_s_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 10, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 12, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 13, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 14, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 15, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 17, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 18, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 19, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 436}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_7t_d_UYYeeiittx_y_D_D_H_H_T_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_1F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 264, 463}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[45] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_Query_call, __pyx_k_Yd_M_waq_D_V1_1_Yd_M_waq_F_HM_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[45])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {0, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 322, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_action}; + __pyx_mstate_global->__pyx_codeobj_tab[46] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_genexpr, __pyx_k_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[46])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS), 317, 37}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_condition, __pyx_mstate->__pyx_n_u_actions_2, __pyx_mstate->__pyx_n_u_genexpr, __pyx_mstate->__pyx_n_u_genexpr}; + __pyx_mstate_global->__pyx_codeobj_tab[47] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_4q_1A_M_KuA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[47])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {0, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 328, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_p}; + __pyx_mstate_global->__pyx_codeobj_tab[48] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_genexpr, __pyx_k__10, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[48])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 325, 21}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_genexpr, __pyx_mstate->__pyx_n_u_genexpr}; + __pyx_mstate_global->__pyx_codeobj_tab[49] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_q_U, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[49])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 331, 18}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[50] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_H_LX, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[50])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 334, 44}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[51] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_Kt7_IT_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[51])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 341, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[52] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_QfA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[52])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 344, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[53] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_r, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[53])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 347, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[54] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_s_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[54])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 350, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[55] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_s_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[55])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[56] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[56])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 44, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[57] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[57])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 107}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[58] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_4q_G1F_a_vWA_q_t9G5_4_q_T_G1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[58])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[59] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[59])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 353, 43}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[60] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_When_call, __pyx_k_Yat_q_q_Jd_1_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[60])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 371, 45}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_condition, __pyx_mstate->__pyx_n_u_predicate, __pyx_mstate->__pyx_n_u_watermark}; + __pyx_mstate_global->__pyx_codeobj_tab[61] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_M_M_M_Q_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[61])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 378, 20}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[62] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_q_D_D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[62])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 383, 20}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[63] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_D_D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[63])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 388, 44}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[64] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_Kt7_Kt7, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[64])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 395, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[65] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_QfA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[65])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 398, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[66] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_r, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[66])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 401, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[67] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_s_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[67])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 404, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[68] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_s_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[68])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 50, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[69] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[69])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 51, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[70] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[70])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 52, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[71] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[71])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 53, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[72] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[72])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 54, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[73] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[73])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 121}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[74] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_T_O4_SWWX_G1F_a_vWA_q_t_gU_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[74])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[75] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[75])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 407, 167}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[76] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_From_call, __pyx_k_t_Q_4_1_1_Q_Q_1_e7_D_e7_D_r_Q_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[76])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS), 442, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicates}; + __pyx_mstate_global->__pyx_codeobj_tab[77] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_N, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[77])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {0, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 446, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_p}; + __pyx_mstate_global->__pyx_codeobj_tab[78] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_genexpr, __pyx_k__12, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[78])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 445, 17}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_genexpr, __pyx_mstate->__pyx_n_u_genexpr}; + __pyx_mstate_global->__pyx_codeobj_tab[79] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_z_4uD, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[79])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 448, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[80] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[80])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 451, 29}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[81] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_L_F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[81])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 457, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[82] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_AV1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[82])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 460, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[83] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_r, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[83])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 463, 77}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other, __pyx_mstate->__pyx_n_u_predicates}; + __pyx_mstate_global->__pyx_codeobj_tab[84] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_4q_c_RvU_QgQ_gRvV1_gQa_s_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[84])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 475, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[85] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_s_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[85])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 25, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[86] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[86])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 93}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[87] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_G1F_a_vWA_q_t_wa_q_D_7_D_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[87])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[88] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k__13, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[88])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 478, 34}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[89] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_And_call, __pyx_k_T_4y_A_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[89])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS), 492, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicates}; + __pyx_mstate_global->__pyx_codeobj_tab[90] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_N, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[90])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {0, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 496, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_p}; + __pyx_mstate_global->__pyx_codeobj_tab[91] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_genexpr, __pyx_k_q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[91])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 495, 17}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_genexpr, __pyx_mstate->__pyx_n_u_genexpr}; + __pyx_mstate_global->__pyx_codeobj_tab[92] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_y_e4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[92])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 498, 12}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[93] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[93])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 501, 29}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[94] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_L_E_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[94])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 507, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[95] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_1F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[95])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 510, 79}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other, __pyx_mstate->__pyx_n_u_predicates}; + __pyx_mstate_global->__pyx_codeobj_tab[96] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_4q_c_RuE_4q_s_gRuF_gQa_r_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[96])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 522, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[97] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_s_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[97])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 525, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[98] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_s_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[98])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 31, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[99] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[99])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 93}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[100] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_G1F_a_vWA_q_t_wa_q_4q_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[100])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[101] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[101])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 528, 32}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[102] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_Or_call, __pyx_k_T_9A_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[102])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 540, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicate}; + __pyx_mstate_global->__pyx_codeobj_tab[103] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_M, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[103])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 543, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[104] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_z_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[104])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 546, 14}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[105] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_8_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[105])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 549, 29}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[106] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awa_Kt6_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[106])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 555, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[107] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_AV1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[107])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 558, 61}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[108] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_4q_c_T_QgS_3as_F_F_2QfA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[108])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 564, 61}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[109] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_4q_c_T_QgS_3ar_6_m6_q_3avQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[109])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 570, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[110] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[110])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 37, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[111] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[111])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 93}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[112] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_G1F_a_vWA_q_t_gQ_q_D_7_D_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[112])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[113] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k__13, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[113])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 573, 17}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[114] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_Not_call, __pyx_k_4y, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[114])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 577, 182}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_callable, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[115] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_call, __pyx_k_t1Jc_axz_Qj_1_1E_1_Qj_1_AV_Q_Qj, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[115])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {8, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 598, 148}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_condition, __pyx_mstate->__pyx_n_u_size, __pyx_mstate->__pyx_n_u_stack, __pyx_mstate->__pyx_n_u_vars, __pyx_mstate->__pyx_n_u_strip, __pyx_mstate->__pyx_n_u_action, __pyx_mstate->__pyx_n_u_filter}; + __pyx_mstate_global->__pyx_codeobj_tab[116] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_Ubbc_JfF_j_VW_4z_iq_1_ERt1_M_IU, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[116])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 611, 14}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event}; + __pyx_mstate_global->__pyx_codeobj_tab[117] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[117])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 614, 32}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[118] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_str, __pyx_k_A_q_D_t84wd_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[118])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 619, 32}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[119] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_D_t84wd_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[119])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 624, 89}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[120] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_awiq_4z_d_F_t_V7_d_F_JfA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[120])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 634, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[121] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_or, __pyx_k_A_r, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[121])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 637, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; + __pyx_mstate_global->__pyx_codeobj_tab[122] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_and, __pyx_k_A_s_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[122])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 640, 55}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[123] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_invert, __pyx_k_A_was_4_E_WF_heSWW_eeiirryy, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[123])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS|CO_VARKEYWORDS), 643, 77}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicates, __pyx_mstate->__pyx_n_u_kwargs, __pyx_mstate->__pyx_n_u_merge}; + __pyx_mstate_global->__pyx_codeobj_tab[124] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_filter, __pyx_k_A_1_4y_q_k_wa_WF_he4wgT_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[124])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 60, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[125] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[125])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 61, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[126] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[126])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 62, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[127] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q_3, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[127])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 63, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[128] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_a_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[128])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 64, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[129] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_a_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[129])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 65, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[130] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[130])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 66, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[131] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[131])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 67, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[132] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[132])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 68, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[133] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__11, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[133])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 215}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[134] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_4_4y_L_HTXX__cckkooww_G1F_a_v, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[134])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[135] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_QfA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[135])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 655, 460}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_event, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[136] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__predicates_pyx, __pyx_mstate->__pyx_n_u_fast_Backlog_call, __pyx_k_Yat_q_q_4q_xq_fAQ_Q_gRq_KvS_q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[136])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 86}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[137] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Query, __pyx_k_hk_A_1_g_g_i_i_j_5_7_q_a_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[137])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 338}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[138] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Query__set_state, __pyx_k_Qd_PP_llx_y_D_D_E_E_I_I_U_U_a_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[138])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 79}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[139] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_When, __pyx_k_hk_A_1_A_4xq_7_awnA_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[139])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 62}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[140] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_When__set_state, __pyx_k_at_KqPQ_s_D_q_a_IWA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[140])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 86}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[141] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_From, __pyx_k_hk_A_1_g_g_i_i_j_4xq_7_awnA_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[141])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 161}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[142] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_From__set_state, __pyx_k_9I_TUUYYeeu_v_A_A_B_B_F_F_R_R, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[142])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 75}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[143] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_And, __pyx_k_hk_A_1_uuwwx_3haq_7_QfN_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[143])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[144] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_And__set_state, __pyx_k_k_s_D_q_a_IWA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[144])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 75}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[145] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Or, __pyx_k_hk_A_1_uuwwx_2XQa_7_AU_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[145])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[146] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Or__set_state, __pyx_k_k_s_D_q_a_IWA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[146])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 75}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[147] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Not, __pyx_k_hk_A_1_ttvvw_3haq_7_QfN_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[147])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 51}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[148] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Not__set_state, __pyx_k_s_D_q_a_IWA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[148])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 86}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[149] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Backlog, __pyx_k_hk_A_1_r_r_t_t_u_7_1_7_N_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[149])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 287}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_ALLOWED_KEYS, __pyx_mstate->__pyx_n_u_ALLOWED_OPERATORS, __pyx_mstate->__pyx_n_u_Event_getters}; + __pyx_mstate_global->__pyx_codeobj_tab[150] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Backlog__set_stat, __pyx_k_at_KqPTT_jjuuvvz_G_G_T_T_____d, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[150])) goto bad; + } + Py_DECREF(tuple_dedup_map); + return 0; + bad: + Py_DECREF(tuple_dedup_map); + return -1; +} +/* #### Code section: init_globals ### */ + +static int __Pyx_InitGlobals(void) { + /* PythonCompatibility.init */ + if (likely(__Pyx_init_co_variables() == 0)); else + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + /* CachedMethodType.init */ + #if CYTHON_COMPILING_IN_LIMITED_API +{ + PyObject *typesModule=NULL; + typesModule = PyImport_ImportModule("types"); + if (typesModule) { + __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + } +} // error handling follows +#endif + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: cleanup_globals ### */ +/* #### Code section: cleanup_module ### */ +/* #### Code section: main_method ### */ +/* #### Code section: utility_code_pragmas ### */ +#ifdef _MSC_VER +#pragma warning( push ) +/* Warning 4127: conditional expression is constant + * Cython uses constant conditional expressions to allow in inline functions to be optimized at + * compile-time, so this warning is not useful + */ +#pragma warning( disable : 4127 ) +#endif + + + +/* #### Code section: utility_code_def ### */ + +/* --- Runtime support code --- */ +/* Refnanny */ +#if CYTHON_REFNANNY +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { + PyObject *m = NULL, *p = NULL; + void *r = NULL; + m = PyImport_ImportModule(modname); + if (!m) goto end; + p = PyObject_GetAttrString(m, "RefNannyAPI"); + if (!p) goto end; + r = PyLong_AsVoidPtr(p); +end: + Py_XDECREF(p); + Py_XDECREF(m); + return (__Pyx_RefNannyAPIStruct *)r; +} +#endif + +/* PyErrExceptionMatches */ +#if CYTHON_FAST_THREAD_STATE +static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(tuple); + for (i=0; i= 0x030C00A6 + PyObject *current_exception = tstate->current_exception; + if (unlikely(!current_exception)) return 0; + exc_type = (PyObject*) Py_TYPE(current_exception); + if (exc_type == err) return 1; +#else + exc_type = tstate->curexc_type; + if (exc_type == err) return 1; + if (unlikely(!exc_type)) return 0; +#endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(exc_type); + #endif + if (unlikely(PyTuple_Check(err))) { + result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + } else { + result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(exc_type); + #endif + return result; +} +#endif + +/* PyErrFetchRestore */ +#if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject *tmp_value; + assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); + if (value) { + #if CYTHON_COMPILING_IN_CPYTHON + if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) + #endif + PyException_SetTraceback(value, tb); + } + tmp_value = tstate->current_exception; + tstate->current_exception = value; + Py_XDECREF(tmp_value); + Py_XDECREF(type); + Py_XDECREF(tb); +#else + PyObject *tmp_type, *tmp_value, *tmp_tb; + tmp_type = tstate->curexc_type; + tmp_value = tstate->curexc_value; + tmp_tb = tstate->curexc_traceback; + tstate->curexc_type = type; + tstate->curexc_value = value; + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_type); + Py_XDECREF(tmp_value); + Py_XDECREF(tmp_tb); +#endif +} +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyObject* exc_value; + exc_value = tstate->current_exception; + tstate->current_exception = 0; + *value = exc_value; + *type = NULL; + *tb = NULL; + if (exc_value) { + *type = (PyObject*) Py_TYPE(exc_value); + Py_INCREF(*type); + #if CYTHON_COMPILING_IN_CPYTHON + *tb = ((PyBaseExceptionObject*) exc_value)->traceback; + Py_XINCREF(*tb); + #else + *tb = PyException_GetTraceback(exc_value); + #endif + } +#else + *type = tstate->curexc_type; + *value = tstate->curexc_value; + *tb = tstate->curexc_traceback; + tstate->curexc_type = 0; + tstate->curexc_value = 0; + tstate->curexc_traceback = 0; +#endif +} +#endif + +/* PyObjectGetAttrStr */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_getattro)) + return tp->tp_getattro(obj, attr_name); + return PyObject_GetAttr(obj, attr_name); +} +#endif + +/* PyObjectGetAttrStrNoError */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 +static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) + __Pyx_PyErr_Clear(); +} +#endif +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { + PyObject *result; +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + (void) PyObject_GetOptionalAttr(obj, attr_name, &result); + return result; +#else +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { + return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); + } +#endif + result = __Pyx_PyObject_GetAttrStr(obj, attr_name); + if (unlikely(!result)) { + __Pyx_PyObject_GetAttrStr_ClearAttributeError(); + } + return result; +#endif +} + +/* GetBuiltinName */ +static PyObject *__Pyx_GetBuiltinName(PyObject *name) { + PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_b, name); + if (unlikely(!result) && !PyErr_Occurred()) { + PyErr_Format(PyExc_NameError, + "name '%U' is not defined", name); + } + return result; +} + +/* TupleAndListFromArray */ +#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + Py_ssize_t i; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); + } + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + for (i = 0; i < n; i++) { + if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { + Py_DECREF(res); + return NULL; + } + Py_INCREF(src[i]); + } + return res; +} +#elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { + PyObject *v; + Py_ssize_t i; + for (i = 0; i < length; i++) { + v = dest[i] = src[i]; + Py_INCREF(v); + } +} +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); + } + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item, n); + return res; +} +static CYTHON_INLINE PyObject * +__Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + if (n <= 0) { + return PyList_New(0); + } + res = PyList_New(n); + if (unlikely(res == NULL)) return NULL; + __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item, n); + return res; +} +#endif + +/* BytesEquals */ +static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ + !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) + return PyObject_RichCompareBool(s1, s2, equals); +#else + if (s1 == s2) { + return (equals == Py_EQ); + } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { + const char *ps1, *ps2; + Py_ssize_t length = PyBytes_GET_SIZE(s1); + if (length != PyBytes_GET_SIZE(s2)) + return (equals == Py_NE); + ps1 = PyBytes_AS_STRING(s1); + ps2 = PyBytes_AS_STRING(s2); + if (ps1[0] != ps2[0]) { + return (equals == Py_NE); + } else if (length == 1) { + return (equals == Py_EQ); + } else { + int result; +#if CYTHON_USE_UNICODE_INTERNALS && (PY_VERSION_HEX < 0x030B0000) + Py_hash_t hash1, hash2; + hash1 = ((PyBytesObject*)s1)->ob_shash; + hash2 = ((PyBytesObject*)s2)->ob_shash; + if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { + return (equals == Py_NE); + } +#endif + result = memcmp(ps1, ps2, (size_t)length); + return (equals == Py_EQ) ? (result == 0) : (result != 0); + } + } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { + return (equals == Py_NE); + } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { + return (equals == Py_NE); + } else { + int result; + PyObject* py_result = PyObject_RichCompare(s1, s2, equals); + if (!py_result) + return -1; + result = __Pyx_PyObject_IsTrue(py_result); + Py_DECREF(py_result); + return result; + } +#endif +} + +/* UnicodeEquals */ +static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL + return PyObject_RichCompareBool(s1, s2, equals); +#else + int s1_is_unicode, s2_is_unicode; + if (s1 == s2) { + goto return_eq; + } + s1_is_unicode = PyUnicode_CheckExact(s1); + s2_is_unicode = PyUnicode_CheckExact(s2); + if (s1_is_unicode & s2_is_unicode) { + Py_ssize_t length, length2; + int kind; + void *data1, *data2; + #if !CYTHON_COMPILING_IN_LIMITED_API + if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) + return -1; + #endif + length = __Pyx_PyUnicode_GET_LENGTH(s1); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length < 0)) return -1; + #endif + length2 = __Pyx_PyUnicode_GET_LENGTH(s2); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length2 < 0)) return -1; + #endif + if (length != length2) { + goto return_ne; + } +#if CYTHON_USE_UNICODE_INTERNALS + { + Py_hash_t hash1, hash2; + hash1 = ((PyASCIIObject*)s1)->hash; + hash2 = ((PyASCIIObject*)s2)->hash; + if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { + goto return_ne; + } + } +#endif + kind = __Pyx_PyUnicode_KIND(s1); + if (kind != __Pyx_PyUnicode_KIND(s2)) { + goto return_ne; + } + data1 = __Pyx_PyUnicode_DATA(s1); + data2 = __Pyx_PyUnicode_DATA(s2); + if (__Pyx_PyUnicode_READ(kind, data1, 0) != __Pyx_PyUnicode_READ(kind, data2, 0)) { + goto return_ne; + } else if (length == 1) { + goto return_eq; + } else { + int result = memcmp(data1, data2, (size_t)(length * kind)); + return (equals == Py_EQ) ? (result == 0) : (result != 0); + } + } else if ((s1 == Py_None) & s2_is_unicode) { + goto return_ne; + } else if ((s2 == Py_None) & s1_is_unicode) { + goto return_ne; + } else { + int result; + PyObject* py_result = PyObject_RichCompare(s1, s2, equals); + if (!py_result) + return -1; + result = __Pyx_PyObject_IsTrue(py_result); + Py_DECREF(py_result); + return result; + } +return_eq: + return (equals == Py_EQ); +return_ne: + return (equals == Py_NE); +#endif +} + +/* fastcall */ +#if CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s) +{ + Py_ssize_t i, n = __Pyx_PyTuple_GET_SIZE(kwnames); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(n == -1)) return NULL; + #endif + for (i = 0; i < n; i++) + { + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + if (s == namei) return kwvalues[i]; + } + for (i = 0; i < n; i++) + { + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + int eq = __Pyx_PyUnicode_Equals(s, namei, Py_EQ); + if (unlikely(eq != 0)) { + if (unlikely(eq < 0)) return NULL; + return kwvalues[i]; + } + } + return NULL; +} +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API +CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { + Py_ssize_t i, nkwargs; + PyObject *dict; +#if !CYTHON_ASSUME_SAFE_SIZE + nkwargs = PyTuple_Size(kwnames); + if (unlikely(nkwargs < 0)) return NULL; +#else + nkwargs = PyTuple_GET_SIZE(kwnames); +#endif + dict = PyDict_New(); + if (unlikely(!dict)) + return NULL; + for (i=0; irecursion_depth; + Py_DECREF(f); + --tstate->recursion_depth; + return result; +} +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs) { + PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); + PyObject *globals = PyFunction_GET_GLOBALS(func); + PyObject *argdefs = PyFunction_GET_DEFAULTS(func); + PyObject *closure; + PyObject *kwdefs; + PyObject *kwtuple, **k; + PyObject **d; + Py_ssize_t nd; + Py_ssize_t nk; + PyObject *result; + assert(kwargs == NULL || PyDict_Check(kwargs)); + nk = kwargs ? PyDict_Size(kwargs) : 0; + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; + } + if ( + co->co_kwonlyargcount == 0 && + likely(kwargs == NULL || nk == 0) && + co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { + if (argdefs == NULL && co->co_argcount == nargs) { + result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); + goto done; + } + else if (nargs == 0 && argdefs != NULL + && co->co_argcount == Py_SIZE(argdefs)) { + /* function called with no arguments, but all parameters have + a default value: use default values as arguments .*/ + args = &PyTuple_GET_ITEM(argdefs, 0); + result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); + goto done; + } + } + if (kwargs != NULL) { + Py_ssize_t pos, i; + kwtuple = PyTuple_New(2 * nk); + if (kwtuple == NULL) { + result = NULL; + goto done; + } + k = &PyTuple_GET_ITEM(kwtuple, 0); + pos = i = 0; + while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { + Py_INCREF(k[i]); + Py_INCREF(k[i+1]); + i += 2; + } + nk = i / 2; + } + else { + kwtuple = NULL; + k = NULL; + } + closure = PyFunction_GET_CLOSURE(func); + kwdefs = PyFunction_GET_KW_DEFAULTS(func); + if (argdefs != NULL) { + d = &PyTuple_GET_ITEM(argdefs, 0); + nd = Py_SIZE(argdefs); + } + else { + d = NULL; + nd = 0; + } + result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, kwdefs, closure); + Py_XDECREF(kwtuple); +done: + Py_LeaveRecursiveCall(); + return result; } -static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) { - int result; - PyObject *exc_type; -#if PY_VERSION_HEX >= 0x030C00A6 - PyObject *current_exception = tstate->current_exception; - if (unlikely(!current_exception)) return 0; - exc_type = (PyObject*) Py_TYPE(current_exception); - if (exc_type == err) return 1; -#else - exc_type = tstate->curexc_type; - if (exc_type == err) return 1; - if (unlikely(!exc_type)) return 0; #endif - #if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(exc_type); - #endif - if (unlikely(PyTuple_Check(err))) { - result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - } else { - result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); + +/* PyObjectCall */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { + PyObject *result; + ternaryfunc call = Py_TYPE(func)->tp_call; + if (unlikely(!call)) + return PyObject_Call(func, arg, kw); + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + result = (*call)(func, arg, kw); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); } - #if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(exc_type); - #endif return result; } #endif -/* PyErrFetchRestore */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { -#if PY_VERSION_HEX >= 0x030C00A6 - PyObject *tmp_value; - assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); - if (value) { - #if CYTHON_COMPILING_IN_CPYTHON - if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) - #endif - PyException_SetTraceback(value, tb); +/* PyObjectCallMethO */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { + PyObject *self, *result; + PyCFunction cfunc; + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + result = cfunc(self, arg); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); } - tmp_value = tstate->current_exception; - tstate->current_exception = value; - Py_XDECREF(tmp_value); - Py_XDECREF(type); - Py_XDECREF(tb); -#else - PyObject *tmp_type, *tmp_value, *tmp_tb; - tmp_type = tstate->curexc_type; - tmp_value = tstate->curexc_value; - tmp_tb = tstate->curexc_traceback; - tstate->curexc_type = type; - tstate->curexc_value = value; - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -#endif + return result; } -static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { -#if PY_VERSION_HEX >= 0x030C00A6 - PyObject* exc_value; - exc_value = tstate->current_exception; - tstate->current_exception = 0; - *value = exc_value; - *type = NULL; - *tb = NULL; - if (exc_value) { - *type = (PyObject*) Py_TYPE(exc_value); - Py_INCREF(*type); - #if CYTHON_COMPILING_IN_CPYTHON - *tb = ((PyBaseExceptionObject*) exc_value)->traceback; - Py_XINCREF(*tb); - #else - *tb = PyException_GetTraceback(exc_value); - #endif +#endif + +/* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API +static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs) { + PyObject *argstuple; + PyObject *result = 0; + size_t i; + argstuple = PyTuple_New((Py_ssize_t)nargs); + if (unlikely(!argstuple)) return NULL; + for (i = 0; i < nargs; i++) { + Py_INCREF(args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0)) goto bad; } -#else - *type = tstate->curexc_type; - *value = tstate->curexc_value; - *tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; + result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: + Py_DECREF(argstuple); + return result; +} #endif +#if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + #if PY_VERSION_HEX < 0x03090000 + #define __Pyx_PyVectorcall_Function(callable) _PyVectorcall_Function(callable) + #elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) { + PyTypeObject *tp = Py_TYPE(callable); + #if defined(__Pyx_CyFunction_USED) + if (__Pyx_CyFunction_CheckExact(callable)) { + return __Pyx_CyFunction_func_vectorcall(callable); + } + #endif + if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { + return NULL; + } + assert(PyCallable_Check(callable)); + Py_ssize_t offset = tp->tp_vectorcall_offset; + assert(offset > 0); + vectorcallfunc ptr; + memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); + return ptr; } + #else + #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable) + #endif #endif - -/* PyObjectGetAttrStr */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro)) - return tp->tp_getattro(obj, attr_name); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_getattr)) - return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *const *args, size_t _nargs, PyObject *kwargs) { + Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); +#if CYTHON_COMPILING_IN_CPYTHON + if (nargs == 0 && kwargs == NULL) { + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); + } + else if (nargs == 1 && kwargs == NULL) { + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); + } #endif - return PyObject_GetAttr(obj, attr_name); + #if PY_VERSION_HEX < 0x030800B1 + #if CYTHON_FAST_PYCCALL + if (PyCFunction_Check(func)) { + if (kwargs) { + return _PyCFunction_FastCallDict(func, args, nargs, kwargs); + } else { + return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); + } + } + if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { + return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); + } + #endif + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); + } + #endif + #endif + if (kwargs == NULL) { + #if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + vectorcallfunc f = __Pyx_PyVectorcall_Function(func); + if (f) { + return f(func, args, _nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, _nargs, NULL); + } + #elif CYTHON_COMPILING_IN_LIMITED_API && CYTHON_VECTORCALL + return PyObject_Vectorcall(func, args, _nargs, NULL); + #endif + } + if (nargs == 0) { + return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs); + } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else + return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif +} + +/* UnpackUnboundCMethod */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { + PyObject *result; + PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); + if (unlikely(!selfless_args)) return NULL; + result = PyObject_Call(method, selfless_args, kwargs); + Py_DECREF(selfless_args); + return result; } +#elif CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) { + return _PyObject_Vectorcall + (method, args ? args+1 : NULL, nargs ? nargs-1 : 0, kwnames); +} +#else +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { + return +#if PY_VERSION_HEX < 0x03090000 + _PyObject_Vectorcall +#else + PyObject_Vectorcall #endif - -/* PyObjectGetAttrStrNoError */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 -static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) - __Pyx_PyErr_Clear(); + (method, args ? args+1 : NULL, nargs ? (size_t) nargs-1 : 0, kwnames); } #endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { - PyObject *result; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 - (void) PyObject_GetOptionalAttr(obj, attr_name, &result); - return result; +static PyMethodDef __Pyx_UnboundCMethod_Def = { + "CythonUnboundCMethod", + __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 + METH_VARARGS | METH_KEYWORDS, #else -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { - return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); - } + METH_FASTCALL | METH_KEYWORDS, #endif - result = __Pyx_PyObject_GetAttrStr(obj, attr_name); - if (unlikely(!result)) { - __Pyx_PyObject_GetAttrStr_ClearAttributeError(); - } - return result; + NULL +}; +static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { + PyObject *method, *result=NULL; + method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); + if (unlikely(!method)) + return -1; + result = method; +#if CYTHON_COMPILING_IN_CPYTHON + if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) + { + PyMethodDescrObject *descr = (PyMethodDescrObject*) method; + target->func = descr->d_method->ml_meth; + target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); + } else #endif -} - -/* GetBuiltinName */ -static PyObject *__Pyx_GetBuiltinName(PyObject *name) { - PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_b, name); - if (unlikely(!result) && !PyErr_Occurred()) { - PyErr_Format(PyExc_NameError, -#if PY_MAJOR_VERSION >= 3 - "name '%U' is not defined", name); +#if CYTHON_COMPILING_IN_PYPY +#else + if (PyCFunction_Check(method)) +#endif + { + PyObject *self; + int self_found; +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + self = PyObject_GetAttrString(method, "__self__"); + if (!self) { + PyErr_Clear(); + } #else - "name '%.200s' is not defined", PyString_AS_STRING(name)); + self = PyCFunction_GET_SELF(method); +#endif + self_found = (self && self != Py_None); +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + Py_XDECREF(self); #endif + if (self_found) { + PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); + if (unlikely(!unbound_method)) return -1; + Py_DECREF(method); + result = unbound_method; + } } - return result; +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + if (unlikely(target->method)) { + Py_DECREF(result); + } else +#endif + target->method = result; + return 0; } -/* TupleAndListFromArray */ +/* CallUnboundCMethod2 */ #if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { - PyObject *v; - Py_ssize_t i; - for (i = 0; i < length; i++) { - v = dest[i] = src[i]; - Py_INCREF(v); - } -} -static CYTHON_INLINE PyObject * -__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - if (n <= 0) { - Py_INCREF(__pyx_empty_tuple); - return __pyx_empty_tuple; +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { + PyObject *args[2] = {arg1, arg2}; + if (cfunc->flag == METH_FASTCALL) { + return __Pyx_CallCFunctionFast(cfunc, self, args, 2); + } + if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL); } - res = PyTuple_New(n); - if (unlikely(res == NULL)) return NULL; - __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item, n); - return res; -} -static CYTHON_INLINE PyObject * -__Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - if (n <= 0) { - return PyList_New(0); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 +#endif + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2); } - res = PyList_New(n); - if (unlikely(res == NULL)) return NULL; - __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item, n); - return res; -} #endif - -/* BytesEquals */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API - return PyObject_RichCompareBool(s1, s2, equals); -#else - if (s1 == s2) { - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - const char *ps1, *ps2; - Py_ssize_t length = PyBytes_GET_SIZE(s1); - if (length != PyBytes_GET_SIZE(s2)) - return (equals == Py_NE); - ps1 = PyBytes_AS_STRING(s1); - ps2 = PyBytes_AS_STRING(s2); - if (ps1[0] != ps2[0]) { - return (equals == Py_NE); - } else if (length == 1) { - return (equals == Py_EQ); - } else { - int result; -#if CYTHON_USE_UNICODE_INTERNALS && (PY_VERSION_HEX < 0x030B0000) - Py_hash_t hash1, hash2; - hash1 = ((PyBytesObject*)s1)->ob_shash; - hash2 = ((PyBytesObject*)s2)->ob_shash; - if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { - return (equals == Py_NE); - } + PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; +} #endif - result = memcmp(ps1, ps2, (size_t)length); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ + if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; +#if CYTHON_COMPILING_IN_CPYTHON + if (cfunc->func && (cfunc->flag & METH_VARARGS)) { + PyObject *result = NULL; + PyObject *args = PyTuple_New(2); + if (unlikely(!args)) return NULL; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + if (cfunc->flag & METH_KEYWORDS) + result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); + else + result = __Pyx_CallCFunction(cfunc, self, args); + Py_DECREF(args); return result; } #endif + { + PyObject *args[4] = {NULL, self, arg1, arg2}; + return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + } } -/* UnicodeEquals */ -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API - return PyObject_RichCompareBool(s1, s2, equals); -#else -#if PY_MAJOR_VERSION < 3 - PyObject* owned_ref = NULL; -#endif - int s1_is_unicode, s2_is_unicode; - if (s1 == s2) { - goto return_eq; +/* ParseKeywords */ +static int __Pyx_ValidateDuplicatePosArgs( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char* function_name) +{ + PyObject ** const *name = argnames; + while (name != first_kw_arg) { + PyObject *key = **name; + int found = PyDict_Contains(kwds, key); + if (unlikely(found)) { + if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; + } + name++; } - s1_is_unicode = PyUnicode_CheckExact(s1); - s2_is_unicode = PyUnicode_CheckExact(s2); -#if PY_MAJOR_VERSION < 3 - if ((s1_is_unicode & (!s2_is_unicode)) && PyString_CheckExact(s2)) { - owned_ref = PyUnicode_FromObject(s2); - if (unlikely(!owned_ref)) - return -1; - s2 = owned_ref; - s2_is_unicode = 1; - } else if ((s2_is_unicode & (!s1_is_unicode)) && PyString_CheckExact(s1)) { - owned_ref = PyUnicode_FromObject(s1); - if (unlikely(!owned_ref)) - return -1; - s1 = owned_ref; - s1_is_unicode = 1; - } else if (((!s2_is_unicode) & (!s1_is_unicode))) { - return __Pyx_PyBytes_Equals(s1, s2, equals); + return 0; +bad: + return -1; +} +#if CYTHON_USE_UNICODE_INTERNALS +static CYTHON_INLINE int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) { + int kind; + Py_ssize_t len = PyUnicode_GET_LENGTH(s1); + if (len != PyUnicode_GET_LENGTH(s2)) return 0; + kind = PyUnicode_KIND(s1); + if (kind != PyUnicode_KIND(s2)) return 0; + const void *data1 = PyUnicode_DATA(s1); + const void *data2 = PyUnicode_DATA(s2); + return (memcmp(data1, data2, (size_t) len * (size_t) kind) == 0); +} +#endif +static int __Pyx_MatchKeywordArg_str( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + #if CYTHON_USE_UNICODE_INTERNALS + Py_hash_t key_hash = ((PyASCIIObject*)key)->hash; + if (unlikely(key_hash == -1)) { + key_hash = PyObject_Hash(key); + if (unlikely(key_hash == -1)) + goto bad; } -#endif - if (s1_is_unicode & s2_is_unicode) { - Py_ssize_t length; - int kind; - void *data1, *data2; - if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) - return -1; - length = __Pyx_PyUnicode_GET_LENGTH(s1); - if (length != __Pyx_PyUnicode_GET_LENGTH(s2)) { - goto return_ne; + #endif + name = first_kw_arg; + while (*name) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) { + *index_found = (size_t) (name - argnames); + return 1; } -#if CYTHON_USE_UNICODE_INTERNALS - { - Py_hash_t hash1, hash2; - #if CYTHON_PEP393_ENABLED - hash1 = ((PyASCIIObject*)s1)->hash; - hash2 = ((PyASCIIObject*)s2)->hash; #else - hash1 = ((PyUnicodeObject*)s1)->hash; - hash2 = ((PyUnicodeObject*)s2)->hash; + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) #endif - if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { - goto return_ne; + { + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) { + *index_found = (size_t) (name - argnames); + return 1; } } -#endif - kind = __Pyx_PyUnicode_KIND(s1); - if (kind != __Pyx_PyUnicode_KIND(s2)) { - goto return_ne; + #endif + name++; + } + name = argnames; + while (name != first_kw_arg) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) { + if (__Pyx_UnicodeKeywordsEqual(name_str, key)) + goto arg_passed_twice; } - data1 = __Pyx_PyUnicode_DATA(s1); - data2 = __Pyx_PyUnicode_DATA(s2); - if (__Pyx_PyUnicode_READ(kind, data1, 0) != __Pyx_PyUnicode_READ(kind, data2, 0)) { - goto return_ne; - } else if (length == 1) { - goto return_eq; - } else { - int result = memcmp(data1, data2, (size_t)(length * kind)); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - return (equals == Py_EQ) ? (result == 0) : (result != 0); + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + if (unlikely(name_str == key)) goto arg_passed_twice; + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) goto arg_passed_twice; } - } else if ((s1 == Py_None) & s2_is_unicode) { - goto return_ne; - } else if ((s2 == Py_None) & s1_is_unicode) { - goto return_ne; - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); #endif - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; + name++; } -return_eq: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - return (equals == Py_EQ); -return_ne: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - return (equals == Py_NE); -#endif + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +bad: + return -1; } - -/* fastcall */ -#if CYTHON_METH_FASTCALL -static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s) +static int __Pyx_MatchKeywordArg_nostr( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) { - Py_ssize_t i, n = PyTuple_GET_SIZE(kwnames); - for (i = 0; i < n; i++) - { - if (s == PyTuple_GET_ITEM(kwnames, i)) return kwvalues[i]; - } - for (i = 0; i < n; i++) - { - int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); - if (unlikely(eq != 0)) { - if (unlikely(eq < 0)) return NULL; - return kwvalues[i]; + PyObject ** const *name; + if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; + name = first_kw_arg; + while (*name) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (cmp == 1) { + *index_found = (size_t) (name - argnames); + return 1; + } + if (unlikely(cmp == -1)) goto bad; + name++; + } + name = argnames; + while (name != first_kw_arg) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (unlikely(cmp != 0)) { + if (cmp == 1) goto arg_passed_twice; + else goto bad; } + name++; } - return NULL; + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +invalid_keyword_type: + PyErr_Format(PyExc_TypeError, + "%.200s() keywords must be strings", function_name); + goto bad; +bad: + return -1; } -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 -CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { - Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); - PyObject *dict; - dict = PyDict_New(); - if (unlikely(!dict)) - return NULL; - for (i=0; i= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t extracted = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + name = first_kw_arg; + while (*name && num_kwargs > extracted) { + PyObject * key = **name; + PyObject *value; + int found = 0; + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + found = PyDict_GetItemRef(kwds, key, &value); #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AsString(kw_name)); + value = PyDict_GetItemWithError(kwds, key); + if (value) { + Py_INCREF(value); + found = 1; + } else { + if (unlikely(PyErr_Occurred())) goto bad; + } #endif + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + extracted++; + } + name++; + } + if (num_kwargs > extracted) { + if (ignore_unknown_kwargs) { + if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1)) + goto bad; + } else { + __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name); + goto bad; + } + } + return 0; +bad: + return -1; } - -/* ParseKeywords */ -static int __Pyx_ParseOptionalKeywords( +static int __Pyx_ParseKeywordDictToDict( PyObject *kwds, - PyObject *const *kwvalues, - PyObject **argnames[], + PyObject ** const argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name) { - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - int kwds_is_tuple = CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds)); - while (1) { - Py_XDECREF(key); key = NULL; - Py_XDECREF(value); value = NULL; - if (kwds_is_tuple) { - Py_ssize_t size; -#if CYTHON_ASSUME_SAFE_MACROS - size = PyTuple_GET_SIZE(kwds); + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t len; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + if (PyDict_Update(kwds2, kwds) < 0) goto bad; + name = first_kw_arg; + while (*name) { + PyObject *key = **name; + PyObject *value; +#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop)) + int found = PyDict_Pop(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + } +#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + int found = PyDict_GetItemRef(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + if (unlikely(PyDict_DelItem(kwds2, key) < 0)) goto bad; + } #else - size = PyTuple_Size(kwds); - if (size < 0) goto bad; + #if CYTHON_COMPILING_IN_CPYTHON + value = _PyDict_Pop(kwds2, key, kwds2); + #else + value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2); + #endif + if (value == kwds2) { + Py_DECREF(value); + } else { + if (unlikely(!value)) goto bad; + values[name-argnames] = value; + } #endif - if (pos >= size) break; + name++; + } + len = PyDict_Size(kwds2); + if (len > 0) { + return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name); + } else if (unlikely(len == -1)) { + goto bad; + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordsTuple( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject *key = NULL; + PyObject** const * name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) { #if CYTHON_AVOID_BORROWED_REFS - key = __Pyx_PySequence_ITEM(kwds, pos); - if (!key) goto bad; -#elif CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kwds, pos); + key = __Pyx_PySequence_ITEM(kwds, pos); #else - key = PyTuple_GetItem(kwds, pos); - if (!key) goto bad; + key = __Pyx_PyTuple_GET_ITEM(kwds, pos); #endif - value = kwvalues[pos]; - pos++; - } - else - { - if (!PyDict_Next(kwds, &pos, &key, &value)) break; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); +#if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!key)) goto bad; #endif - } name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(value); - Py_DECREF(key); -#endif - key = NULL; - value = NULL; - continue; - } -#if !CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); -#endif - Py_INCREF(value); - name = first_kw_arg; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_Check(key))) { - while (*name) { - if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) - && _PyString_Eq(**name, key)) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; -#endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - if ((**argname == key) || ( - (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) - && _PyString_Eq(**argname, key))) { - goto arg_passed_twice; - } - argname++; - } - } - } else - #endif - if (likely(PyUnicode_Check(key))) { - while (*name) { - int cmp = ( - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**name, key) - ); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; -#endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - int cmp = (**argname == key) ? 0 : - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**argname, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) goto arg_passed_twice; - argname++; + PyObject *value = kwvalues[pos]; + values[name-argnames] = __Pyx_NewRef(value); + } else { + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp == 1) { + PyObject *value = kwvalues[pos]; + values[index_found] = __Pyx_NewRef(value); + } else { + if (unlikely(cmp == -1)) goto bad; + if (kwds2) { + PyObject *value = kwvalues[pos]; + if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; + } else if (!ignore_unknown_kwargs) { + goto invalid_keyword; } } - } else - goto invalid_keyword_type; - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + key = NULL; + #endif } - Py_XDECREF(key); - Py_XDECREF(value); return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - goto bad; invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else PyErr_Format(PyExc_TypeError, "%s() got an unexpected keyword argument '%U'", function_name, key); - #endif + goto bad; bad: + #if CYTHON_AVOID_BORROWED_REFS Py_XDECREF(key); - Py_XDECREF(value); + #endif return -1; } +static int __Pyx_ParseKeywords( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) + return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); + else if (kwds2) + return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name); + else + return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); +} /* RaiseArgTupleInvalid */ static void __Pyx_RaiseArgtupleInvalid( @@ -34092,137 +35668,244 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam { __Pyx_TypeName type_name; __Pyx_TypeName obj_type_name; + PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; + int from_annotation_subclass = 0; if (unlikely(!type)) { PyErr_SetString(PyExc_SystemError, "Missing type object"); return 0; } - else if (exact) { - #if PY_MAJOR_VERSION == 2 - if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; - #endif - } - else { + else if (!exact) { if (likely(__Pyx_TypeCheck(obj, type))) return 1; + } else if (exact == 2) { + if (__Pyx_TypeCheck(obj, type)) { + from_annotation_subclass = 1; + extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; + } } - type_name = __Pyx_PyType_GetName(type); - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); + type_name = __Pyx_PyType_GetFullyQualifiedName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); PyErr_Format(PyExc_TypeError, "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME - ", got " __Pyx_FMT_TYPENAME ")", name, type_name, obj_type_name); + ", got " __Pyx_FMT_TYPENAME ")" +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + "%s%U" +#endif + , name, type_name, obj_type_name +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + , (from_annotation_subclass ? ". " : ""), extra_info +#endif + ); +#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + if (exact == 2 && from_annotation_subclass) { + PyObject *res; + PyObject *vargs[2]; + vargs[0] = PyErr_GetRaisedException(); + vargs[1] = extra_info; + res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); + Py_XDECREF(res); + PyErr_SetRaisedException(vargs[0]); + } +#endif __Pyx_DECREF_TypeName(type_name); __Pyx_DECREF_TypeName(obj_type_name); return 0; } /* Profile */ -#if CYTHON_PROFILE +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_TRACE && !CYTHON_USE_SYS_MONITORING +static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line) { + int ret; + PyObject *type, *value, *traceback; + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + __Pyx_PyFrame_SetLineNumber(frame, line); + __Pyx_EnterTracing(tstate); + ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); + __Pyx_LeaveTracing(tstate); + if (likely(!ret)) { + __Pyx_ErrRestoreInState(tstate, type, value, traceback); + } else { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + } + return ret; +} +#endif +CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { + PyCodeObject *py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); + if (likely(py_code)) { + py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; + } + return py_code; +} +#if CYTHON_USE_SYS_MONITORING +CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event) { + int ret; + __pyx_monitoring_version_type version = 0; + ret = PyMonitoring_EnterScope(state_array, &version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyFunc_count); + if (unlikely(ret == -1)) return -1; + return skip_event ? 0 : PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyResumeEvent(&state_array[__Pyx_Monitoring_PY_RESUME], code_obj, offset); +} +CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised) { + if (reraised) { + (void) PyMonitoring_FireReraiseEvent(monitoring_state, code_obj, offset); + } else { + (void) PyMonitoring_FireRaiseEvent(monitoring_state, code_obj, offset); + } +} +#if CYTHON_TRACE +CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset) { + int ret; + PyObject *exc = PyErr_GetRaisedException(); + ret = PyMonitoring_FireLineEvent(monitoring_state, code_obj, offset, line); + if (exc) PyErr_SetRaisedException(exc); + return ret; +} +#endif +#else static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, - int firstlineno) { - PyObject *type, *value, *traceback; - int retval; + int firstlineno, + int skip_event) { if (*frame == NULL || !CYTHON_PROFILE_REUSE_FRAME) { - if (*code == NULL) { + int needs_new_code_obj = (*code == NULL); + if (needs_new_code_obj) { *code = __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno); if (*code == NULL) return 0; } *frame = PyFrame_New( tstate, /*PyThreadState *tstate*/ *code, /*PyCodeObject *code*/ - __pyx_d, /*PyObject *globals*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals*/ 0 /*PyObject *locals*/ ); + if (needs_new_code_obj && !CYTHON_PROFILE_REUSE_CODEOBJ) + Py_CLEAR(*code); // otherwise the reference is owned externally if (*frame == NULL) return 0; if (CYTHON_TRACE && (*frame)->f_trace == NULL) { Py_INCREF(Py_None); (*frame)->f_trace = Py_None; } -#if PY_VERSION_HEX < 0x030400B1 - } else { - (*frame)->f_tstate = tstate; -#endif } - __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); - retval = 1; - __Pyx_EnterTracing(tstate); - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - #if CYTHON_TRACE - if (tstate->c_tracefunc) - retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; - if (retval && tstate->c_profilefunc) - #endif - retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; - __Pyx_LeaveTracing(tstate); - if (retval) { + if (!skip_event) { + PyObject *type, *value, *traceback; + int retval = 1; + __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); + __Pyx_EnterTracing(tstate); + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + #if CYTHON_TRACE + if (tstate->c_tracefunc) + retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; + if (retval && tstate->c_profilefunc) + #endif + retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; + __Pyx_LeaveTracing(tstate); + if (unlikely(!retval)) { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + return -1; + } __Pyx_ErrRestoreInState(tstate, type, value, traceback); - return __Pyx_IsTracing(tstate, 0, 0) && retval; - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); + } + return __Pyx_IsTracing(tstate, 0, 0); +} +#endif +#endif + +/* LimitedApiGetTypeDict */ +#if CYTHON_COMPILING_IN_LIMITED_API +static Py_ssize_t __Pyx_GetTypeDictOffset(void) { + PyObject *tp_dictoffset_o; + Py_ssize_t tp_dictoffset; + tp_dictoffset_o = PyObject_GetAttrString((PyObject*)(&PyType_Type), "__dictoffset__"); + if (unlikely(!tp_dictoffset_o)) return -1; + tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o); + Py_DECREF(tp_dictoffset_o); + if (unlikely(tp_dictoffset == 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' doesn't have a dictoffset"); + return -1; + } else if (unlikely(tp_dictoffset < 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' has an unexpected negative dictoffset. " + "Please report this as Cython bug"); return -1; } + return tp_dictoffset; } -static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { - PyCodeObject *py_code = 0; -#if PY_MAJOR_VERSION >= 3 - py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); - if (likely(py_code)) { - py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp) { + static Py_ssize_t tp_dictoffset = 0; + if (unlikely(tp_dictoffset == 0)) { + tp_dictoffset = __Pyx_GetTypeDictOffset(); + if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) { + tp_dictoffset = 0; // try again next time? + return NULL; + } } -#else - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - py_funcname = PyString_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - py_srcfile = PyString_FromString(srcfile); - if (unlikely(!py_srcfile)) goto bad; - py_code = PyCode_New( - 0, - 0, - 0, - CO_OPTIMIZED | CO_NEWLOCALS, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - firstlineno, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); -#endif - return py_code; + return *(PyObject**)((char*)tp + tp_dictoffset); } #endif +/* SetItemOnTypeDict */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; +#else + tp_dict = tp->tp_dict; +#endif + result = PyDict_SetItem(tp_dict, k, v); + if (likely(!result)) { + PyType_Modified(tp); + if (unlikely(PyObject_HasAttr(v, __pyx_mstate_global->__pyx_n_u_set_name))) { + PyObject *setNameResult = PyObject_CallMethodObjArgs(v, __pyx_mstate_global->__pyx_n_u_set_name, (PyObject *) tp, k, NULL); + if (!setNameResult) return -1; + Py_DECREF(setNameResult); + } + } + return result; +} + /* FixUpExtensionType */ -#if CYTHON_USE_TYPE_SPECS static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { -#if PY_VERSION_HEX > 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API +#if __PYX_LIMITED_VERSION_HEX > 0x030900B1 CYTHON_UNUSED_VAR(spec); CYTHON_UNUSED_VAR(type); + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); #else const PyType_Slot *slot = spec->slots; + int changed = 0; +#if !CYTHON_COMPILING_IN_LIMITED_API while (slot && slot->slot && slot->slot != Py_tp_members) slot++; if (slot && slot->slot == Py_tp_members) { - int changed = 0; -#if !(PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON) +#if !CYTHON_COMPILING_IN_CPYTHON const -#endif +#endif // !CYTHON_COMPILING_IN_CPYTHON) PyMemberDef *memb = (PyMemberDef*) slot->pfunc; while (memb && memb->name) { if (memb->name[0] == '_' && memb->name[1] == '_') { -#if PY_VERSION_HEX < 0x030900b1 if (strcmp(memb->name, "__weaklistoffset__") == 0) { assert(memb->type == T_PYSSIZET); assert(memb->flags == READONLY); @@ -34246,11 +35929,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject #endif changed = 1; } -#endif -#else - if ((0)); -#endif -#if PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON +#endif // CYTHON_METH_FASTCALL else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -34258,40 +35937,119 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject descr = PyDescr_NewMember(type, memb); if (unlikely(!descr)) return -1; - if (unlikely(PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr) < 0)) { - Py_DECREF(descr); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { return -1; } - Py_DECREF(descr); changed = 1; } -#endif } - memb++; + memb++; + } + } +#endif // !CYTHON_COMPILING_IN_LIMITED_API + slot = spec->slots; + while (slot && slot->slot && slot->slot != Py_tp_getset) + slot++; + if (slot && slot->slot == Py_tp_getset) { + PyGetSetDef *getset = (PyGetSetDef*) slot->pfunc; + while (getset && getset->name) { + if (getset->name[0] == '_' && getset->name[1] == '_' && strcmp(getset->name, "__module__") == 0) { + PyObject *descr = PyDescr_NewGetSet(type, getset); + if (unlikely(!descr)) + return -1; + #if CYTHON_COMPILING_IN_LIMITED_API + PyObject *pyname = PyUnicode_FromString(getset->name); + if (unlikely(!pyname)) { + Py_DECREF(descr); + return -1; + } + int set_item_result = __Pyx_SetItemOnTypeDict(type, pyname, descr); + Py_DECREF(pyname); + #else + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + #endif + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { + return -1; + } + changed = 1; + } + ++getset; } - if (changed) - PyType_Modified(type); } -#endif + if (changed) + PyType_Modified(type); +#endif // PY_VERSION_HEX > 0x030900B1 return 0; } -#endif /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); + return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); +} + +/* dict_setdefault */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, + int is_safe_type) { + PyObject* value; + CYTHON_MAYBE_UNUSED_VAR(is_safe_type); +#if CYTHON_COMPILING_IN_LIMITED_API + value = PyObject_CallMethod(d, "setdefault", "OO", key, default_value); +#elif PY_VERSION_HEX >= 0x030d0000 + PyDict_SetDefaultRef(d, key, default_value, &value); +#else + value = PyDict_SetDefault(d, key, default_value); + if (unlikely(!value)) return NULL; + Py_INCREF(value); +#endif + return value; } /* FetchCommonType */ +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases); + if (result && metaclass) { + PyObject *old_tp = (PyObject*)Py_TYPE(result); + Py_INCREF((PyObject*)metaclass); +#if __PYX_LIMITED_VERSION_HEX >= 0x03090000 + Py_SET_TYPE(result, metaclass); +#else + result->ob_type = metaclass; +#endif + Py_DECREF(old_tp); + } + return result; +} +#else +#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b) +#endif static int __Pyx_VerifyCachedType(PyObject *cached_type, const char *name, - Py_ssize_t basicsize, Py_ssize_t expected_basicsize) { + Py_ssize_t basicsize; if (!PyType_Check(cached_type)) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s is not a type object", name); return -1; } + if (expected_basicsize == 0) { + return 0; // size is inherited, nothing useful to check + } +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_basicsize; + py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); + if (unlikely(!py_basicsize)) return -1; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = NULL; + if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) return -1; +#else + basicsize = ((PyTypeObject*) cached_type)->tp_basicsize; +#endif if (basicsize != expected_basicsize) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s has the wrong size, try recompiling", @@ -34300,80 +36058,51 @@ static int __Pyx_VerifyCachedType(PyObject *cached_type, } return 0; } -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) { - PyObject* abi_module; - const char* object_name; - PyTypeObject *cached_type = NULL; - abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - object_name = strrchr(type->tp_name, '.'); - object_name = object_name ? object_name+1 : type->tp_name; - cached_type = (PyTypeObject*) PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - if (__Pyx_VerifyCachedType( - (PyObject *)cached_type, - object_name, - cached_type->tp_basicsize, - type->tp_basicsize) < 0) { - goto bad; - } - goto done; - } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); - if (PyType_Ready(type) < 0) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, (PyObject *)type) < 0) - goto bad; - Py_INCREF(type); - cached_type = type; -done: - Py_DECREF(abi_module); - return cached_type; -bad: - Py_XDECREF(cached_type); - cached_type = NULL; - goto done; -} -#else -static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases) { - PyObject *abi_module, *cached_type = NULL; +static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name; + int get_item_ref_result; const char* object_name = strrchr(spec->name, '.'); object_name = object_name ? object_name+1 : spec->name; + py_object_name = PyUnicode_FromString(object_name); + if (!py_object_name) return NULL; abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - cached_type = PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - Py_ssize_t basicsize; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); - if (unlikely(!py_basicsize)) goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad; -#else - basicsize = likely(PyType_Check(cached_type)) ? ((PyTypeObject*) cached_type)->tp_basicsize : -1; -#endif + if (!abi_module) goto done; + abi_module_dict = PyModule_GetDict(abi_module); + if (!abi_module_dict) goto done; + get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type); + if (get_item_ref_result == 1) { if (__Pyx_VerifyCachedType( cached_type, object_name, - basicsize, spec->basicsize) < 0) { goto bad; } goto done; + } else if (unlikely(get_item_ref_result == -1)) { + goto bad; } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); CYTHON_UNUSED_VAR(module); - cached_type = __Pyx_PyType_FromModuleAndSpec(abi_module, spec, bases); + cached_type = __Pyx_PyType_FromMetaclass(metaclass, abi_module, spec, bases); if (unlikely(!cached_type)) goto bad; if (unlikely(__Pyx_fix_up_extension_type_from_spec(spec, (PyTypeObject *) cached_type) < 0)) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, cached_type) < 0) goto bad; + new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type, 1); + if (unlikely(new_cached_type != cached_type)) { + if (unlikely(!new_cached_type)) goto bad; + Py_DECREF(cached_type); + cached_type = new_cached_type; + if (__Pyx_VerifyCachedType( + cached_type, + object_name, + spec->basicsize) < 0) { + goto bad; + } + goto done; + } else { + Py_DECREF(new_cached_type); + } done: - Py_DECREF(abi_module); + Py_XDECREF(abi_module); + Py_DECREF(py_object_name); assert(cached_type == NULL || PyType_Check(cached_type)); return (PyTypeObject *) cached_type; bad: @@ -34381,10 +36110,90 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec cached_type = NULL; goto done; } + +/* CommonTypesMetaclass */ +PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { + return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); +} +static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { + {"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL}, + {0, 0, 0, 0, 0} +}; +static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = { + {Py_tp_getset, (void *)__pyx_CommonTypesMetaclass_getset}, + {0, 0} +}; +static PyType_Spec __pyx_CommonTypesMetaclass_spec = { + __PYX_TYPE_MODULE_PREFIX "_common_types_metatype", + 0, + 0, +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | + Py_TPFLAGS_DISALLOW_INSTANTIATION | +#endif + Py_TPFLAGS_DEFAULT, + __pyx_CommonTypesMetaclass_slots +}; +static int __pyx_CommonTypesMetaclass_init(PyObject *module) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + PyObject *bases = PyTuple_Pack(1, &PyType_Type); + if (unlikely(!bases)) { + return -1; + } + mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases); + if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) { + return -1; + } + return 0; +} + +/* CallTypeTraverse */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg) { + #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 + if (__Pyx_get_runtime_version() < 0x03090000) return 0; + #endif + if (!always_call) { + PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*); + unsigned long flags = PyType_GetFlags(base); + if (flags & Py_TPFLAGS_HEAPTYPE) { + return 0; + } + } + Py_VISIT((PyObject*)Py_TYPE(o)); + return 0; +} +#endif + +/* PyMethodNew */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *result; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + { + PyObject *args[] = {func, self}; + result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL); + } + #else + result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL); + #endif + return result; +} +#else +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + return PyMethod_New(func, self); +} #endif /* PyVectorcallFastCallDict */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { PyObject *res = NULL; @@ -34395,7 +36204,12 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector size_t j; PyObject *key, *value; unsigned long keys_are_strings; + #if !CYTHON_ASSUME_SAFE_SIZE + Py_ssize_t nkw = PyDict_Size(kw); + if (unlikely(nkw == -1)) return NULL; + #else Py_ssize_t nkw = PyDict_GET_SIZE(kw); + #endif newargs = (PyObject **)PyMem_Malloc((nargs + (size_t)nkw) * sizeof(args[0])); if (unlikely(newargs == NULL)) { PyErr_NoMemory(); @@ -34411,10 +36225,19 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector pos = i = 0; keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS; while (PyDict_Next(kw, &pos, &key, &value)) { - keys_are_strings &= Py_TYPE(key)->tp_flags; + keys_are_strings &= + #if CYTHON_COMPILING_IN_LIMITED_API + PyType_GetFlags(Py_TYPE(key)); + #else + Py_TYPE(key)->tp_flags; + #endif Py_INCREF(key); Py_INCREF(value); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0)) goto cleanup; + #else PyTuple_SET_ITEM(kwnames, i, key); + #endif kwvalues[i] = value; i++; } @@ -34432,16 +36255,29 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector } static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { - if (likely(kw == NULL) || PyDict_GET_SIZE(kw) == 0) { + Py_ssize_t kw_size = + likely(kw == NULL) ? + 0 : +#if !CYTHON_ASSUME_SAFE_SIZE + PyDict_Size(kw); +#else + PyDict_GET_SIZE(kw); +#endif + if (kw_size == 0) { return vc(func, args, nargs, NULL); } +#if !CYTHON_ASSUME_SAFE_SIZE + else if (unlikely(kw_size == -1)) { + return NULL; + } +#endif return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw); } #endif /* CythonFunctionShared */ #if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func, void (*cfunc)(void)) { if (__Pyx_CyFunction_Check(func)) { return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; } else if (PyCFunction_Check(func)) { @@ -34449,8 +36285,25 @@ static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) } return 0; } +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) { + int result; + PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func); + if (unlikely(!newFunc)) { + PyErr_Clear(); // It's only an optimization, so don't throw an error + return 0; + } + result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc); + Py_DECREF(newFunc); + return result; + } + return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc); +} #else -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if (PyMethod_Check(func)) { + func = PyMethod_GET_FUNCTION(func); + } return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; } #endif @@ -34466,20 +36319,15 @@ static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* #endif } static PyObject * -__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) +__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); if (unlikely(!op->func_doc)) return NULL; #else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { -#if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#else - op->func_doc = PyString_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#endif if (unlikely(op->func_doc == NULL)) return NULL; } else { @@ -34491,6 +36339,15 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(op->func_doc); return op->func_doc; } +static PyObject * +__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { + PyObject *result; + CYTHON_UNUSED_VAR(closure); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_doc_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -34499,20 +36356,19 @@ __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *cont value = Py_None; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_doc, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_name = PyObject_GetAttrString(op->func, "__name__"); -#elif PY_MAJOR_VERSION >= 3 - op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else - op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); + op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #endif if (unlikely(op->func_name == NULL)) return NULL; @@ -34520,53 +36376,60 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_name); return op->func_name; } +static PyObject * +__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +{ + PyObject *result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_name_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__name__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_name, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * __Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); Py_INCREF(op->func_qualname); - return op->func_qualname; + result = op->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static int __Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__qualname__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_qualname, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_dict_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_dict == NULL)) { op->func_dict = PyDict_New(); if (unlikely(op->func_dict == NULL)) @@ -34575,6 +36438,16 @@ __Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_dict); return op->func_dict; } +static PyObject * +__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +{ + CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_dict_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -34590,7 +36463,9 @@ __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *con return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_dict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * @@ -34651,13 +36526,14 @@ __Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value, void PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__defaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_tuple, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_defaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_tuple; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -34669,6 +36545,15 @@ __Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_defaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -34682,13 +36567,14 @@ __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, voi PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__kwdefaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_kwdefaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_kwdict; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -34700,6 +36586,15 @@ __Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_kwdefaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -34711,13 +36606,14 @@ __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, vo return -1; } Py_XINCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_annotations, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->func_annotations; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { result = PyDict_New(); if (unlikely(!result)) return NULL; @@ -34727,16 +36623,19 @@ __Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { return result; } static PyObject * -__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { - int is_coroutine; +__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; CYTHON_UNUSED_VAR(context); - if (op->func_is_coroutine) { - return __Pyx_NewRef(op->func_is_coroutine); - } - is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; -#if PY_VERSION_HEX >= 0x03050000 + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_annotations_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) { + int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; if (is_coroutine) { - PyObject *module, *fromlist, *marker = __pyx_n_s_is_coroutine; + PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine; fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); @@ -34749,20 +36648,68 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { return NULL; } #endif - module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); + module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; - op->func_is_coroutine = __Pyx_PyObject_GetAttrStr(module, marker); + is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker); Py_DECREF(module); - if (likely(op->func_is_coroutine)) { - return __Pyx_NewRef(op->func_is_coroutine); + if (likely(is_coroutine_value)) { + return is_coroutine_value; } ignore: PyErr_Clear(); } + return __Pyx_PyBool_FromLong(is_coroutine); +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; + CYTHON_UNUSED_VAR(context); + if (op->func_is_coroutine) { + return __Pyx_NewRef(op->func_is_coroutine); + } + result = __Pyx_CyFunction_get_is_coroutine_value(op); + if (unlikely(!result)) + return NULL; + __Pyx_BEGIN_CRITICAL_SECTION(op); + if (op->func_is_coroutine) { + Py_DECREF(result); + result = __Pyx_NewRef(op->func_is_coroutine); + } else { + op->func_is_coroutine = __Pyx_NewRef(result); + } + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static void __Pyx_CyFunction_raise_argument_count_error(__pyx_CyFunctionObject *func, const char* message, Py_ssize_t size) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, message, size); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + name, message, size); +#endif +} +static void __Pyx_CyFunction_raise_type_error(__pyx_CyFunctionObject *func, const char* message) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s", + py_name, message); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s", + name, message); #endif - op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); - return __Pyx_NewRef(op->func_is_coroutine); } #if CYTHON_COMPILING_IN_LIMITED_API static PyObject * @@ -34777,24 +36724,24 @@ __Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *c } #endif static PyGetSetDef __pyx_CyFunction_getsets[] = { - {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, - {(char *) "func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, - {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, - {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, + {"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, + {"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, + {"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, + {"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, #if CYTHON_COMPILING_IN_LIMITED_API {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, #endif @@ -34802,23 +36749,19 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { }; static PyMemberDef __pyx_CyFunction_members[] = { #if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, + {"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, #endif -#if CYTHON_USE_TYPE_SPECS - {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, + {"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL -#if CYTHON_BACKPORT_VECTORCALL - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API + {"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else -#if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, + {"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif -#endif -#endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, + {"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, #endif #endif {0, 0, 0, 0, 0} @@ -34826,19 +36769,19 @@ static PyMemberDef __pyx_CyFunction_members[] = { static PyObject * __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, PyObject *args) { + PyObject *result = NULL; CYTHON_UNUSED_VAR(args); -#if PY_MAJOR_VERSION >= 3 + __Pyx_BEGIN_CRITICAL_SECTION(m); Py_INCREF(m->func_qualname); - return m->func_qualname; -#else - return PyString_FromString(((PyCFunctionObject*)m)->m_ml->ml_name); -#endif + result = m->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) @@ -34880,8 +36823,6 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef * Py_INCREF(op->func_globals); Py_XINCREF(code); op->func_code = code; - op->defaults_pyobjects = 0; - op->defaults_size = 0; op->defaults = NULL; op->defaults_tuple = NULL; op->defaults_kwdict = NULL; @@ -34943,14 +36884,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) Py_CLEAR(m->defaults_kwdict); Py_CLEAR(m->func_annotations); Py_CLEAR(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_XDECREF(pydefaults[i]); - PyObject_Free(m->defaults); - m->defaults = NULL; - } + Py_CLEAR(m->defaults); return 0; } static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m) @@ -34967,6 +36901,10 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) } static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { + { + int e = __Pyx_call_type_traverse((PyObject*)m, 1, visit, arg); + if (e) return e; + } Py_VISIT(m->func_closure); #if CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(m->func); @@ -34974,40 +36912,33 @@ static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, Py_VISIT(((PyCFunctionObject*)m)->m_module); #endif Py_VISIT(m->func_dict); - Py_VISIT(m->func_name); - Py_VISIT(m->func_qualname); + __Pyx_VISIT_CONST(m->func_name); + __Pyx_VISIT_CONST(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); - Py_VISIT(m->func_code); + __Pyx_VISIT_CONST(m->func_code); #if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); #endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_VISIT(pydefaults[i]); - } + Py_VISIT(m->defaults); return 0; } static PyObject* __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) { -#if PY_MAJOR_VERSION >= 3 - return PyUnicode_FromFormat("", + PyObject *repr; + __Pyx_BEGIN_CRITICAL_SECTION(op); + repr = PyUnicode_FromFormat("", op->func_qualname, (void *)op); -#else - return PyString_FromFormat("", - PyString_AsString(op->func_qualname), (void *)op); -#endif + __Pyx_END_CRITICAL_SECTION(); + return repr; } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { #if CYTHON_COMPILING_IN_LIMITED_API PyObject *f = ((__pyx_CyFunctionObject*)func)->func; - PyObject *py_name = NULL; PyCFunction meth; int flags; meth = PyCFunction_GetFunction(f); @@ -35026,10 +36957,10 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*meth)(self, arg); break; case METH_VARARGS | METH_KEYWORDS: - return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); + return (*(PyCFunctionWithKeywords)(void(*)(void))meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -35037,24 +36968,15 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif if (likely(size == 0)) return (*meth)(self, NULL); -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes no arguments", size); return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -35073,18 +36995,9 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes exactly one argument", size); return NULL; } break; @@ -35092,16 +37005,8 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", - py_name); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", - f->m_ml->ml_name); -#endif + __Pyx_CyFunction_raise_type_error( + (__pyx_CyFunctionObject*)func, "takes no keyword arguments"); return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { @@ -35118,10 +37023,10 @@ static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *a static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func; -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc); if (vc) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw); #else (void) &__Pyx_PyVectorcall_FastCallDict; @@ -35133,11 +37038,11 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE argc = PyTuple_GET_SIZE(args); #else argc = PyTuple_Size(args); - if (unlikely(!argc) < 0) return NULL; + if (unlikely(argc < 0)) return NULL; #endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) @@ -35145,14 +37050,9 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P self = PyTuple_GetItem(args, 0); if (unlikely(!self)) { Py_DECREF(new_args); -#if PY_MAJOR_VERSION > 2 PyErr_Format(PyExc_TypeError, "unbound method %.200S() needs an argument", cyfunc->func_qualname); -#else - PyErr_SetString(PyExc_TypeError, - "unbound method needs an argument"); -#endif return NULL; } result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw); @@ -35162,21 +37062,21 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P } return result; } -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames) { int ret = 0; if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) { if (unlikely(nargs < 1)) { - PyErr_Format(PyExc_TypeError, "%.200s() needs an argument", - ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + __Pyx_CyFunction_raise_type_error( + cyfunc, "needs an argument"); return -1; } ret = 1; } - if (unlikely(kwnames) && unlikely(PyTuple_GET_SIZE(kwnames))) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no keyword arguments", ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) { + __Pyx_CyFunction_raise_type_error( + cyfunc, "takes no keyword arguments"); return -1; } return ret; @@ -35184,13 +37084,18 @@ static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionO static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -35198,29 +37103,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 0)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes no arguments", nargs); return NULL; } - return def->ml_meth(self, NULL); + return meth(self, NULL); } static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -35228,29 +37142,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 1)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes exactly one argument", nargs); return NULL; } - return def->ml_meth(self, args[0]); + return meth(self, args[0]); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -35258,17 +37181,21 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; PyTypeObject *cls = (PyTypeObject *) __Pyx_CyFunction_GetClassObj(cyfunc); #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; @@ -35276,6 +37203,12 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -35283,15 +37216,19 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCMethod)(void(*)(void))def->ml_meth)(self, cls, args, (size_t)nargs, kwnames); + return ((__Pyx_PyCMethod)(void(*)(void))meth)(self, cls, args, (size_t)nargs, kwnames); } #endif -#if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_CyFunctionType_slots[] = { {Py_tp_dealloc, (void *)__Pyx_CyFunction_dealloc}, {Py_tp_repr, (void *)__Pyx_CyFunction_repr}, @@ -35311,118 +37248,33 @@ static PyType_Spec __pyx_CyFunctionType_spec = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#if (defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL) +#if CYTHON_METH_FASTCALL +#if defined(Py_TPFLAGS_HAVE_VECTORCALL) + Py_TPFLAGS_HAVE_VECTORCALL | +#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL) _Py_TPFLAGS_HAVE_VECTORCALL | #endif - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - __pyx_CyFunctionType_slots -}; -#else -static PyTypeObject __pyx_CyFunctionType_type = { - PyVarObject_HEAD_INIT(0, 0) - __PYX_TYPE_MODULE_PREFIX "cython_function_or_method", - sizeof(__pyx_CyFunctionObject), - 0, - (destructor) __Pyx_CyFunction_dealloc, -#if !CYTHON_METH_FASTCALL - 0, -#elif CYTHON_BACKPORT_VECTORCALL - (printfunc)offsetof(__pyx_CyFunctionObject, func_vectorcall), -#else - offsetof(PyCFunctionObject, vectorcall), -#endif - 0, - 0, -#if PY_MAJOR_VERSION < 3 - 0, -#else - 0, -#endif - (reprfunc) __Pyx_CyFunction_repr, - 0, - 0, - 0, - 0, - __Pyx_CyFunction_CallAsMethod, - 0, - 0, - 0, - 0, -#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR - Py_TPFLAGS_METHOD_DESCRIPTOR | -#endif -#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL - _Py_TPFLAGS_HAVE_VECTORCALL | +#endif // CYTHON_METH_FASTCALL +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - 0, - (traverseproc) __Pyx_CyFunction_traverse, - (inquiry) __Pyx_CyFunction_clear, - 0, -#if PY_VERSION_HEX < 0x030500A0 - offsetof(__pyx_CyFunctionObject, func_weakreflist), -#else - offsetof(PyCFunctionObject, m_weakreflist), -#endif - 0, - 0, - __pyx_CyFunction_methods, - __pyx_CyFunction_members, - __pyx_CyFunction_getsets, - 0, - 0, - __Pyx_PyMethod_New, - 0, - offsetof(__pyx_CyFunctionObject, func_dict), - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, -#if PY_VERSION_HEX >= 0x030400a1 - 0, -#endif -#if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, -#endif -#if __PYX_NEED_TP_PRINT_SLOT - 0, -#endif -#if PY_VERSION_HEX >= 0x030C0000 - 0, -#endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, -#endif + __pyx_CyFunctionType_slots }; -#endif static int __pyx_CyFunction_init(PyObject *module) { -#if CYTHON_USE_TYPE_SPECS - __pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec(module, &__pyx_CyFunctionType_spec, NULL); -#else - CYTHON_UNUSED_VAR(module); - __pyx_CyFunctionType = __Pyx_FetchCommonType(&__pyx_CyFunctionType_type); -#endif - if (unlikely(__pyx_CyFunctionType == NULL)) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec( + mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL); + if (unlikely(mstate->__pyx_CyFunctionType == NULL)) { return -1; } return 0; } -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *func, size_t size, int pyobjects) { +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) { __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults = PyObject_Malloc(size); + m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL); // _PyObject_New(defaults_type); if (unlikely(!m->defaults)) - return PyErr_NoMemory(); - memset(m->defaults, 0, size); - m->defaults_pyobjects = pyobjects; - m->defaults_size = size; + return NULL; return m->defaults; } static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) { @@ -35445,7 +37297,7 @@ static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, Py static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { PyObject *op = __Pyx_CyFunction_Init( - PyObject_GC_New(__pyx_CyFunctionObject, __pyx_CyFunctionType), + PyObject_GC_New(__pyx_CyFunctionObject, __pyx_mstate_global->__pyx_CyFunctionType), ml, flags, qualname, closure, module, globals, code ); if (likely(op)) { @@ -35454,272 +37306,87 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qual return op; } -/* PyObjectCall */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { - PyObject *result; - ternaryfunc call = Py_TYPE(func)->tp_call; - if (unlikely(!call)) - return PyObject_Call(func, arg, kw); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) - return NULL; - #endif - result = (*call)(func, arg, kw); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); - } - return result; -} -#endif - -/* UnpackUnboundCMethod */ -static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { - PyObject *result; - PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); - if (unlikely(!selfless_args)) return NULL; - result = PyObject_Call(method, selfless_args, kwargs); - Py_DECREF(selfless_args); - return result; -} -static PyMethodDef __Pyx_UnboundCMethod_Def = { - "CythonUnboundCMethod", - __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), - METH_VARARGS | METH_KEYWORDS, - NULL -}; -static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { - PyObject *method; - method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); - if (unlikely(!method)) - return -1; - target->method = method; -#if CYTHON_COMPILING_IN_CPYTHON - #if PY_MAJOR_VERSION >= 3 - if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) - #else - if (likely(!__Pyx_CyOrPyCFunction_Check(method))) - #endif - { - PyMethodDescrObject *descr = (PyMethodDescrObject*) method; - target->func = descr->d_method->ml_meth; - target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); - } else -#endif -#if CYTHON_COMPILING_IN_PYPY -#else - if (PyCFunction_Check(method)) -#endif - { - PyObject *self; - int self_found; -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - self = PyObject_GetAttrString(method, "__self__"); - if (!self) { - PyErr_Clear(); - } -#else - self = PyCFunction_GET_SELF(method); -#endif - self_found = (self && self != Py_None); -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - Py_XDECREF(self); -#endif - if (self_found) { - PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); - if (unlikely(!unbound_method)) return -1; - Py_DECREF(method); - target->method = unbound_method; - } - } - return 0; +/* PyObjectCall2Args */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args[3] = {NULL, arg1, arg2}; + return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); } /* CallUnboundCMethod1 */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg) { - if (likely(cfunc->func)) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { int flag = cfunc->flag; if (flag == METH_O) { - return (*(cfunc->func))(self, arg); - } else if ((PY_VERSION_HEX >= 0x030600B1) && flag == METH_FASTCALL) { - #if PY_VERSION_HEX >= 0x030700A0 - return (*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)cfunc->func)(self, &arg, 1); - #else - return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, &arg, 1, NULL); - #endif - } else if ((PY_VERSION_HEX >= 0x030700A0) && flag == (METH_FASTCALL | METH_KEYWORDS)) { - return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, &arg, 1, NULL); + return __Pyx_CallCFunction(cfunc, self, arg); + } else if (flag == METH_FASTCALL) { + return __Pyx_CallCFunctionFast(cfunc, self, &arg, 1); + } else if (flag == (METH_FASTCALL | METH_KEYWORDS)) { + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, &arg, 1, NULL); } } - return __Pyx__CallUnboundCMethod1(cfunc, self, arg); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 +#endif + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod1(&tmp_cfunc, self, arg); + } +#endif + PyObject* result = __Pyx__CallUnboundCMethod1(cfunc, self, arg); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; } #endif static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg){ - PyObject *args, *result = NULL; + PyObject *result = NULL; if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; #if CYTHON_COMPILING_IN_CPYTHON if (cfunc->func && (cfunc->flag & METH_VARARGS)) { - args = PyTuple_New(1); - if (unlikely(!args)) goto bad; + PyObject *args = PyTuple_New(1); + if (unlikely(!args)) return NULL; Py_INCREF(arg); PyTuple_SET_ITEM(args, 0, arg); if (cfunc->flag & METH_KEYWORDS) - result = (*(PyCFunctionWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, NULL); + result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); else - result = (*cfunc->func)(self, args); - } else { - args = PyTuple_New(2); - if (unlikely(!args)) goto bad; - Py_INCREF(self); - PyTuple_SET_ITEM(args, 0, self); - Py_INCREF(arg); - PyTuple_SET_ITEM(args, 1, arg); - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); - } -#else - args = PyTuple_Pack(2, self, arg); - if (unlikely(!args)) goto bad; - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); -#endif -bad: - Py_XDECREF(args); - return result; -} - -/* KeywordStringCheck */ -static int __Pyx_CheckKeywordStrings( - PyObject *kw, - const char* function_name, - int kw_allowed) -{ - PyObject* key = 0; - Py_ssize_t pos = 0; -#if CYTHON_COMPILING_IN_PYPY - if (!kw_allowed && PyDict_Next(kw, &pos, &key, 0)) - goto invalid_keyword; - return 1; -#else - if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { - Py_ssize_t kwsize; -#if CYTHON_ASSUME_SAFE_MACROS - kwsize = PyTuple_GET_SIZE(kw); -#else - kwsize = PyTuple_Size(kw); - if (kwsize < 0) return 0; -#endif - if (unlikely(kwsize == 0)) - return 1; - if (!kw_allowed) { -#if CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kw, 0); -#else - key = PyTuple_GetItem(kw, pos); - if (!key) return 0; -#endif - goto invalid_keyword; - } -#if PY_VERSION_HEX < 0x03090000 - for (pos = 0; pos < kwsize; pos++) { -#if CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kw, pos); -#else - key = PyTuple_GetItem(kw, pos); - if (!key) return 0; -#endif - if (unlikely(!PyUnicode_Check(key))) - goto invalid_keyword_type; - } -#endif - return 1; - } - while (PyDict_Next(kw, &pos, &key, 0)) { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_Check(key))) - #endif - if (unlikely(!PyUnicode_Check(key))) - goto invalid_keyword_type; - } - if (!kw_allowed && unlikely(key)) - goto invalid_keyword; - return 1; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - return 0; + result = __Pyx_CallCFunction(cfunc, self, args); + Py_DECREF(args); + } else #endif -invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif - return 0; -} - -/* RaiseException */ -#if PY_MAJOR_VERSION < 3 -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - __Pyx_PyThreadState_declare - CYTHON_UNUSED_VAR(cause); - Py_XINCREF(type); - if (!value || value == Py_None) - value = NULL; - else - Py_INCREF(value); - if (!tb || tb == Py_None) - tb = NULL; - else { - Py_INCREF(tb); - if (!PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto raise_error; - } + { + result = __Pyx_PyObject_Call2Args(cfunc->method, self, arg); } - if (PyType_Check(type)) { -#if CYTHON_COMPILING_IN_PYPY - if (!value) { - Py_INCREF(Py_None); - value = Py_None; - } -#endif - PyErr_NormalizeException(&type, &value, &tb); + return result; +} + +/* RejectKeywords */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds) { + PyObject *key = NULL; + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) { + key = __Pyx_PySequence_ITEM(kwds, 0); } else { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto raise_error; - } - value = type; - type = (PyObject*) Py_TYPE(type); - Py_INCREF(type); - if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto raise_error; - } + Py_ssize_t pos = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return; +#endif + PyDict_Next(kwds, &pos, &key, NULL); + Py_INCREF(key); + } + if (likely(key)) { + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + Py_DECREF(key); } - __Pyx_PyThreadState_assign - __Pyx_ErrRestore(type, value, tb); - return; -raise_error: - Py_XDECREF(value); - Py_XDECREF(type); - Py_XDECREF(tb); - return; } -#else + +/* RaiseException */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { PyObject* owned_instance = NULL; if (tb == Py_None) { @@ -35768,305 +37435,121 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject owned_instance = PyObject_Call(type, args, NULL); Py_DECREF(args); if (!owned_instance) - goto bad; - value = owned_instance; - if (!PyExceptionInstance_Check(value)) { - PyErr_Format(PyExc_TypeError, - "calling %R should have returned an instance of " - "BaseException, not %R", - type, Py_TYPE(value)); - goto bad; - } - } - } else { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto bad; - } - if (cause) { - PyObject *fixed_cause; - if (cause == Py_None) { - fixed_cause = NULL; - } else if (PyExceptionClass_Check(cause)) { - fixed_cause = PyObject_CallObject(cause, NULL); - if (fixed_cause == NULL) - goto bad; - } else if (PyExceptionInstance_Check(cause)) { - fixed_cause = cause; - Py_INCREF(fixed_cause); - } else { - PyErr_SetString(PyExc_TypeError, - "exception causes must derive from " - "BaseException"); - goto bad; - } - PyException_SetCause(value, fixed_cause); - } - PyErr_SetObject(type, value); - if (tb) { - #if PY_VERSION_HEX >= 0x030C00A6 - PyException_SetTraceback(value, tb); - #elif CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* tmp_tb = tstate->curexc_traceback; - if (tb != tmp_tb) { - Py_INCREF(tb); - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_tb); - } -#else - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); - Py_INCREF(tb); - PyErr_Restore(tmp_type, tmp_value, tb); - Py_XDECREF(tmp_tb); -#endif - } -bad: - Py_XDECREF(owned_instance); - return; -} -#endif - -/* IterFinish */ -static CYTHON_INLINE int __Pyx_IterFinish(void) { - PyObject* exc_type; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - exc_type = __Pyx_PyErr_CurrentExceptionType(); - if (unlikely(exc_type)) { - if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) - return -1; - __Pyx_PyErr_Clear(); - return 0; - } - return 0; -} - -/* PyFunctionFastCall */ -#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL -static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, - PyObject *globals) { - PyFrameObject *f; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject **fastlocals; - Py_ssize_t i; - PyObject *result; - assert(globals != NULL); - /* XXX Perhaps we should create a specialized - PyFrame_New() that doesn't take locals, but does - take builtins without sanity checking them. - */ - assert(tstate != NULL); - f = PyFrame_New(tstate, co, globals, NULL); - if (f == NULL) { - return NULL; - } - fastlocals = __Pyx_PyFrame_GetLocalsplus(f); - for (i = 0; i < na; i++) { - Py_INCREF(*args); - fastlocals[i] = *args++; - } - result = PyEval_EvalFrameEx(f,0); - ++tstate->recursion_depth; - Py_DECREF(f); - --tstate->recursion_depth; - return result; -} -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { - PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); - PyObject *globals = PyFunction_GET_GLOBALS(func); - PyObject *argdefs = PyFunction_GET_DEFAULTS(func); - PyObject *closure; -#if PY_MAJOR_VERSION >= 3 - PyObject *kwdefs; -#endif - PyObject *kwtuple, **k; - PyObject **d; - Py_ssize_t nd; - Py_ssize_t nk; - PyObject *result; - assert(kwargs == NULL || PyDict_Check(kwargs)); - nk = kwargs ? PyDict_Size(kwargs) : 0; - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { - return NULL; - } - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { - return NULL; - } - #endif - if ( -#if PY_MAJOR_VERSION >= 3 - co->co_kwonlyargcount == 0 && -#endif - likely(kwargs == NULL || nk == 0) && - co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { - if (argdefs == NULL && co->co_argcount == nargs) { - result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); - goto done; - } - else if (nargs == 0 && argdefs != NULL - && co->co_argcount == Py_SIZE(argdefs)) { - /* function called with no arguments, but all parameters have - a default value: use default values as arguments .*/ - args = &PyTuple_GET_ITEM(argdefs, 0); - result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); - goto done; - } - } - if (kwargs != NULL) { - Py_ssize_t pos, i; - kwtuple = PyTuple_New(2 * nk); - if (kwtuple == NULL) { - result = NULL; - goto done; - } - k = &PyTuple_GET_ITEM(kwtuple, 0); - pos = i = 0; - while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { - Py_INCREF(k[i]); - Py_INCREF(k[i+1]); - i += 2; - } - nk = i / 2; - } - else { - kwtuple = NULL; - k = NULL; - } - closure = PyFunction_GET_CLOSURE(func); -#if PY_MAJOR_VERSION >= 3 - kwdefs = PyFunction_GET_KW_DEFAULTS(func); -#endif - if (argdefs != NULL) { - d = &PyTuple_GET_ITEM(argdefs, 0); - nd = Py_SIZE(argdefs); - } - else { - d = NULL; - nd = 0; - } -#if PY_MAJOR_VERSION >= 3 - result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, kwdefs, closure); -#else - result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, closure); -#endif - Py_XDECREF(kwtuple); -done: - Py_LeaveRecursiveCall(); - return result; -} -#endif - -/* PyObjectCallMethO */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { - PyObject *self, *result; - PyCFunction cfunc; - cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); - self = __Pyx_CyOrPyCFunction_GET_SELF(func); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) - return NULL; - #endif - result = cfunc(self, arg); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); - } - return result; -} -#endif - -/* PyObjectFastCall */ -#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API -static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { - PyObject *argstuple; - PyObject *result = 0; - size_t i; - argstuple = PyTuple_New((Py_ssize_t)nargs); - if (unlikely(!argstuple)) return NULL; - for (i = 0; i < nargs; i++) { - Py_INCREF(args[i]); - if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; - } - result = __Pyx_PyObject_Call(func, argstuple, kwargs); - bad: - Py_DECREF(argstuple); - return result; -} -#endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { - Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); -#if CYTHON_COMPILING_IN_CPYTHON - if (nargs == 0 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) - return __Pyx_PyObject_CallMethO(func, NULL); - } - else if (nargs == 1 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) - return __Pyx_PyObject_CallMethO(func, args[0]); + goto bad; + value = owned_instance; + if (!PyExceptionInstance_Check(value)) { + PyErr_Format(PyExc_TypeError, + "calling %R should have returned an instance of " + "BaseException, not %R", + type, Py_TYPE(value)); + goto bad; + } + } + } else { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto bad; } -#endif - #if PY_VERSION_HEX < 0x030800B1 - #if CYTHON_FAST_PYCCALL - if (PyCFunction_Check(func)) { - if (kwargs) { - return _PyCFunction_FastCallDict(func, args, nargs, kwargs); + if (cause) { + PyObject *fixed_cause; + if (cause == Py_None) { + fixed_cause = NULL; + } else if (PyExceptionClass_Check(cause)) { + fixed_cause = PyObject_CallObject(cause, NULL); + if (fixed_cause == NULL) + goto bad; + } else if (PyExceptionInstance_Check(cause)) { + fixed_cause = cause; + Py_INCREF(fixed_cause); } else { - return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); + PyErr_SetString(PyExc_TypeError, + "exception causes must derive from " + "BaseException"); + goto bad; } + PyException_SetCause(value, fixed_cause); } - #if PY_VERSION_HEX >= 0x030700A1 - if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { - return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); - } - #endif - #endif - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(func)) { - return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); + PyErr_SetObject(type, value); + if (tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyException_SetTraceback(value, tb); +#elif CYTHON_FAST_THREAD_STATE + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject* tmp_tb = tstate->curexc_traceback; + if (tb != tmp_tb) { + Py_INCREF(tb); + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_tb); + } +#else + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); + Py_INCREF(tb); + PyErr_Restore(tmp_type, tmp_value, tb); + Py_XDECREF(tmp_tb); +#endif } - #endif - #endif - if (kwargs == NULL) { - #if CYTHON_VECTORCALL - #if PY_VERSION_HEX < 0x03090000 - vectorcallfunc f = _PyVectorcall_Function(func); +bad: + Py_XDECREF(owned_instance); + return; +} + +/* KeywordStringCheck */ +static int __Pyx_CheckKeywordStrings( + const char* function_name, + PyObject *kw) +{ +#if CYTHON_COMPILING_IN_PYPY && !defined(PyArg_ValidateKeywordArguments) + CYTHON_UNUSED_VAR(function_name); + CYTHON_UNUSED_VAR(kw); + return 0; +#else + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { +#if PY_VERSION_HEX >= 0x03090000 + CYTHON_UNUSED_VAR(function_name); +#else + Py_ssize_t kwsize; + #if CYTHON_ASSUME_SAFE_SIZE + kwsize = PyTuple_GET_SIZE(kw); #else - vectorcallfunc f = PyVectorcall_Function(func); + kwsize = PyTuple_Size(kw); + if (unlikely(kwsize < 0)) return -1; #endif - if (f) { - return f(func, args, (size_t)nargs, NULL); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, NULL); + for (Py_ssize_t pos = 0; pos < kwsize; pos++) { + PyObject* key = NULL; + #if CYTHON_ASSUME_SAFE_MACROS + key = PyTuple_GET_ITEM(kw, pos); + #else + key = PyTuple_GetItem(kw, pos); + if (unlikely(!key)) return -1; + #endif + if (unlikely(!PyUnicode_Check(key))) { + PyErr_Format(PyExc_TypeError, + "%.200s() keywords must be strings", function_name); + return -1; + } } - #endif +#endif + } else { + if (unlikely(!PyArg_ValidateKeywordArguments(kw))) return -1; } - if (nargs == 0) { - return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); + return 0; +#endif +} + +/* IterFinish */ +static CYTHON_INLINE int __Pyx_IterFinish(void) { + PyObject* exc_type; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + exc_type = __Pyx_PyErr_CurrentExceptionType(); + if (unlikely(exc_type)) { + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) + return -1; + __Pyx_PyErr_Clear(); + return 0; } - #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API - return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); - #else - return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); - #endif + return 0; } /* PyObjectCallNoArg */ @@ -36104,18 +37587,12 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me Py_INCREF(descr); #if defined(Py_TPFLAGS_METHOD_DESCRIPTOR) && Py_TPFLAGS_METHOD_DESCRIPTOR if (__Pyx_PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_METHOD_DESCRIPTOR)) -#elif PY_MAJOR_VERSION >= 3 +#else #ifdef __Pyx_CyFunction_USED if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr))) #else if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type))) #endif -#else - #ifdef __Pyx_CyFunction_USED - if (likely(PyFunction_Check(descr) || __Pyx_CyFunction_Check(descr))) - #else - if (likely(PyFunction_Check(descr))) - #endif #endif { meth_found = 1; @@ -36153,15 +37630,10 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me *method = descr; return 0; } - type_name = __Pyx_PyType_GetName(tp); + type_name = __Pyx_PyType_GetFullyQualifiedName(tp); PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", type_name, name); -#else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(name)); -#endif __Pyx_DECREF_TypeName(type_name); return 0; #else @@ -36230,20 +37702,45 @@ static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) { if (t == Py_None) { __Pyx_RaiseNoneNotIterableError(); - } else if (PyTuple_GET_SIZE(t) < index) { - __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(t)); } else { - __Pyx_RaiseTooManyValuesError(index); + Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(t); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(size < 0)) return; + #endif + if (size < index) { + __Pyx_RaiseNeedMoreValuesError(size); + } else { + __Pyx_RaiseTooManyValuesError(index); + } } } /* UnpackTuple2 */ +static CYTHON_INLINE int __Pyx_unpack_tuple2( + PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple) { + if (likely(is_tuple || PyTuple_Check(tuple))) { + Py_ssize_t size; + if (has_known_size) { + return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); + } + size = __Pyx_PyTuple_GET_SIZE(tuple); + if (likely(size == 2)) { + return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); + } + if (size >= 0) { + __Pyx_UnpackTupleError(tuple, 2); + } + return -1; + } else { + return __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple); + } +} static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, int decref_tuple) { PyObject *value1 = NULL, *value2 = NULL; -#if CYTHON_COMPILING_IN_PYPY - value1 = PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; - value2 = PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS + value1 = __Pyx_PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; + value2 = __Pyx_PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; #else value1 = PyTuple_GET_ITEM(tuple, 0); Py_INCREF(value1); value2 = PyTuple_GET_ITEM(tuple, 1); Py_INCREF(value2); @@ -36254,7 +37751,7 @@ static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( *pvalue1 = value1; *pvalue2 = value2; return 0; -#if CYTHON_COMPILING_IN_PYPY +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS bad: Py_XDECREF(value1); Py_XDECREF(value2); @@ -36290,7 +37787,7 @@ static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyOb } /* dict_iter */ -#if CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_PYPY #include #endif static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, @@ -36302,7 +37799,7 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_di *p_orig_length = PyDict_Size(iterable); Py_INCREF(iterable); return iterable; -#elif PY_MAJOR_VERSION >= 3 +#else static PyObject *py_items = NULL, *py_keys = NULL, *py_values = NULL; PyObject **pp = NULL; if (method_name) { @@ -36337,53 +37834,102 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_di } return PyObject_GetIter(iterable); } -static CYTHON_INLINE int __Pyx_dict_iter_next( - PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, - PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { - PyObject* next_item; #if !CYTHON_COMPILING_IN_PYPY - if (source_is_dict) { - PyObject *key, *value; - if (unlikely(orig_length != PyDict_Size(iter_obj))) { - PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); +static CYTHON_INLINE int __Pyx_dict_iter_next_source_is_dict( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem) { + PyObject *key, *value; + if (unlikely(orig_length != PyDict_Size(iter_obj))) { + PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); + return -1; + } + if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { + return 0; + } + if (pitem) { + PyObject* tuple = PyTuple_New(2); + if (unlikely(!tuple)) { return -1; } - if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { - return 0; + Py_INCREF(key); + Py_INCREF(value); + #if CYTHON_ASSUME_SAFE_MACROS + PyTuple_SET_ITEM(tuple, 0, key); + PyTuple_SET_ITEM(tuple, 1, value); + #else + if (unlikely(PyTuple_SetItem(tuple, 0, key) < 0)) { + Py_DECREF(value); + Py_DECREF(tuple); + return -1; } - if (pitem) { - PyObject* tuple = PyTuple_New(2); - if (unlikely(!tuple)) { - return -1; - } + if (unlikely(PyTuple_SetItem(tuple, 1, value) < 0)) { + Py_DECREF(tuple); + return -1; + } + #endif + *pitem = tuple; + } else { + if (pkey) { Py_INCREF(key); + *pkey = key; + } + if (pvalue) { Py_INCREF(value); - PyTuple_SET_ITEM(tuple, 0, key); - PyTuple_SET_ITEM(tuple, 1, value); - *pitem = tuple; - } else { - if (pkey) { - Py_INCREF(key); - *pkey = key; - } - if (pvalue) { - Py_INCREF(value); - *pvalue = value; - } + *pvalue = value; } - return 1; + } + return 1; +} +#endif +static CYTHON_INLINE int __Pyx_dict_iter_next( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { + PyObject* next_item; +#if !CYTHON_COMPILING_IN_PYPY + if (source_is_dict) { + int result; +#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(iter_obj); +#endif + result = __Pyx_dict_iter_next_source_is_dict(iter_obj, orig_length, ppos, pkey, pvalue, pitem); +#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); +#endif + return result; } else if (PyTuple_CheckExact(iter_obj)) { Py_ssize_t pos = *ppos; - if (unlikely(pos >= PyTuple_GET_SIZE(iter_obj))) return 0; + Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(iter_obj); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(tuple_size < 0)) return -1; + #endif + if (unlikely(pos >= tuple_size)) return 0; *ppos = pos + 1; + #if CYTHON_ASSUME_SAFE_MACROS next_item = PyTuple_GET_ITEM(iter_obj, pos); + #else + next_item = PyTuple_GetItem(iter_obj, pos); + if (unlikely(!next_item)) return -1; + #endif Py_INCREF(next_item); } else if (PyList_CheckExact(iter_obj)) { Py_ssize_t pos = *ppos; - if (unlikely(pos >= PyList_GET_SIZE(iter_obj))) return 0; + Py_ssize_t list_size = __Pyx_PyList_GET_SIZE(iter_obj); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(list_size < 0)) return -1; + #endif + if (unlikely(pos >= list_size)) return 0; *ppos = pos + 1; + #if CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + next_item = PyList_GetItemRef(iter_obj, pos); + if (unlikely(!next_item)) return -1; + #elif CYTHON_ASSUME_SAFE_MACROS next_item = PyList_GET_ITEM(iter_obj, pos); Py_INCREF(next_item); + #else + next_item = PyList_GetItem(iter_obj, pos); + if (unlikely(!next_item)) return -1; + Py_INCREF(next_item); + #endif } else #endif { @@ -36405,17 +37951,23 @@ static CYTHON_INLINE int __Pyx_dict_iter_next( return 1; } +/* PyObjectFastCallMethod */ +#if !CYTHON_VECTORCALL || PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf) { + PyObject *result; + PyObject *attr = PyObject_GetAttr(args[0], name); + if (unlikely(!attr)) + return NULL; + result = __Pyx_PyObject_FastCall(attr, args+1, nargsf - 1); + Py_DECREF(attr); + return result; +} +#endif + /* PyObjectFormatAndDecref */ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { if (unlikely(!s)) return NULL; if (likely(PyUnicode_CheckExact(s))) return s; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_CheckExact(s))) { - PyObject *result = PyUnicode_FromEncodedObject(s, NULL, "strict"); - Py_DECREF(s); - return result; - } - #endif return __Pyx_PyObject_FormatAndDecref(s, f); } static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { @@ -36427,49 +37979,48 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObj } /* JoinPyUnicode */ -static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_count, Py_ssize_t result_ulength, +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, Py_UCS4 max_char) { #if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS PyObject *result_uval; int result_ukind, kind_shift; Py_ssize_t i, char_pos; void *result_udata; - CYTHON_MAYBE_UNUSED_VAR(max_char); -#if CYTHON_PEP393_ENABLED + if (max_char > 1114111) max_char = 1114111; result_uval = PyUnicode_New(result_ulength, max_char); if (unlikely(!result_uval)) return NULL; result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND; kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1; result_udata = PyUnicode_DATA(result_uval); -#else - result_uval = PyUnicode_FromUnicode(NULL, result_ulength); - if (unlikely(!result_uval)) return NULL; - result_ukind = sizeof(Py_UNICODE); - kind_shift = (result_ukind == 4) ? 2 : result_ukind - 1; - result_udata = PyUnicode_AS_UNICODE(result_uval); -#endif assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0); + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - result_ulength < 0)) + goto overflow; char_pos = 0; for (i=0; i < value_count; i++) { int ukind; Py_ssize_t ulength; void *udata; - PyObject *uval = PyTuple_GET_ITEM(value_tuple, i); - if (unlikely(__Pyx_PyUnicode_READY(uval))) + PyObject *uval = values[i]; + #if !CYTHON_COMPILING_IN_LIMITED_API + if (__Pyx_PyUnicode_READY(uval) == (-1)) goto bad; + #endif ulength = __Pyx_PyUnicode_GET_LENGTH(uval); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(ulength < 0)) goto bad; + #endif if (unlikely(!ulength)) continue; if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos)) goto overflow; ukind = __Pyx_PyUnicode_KIND(uval); udata = __Pyx_PyUnicode_DATA(uval); - if (!CYTHON_PEP393_ENABLED || ukind == result_ukind) { + if (ukind == result_ukind) { memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); } else { #if PY_VERSION_HEX >= 0x030d0000 if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; - #elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030300F0 || defined(_PyUnicode_FastCopyCharacters) + #elif CYTHON_COMPILING_IN_CPYTHON || defined(_PyUnicode_FastCopyCharacters) _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); #else Py_ssize_t j; @@ -36488,10 +38039,20 @@ static PyObject* __Pyx_PyUnicode_Join(PyObject* value_tuple, Py_ssize_t value_co Py_DECREF(result_uval); return NULL; #else + Py_ssize_t i; + PyObject *result = NULL; + PyObject *value_tuple = PyTuple_New(value_count); + if (unlikely(!value_tuple)) return NULL; CYTHON_UNUSED_VAR(max_char); CYTHON_UNUSED_VAR(result_ulength); - CYTHON_UNUSED_VAR(value_count); - return PyUnicode_Join(__pyx_empty_unicode, value_tuple); + for (i=0; i__pyx_empty_unicode, value_tuple); +bad: + Py_DECREF(value_tuple); + return result; #endif } @@ -36529,33 +38090,26 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) #endif { PyObject *result; -#if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 - result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } else if (unlikely(PyErr_Occurred())) { - return NULL; - } -#elif CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API if (unlikely(!__pyx_m)) { + if (!PyErr_Occurred()) + PyErr_SetNone(PyExc_NameError); return NULL; } result = PyObject_GetAttr(__pyx_m, name); if (likely(result)) { return result; } -#else - result = PyDict_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + PyErr_Clear(); +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { - return __Pyx_NewRef(result); + return result; } -#endif #else - result = PyObject_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { return __Pyx_NewRef(result); } @@ -36565,39 +38119,58 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) } /* CallUnboundCMethod0 */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { + if (likely(cfunc->flag == METH_NOARGS)) + return __Pyx_CallCFunction(cfunc, self, NULL); + if (likely(cfunc->flag == METH_FASTCALL)) + return __Pyx_CallCFunctionFast(cfunc, self, NULL, 0); + if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, NULL, 0, NULL); + if (likely(cfunc->flag == (METH_VARARGS | METH_KEYWORDS))) + return __Pyx_CallCFunctionWithKeywords(cfunc, self, __pyx_mstate_global->__pyx_empty_tuple, NULL); + if (cfunc->flag == METH_VARARGS) + return __Pyx_CallCFunction(cfunc, self, __pyx_mstate_global->__pyx_empty_tuple); + return __Pyx__CallUnboundCMethod0(cfunc, self); + } +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 +#endif + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod0(&tmp_cfunc, self); + } +#endif + PyObject *result = __Pyx__CallUnboundCMethod0(cfunc, self); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; +} +#endif static PyObject* __Pyx__CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self) { - PyObject *args, *result = NULL; + PyObject *result; if (unlikely(!cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; -#if CYTHON_ASSUME_SAFE_MACROS - args = PyTuple_New(1); - if (unlikely(!args)) goto bad; - Py_INCREF(self); - PyTuple_SET_ITEM(args, 0, self); -#else - args = PyTuple_Pack(1, self); - if (unlikely(!args)) goto bad; -#endif - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); - Py_DECREF(args); -bad: + result = __Pyx_PyObject_CallOneArg(cfunc->method, self); return result; } /* py_dict_items */ static CYTHON_INLINE PyObject* __Pyx_PyDict_Items(PyObject* d) { - if (PY_MAJOR_VERSION >= 3) - return __Pyx_CallUnboundCMethod0(&__pyx_umethod_PyDict_Type_items, d); - else - return PyDict_Items(d); + return __Pyx_CallUnboundCMethod0(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_items, d); } /* RaiseUnboundLocalError */ -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) { +static void __Pyx_RaiseUnboundLocalError(const char *varname) { PyErr_Format(PyExc_UnboundLocalError, "local variable '%s' referenced before assignment", varname); } /* RaiseClosureNameError */ -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname) { +static void __Pyx_RaiseClosureNameError(const char *varname) { PyErr_Format(PyExc_NameError, "free variable '%s' referenced before assignment in enclosing scope", varname); } @@ -36611,14 +38184,9 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) PyObject *local_type = NULL, *local_value, *local_tb = NULL; #if CYTHON_FAST_THREAD_STATE PyObject *tmp_type, *tmp_value, *tmp_tb; - #if PY_VERSION_HEX >= 0x030C00A6 + #if PY_VERSION_HEX >= 0x030C0000 local_value = tstate->current_exception; tstate->current_exception = 0; - if (likely(local_value)) { - local_type = (PyObject*) Py_TYPE(local_value); - Py_INCREF(local_type); - local_tb = PyException_GetTraceback(local_value); - } #else local_type = tstate->curexc_type; local_value = tstate->curexc_value; @@ -36627,24 +38195,30 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) tstate->curexc_value = 0; tstate->curexc_traceback = 0; #endif +#elif __PYX_LIMITED_VERSION_HEX > 0x030C0000 + local_value = PyErr_GetRaisedException(); #else PyErr_Fetch(&local_type, &local_value, &local_tb); #endif +#if __PYX_LIMITED_VERSION_HEX > 0x030C0000 + if (likely(local_value)) { + local_type = (PyObject*) Py_TYPE(local_value); + Py_INCREF(local_type); + local_tb = PyException_GetTraceback(local_value); + } +#else PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE && PY_VERSION_HEX >= 0x030C00A6 - if (unlikely(tstate->current_exception)) -#elif CYTHON_FAST_THREAD_STATE +#if CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) #endif goto bad; - #if PY_MAJOR_VERSION >= 3 if (local_tb) { if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) goto bad; } - #endif +#endif // __PYX_LIMITED_VERSION_HEX > 0x030C0000 Py_XINCREF(local_tb); Py_XINCREF(local_type); Py_XINCREF(local_value); @@ -36682,10 +38256,16 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + PyErr_SetHandledException(local_value); + Py_XDECREF(local_value); + Py_XDECREF(local_type); + Py_XDECREF(local_tb); #else PyErr_SetExcInfo(local_type, local_value, local_tb); #endif return 0; +#if __PYX_LIMITED_VERSION_HEX <= 0x030C0000 bad: *type = 0; *value = 0; @@ -36694,86 +38274,41 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) Py_XDECREF(local_value); Py_XDECREF(local_tb); return -1; +#endif } /* pep479 */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { - PyObject *exc, *val, *tb, *cur_exc; + PyObject *exc, *val, *tb, *cur_exc, *new_exc; __Pyx_PyThreadState_declare - #ifdef __Pyx_StopAsyncIteration_USED int is_async_stopiteration = 0; - #endif CYTHON_MAYBE_UNUSED_VAR(in_async_gen); - cur_exc = PyErr_Occurred(); + __Pyx_PyThreadState_assign + cur_exc = __Pyx_PyErr_CurrentExceptionType(); if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) { - #ifdef __Pyx_StopAsyncIteration_USED - if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, __Pyx_PyExc_StopAsyncIteration))) { + if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) { is_async_stopiteration = 1; - } else - #endif + } else { return; + } } - __Pyx_PyThreadState_assign __Pyx_GetException(&exc, &val, &tb); Py_XDECREF(exc); - Py_XDECREF(val); Py_XDECREF(tb); - PyErr_SetString(PyExc_RuntimeError, - #ifdef __Pyx_StopAsyncIteration_USED + new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s", is_async_stopiteration ? "async generator raised StopAsyncIteration" : in_async_gen ? "async generator raised StopIteration" : - #endif "generator raised StopIteration"); -} - -/* PyObjectCall2Args */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { - PyObject *args[3] = {NULL, arg1, arg2}; - return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* PyObjectCallMethod1 */ -#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2) -static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { - PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); - Py_DECREF(method); - return result; -} -#endif -static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { -#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C00A2 - PyObject *args[2] = {obj, arg}; - (void) __Pyx_PyObject_GetMethod; - (void) __Pyx_PyObject_CallOneArg; - (void) __Pyx_PyObject_Call2Args; - return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); -#else - PyObject *method = NULL, *result; - int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); - if (likely(is_method)) { - result = __Pyx_PyObject_Call2Args(method, obj, arg); - Py_DECREF(method); - return result; + if (!new_exc) { + Py_XDECREF(val); + return; } - if (unlikely(!method)) return NULL; - return __Pyx__PyObject_CallMethod1(method, arg); -#endif -} - -/* StringJoin */ -static CYTHON_INLINE PyObject* __Pyx_PyBytes_Join(PyObject* sep, PyObject* values) { - (void) __Pyx_PyObject_CallMethod1; -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION < 3 - return _PyString_Join(sep, values); -#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 - return _PyBytes_Join(sep, values); -#else - return __Pyx_PyObject_CallMethod1(sep, __pyx_n_s_join, values); -#endif + PyException_SetCause(new_exc, val); // steals ref to val + PyErr_SetObject(PyExc_RuntimeError, new_exc); } /* GetAttr3 */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 static PyObject *__Pyx_GetAttr3Default(PyObject *d) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -36786,12 +38321,12 @@ static PyObject *__Pyx_GetAttr3Default(PyObject *d) { #endif static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { PyObject *r; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 int res = PyObject_GetOptionalAttr(o, n, &r); return (res != 0) ? r : __Pyx_NewRef(d); #else #if CYTHON_USE_TYPE_SLOTS - if (likely(PyString_Check(n))) { + if (likely(PyUnicode_Check(n))) { r = __Pyx_PyObject_GetAttrStrNoError(o, n); if (unlikely(!r) && likely(!PyErr_Occurred())) { r = __Pyx_NewRef(d); @@ -36808,99 +38343,27 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj) { - __Pyx_TypeName obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); + __Pyx_TypeName obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); PyErr_Format(PyExc_TypeError, "Expected %s, got " __Pyx_FMT_TYPENAME, expected, obj_type_name); __Pyx_DECREF_TypeName(obj_type_name); return 0; } -/* bytes_tailmatch */ -static int __Pyx_PyBytes_SingleTailmatch(PyObject* self, PyObject* arg, - Py_ssize_t start, Py_ssize_t end, int direction) { - const char* self_ptr = PyBytes_AS_STRING(self); - Py_ssize_t self_len = PyBytes_GET_SIZE(self); - const char* sub_ptr; - Py_ssize_t sub_len; - int retval; - Py_buffer view; - view.obj = NULL; - if ( PyBytes_Check(arg) ) { - sub_ptr = PyBytes_AS_STRING(arg); - sub_len = PyBytes_GET_SIZE(arg); - } -#if PY_MAJOR_VERSION < 3 - else if ( PyUnicode_Check(arg) ) { - return (int) PyUnicode_Tailmatch(self, arg, start, end, direction); - } -#endif - else { - if (unlikely(PyObject_GetBuffer(self, &view, PyBUF_SIMPLE) == -1)) - return -1; - sub_ptr = (const char*) view.buf; - sub_len = view.len; - } - if (end > self_len) - end = self_len; - else if (end < 0) - end += self_len; - if (end < 0) - end = 0; - if (start < 0) - start += self_len; - if (start < 0) - start = 0; - if (direction > 0) { - if (end-sub_len > start) - start = end - sub_len; - } - if (start + sub_len <= end) - retval = !memcmp(self_ptr+start, sub_ptr, (size_t)sub_len); - else - retval = 0; - if (view.obj) - PyBuffer_Release(&view); - return retval; -} -static int __Pyx_PyBytes_TailmatchTuple(PyObject* self, PyObject* substrings, - Py_ssize_t start, Py_ssize_t end, int direction) { - Py_ssize_t i, count = PyTuple_GET_SIZE(substrings); - for (i = 0; i < count; i++) { - int result; -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - result = __Pyx_PyBytes_SingleTailmatch(self, PyTuple_GET_ITEM(substrings, i), - start, end, direction); -#else - PyObject* sub = PySequence_ITEM(substrings, i); - if (unlikely(!sub)) return -1; - result = __Pyx_PyBytes_SingleTailmatch(self, sub, start, end, direction); - Py_DECREF(sub); -#endif - if (result) { - return result; - } - } - return 0; -} -static int __Pyx_PyBytes_Tailmatch(PyObject* self, PyObject* substr, - Py_ssize_t start, Py_ssize_t end, int direction) { - if (unlikely(PyTuple_Check(substr))) { - return __Pyx_PyBytes_TailmatchTuple(self, substr, start, end, direction); - } - return __Pyx_PyBytes_SingleTailmatch(self, substr, start, end, direction); -} - /* unicode_tailmatch */ static int __Pyx_PyUnicode_TailmatchTuple(PyObject* s, PyObject* substrings, Py_ssize_t start, Py_ssize_t end, int direction) { - Py_ssize_t i, count = PyTuple_GET_SIZE(substrings); + Py_ssize_t i, count = __Pyx_PyTuple_GET_SIZE(substrings); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(count < 0)) return -1; + #endif for (i = 0; i < count; i++) { Py_ssize_t result; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS result = PyUnicode_Tailmatch(s, PyTuple_GET_ITEM(substrings, i), start, end, direction); #else - PyObject* sub = PySequence_ITEM(substrings, i); + PyObject* sub = __Pyx_PySequence_ITEM(substrings, i); if (unlikely(!sub)) return -1; result = PyUnicode_Tailmatch(s, sub, start, end, direction); Py_DECREF(sub); @@ -36919,15 +38382,271 @@ static int __Pyx_PyUnicode_Tailmatch(PyObject* s, PyObject* substr, return (int) PyUnicode_Tailmatch(s, substr, start, end, direction); } -/* str_tailmatch */ -static CYTHON_INLINE int __Pyx_PyStr_Tailmatch(PyObject* self, PyObject* arg, Py_ssize_t start, - Py_ssize_t end, int direction) -{ - if (PY_MAJOR_VERSION < 3) - return __Pyx_PyBytes_Tailmatch(self, arg, start, end, direction); - else - return __Pyx_PyUnicode_Tailmatch(self, arg, start, end, direction); +/* CIntToDigits */ +static const char DIGIT_PAIRS_10[2*10*10+1] = { + "00010203040506070809" + "10111213141516171819" + "20212223242526272829" + "30313233343536373839" + "40414243444546474849" + "50515253545556575859" + "60616263646566676869" + "70717273747576777879" + "80818283848586878889" + "90919293949596979899" +}; +static const char DIGIT_PAIRS_8[2*8*8+1] = { + "0001020304050607" + "1011121314151617" + "2021222324252627" + "3031323334353637" + "4041424344454647" + "5051525354555657" + "6061626364656667" + "7071727374757677" +}; +static const char DIGITS_HEX[2*16+1] = { + "0123456789abcdef" + "0123456789ABCDEF" +}; + +/* BuildPyUnicode */ +static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, const char* chars, int clength, + int prepend_sign, char padding_char) { + PyObject *uval; + Py_ssize_t uoffset = ulength - clength; +#if CYTHON_USE_UNICODE_INTERNALS + Py_ssize_t i; + void *udata; + uval = PyUnicode_New(ulength, 127); + if (unlikely(!uval)) return NULL; + udata = PyUnicode_DATA(uval); + if (uoffset > 0) { + i = 0; + if (prepend_sign) { + __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, 0, '-'); + i++; + } + for (; i < uoffset; i++) { + __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, i, padding_char); + } + } + for (i=0; i < clength; i++) { + __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, uoffset+i, chars[i]); + } +#else + { + PyObject *sign = NULL, *padding = NULL; + uval = NULL; + if (uoffset > 0) { + prepend_sign = !!prepend_sign; + if (uoffset > prepend_sign) { + padding = PyUnicode_FromOrdinal(padding_char); + if (likely(padding) && uoffset > prepend_sign + 1) { + PyObject *tmp = PySequence_Repeat(padding, uoffset - prepend_sign); + Py_DECREF(padding); + padding = tmp; + } + if (unlikely(!padding)) goto done_or_error; + } + if (prepend_sign) { + sign = PyUnicode_FromOrdinal('-'); + if (unlikely(!sign)) goto done_or_error; + } + } + uval = PyUnicode_DecodeASCII(chars, clength, NULL); + if (likely(uval) && padding) { + PyObject *tmp = PyUnicode_Concat(padding, uval); + Py_DECREF(uval); + uval = tmp; + } + if (likely(uval) && sign) { + PyObject *tmp = PyUnicode_Concat(sign, uval); + Py_DECREF(uval); + uval = tmp; + } +done_or_error: + Py_XDECREF(padding); + Py_XDECREF(sign); + } +#endif + return uval; +} + +/* COrdinalToPyUnicode */ +static CYTHON_INLINE int __Pyx_CheckUnicodeValue(int value) { + return value <= 1114111; +} +static PyObject* __Pyx_PyUnicode_FromOrdinal_Padded(int value, Py_ssize_t ulength, char padding_char) { + if (likely(ulength <= 250)) { + char chars[256]; + if (value <= 255) { + memset(chars, padding_char, (size_t) (ulength - 1)); + chars[ulength-1] = (char) value; + return PyUnicode_DecodeLatin1(chars, ulength, NULL); + } + char *cpos = chars + sizeof(chars); + if (value < 0x800) { + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0xc0 | (value & 0x1f)); + } else if (value < 0x10000) { + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0xe0 | (value & 0x0f)); + } else { + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0xf0 | (value & 0x07)); + } + cpos -= ulength; + memset(cpos, padding_char, (size_t) (ulength - 1)); + return PyUnicode_DecodeUTF8(cpos, chars + sizeof(chars) - cpos, NULL); + } + if (value <= 127 && CYTHON_USE_UNICODE_INTERNALS) { + const char chars[1] = {(char) value}; + return __Pyx_PyUnicode_BuildFromAscii(ulength, chars, 1, 0, padding_char); + } + { + PyObject *uchar, *padding_uchar, *padding, *result; + padding_uchar = PyUnicode_FromOrdinal(padding_char); + if (unlikely(!padding_uchar)) return NULL; + padding = PySequence_Repeat(padding_uchar, ulength - 1); + Py_DECREF(padding_uchar); + if (unlikely(!padding)) return NULL; + uchar = PyUnicode_FromOrdinal(value); + if (unlikely(!uchar)) { + Py_DECREF(padding); + return NULL; + } + result = PyUnicode_Concat(padding, uchar); + Py_DECREF(padding); + Py_DECREF(uchar); + return result; + } +} + +/* CIntToPyUnicode */ +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_int(int value, Py_ssize_t width, char padding_char, char format_char) { + char digits[sizeof(int)*3+2]; + char *dpos, *end = digits + sizeof(int)*3+2; + const char *hex_digits = DIGITS_HEX; + Py_ssize_t length, ulength; + int prepend_sign, last_one_off; + int remaining; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wconversion" +#endif + const int neg_one = (int) -1, const_zero = (int) 0; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic pop +#endif + const int is_unsigned = neg_one > const_zero; + if (format_char == 'c') { + if (unlikely(!(is_unsigned || value == 0 || value > 0) || + !(sizeof(value) <= 2 || value & ~ (int) 0x01fffff || __Pyx_CheckUnicodeValue((int) value)))) { + PyErr_SetString(PyExc_OverflowError, "%c arg not in range(0x110000)"); + return NULL; + } + if (width <= 1) { + return PyUnicode_FromOrdinal((int) value); + } + return __Pyx_PyUnicode_FromOrdinal_Padded((int) value, width, padding_char); + } + if (format_char == 'X') { + hex_digits += 16; + format_char = 'x'; + } + remaining = value; + last_one_off = 0; + dpos = end; + do { + int digit_pos; + switch (format_char) { + case 'o': + digit_pos = abs((int)(remaining % (8*8))); + remaining = (int) (remaining / (8*8)); + dpos -= 2; + memcpy(dpos, DIGIT_PAIRS_8 + digit_pos * 2, 2); + last_one_off = (digit_pos < 8); + break; + case 'd': + digit_pos = abs((int)(remaining % (10*10))); + remaining = (int) (remaining / (10*10)); + dpos -= 2; + memcpy(dpos, DIGIT_PAIRS_10 + digit_pos * 2, 2); + last_one_off = (digit_pos < 10); + break; + case 'x': + *(--dpos) = hex_digits[abs((int)(remaining % 16))]; + remaining = (int) (remaining / 16); + break; + default: + assert(0); + break; + } + } while (unlikely(remaining != 0)); + assert(!last_one_off || *dpos == '0'); + dpos += last_one_off; + length = end - dpos; + ulength = length; + prepend_sign = 0; + if (!is_unsigned && value <= neg_one) { + if (padding_char == ' ' || width <= length + 1) { + *(--dpos) = '-'; + ++length; + } else { + prepend_sign = 1; + } + ++ulength; + } + if (width > ulength) { + ulength = width; + } + if (ulength == 1) { + return PyUnicode_FromOrdinal(*dpos); + } + return __Pyx_PyUnicode_BuildFromAscii(ulength, dpos, (int) length, prepend_sign, padding_char); +} + +/* PyObjectVectorCallKwBuilder */ +#if CYTHON_VECTORCALL +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_PyObject_FastCallDict; + if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; + Py_INCREF(key); + args[n] = value; + return 0; +} +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_VectorcallBuilder_AddArgStr; + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); +} +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + PyObject *pyKey = PyUnicode_FromString(key); + if (!pyKey) return -1; + return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); +} +#else // CYTHON_VECTORCALL +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return PyDict_SetItem(builder, key, value); } +#endif /* ExtTypeTest */ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { @@ -36939,8 +38658,8 @@ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { } if (likely(__Pyx_TypeCheck(obj, type))) return 1; - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); - type_name = __Pyx_PyType_GetName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + type_name = __Pyx_PyType_GetFullyQualifiedName(type); PyErr_Format(PyExc_TypeError, "Cannot convert " __Pyx_FMT_TYPENAME " to " __Pyx_FMT_TYPENAME, obj_type_name, type_name); @@ -36954,56 +38673,29 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { PyObject *module = 0; PyObject *empty_dict = 0; PyObject *empty_list = 0; - #if PY_MAJOR_VERSION < 3 - PyObject *py_import; - py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); - if (unlikely(!py_import)) - goto bad; - if (!from_list) { - empty_list = PyList_New(0); - if (unlikely(!empty_list)) - goto bad; - from_list = empty_list; - } - #endif empty_dict = PyDict_New(); if (unlikely(!empty_dict)) goto bad; - { - #if PY_MAJOR_VERSION >= 3 - if (level == -1) { - if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - #endif - if (!module) { - #if PY_MAJOR_VERSION < 3 - PyObject *py_level = PyInt_FromLong(level); - if (unlikely(!py_level)) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); - Py_DECREF(py_level); - #else + if (level == -1) { + const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); + if (package_sep != (0)) { module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, level); - #endif + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); + if (unlikely(!module)) { + if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) + goto bad; + PyErr_Clear(); + } } + level = 0; + } + if (!module) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); } bad: Py_XDECREF(empty_dict); Py_XDECREF(empty_list); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_import); - #endif return module; } @@ -37020,11 +38712,12 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { if (unlikely(!module_name_str)) { goto modbad; } module_name = PyUnicode_FromString(module_name_str); if (unlikely(!module_name)) { goto modbad; } - module_dot = PyUnicode_Concat(module_name, __pyx_kp_u__6); + module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__2); if (unlikely(!module_dot)) { goto modbad; } full_name = PyUnicode_Concat(module_dot, name); if (unlikely(!full_name)) { goto modbad; } - #if PY_VERSION_HEX < 0x030700A1 || (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) + #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ + CYTHON_COMPILING_IN_GRAAL { PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) @@ -37040,12 +38733,7 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { Py_XDECREF(module_name); } if (unlikely(!value)) { - PyErr_Format(PyExc_ImportError, - #if PY_MAJOR_VERSION < 3 - "cannot import name %.230s", PyString_AS_STRING(name)); - #else - "cannot import name %S", name); - #endif + PyErr_Format(PyExc_ImportError, "cannot import name %S", name); } return value; } @@ -37061,7 +38749,7 @@ static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, CYTHON_NCP_UNUSED int wraparound, CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS && !CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS Py_ssize_t wrapped_i = i; if (wraparound & unlikely(i < 0)) { wrapped_i += PyList_GET_SIZE(o); @@ -37071,7 +38759,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_ Py_INCREF(r); return r; } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); + return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); #else return PySequence_GetItem(o, i); #endif @@ -37079,7 +38767,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, CYTHON_NCP_UNUSED int wraparound, CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS Py_ssize_t wrapped_i = i; if (wraparound & unlikely(i < 0)) { wrapped_i += PyTuple_GET_SIZE(o); @@ -37089,7 +38777,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize Py_INCREF(r); return r; } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); + return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); #else return PySequence_GetItem(o, i); #endif @@ -37097,13 +38785,11 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, CYTHON_NCP_UNUSED int wraparound, CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS if (is_list || PyList_CheckExact(o)) { Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o); if ((!boundscheck) || (likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o))))) { - PyObject *r = PyList_GET_ITEM(o, n); - Py_INCREF(r); - return r; + return __Pyx_PyList_GetItemRef(o, n); } } else if (PyTuple_CheckExact(o)) { @@ -37117,7 +38803,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, PyMappingMethods *mm = Py_TYPE(o)->tp_as_mapping; PySequenceMethods *sm = Py_TYPE(o)->tp_as_sequence; if (mm && mm->mp_subscript) { - PyObject *r, *key = PyInt_FromSsize_t(i); + PyObject *r, *key = PyLong_FromSsize_t(i); if (unlikely(!key)) return NULL; r = mm->mp_subscript(o, key); Py_DECREF(key); @@ -37142,7 +38828,35 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, return PySequence_GetItem(o, i); } #endif - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); + return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); +} + +/* PyObjectCallMethod1 */ +#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000) +static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { + PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); + Py_DECREF(method); + return result; +} +#endif +static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { +#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + PyObject *args[2] = {obj, arg}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_Call2Args; + return PyObject_VectorcallMethod(method_name, args, 2 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else + PyObject *method = NULL, *result; + int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); + if (likely(is_method)) { + result = __Pyx_PyObject_Call2Args(method, obj, arg); + Py_DECREF(method); + return result; + } + if (unlikely(!method)) return NULL; + return __Pyx__PyObject_CallMethod1(method, arg); +#endif } /* append */ @@ -37150,7 +38864,7 @@ static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x) { if (likely(PyList_CheckExact(L))) { if (unlikely(__Pyx_PyList_Append(L, x) < 0)) return -1; } else { - PyObject* retval = __Pyx_PyObject_CallMethod1(L, __pyx_n_s_append, x); + PyObject* retval = __Pyx_PyObject_CallMethod1(L, __pyx_mstate_global->__pyx_n_u_append, x); if (unlikely(!retval)) return -1; Py_DECREF(retval); @@ -37158,32 +38872,18 @@ static CYTHON_INLINE int __Pyx_PyObject_Append(PyObject* L, PyObject* x) { return 0; } -/* GetAttr */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { -#if CYTHON_USE_TYPE_SLOTS -#if PY_MAJOR_VERSION >= 3 - if (likely(PyUnicode_Check(n))) -#else - if (likely(PyString_Check(n))) -#endif - return __Pyx_PyObject_GetAttrStr(o, n); -#endif - return PyObject_GetAttr(o, n); -} - /* HasAttr */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { PyObject *r; - if (unlikely(!__Pyx_PyBaseString_Check(n))) { + if (unlikely(!PyUnicode_Check(n))) { PyErr_SetString(PyExc_TypeError, "hasattr(): attribute name must be string"); return -1; } - r = __Pyx_GetAttr(o, n); + r = __Pyx_PyObject_GetAttrStrNoError(o, n); if (!r) { - PyErr_Clear(); - return 0; + return (unlikely(PyErr_Occurred())) ? -1 : 0; } else { Py_DECREF(r); return 1; @@ -37195,14 +38895,15 @@ static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { Py_ssize_t i, n; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE n = PyTuple_GET_SIZE(bases); #else n = PyTuple_Size(bases); - if (n < 0) return -1; + if (unlikely(n < 0)) return -1; #endif for (i = 1; i < n; i++) { + PyTypeObject *b; #if CYTHON_AVOID_BORROWED_REFS PyObject *b0 = PySequence_GetItem(bases, i); if (!b0) return -1; @@ -37211,23 +38912,11 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #else PyObject *b0 = PyTuple_GetItem(bases, i); if (!b0) return -1; -#endif - PyTypeObject *b; -#if PY_MAJOR_VERSION < 3 - if (PyClass_Check(b0)) - { - PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", - PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - return -1; - } #endif b = (PyTypeObject*) b0; if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE)) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); @@ -37239,7 +38928,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs if (dictoffset == 0) { Py_ssize_t b_dictoffset = 0; -#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY +#if CYTHON_USE_TYPE_SLOTS b_dictoffset = b->tp_dictoffset; #else PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); @@ -37250,7 +38939,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif if (b_dictoffset) { { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "extension type '%.200s' has no __dict__ slot, " "but base type '" __Pyx_FMT_TYPENAME "' has: " @@ -37259,7 +38948,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs type_name, b_name); __Pyx_DECREF_TypeName(b_name); } -#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) +#if !CYTHON_USE_TYPE_SLOTS dictoffset_return: #endif #if CYTHON_AVOID_BORROWED_REFS @@ -37277,8 +38966,18 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif /* PyType_Ready */ +CYTHON_UNUSED static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) { + while (t) { + PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); + if (bases) { + return 1; + } + t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*); + } + return 0; +} static int __Pyx_PyType_Ready(PyTypeObject *t) { -#if CYTHON_USE_TYPE_SPECS || !(CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API) || defined(PYSTON_MAJOR_VERSION) +#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON || defined(PYSTON_MAJOR_VERSION) (void)__Pyx_PyObject_CallMethod0; #if CYTHON_USE_TYPE_SPECS (void)__Pyx_validate_bases_tuple; @@ -37286,10 +38985,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { return PyType_Ready(t); #else int r; + if (!__Pyx_PyType_HasMultipleInheritance(t)) { + return PyType_Ready(t); + } PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset, bases) == -1)) return -1; -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) { int gc_was_enabled; #if PY_VERSION_HEX >= 0x030A00b1 @@ -37298,12 +39000,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #else PyObject *ret, *py_status; PyObject *gc = NULL; - #if PY_VERSION_HEX >= 0x030700a1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) - gc = PyImport_GetModule(__pyx_kp_u_gc); + #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\ + !CYTHON_COMPILING_IN_GRAAL + gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc); #endif - if (unlikely(!gc)) gc = PyImport_Import(__pyx_kp_u_gc); + if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc); if (unlikely(!gc)) return -1; - py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_isenabled); + py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled); if (unlikely(!py_status)) { Py_DECREF(gc); return -1; @@ -37311,7 +39014,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { gc_was_enabled = __Pyx_PyObject_IsTrue(py_status); Py_DECREF(py_status); if (gc_was_enabled > 0) { - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_disable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable); if (unlikely(!ret)) { Py_DECREF(gc); return -1; @@ -37330,7 +39033,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { (void)__Pyx_PyObject_CallMethod0; #endif r = PyType_Ready(t); -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE; #if PY_VERSION_HEX >= 0x030A00b1 if (gc_was_enabled) @@ -37339,7 +39042,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { if (gc_was_enabled) { PyObject *tp, *v, *tb; PyErr_Fetch(&tp, &v, &tb); - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_enable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable); if (likely(ret || r == -1)) { Py_XDECREF(ret); PyErr_Restore(tp, v, tb); @@ -37358,54 +39061,26 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #endif } -/* PyObject_GenericGetAttrNoDict */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject *__Pyx_RaiseGenericGetAttributeError(PyTypeObject *tp, PyObject *attr_name) { - __Pyx_TypeName type_name = __Pyx_PyType_GetName(tp); - PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", - type_name, attr_name); +/* DelItemOnTypeDict */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; #else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(attr_name)); + tp_dict = tp->tp_dict; #endif - __Pyx_DECREF_TypeName(type_name); - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name) { - PyObject *descr; - PyTypeObject *tp = Py_TYPE(obj); - if (unlikely(!PyString_Check(attr_name))) { - return PyObject_GenericGetAttr(obj, attr_name); - } - assert(!tp->tp_dictoffset); - descr = _PyType_Lookup(tp, attr_name); - if (unlikely(!descr)) { - return __Pyx_RaiseGenericGetAttributeError(tp, attr_name); - } - Py_INCREF(descr); - #if PY_MAJOR_VERSION < 3 - if (likely(PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_HAVE_CLASS))) - #endif - { - descrgetfunc f = Py_TYPE(descr)->tp_descr_get; - if (unlikely(f)) { - PyObject *res = f(descr, obj, (PyObject *)tp); - Py_DECREF(descr); - return res; - } - } - return descr; + result = PyDict_DelItem(tp_dict, k); + if (likely(!result)) PyType_Modified(tp); + return result; } -#endif /* SetupReduce */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { int ret; PyObject *name_attr; - name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_n_s_name_2); + name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name_2); if (likely(name_attr)) { ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); } else { @@ -37430,18 +39105,18 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { PyObject *setstate_cython = NULL; PyObject *getstate = NULL; #if CYTHON_USE_PYTYPE_LOOKUP - getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_n_s_getstate); + getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_getstate); #else - getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_getstate); + getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_getstate); if (!getstate && PyErr_Occurred()) { goto __PYX_BAD; } #endif if (getstate) { #if CYTHON_USE_PYTYPE_LOOKUP - object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_getstate); + object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); #else - object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_n_s_getstate); + object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); if (!object_getstate && PyErr_Occurred()) { goto __PYX_BAD; } @@ -37451,33 +39126,33 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { } } #if CYTHON_USE_PYTYPE_LOOKUP - object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; + object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; #else - object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; + object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; #endif - reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; + reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; if (reduce_ex == object_reduce_ex) { #if CYTHON_USE_PYTYPE_LOOKUP - object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; + object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; #else - object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; + object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; #endif - reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce); if (unlikely(!reduce)) goto __PYX_BAD; - if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_n_s_reduce_cython)) { - reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_reduce_cython); + reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce); if (unlikely(!reduce)) goto __PYX_BAD; + if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython)) { + reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (likely(reduce_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (reduce == object_reduce || PyErr_Occurred()) { goto __PYX_BAD; } - setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate); + setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate); if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); + if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython)) { + setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (likely(setstate_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (!setstate || PyErr_Occurred()) { goto __PYX_BAD; } @@ -37489,7 +39164,7 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { __PYX_BAD: if (!PyErr_Occurred()) { __Pyx_TypeName type_obj_name = - __Pyx_PyType_GetName((PyTypeObject*)type_obj); + __Pyx_PyType_GetFullyQualifiedName((PyTypeObject*)type_obj); PyErr_Format(PyExc_RuntimeError, "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); __Pyx_DECREF_TypeName(type_obj_name); @@ -37509,16 +39184,14 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { Py_XDECREF(setstate_cython); return ret; } -#endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_0_10 -#define __PYX_HAVE_RT_ImportType_3_0_10 -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_2 +#define __PYX_HAVE_RT_ImportType_3_1_2 +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) { PyObject *result = 0; - char warning[200]; Py_ssize_t basicsize; Py_ssize_t itemsize; #if CYTHON_COMPILING_IN_LIMITED_API @@ -37538,6 +39211,9 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul basicsize = ((PyTypeObject *)result)->tp_basicsize; itemsize = ((PyTypeObject *)result)->tp_itemsize; #else + if (size == 0) { + return (PyTypeObject *)result; + } py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); if (!py_basicsize) goto bad; @@ -37569,7 +39245,7 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -37577,12 +39253,13 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { - PyOS_snprintf(warning, sizeof(warning), - "%s.%s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + if (PyErr_WarnFormat(NULL, 0, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize) < 0) { + goto bad; + } } return (PyTypeObject *)result; bad: @@ -37595,9 +39272,9 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul static void* __Pyx_GetVtable(PyTypeObject *type) { void* ptr; #if CYTHON_COMPILING_IN_LIMITED_API - PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #else - PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #endif if (!ob) goto bad; @@ -37608,76 +39285,30 @@ static void* __Pyx_GetVtable(PyTypeObject *type) { return ptr; bad: Py_XDECREF(ob); - return NULL; -} - -/* PatchModuleWithCoroutine */ -static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code) { -#if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - int result; - PyObject *globals, *result_obj; - globals = PyDict_New(); if (unlikely(!globals)) goto ignore; - result = PyDict_SetItemString(globals, "_cython_coroutine_type", - #ifdef __Pyx_Coroutine_USED - (PyObject*)__pyx_CoroutineType); - #else - Py_None); - #endif - if (unlikely(result < 0)) goto ignore; - result = PyDict_SetItemString(globals, "_cython_generator_type", - #ifdef __Pyx_Generator_USED - (PyObject*)__pyx_GeneratorType); - #else - Py_None); - #endif - if (unlikely(result < 0)) goto ignore; - if (unlikely(PyDict_SetItemString(globals, "_module", module) < 0)) goto ignore; - if (unlikely(PyDict_SetItemString(globals, "__builtins__", __pyx_b) < 0)) goto ignore; - result_obj = PyRun_String(py_code, Py_file_input, globals, globals); - if (unlikely(!result_obj)) goto ignore; - Py_DECREF(result_obj); - Py_DECREF(globals); - return module; -ignore: - Py_XDECREF(globals); - PyErr_WriteUnraisable(module); - if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, "Cython module failed to patch module with custom type", 1) < 0)) { - Py_DECREF(module); - module = NULL; - } -#else - py_code++; -#endif - return module; + return NULL; } -/* PatchInspect */ -static PyObject* __Pyx_patch_inspect(PyObject* module) { -#if defined(__Pyx_Generator_USED) && (!defined(CYTHON_PATCH_INSPECT) || CYTHON_PATCH_INSPECT) - static int inspect_patched = 0; - if (unlikely((!inspect_patched) && module)) { - module = __Pyx_Coroutine_patch_module( - module, "" -"old_types = getattr(_module.isgenerator, '_cython_generator_types', None)\n" -"if old_types is None or not isinstance(old_types, set):\n" -" old_types = set()\n" -" def cy_wrap(orig_func, type=type, cython_generator_types=old_types):\n" -" def cy_isgenerator(obj): return type(obj) in cython_generator_types or orig_func(obj)\n" -" cy_isgenerator._cython_generator_types = cython_generator_types\n" -" return cy_isgenerator\n" -" _module.isgenerator = cy_wrap(_module.isgenerator)\n" -"old_types.add(_cython_generator_type)\n" - ); - inspect_patched = 1; +/* ListPack */ +static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) { + va_list va; + PyObject *l = PyList_New(n); + va_start(va, n); + if (unlikely(!l)) goto end; + for (Py_ssize_t i=0; i__pyx_cython_runtime)) { return c_line; } __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); #if CYTHON_COMPILING_IN_CPYTHON - cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_mstate_global->__pyx_cython_runtime); if (likely(cython_runtime_dict)) { + __Pyx_BEGIN_CRITICAL_SECTION(*cython_runtime_dict); __PYX_PY_DICT_LOOKUP_IF_MODIFIED( use_cline, *cython_runtime_dict, - __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) + __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback)) + Py_XINCREF(use_cline); + __Pyx_END_CRITICAL_SECTION(); } else #endif { - PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback); if (use_cline_obj) { use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_INCREF(use_cline); Py_DECREF(use_cline_obj); } else { PyErr_Clear(); @@ -37709,18 +39344,18 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { } if (!use_cline) { c_line = 0; - (void) PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + (void) PyObject_SetAttr(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False); } else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { c_line = 0; } + Py_XDECREF(use_cline); __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); return c_line; } #endif /* CodeObjectCache */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { int start = 0, mid = 0, end = count - 1; if (end >= 0 && code_line > entries[end].code_line) { @@ -37742,70 +39377,109 @@ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int co return mid + 1; } } -static PyCodeObject *__pyx_find_code_object(int code_line) { - PyCodeObject* code_object; +static __Pyx_CachedCodeObjectType *__pyx__find_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line) { + __Pyx_CachedCodeObjectType* code_object; int pos; - if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { + if (unlikely(!code_line) || unlikely(!code_cache->entries)) { return NULL; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) { return NULL; } - code_object = __pyx_code_cache.entries[pos].code_object; + code_object = code_cache->entries[pos].code_object; Py_INCREF(code_object); return code_object; } -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__find_code_object; + return NULL; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just miss. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count); + if (old_count < 0) { + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); + return NULL; + } +#endif + __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); +#endif + return result; +#endif +} +static void __pyx__insert_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line, __Pyx_CachedCodeObjectType* code_object) +{ int pos, i; - __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; + __Pyx_CodeObjectCacheEntry* entries = code_cache->entries; if (unlikely(!code_line)) { return; } if (unlikely(!entries)) { entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); if (likely(entries)) { - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = 64; - __pyx_code_cache.count = 1; + code_cache->entries = entries; + code_cache->max_count = 64; + code_cache->count = 1; entries[0].code_line = code_line; entries[0].code_object = code_object; Py_INCREF(code_object); } return; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { - PyCodeObject* tmp = entries[pos].code_object; + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) { + __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object; entries[pos].code_object = code_object; + Py_INCREF(code_object); Py_DECREF(tmp); return; } - if (__pyx_code_cache.count == __pyx_code_cache.max_count) { - int new_max = __pyx_code_cache.max_count + 64; + if (code_cache->count == code_cache->max_count) { + int new_max = code_cache->max_count + 64; entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); + code_cache->entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); if (unlikely(!entries)) { return; } - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = new_max; + code_cache->entries = entries; + code_cache->max_count = new_max; } - for (i=__pyx_code_cache.count; i>pos; i--) { + for (i=code_cache->count; i>pos; i--) { entries[i] = entries[i-1]; } entries[pos].code_line = code_line; entries[pos].code_object = code_object; - __pyx_code_cache.count++; + code_cache->count++; Py_INCREF(code_object); } +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__insert_code_object; + return; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just fail. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type expected = 0; + if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) { + return; + } +#endif + __pyx__insert_code_object(code_cache, code_line, code_object); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN); +#endif #endif +} /* AddTraceback */ #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -37819,35 +39493,12 @@ static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; replace = PyObject_GetAttrString(code, "replace"); if (likely(replace)) { - PyObject *result; - result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict); Py_DECREF(replace); return result; } PyErr_Clear(); - #if __PYX_LIMITED_VERSION_HEX < 0x030780000 - { - PyObject *compiled = NULL, *result = NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; - compiled = Py_CompileString( - "out = type(code)(\n" - " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" - " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" - " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" - " code.co_lnotab)\n", "", Py_file_input); - if (!compiled) return NULL; - result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); - Py_DECREF(compiled); - if (!result) PyErr_Print(); - Py_DECREF(result); - result = PyDict_GetItemString(scratch_dict, "out"); - if (result) Py_INCREF(result); - return result; - } - #else return NULL; - #endif } static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { @@ -37860,20 +39511,26 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); - code_object = Py_CompileString("_getframe()", filename, Py_eval_input); - if (unlikely(!code_object)) goto bad; - py_py_line = PyLong_FromLong(py_line); - if (unlikely(!py_py_line)) goto bad; - py_funcname = PyUnicode_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - dict = PyDict_New(); - if (unlikely(!dict)) goto bad; - { - PyObject *old_code_object = code_object; - code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); - Py_DECREF(old_code_object); + code_object = __pyx_find_code_object(c_line ? -c_line : py_line); + if (!code_object) { + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + __pyx_insert_code_object(c_line ? -c_line : py_line, code_object); + } else { + dict = PyDict_New(); } - if (unlikely(!code_object)) goto bad; getframe = PySys_GetObject("_getframe"); if (unlikely(!getframe)) goto bad; if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; @@ -37899,58 +39556,17 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( int py_line, const char *filename) { PyCodeObject *py_code = NULL; PyObject *py_funcname = NULL; - #if PY_MAJOR_VERSION < 3 - PyObject *py_srcfile = NULL; - py_srcfile = PyString_FromString(filename); - if (!py_srcfile) goto bad; - #endif if (c_line) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - #else py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); if (!py_funcname) goto bad; funcname = PyUnicode_AsUTF8(py_funcname); if (!funcname) goto bad; - #endif } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - if (!py_funcname) goto bad; - #endif - } - #if PY_MAJOR_VERSION < 3 - py_code = __Pyx_PyCode_New( - 0, - 0, - 0, - 0, - 0, - 0, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - py_line, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - Py_DECREF(py_srcfile); - #else py_code = PyCode_NewEmpty(filename, funcname, py_line); - #endif Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_srcfile); - #endif return NULL; } static void __Pyx_AddTraceback(const char *funcname, int c_line, @@ -37981,7 +39597,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, py_frame = PyFrame_New( tstate, /*PyThreadState *tstate,*/ py_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); if (!py_frame) goto bad; @@ -38016,7 +39632,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, } /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -38028,17 +39644,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(int) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(int) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(int) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -38046,31 +39662,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(int), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -38080,7 +39703,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { } /* CIntFromPy */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -38090,256 +39713,237 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(int) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (int) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + int val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (int) -1; + val = __Pyx_PyLong_As_int(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(int) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(int) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(int) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) + if ((sizeof(int) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + int val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (int) -1; + assert(PyLong_CheckExact(v)); } { - int val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (int) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (int) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (int) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (int) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (int) -1; } - return (int) -1; + is_negative = result == 1; } - } else { - int val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (int) -1; - val = __Pyx_PyInt_As_int(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = v; + } + v = NULL; + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((int) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (int) -1; return val; } raise_overflow: @@ -38353,7 +39957,7 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } /* CIntFromPy */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -38363,256 +39967,237 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(long) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (long) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + long val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (long) -1; + val = __Pyx_PyLong_As_long(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(long) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(long) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(long) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) + if ((sizeof(long) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + long val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (long) -1; + assert(PyLong_CheckExact(v)); } { - long val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (long) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (long) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (long) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (long) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (long) -1; } - return (long) -1; + is_negative = result == 1; } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (long) -1; - val = __Pyx_PyInt_As_long(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = v; + } + v = NULL; + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((long) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (long) -1; return val; } raise_overflow: @@ -38626,7 +40211,7 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -38638,17 +40223,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(long) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(long) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(long) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -38656,31 +40241,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -38690,18 +40282,41 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } /* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 static __Pyx_TypeName -__Pyx_PyType_GetName(PyTypeObject* tp) +__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) { - PyObject *name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_n_s_name_2); - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { - PyErr_Clear(); - Py_XDECREF(name); - name = __Pyx_NewRef(__pyx_n_s__48); + PyObject *module = NULL, *name = NULL, *result = NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_qualname); + #else + name = PyType_GetQualName(tp); + #endif + if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; + module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_module_2); + if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; + if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { + result = name; + name = NULL; + goto done; + } + result = PyUnicode_FromFormat("%U.%U", module, name); + if (unlikely(result == NULL)) goto bad; + done: + Py_XDECREF(name); + Py_XDECREF(module); + return result; + bad: + PyErr_Clear(); + if (name) { + result = name; + name = NULL; + } else { + result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__9); } - return name; + goto done; } #endif @@ -38746,29 +40361,6 @@ static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, } return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b); } -#if PY_MAJOR_VERSION == 2 -static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { - PyObject *exception, *value, *tb; - int res; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&exception, &value, &tb); - res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - if (!res) { - res = PyObject_IsSubclass(err, exc_type2); - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - } - __Pyx_ErrRestore(exception, value, tb); - return res; -} -#else static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { if (exc_type1) { return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2); @@ -38776,21 +40368,15 @@ static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); } } -#endif static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; assert(PyExceptionClass_Check(exc_type)); n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; i__Pyx_GetBuiltinNext_LimitedAPI_cache)) + __pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); + return __pyx_mstate_global->__Pyx_GetBuiltinNext_LimitedAPI_cache; +} +#endif +static CYTHON_INLINE PyObject *__Pyx_PyIter_Next_Plain(PyObject *iterator) { +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000 + PyObject *result; + PyObject *next = __Pyx_GetBuiltinNext_LimitedAPI(); + if (unlikely(!next)) return NULL; + result = PyObject_CallFunctionObjArgs(next, iterator, NULL); + return result; +#else + (void)__Pyx_GetBuiltinName; // only for early limited API + iternextfunc iternext = __Pyx_PyObject_GetIterNextFunc(iterator); + assert(iternext); + return iternext(iterator); +#endif +} + +/* ReturnWithStopIteration */ +static void __Pyx__ReturnWithStopIteration(PyObject* value, int async); +static CYTHON_INLINE void __Pyx_ReturnWithStopIteration(PyObject* value, int async, int iternext) { + if (value == Py_None) { + if (async || !iternext) + PyErr_SetNone(async ? PyExc_StopAsyncIteration : PyExc_StopIteration); + return; + } + __Pyx__ReturnWithStopIteration(value, async); +} +static void __Pyx__ReturnWithStopIteration(PyObject* value, int async) { +#if CYTHON_COMPILING_IN_CPYTHON + __Pyx_PyThreadState_declare +#endif + PyObject *exc; + PyObject *exc_type = async ? PyExc_StopAsyncIteration : PyExc_StopIteration; +#if CYTHON_COMPILING_IN_CPYTHON + if ((PY_VERSION_HEX >= (0x030C00A6)) || unlikely(PyTuple_Check(value) || PyExceptionInstance_Check(value))) { + if (PY_VERSION_HEX >= (0x030e00A1)) { + exc = __Pyx_PyObject_CallOneArg(exc_type, value); + } else { + PyObject *args_tuple = PyTuple_New(1); + if (unlikely(!args_tuple)) return; + Py_INCREF(value); + PyTuple_SET_ITEM(args_tuple, 0, value); + exc = PyObject_Call(exc_type, args_tuple, NULL); + Py_DECREF(args_tuple); + } + if (unlikely(!exc)) return; + } else { + Py_INCREF(value); + exc = value; + } + #if CYTHON_FAST_THREAD_STATE + __Pyx_PyThreadState_assign + #if CYTHON_USE_EXC_INFO_STACK + if (!__pyx_tstate->exc_info->exc_value) + #else + if (!__pyx_tstate->exc_type) + #endif + { + Py_INCREF(exc_type); + __Pyx_ErrRestore(exc_type, exc, NULL); + return; + } + #endif +#else + exc = __Pyx_PyObject_CallOneArg(exc_type, value); + if (unlikely(!exc)) return; +#endif + PyErr_SetObject(exc_type, exc); + Py_DECREF(exc); +} + /* CoroutineBase */ +#if !CYTHON_COMPILING_IN_LIMITED_API #include -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif #include "internal/pycore_frame.h" #endif -#define __Pyx_Coroutine_Undelegate(gen) Py_CLEAR((gen)->yieldfrom) +#endif // CYTHON_COMPILING_IN_LIMITED_API +static CYTHON_INLINE void +__Pyx_Coroutine_Undelegate(__pyx_CoroutineObject *gen) { +#if CYTHON_USE_AM_SEND + gen->yieldfrom_am_send = NULL; +#endif + Py_CLEAR(gen->yieldfrom); +} static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyObject **pvalue) { PyObject *et, *ev, *tb; PyObject *value = NULL; @@ -38983,20 +40654,35 @@ static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyO Py_INCREF(Py_None); value = Py_None; } -#if PY_VERSION_HEX >= 0x030300A0 else if (likely(__Pyx_IS_TYPE(ev, (PyTypeObject*)PyExc_StopIteration))) { + #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL + value = PyObject_GetAttr(ev, __pyx_mstate_global->__pyx_n_u_value); + if (unlikely(!value)) goto limited_api_failure; + #else value = ((PyStopIterationObject *)ev)->value; Py_INCREF(value); + #endif Py_DECREF(ev); } -#endif else if (unlikely(PyTuple_Check(ev))) { - if (PyTuple_GET_SIZE(ev) >= 1) { + Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(ev); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(tuple_size < 0)) { + Py_XDECREF(tb); + Py_DECREF(ev); + Py_DECREF(et); + return -1; + } + #endif + if (tuple_size >= 1) { #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS value = PyTuple_GET_ITEM(ev, 0); Py_INCREF(value); -#else +#elif CYTHON_ASSUME_SAFE_MACROS value = PySequence_ITEM(ev, 0); +#else + value = PySequence_GetItem(ev, 0); + if (!value) goto limited_api_failure; #endif } else { Py_INCREF(Py_None); @@ -39024,27 +40710,35 @@ static int __Pyx_PyGen__FetchStopIterationValue(PyThreadState *__pyx_tstate, PyO } Py_XDECREF(tb); Py_DECREF(et); -#if PY_VERSION_HEX >= 0x030300A0 +#if CYTHON_COMPILING_IN_LIMITED_API + value = PyObject_GetAttr(ev, __pyx_mstate_global->__pyx_n_u_value); +#else value = ((PyStopIterationObject *)ev)->value; Py_INCREF(value); +#endif Py_DECREF(ev); -#else - { - PyObject* args = __Pyx_PyObject_GetAttrStr(ev, __pyx_n_s_args); - Py_DECREF(ev); - if (likely(args)) { - value = PySequence_GetItem(args, 0); - Py_DECREF(args); - } - if (unlikely(!value)) { - __Pyx_ErrRestore(NULL, NULL, NULL); - Py_INCREF(Py_None); - value = Py_None; - } - } +#if CYTHON_COMPILING_IN_LIMITED_API + if (unlikely(!value)) return -1; #endif *pvalue = value; return 0; +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL || !CYTHON_ASSUME_SAFE_MACROS + limited_api_failure: + Py_XDECREF(et); + Py_XDECREF(tb); + Py_XDECREF(ev); + return -1; +#endif +} +static CYTHON_INLINE +__Pyx_PySendResult __Pyx_Coroutine_status_from_result(PyObject **retval) { + if (*retval) { + return PYGEN_NEXT; + } else if (likely(__Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, retval) == 0)) { + return PYGEN_RETURN; + } else { + return PYGEN_ERROR; + } } static CYTHON_INLINE void __Pyx_Coroutine_ExceptionClear(__Pyx_ExcInfoStruct *exc_state) { @@ -39081,26 +40775,7 @@ static void __Pyx__Coroutine_AlreadyRunningError(__pyx_CoroutineObject *gen) { } PyErr_SetString(PyExc_ValueError, msg); } -#define __Pyx_Coroutine_NotStartedError(gen) (__Pyx__Coroutine_NotStartedError(gen), (PyObject*)NULL) -static void __Pyx__Coroutine_NotStartedError(PyObject *gen) { - const char *msg; - CYTHON_MAYBE_UNUSED_VAR(gen); - if ((0)) { - #ifdef __Pyx_Coroutine_USED - } else if (__Pyx_Coroutine_Check(gen)) { - msg = "can't send non-None value to a just-started coroutine"; - #endif - #ifdef __Pyx_AsyncGen_USED - } else if (__Pyx_AsyncGen_CheckExact(gen)) { - msg = "can't send non-None value to a just-started async generator"; - #endif - } else { - msg = "can't send non-None value to a just-started generator"; - } - PyErr_SetString(PyExc_TypeError, msg); -} -#define __Pyx_Coroutine_AlreadyTerminatedError(gen, value, closing) (__Pyx__Coroutine_AlreadyTerminatedError(gen, value, closing), (PyObject*)NULL) -static void __Pyx__Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *value, int closing) { +static void __Pyx_Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *value, int closing) { CYTHON_MAYBE_UNUSED_VAR(gen); CYTHON_MAYBE_UNUSED_VAR(closing); #ifdef __Pyx_Coroutine_USED @@ -39111,26 +40786,22 @@ static void __Pyx__Coroutine_AlreadyTerminatedError(PyObject *gen, PyObject *val if (value) { #ifdef __Pyx_AsyncGen_USED if (__Pyx_AsyncGen_CheckExact(gen)) - PyErr_SetNone(__Pyx_PyExc_StopAsyncIteration); + PyErr_SetNone(PyExc_StopAsyncIteration); else #endif PyErr_SetNone(PyExc_StopIteration); } } static -PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, int closing) { +__Pyx_PySendResult __Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, PyObject **result, int closing) { __Pyx_PyThreadState_declare PyThreadState *tstate; __Pyx_ExcInfoStruct *exc_state; PyObject *retval; - assert(!self->is_running); - if (unlikely(self->resume_label == 0)) { - if (unlikely(value && value != Py_None)) { - return __Pyx_Coroutine_NotStartedError((PyObject*)self); - } - } + assert(__Pyx_Coroutine_get_is_running(self)); // Callers should ensure is_running if (unlikely(self->resume_label == -1)) { - return __Pyx_Coroutine_AlreadyTerminatedError((PyObject*)self, value, closing); + __Pyx_Coroutine_AlreadyTerminatedError((PyObject*)self, value, closing); + return PYGEN_ERROR; } #if CYTHON_FAST_THREAD_STATE __Pyx_PyThreadState_assign @@ -39140,7 +40811,7 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i #endif exc_state = &self->gi_exc_state; if (exc_state->exc_value) { - #if CYTHON_COMPILING_IN_PYPY + #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY #else PyObject *exc_tb; #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_CPYTHON @@ -39177,19 +40848,21 @@ PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value, i __Pyx_ExceptionSave(&exc_state->exc_type, &exc_state->exc_value, &exc_state->exc_traceback); } #endif - self->is_running = 1; retval = self->body(self, tstate, value); - self->is_running = 0; #if CYTHON_USE_EXC_INFO_STACK exc_state = &self->gi_exc_state; tstate->exc_info = exc_state->previous_item; exc_state->previous_item = NULL; __Pyx_Coroutine_ResetFrameBackpointer(exc_state); #endif - return retval; + *result = retval; + if (self->resume_label == -1) { + return likely(retval) ? PYGEN_RETURN : PYGEN_ERROR; + } + return PYGEN_NEXT; } static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStruct *exc_state) { -#if CYTHON_COMPILING_IN_PYPY +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED_VAR(exc_state); #else PyObject *exc_tb; @@ -39209,24 +40882,22 @@ static CYTHON_INLINE void __Pyx_Coroutine_ResetFrameBackpointer(__Pyx_ExcInfoStr } #endif } -static CYTHON_INLINE -PyObject *__Pyx_Coroutine_MethodReturn(PyObject* gen, PyObject *retval) { +#define __Pyx_Coroutine_MethodReturnFromResult(gen, result, retval, iternext)\ + ((result) == PYGEN_NEXT ? (retval) : __Pyx__Coroutine_MethodReturnFromResult(gen, result, retval, iternext)) +static PyObject * +__Pyx__Coroutine_MethodReturnFromResult(PyObject* gen, __Pyx_PySendResult result, PyObject *retval, int iternext) { CYTHON_MAYBE_UNUSED_VAR(gen); - if (unlikely(!retval)) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (!__Pyx_PyErr_Occurred()) { - PyObject *exc = PyExc_StopIteration; - #ifdef __Pyx_AsyncGen_USED - if (__Pyx_AsyncGen_CheckExact(gen)) - exc = __Pyx_PyExc_StopAsyncIteration; - #endif - __Pyx_PyErr_SetNone(exc); - } + if (likely(result == PYGEN_RETURN)) { + int is_async = 0; + #ifdef __Pyx_AsyncGen_USED + is_async = __Pyx_AsyncGen_CheckExact(gen); + #endif + __Pyx_ReturnWithStopIteration(retval, is_async, iternext); + Py_XDECREF(retval); } - return retval; + return NULL; } -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) +#if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) { #if PY_VERSION_HEX <= 0x030A00A1 @@ -39263,25 +40934,58 @@ PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) { #endif } #endif -static CYTHON_INLINE -PyObject *__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen) { - PyObject *ret; +static CYTHON_INLINE __Pyx_PySendResult +__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen, PyObject** retval) { + __Pyx_PySendResult result; PyObject *val = NULL; + assert(__Pyx_Coroutine_get_is_running(gen)); __Pyx_Coroutine_Undelegate(gen); __Pyx_PyGen__FetchStopIterationValue(__Pyx_PyThreadState_Current, &val); - ret = __Pyx_Coroutine_SendEx(gen, val, 0); + result = __Pyx_Coroutine_SendEx(gen, val, retval, 0); Py_XDECREF(val); - return ret; + return result; +} +#if CYTHON_USE_AM_SEND +static __Pyx_PySendResult +__Pyx_Coroutine_SendToDelegate(__pyx_CoroutineObject *gen, __Pyx_pyiter_sendfunc gen_am_send, PyObject *value, PyObject **retval) { + PyObject *ret = NULL; + __Pyx_PySendResult delegate_result, result; + assert(__Pyx_Coroutine_get_is_running(gen)); + delegate_result = gen_am_send(gen->yieldfrom, value, &ret); + if (delegate_result == PYGEN_NEXT) { + assert (ret != NULL); + *retval = ret; + return PYGEN_NEXT; + } + assert (delegate_result != PYGEN_ERROR || ret == NULL); + __Pyx_Coroutine_Undelegate(gen); + result = __Pyx_Coroutine_SendEx(gen, ret, retval, 0); + Py_XDECREF(ret); + return result; } +#endif static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) { - PyObject *retval; + PyObject *retval = NULL; + __Pyx_PySendResult result = __Pyx_Coroutine_AmSend(self, value, &retval); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 0); +} +static __Pyx_PySendResult +__Pyx_Coroutine_AmSend(PyObject *self, PyObject *value, PyObject **retval) { + __Pyx_PySendResult result; __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self; - PyObject *yf = gen->yieldfrom; - if (unlikely(gen->is_running)) - return __Pyx_Coroutine_AlreadyRunningError(gen); - if (yf) { + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { + *retval = __Pyx_Coroutine_AlreadyRunningError(gen); + return PYGEN_ERROR; + } + #if CYTHON_USE_AM_SEND + if (gen->yieldfrom_am_send) { + result = __Pyx_Coroutine_SendToDelegate(gen, gen->yieldfrom_am_send, value, retval); + } else + #endif + if (gen->yieldfrom) { + PyObject *yf = gen->yieldfrom; PyObject *ret; - gen->is_running = 1; + #if !CYTHON_USE_AM_SEND #ifdef __Pyx_Generator_USED if (__Pyx_Generator_CheckExact(yf)) { ret = __Pyx_Coroutine_Send(yf, value); @@ -39297,66 +41001,67 @@ static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) { ret = __Pyx_async_gen_asend_send(yf, value); } else #endif - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) + #if CYTHON_COMPILING_IN_CPYTHON if (PyGen_CheckExact(yf)) { ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value); } else - #endif - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03050000 && defined(PyCoro_CheckExact) && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) if (PyCoro_CheckExact(yf)) { ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value); } else #endif + #endif { - if (value == Py_None) - ret = __Pyx_PyObject_GetIterNextFunc(yf)(yf); + #if !CYTHON_COMPILING_IN_LIMITED_API || __PYX_LIMITED_VERSION_HEX >= 0x03080000 + if (value == Py_None && PyIter_Check(yf)) + ret = __Pyx_PyIter_Next_Plain(yf); else - ret = __Pyx_PyObject_CallMethod1(yf, __pyx_n_s_send, value); + #endif + ret = __Pyx_PyObject_CallMethod1(yf, __pyx_mstate_global->__pyx_n_u_send, value); } - gen->is_running = 0; if (likely(ret)) { - return ret; + __Pyx_Coroutine_unset_is_running(gen); + *retval = ret; + return PYGEN_NEXT; } - retval = __Pyx_Coroutine_FinishDelegation(gen); + result = __Pyx_Coroutine_FinishDelegation(gen, retval); } else { - retval = __Pyx_Coroutine_SendEx(gen, value, 0); + result = __Pyx_Coroutine_SendEx(gen, value, retval, 0); } - return __Pyx_Coroutine_MethodReturn(self, retval); + __Pyx_Coroutine_unset_is_running(gen); + return result; } static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) { + __Pyx_PySendResult result; PyObject *retval = NULL; - int err = 0; + CYTHON_UNUSED_VAR(gen); + assert(__Pyx_Coroutine_get_is_running(gen)); #ifdef __Pyx_Generator_USED if (__Pyx_Generator_CheckExact(yf)) { - retval = __Pyx_Coroutine_Close(yf); - if (!retval) - return -1; + result = __Pyx_Coroutine_Close(yf, &retval); } else #endif #ifdef __Pyx_Coroutine_USED if (__Pyx_Coroutine_Check(yf)) { - retval = __Pyx_Coroutine_Close(yf); - if (!retval) - return -1; + result = __Pyx_Coroutine_Close(yf, &retval); } else if (__Pyx_CoroutineAwait_CheckExact(yf)) { - retval = __Pyx_CoroutineAwait_Close((__pyx_CoroutineAwaitObject*)yf, NULL); - if (!retval) - return -1; + result = __Pyx_CoroutineAwait_Close((__pyx_CoroutineAwaitObject*)yf); } else #endif #ifdef __Pyx_AsyncGen_USED if (__pyx_PyAsyncGenASend_CheckExact(yf)) { retval = __Pyx_async_gen_asend_close(yf, NULL); + result = PYGEN_RETURN; } else if (__pyx_PyAsyncGenAThrow_CheckExact(yf)) { retval = __Pyx_async_gen_athrow_close(yf, NULL); + result = PYGEN_RETURN; } else #endif { PyObject *meth; - gen->is_running = 1; - meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_n_s_close); + result = PYGEN_RETURN; + meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_mstate_global->__pyx_n_u_close); if (unlikely(!meth)) { if (unlikely(PyErr_Occurred())) { PyErr_WriteUnraisable(yf); @@ -39364,57 +41069,77 @@ static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) { } else { retval = __Pyx_PyObject_CallNoArg(meth); Py_DECREF(meth); - if (unlikely(!retval)) - err = -1; + if (unlikely(!retval)) { + result = PYGEN_ERROR; + } } - gen->is_running = 0; } Py_XDECREF(retval); - return err; + return result == PYGEN_ERROR ? -1 : 0; } static PyObject *__Pyx_Generator_Next(PyObject *self) { + __Pyx_PySendResult result; + PyObject *retval = NULL; __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self; - PyObject *yf = gen->yieldfrom; - if (unlikely(gen->is_running)) + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { return __Pyx_Coroutine_AlreadyRunningError(gen); - if (yf) { + } + #if CYTHON_USE_AM_SEND + if (gen->yieldfrom_am_send) { + result = __Pyx_Coroutine_SendToDelegate(gen, gen->yieldfrom_am_send, Py_None, &retval); + } else + #endif + if (gen->yieldfrom) { + PyObject *yf = gen->yieldfrom; PyObject *ret; - gen->is_running = 1; #ifdef __Pyx_Generator_USED if (__Pyx_Generator_CheckExact(yf)) { ret = __Pyx_Generator_Next(yf); } else #endif - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3) - if (PyGen_CheckExact(yf)) { - ret = __Pyx_PyGen_Send((PyGenObject*)yf, NULL); - } else - #endif #ifdef __Pyx_Coroutine_USED - if (__Pyx_Coroutine_Check(yf)) { + if (__Pyx_Coroutine_CheckExact(yf)) { ret = __Pyx_Coroutine_Send(yf, Py_None); } else #endif - ret = __Pyx_PyObject_GetIterNextFunc(yf)(yf); - gen->is_running = 0; + #if CYTHON_COMPILING_IN_CPYTHON && (PY_VERSION_HEX < 0x030A00A3 || !CYTHON_USE_AM_SEND) + if (PyGen_CheckExact(yf)) { + ret = __Pyx_PyGen_Send((PyGenObject*)yf, NULL); + } else + #endif + ret = __Pyx_PyIter_Next_Plain(yf); if (likely(ret)) { + __Pyx_Coroutine_unset_is_running(gen); return ret; } - return __Pyx_Coroutine_FinishDelegation(gen); + result = __Pyx_Coroutine_FinishDelegation(gen, &retval); + } else { + result = __Pyx_Coroutine_SendEx(gen, Py_None, &retval, 0); } - return __Pyx_Coroutine_SendEx(gen, Py_None, 0); + __Pyx_Coroutine_unset_is_running(gen); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 1); } static PyObject *__Pyx_Coroutine_Close_Method(PyObject *self, PyObject *arg) { + PyObject *retval = NULL; + __Pyx_PySendResult result; CYTHON_UNUSED_VAR(arg); - return __Pyx_Coroutine_Close(self); + result = __Pyx_Coroutine_Close(self, &retval); + if (unlikely(result == PYGEN_ERROR)) + return NULL; + Py_XDECREF(retval); + Py_RETURN_NONE; } -static PyObject *__Pyx_Coroutine_Close(PyObject *self) { +static __Pyx_PySendResult +__Pyx_Coroutine_Close(PyObject *self, PyObject **retval) { __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; - PyObject *retval, *raised_exception; - PyObject *yf = gen->yieldfrom; + __Pyx_PySendResult result; + PyObject *yf; int err = 0; - if (unlikely(gen->is_running)) - return __Pyx_Coroutine_AlreadyRunningError(gen); + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { + *retval = __Pyx_Coroutine_AlreadyRunningError(gen); + return PYGEN_ERROR; + } + yf = gen->yieldfrom; if (yf) { Py_INCREF(yf); err = __Pyx_Coroutine_CloseIter(gen, yf); @@ -39423,10 +41148,25 @@ static PyObject *__Pyx_Coroutine_Close(PyObject *self) { } if (err == 0) PyErr_SetNone(PyExc_GeneratorExit); - retval = __Pyx_Coroutine_SendEx(gen, NULL, 1); - if (unlikely(retval)) { + result = __Pyx_Coroutine_SendEx(gen, NULL, retval, 1); + if (result == PYGEN_ERROR) { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_Coroutine_unset_is_running(gen); + if (!__Pyx_PyErr_Occurred()) { + return PYGEN_RETURN; + } else if (likely(__Pyx_PyErr_ExceptionMatches2(PyExc_GeneratorExit, PyExc_StopIteration))) { + __Pyx_PyErr_Clear(); + return PYGEN_RETURN; + } + return PYGEN_ERROR; + } else if (likely(result == PYGEN_RETURN && *retval == Py_None)) { + __Pyx_Coroutine_unset_is_running(gen); + return PYGEN_RETURN; + } else { const char *msg; - Py_DECREF(retval); + Py_DECREF(*retval); + *retval = NULL; if ((0)) { #ifdef __Pyx_Coroutine_USED } else if (__Pyx_Coroutine_Check(self)) { @@ -39434,33 +41174,25 @@ static PyObject *__Pyx_Coroutine_Close(PyObject *self) { #endif #ifdef __Pyx_AsyncGen_USED } else if (__Pyx_AsyncGen_CheckExact(self)) { -#if PY_VERSION_HEX < 0x03060000 - msg = "async generator ignored GeneratorExit - might require Python 3.6+ finalisation (PEP 525)"; -#else msg = "async generator ignored GeneratorExit"; -#endif #endif } else { msg = "generator ignored GeneratorExit"; } PyErr_SetString(PyExc_RuntimeError, msg); - return NULL; - } - raised_exception = PyErr_Occurred(); - if (likely(!raised_exception || __Pyx_PyErr_GivenExceptionMatches2(raised_exception, PyExc_GeneratorExit, PyExc_StopIteration))) { - if (raised_exception) PyErr_Clear(); - Py_INCREF(Py_None); - return Py_None; + __Pyx_Coroutine_unset_is_running(gen); + return PYGEN_ERROR; } - return NULL; } static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject *val, PyObject *tb, PyObject *args, int close_on_genexit) { __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; - PyObject *yf = gen->yieldfrom; - if (unlikely(gen->is_running)) + PyObject *yf; + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) return __Pyx_Coroutine_AlreadyRunningError(gen); + yf = gen->yieldfrom; if (yf) { + __Pyx_PySendResult result; PyObject *ret; Py_INCREF(yf); if (__Pyx_PyErr_GivenExceptionMatches(typ, PyExc_GeneratorExit) && close_on_genexit) { @@ -39468,10 +41200,9 @@ static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject Py_DECREF(yf); __Pyx_Coroutine_Undelegate(gen); if (err < 0) - return __Pyx_Coroutine_MethodReturn(self, __Pyx_Coroutine_SendEx(gen, NULL, 0)); + goto propagate_exception; goto throw_here; } - gen->is_running = 1; if (0 #ifdef __Pyx_Generator_USED || __Pyx_Generator_CheckExact(yf) @@ -39486,15 +41217,14 @@ static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject ret = __Pyx__Coroutine_Throw(((__pyx_CoroutineAwaitObject*)yf)->coroutine, typ, val, tb, args, close_on_genexit); #endif } else { - PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_n_s_throw); + PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(yf, __pyx_mstate_global->__pyx_n_u_throw); if (unlikely(!meth)) { Py_DECREF(yf); if (unlikely(PyErr_Occurred())) { - gen->is_running = 0; + __Pyx_Coroutine_unset_is_running(gen); return NULL; } __Pyx_Coroutine_Undelegate(gen); - gen->is_running = 0; goto throw_here; } if (likely(args)) { @@ -39505,22 +41235,30 @@ static PyObject *__Pyx__Coroutine_Throw(PyObject *self, PyObject *typ, PyObject } Py_DECREF(meth); } - gen->is_running = 0; Py_DECREF(yf); - if (!ret) { - ret = __Pyx_Coroutine_FinishDelegation(gen); + if (ret) { + __Pyx_Coroutine_unset_is_running(gen); + return ret; } - return __Pyx_Coroutine_MethodReturn(self, ret); + result = __Pyx_Coroutine_FinishDelegation(gen, &ret); + __Pyx_Coroutine_unset_is_running(gen); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, ret, 0); } throw_here: __Pyx_Raise(typ, val, tb, NULL); - return __Pyx_Coroutine_MethodReturn(self, __Pyx_Coroutine_SendEx(gen, NULL, 0)); +propagate_exception: + { + PyObject *retval = NULL; + __Pyx_PySendResult result = __Pyx_Coroutine_SendEx(gen, NULL, &retval, 0); + __Pyx_Coroutine_unset_is_running(gen); + return __Pyx_Coroutine_MethodReturnFromResult(self, result, retval, 0); + } } static PyObject *__Pyx_Coroutine_Throw(PyObject *self, PyObject *args) { PyObject *typ; PyObject *val = NULL; PyObject *tb = NULL; - if (unlikely(!PyArg_UnpackTuple(args, (char *)"throw", 1, 3, &typ, &val, &tb))) + if (unlikely(!PyArg_UnpackTuple(args, "throw", 1, 3, &typ, &val, &tb))) return NULL; return __Pyx__Coroutine_Throw(self, typ, val, tb, args, 1); } @@ -39535,6 +41273,10 @@ static CYTHON_INLINE int __Pyx_Coroutine_traverse_excstate(__Pyx_ExcInfoStruct * return 0; } static int __Pyx_Coroutine_traverse(__pyx_CoroutineObject *gen, visitproc visit, void *arg) { + { + int e = __Pyx_call_type_traverse((PyObject*)gen, 1, visit, arg); + if (e) return e; + } Py_VISIT(gen->closure); Py_VISIT(gen->classobj); Py_VISIT(gen->yieldfrom); @@ -39544,7 +41286,7 @@ static int __Pyx_Coroutine_clear(PyObject *self) { __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; Py_CLEAR(gen->closure); Py_CLEAR(gen->classobj); - Py_CLEAR(gen->yieldfrom); + __Pyx_Coroutine_Undelegate(gen); __Pyx_Coroutine_ExceptionClear(&gen->gi_exc_state); #ifdef __Pyx_AsyncGen_USED if (__Pyx_AsyncGen_CheckExact(self)) { @@ -39565,10 +41307,13 @@ static void __Pyx_Coroutine_dealloc(PyObject *self) { PyObject_ClearWeakRefs(self); if (gen->resume_label >= 0) { PyObject_GC_Track(self); -#if PY_VERSION_HEX >= 0x030400a1 && CYTHON_USE_TP_FINALIZE +#if CYTHON_USE_TP_FINALIZE if (unlikely(PyObject_CallFinalizerFromDealloc(self))) #else - Py_TYPE(gen)->tp_del(self); + { + destructor del = __Pyx_PyObject_GetSlot(gen, tp_del, destructor); + if (del) del(self); + } if (unlikely(Py_REFCNT(self) > 0)) #endif { @@ -39587,6 +41332,7 @@ static void __Pyx_Coroutine_dealloc(PyObject *self) { __Pyx_Coroutine_clear(self); __Pyx_PyHeapTypeObject_GC_Del(gen); } +#if CYTHON_USE_TP_FINALIZE static void __Pyx_Coroutine_del(PyObject *self) { PyObject *error_type, *error_value, *error_traceback; __pyx_CoroutineObject *gen = (__pyx_CoroutineObject *) self; @@ -39594,10 +41340,6 @@ static void __Pyx_Coroutine_del(PyObject *self) { if (gen->resume_label < 0) { return; } -#if !CYTHON_USE_TP_FINALIZE - assert(self->ob_refcnt == 0); - __Pyx_SET_REFCNT(self, 1); -#endif __Pyx_PyThreadState_assign __Pyx_ErrFetch(&error_type, &error_value, &error_traceback); #ifdef __Pyx_AsyncGen_USED @@ -39623,66 +41365,23 @@ static void __Pyx_Coroutine_del(PyObject *self) { #endif { PyObject_GC_UnTrack(self); -#if PY_MAJOR_VERSION >= 3 || defined(PyErr_WarnFormat) if (unlikely(PyErr_WarnFormat(PyExc_RuntimeWarning, 1, "coroutine '%.50S' was never awaited", gen->gi_qualname) < 0)) PyErr_WriteUnraisable(self); -#else - {PyObject *msg; - char *cmsg; - #if CYTHON_COMPILING_IN_PYPY - msg = NULL; - cmsg = (char*) "coroutine was never awaited"; - #else - char *cname; - PyObject *qualname; - qualname = gen->gi_qualname; - cname = PyString_AS_STRING(qualname); - msg = PyString_FromFormat("coroutine '%.50s' was never awaited", cname); - if (unlikely(!msg)) { - PyErr_Clear(); - cmsg = (char*) "coroutine was never awaited"; - } else { - cmsg = PyString_AS_STRING(msg); - } - #endif - if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, cmsg, 1) < 0)) - PyErr_WriteUnraisable(self); - Py_XDECREF(msg);} -#endif PyObject_GC_Track(self); } #endif } else { - PyObject *res = __Pyx_Coroutine_Close(self); - if (unlikely(!res)) { - if (PyErr_Occurred()) - PyErr_WriteUnraisable(self); + PyObject *retval = NULL; + __Pyx_PySendResult result = __Pyx_Coroutine_Close(self, &retval); + if (result == PYGEN_ERROR) { + PyErr_WriteUnraisable(self); } else { - Py_DECREF(res); + Py_XDECREF(retval); } } __Pyx_ErrRestore(error_type, error_value, error_traceback); -#if !CYTHON_USE_TP_FINALIZE - assert(Py_REFCNT(self) > 0); - if (likely(--self->ob_refcnt == 0)) { - return; - } - { - Py_ssize_t refcnt = Py_REFCNT(self); - _Py_NewReference(self); - __Pyx_SET_REFCNT(self, refcnt); - } -#if CYTHON_COMPILING_IN_CPYTHON - assert(PyType_IS_GC(Py_TYPE(self)) && - _Py_AS_GC(self)->gc.gc_refs != _PyGC_REFS_UNTRACKED); - _Py_DEC_REFTOTAL; -#endif -#ifdef COUNT_ALLOCS - --Py_TYPE(self)->tp_frees; - --Py_TYPE(self)->tp_allocs; -#endif -#endif } +#endif static PyObject * __Pyx_Coroutine_get_name(__pyx_CoroutineObject *self, void *context) { @@ -39696,12 +41395,7 @@ static int __Pyx_Coroutine_set_name(__pyx_CoroutineObject *self, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__name__ must be set to a string object"); return -1; @@ -39723,12 +41417,7 @@ static int __Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__qualname__ must be set to a string object"); return -1; @@ -39738,26 +41427,53 @@ __Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value, void return 0; } static PyObject * -__Pyx_Coroutine_get_frame(__pyx_CoroutineObject *self, void *context) +__Pyx__Coroutine_get_frame(__pyx_CoroutineObject *self) { - PyObject *frame = self->gi_frame; - CYTHON_UNUSED_VAR(context); +#if !CYTHON_COMPILING_IN_LIMITED_API + PyObject *frame; + #if PY_VERSION_HEX >= 0x030d0000 + Py_BEGIN_CRITICAL_SECTION(self); + #endif + frame = self->gi_frame; if (!frame) { if (unlikely(!self->gi_code)) { Py_RETURN_NONE; } + PyObject *globals = PyDict_New(); + if (unlikely(!globals)) return NULL; frame = (PyObject *) PyFrame_New( PyThreadState_Get(), /*PyThreadState *tstate,*/ (PyCodeObject*) self->gi_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ + globals, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); + Py_DECREF(globals); if (unlikely(!frame)) return NULL; - self->gi_frame = frame; + if (unlikely(self->gi_frame)) { + Py_DECREF(frame); + frame = self->gi_frame; + } else { + self->gi_frame = frame; + } } Py_INCREF(frame); + #if PY_VERSION_HEX >= 0x030d0000 + Py_END_CRITICAL_SECTION(); + #endif return frame; +#else + CYTHON_UNUSED_VAR(self); + Py_RETURN_NONE; +#endif +} +static PyObject * +__Pyx_Coroutine_get_frame(__pyx_CoroutineObject *self, void *context) { + CYTHON_UNUSED_VAR(context); + PyObject *frame = self->gi_frame; + if (frame) + return __Pyx_NewRef(frame); + return __Pyx__Coroutine_get_frame(self); } static __pyx_CoroutineObject *__Pyx__Coroutine_New( PyTypeObject* type, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure, @@ -39777,7 +41493,8 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit( gen->resume_label = 0; gen->classobj = NULL; gen->yieldfrom = NULL; - #if PY_VERSION_HEX >= 0x030B00a4 + gen->yieldfrom_am_send = NULL; + #if PY_VERSION_HEX >= 0x030B00a4 && !CYTHON_COMPILING_IN_LIMITED_API gen->gi_exc_state.exc_value = NULL; #else gen->gi_exc_state.exc_type = NULL; @@ -39800,95 +41517,95 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit( PyObject_GC_Track(gen); return gen; } - -/* PatchGeneratorABC */ -#ifndef CYTHON_REGISTER_ABCS -#define CYTHON_REGISTER_ABCS 1 -#endif -#if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) -static PyObject* __Pyx_patch_abc_module(PyObject *module); -static PyObject* __Pyx_patch_abc_module(PyObject *module) { - module = __Pyx_Coroutine_patch_module( - module, "" -"if _cython_generator_type is not None:\n" -" try: Generator = _module.Generator\n" -" except AttributeError: pass\n" -" else: Generator.register(_cython_generator_type)\n" -"if _cython_coroutine_type is not None:\n" -" try: Coroutine = _module.Coroutine\n" -" except AttributeError: pass\n" -" else: Coroutine.register(_cython_coroutine_type)\n" - ); - return module; +static char __Pyx_Coroutine_test_and_set_is_running(__pyx_CoroutineObject *gen) { + char result; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(gen); + #endif + result = gen->is_running; + gen->is_running = 1; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); + #endif + return result; } -#endif -static int __Pyx_patch_abc(void) { -#if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - static int abc_patched = 0; - if (CYTHON_REGISTER_ABCS && !abc_patched) { - PyObject *module; - module = PyImport_ImportModule((PY_MAJOR_VERSION >= 3) ? "collections.abc" : "collections"); - if (unlikely(!module)) { - PyErr_WriteUnraisable(NULL); - if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, - ((PY_MAJOR_VERSION >= 3) ? - "Cython module failed to register with collections.abc module" : - "Cython module failed to register with collections module"), 1) < 0)) { - return -1; - } - } else { - module = __Pyx_patch_abc_module(module); - abc_patched = 1; - if (unlikely(!module)) - return -1; - Py_DECREF(module); - } - module = PyImport_ImportModule("backports_abc"); - if (module) { - module = __Pyx_patch_abc_module(module); - Py_XDECREF(module); - } - if (!module) { - PyErr_Clear(); - } +static void __Pyx_Coroutine_unset_is_running(__pyx_CoroutineObject *gen) { + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(gen); + #endif + assert(gen->is_running); + gen->is_running = 0; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); + #endif +} +static char __Pyx_Coroutine_get_is_running(__pyx_CoroutineObject *gen) { + char result; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(gen); + #endif + result = gen->is_running; + #if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); + #endif + return result; +} +static PyObject *__Pyx_Coroutine_get_is_running_getter(PyObject *gen, void *closure) { + CYTHON_UNUSED_VAR(closure); + char result = __Pyx_Coroutine_get_is_running((__pyx_CoroutineObject*)gen); + if (result) Py_RETURN_TRUE; + else Py_RETURN_FALSE; +} +#if __PYX_HAS_PY_AM_SEND == 2 +static void __Pyx_SetBackportTypeAmSend(PyTypeObject *type, __Pyx_PyAsyncMethodsStruct *static_amsend_methods, __Pyx_pyiter_sendfunc am_send) { + Py_ssize_t ptr_offset = (char*)(type->tp_as_async) - (char*)type; + if (ptr_offset < 0 || ptr_offset > type->tp_basicsize) { + return; } -#else - if ((0)) __Pyx_Coroutine_patch_module(NULL, NULL); + memcpy((void*)static_amsend_methods, (void*)(type->tp_as_async), sizeof(*type->tp_as_async)); + static_amsend_methods->am_send = am_send; + type->tp_as_async = __Pyx_SlotTpAsAsync(static_amsend_methods); +} #endif - return 0; +static PyObject *__Pyx_Coroutine_fail_reduce_ex(PyObject *self, PyObject *arg) { + CYTHON_UNUSED_VAR(arg); + __Pyx_TypeName self_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE((PyObject*)self)); + PyErr_Format(PyExc_TypeError, "cannot pickle '" __Pyx_FMT_TYPENAME "' object", + self_type_name); + __Pyx_DECREF_TypeName(self_type_name); + return NULL; } /* Generator */ static PyMethodDef __pyx_Generator_methods[] = { {"send", (PyCFunction) __Pyx_Coroutine_Send, METH_O, - (char*) PyDoc_STR("send(arg) -> send 'arg' into generator,\nreturn next yielded value or raise StopIteration.")}, + PyDoc_STR("send(arg) -> send 'arg' into generator,\nreturn next yielded value or raise StopIteration.")}, {"throw", (PyCFunction) __Pyx_Coroutine_Throw, METH_VARARGS, - (char*) PyDoc_STR("throw(typ[,val[,tb]]) -> raise exception in generator,\nreturn next yielded value or raise StopIteration.")}, + PyDoc_STR("throw(typ[,val[,tb]]) -> raise exception in generator,\nreturn next yielded value or raise StopIteration.")}, {"close", (PyCFunction) __Pyx_Coroutine_Close_Method, METH_NOARGS, - (char*) PyDoc_STR("close() -> raise GeneratorExit inside generator.")}, + PyDoc_STR("close() -> raise GeneratorExit inside generator.")}, + {"__reduce_ex__", (PyCFunction) __Pyx_Coroutine_fail_reduce_ex, METH_O, 0}, + {"__reduce__", (PyCFunction) __Pyx_Coroutine_fail_reduce_ex, METH_NOARGS, 0}, {0, 0, 0, 0} }; static PyMemberDef __pyx_Generator_memberlist[] = { - {(char *) "gi_running", T_BOOL, offsetof(__pyx_CoroutineObject, is_running), READONLY, NULL}, - {(char*) "gi_yieldfrom", T_OBJECT, offsetof(__pyx_CoroutineObject, yieldfrom), READONLY, - (char*) PyDoc_STR("object being iterated by 'yield from', or None")}, - {(char*) "gi_code", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_code), READONLY, NULL}, - {(char *) "__module__", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_modulename), 0, 0}, -#if CYTHON_USE_TYPE_SPECS - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CoroutineObject, gi_weakreflist), READONLY, 0}, -#endif + {"gi_yieldfrom", T_OBJECT, offsetof(__pyx_CoroutineObject, yieldfrom), READONLY, + PyDoc_STR("object being iterated by 'yield from', or None")}, + {"gi_code", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_code), READONLY, NULL}, + {"__module__", T_OBJECT, offsetof(__pyx_CoroutineObject, gi_modulename), 0, 0}, + {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CoroutineObject, gi_weakreflist), READONLY, 0}, {0, 0, 0, 0, 0} }; static PyGetSetDef __pyx_Generator_getsets[] = { - {(char *) "__name__", (getter)__Pyx_Coroutine_get_name, (setter)__Pyx_Coroutine_set_name, - (char*) PyDoc_STR("name of the generator"), 0}, - {(char *) "__qualname__", (getter)__Pyx_Coroutine_get_qualname, (setter)__Pyx_Coroutine_set_qualname, - (char*) PyDoc_STR("qualified name of the generator"), 0}, - {(char *) "gi_frame", (getter)__Pyx_Coroutine_get_frame, NULL, - (char*) PyDoc_STR("Frame of the generator"), 0}, + {"__name__", (getter)__Pyx_Coroutine_get_name, (setter)__Pyx_Coroutine_set_name, + PyDoc_STR("name of the generator"), 0}, + {"__qualname__", (getter)__Pyx_Coroutine_get_qualname, (setter)__Pyx_Coroutine_set_qualname, + PyDoc_STR("qualified name of the generator"), 0}, + {"gi_frame", (getter)__Pyx_Coroutine_get_frame, NULL, + PyDoc_STR("Frame of the generator"), 0}, + {"gi_running", __Pyx_Coroutine_get_is_running_getter, NULL, NULL, NULL}, {0, 0, 0, 0, 0} }; -#if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_GeneratorType_slots[] = { {Py_tp_dealloc, (void *)__Pyx_Coroutine_dealloc}, {Py_tp_traverse, (void *)__Pyx_Coroutine_traverse}, @@ -39897,9 +41614,12 @@ static PyType_Slot __pyx_GeneratorType_slots[] = { {Py_tp_methods, (void *)__pyx_Generator_methods}, {Py_tp_members, (void *)__pyx_Generator_memberlist}, {Py_tp_getset, (void *)__pyx_Generator_getsets}, - {Py_tp_getattro, (void *) __Pyx_PyObject_GenericGetAttrNoDict}, + {Py_tp_getattro, (void *) PyObject_GenericGetAttr}, #if CYTHON_USE_TP_FINALIZE {Py_tp_finalize, (void *)__Pyx_Coroutine_del}, +#endif +#if __PYX_HAS_PY_AM_SEND == 1 + {Py_am_send, (void *)__Pyx_Coroutine_AmSend}, #endif {0, 0}, }; @@ -39907,121 +41627,72 @@ static PyType_Spec __pyx_GeneratorType_spec = { __PYX_TYPE_MODULE_PREFIX "generator", sizeof(__pyx_CoroutineObject), 0, - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE, - __pyx_GeneratorType_slots -}; -#else -static PyTypeObject __pyx_GeneratorType_type = { - PyVarObject_HEAD_INIT(0, 0) - __PYX_TYPE_MODULE_PREFIX "generator", - sizeof(__pyx_CoroutineObject), - 0, - (destructor) __Pyx_Coroutine_dealloc, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE, - 0, - (traverseproc) __Pyx_Coroutine_traverse, - 0, - 0, - offsetof(__pyx_CoroutineObject, gi_weakreflist), - 0, - (iternextfunc) __Pyx_Generator_Next, - __pyx_Generator_methods, - __pyx_Generator_memberlist, - __pyx_Generator_getsets, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, -#if CYTHON_USE_TP_FINALIZE - 0, -#else - __Pyx_Coroutine_del, -#endif - 0, -#if CYTHON_USE_TP_FINALIZE - __Pyx_Coroutine_del, -#elif PY_VERSION_HEX >= 0x030400a1 - 0, -#endif -#if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, -#endif -#if __PYX_NEED_TP_PRINT_SLOT - 0, -#endif -#if PY_VERSION_HEX >= 0x030C0000 - 0, -#endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | #endif + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_HAVE_FINALIZE | __Pyx_TPFLAGS_HAVE_AM_SEND, + __pyx_GeneratorType_slots }; +#if __PYX_HAS_PY_AM_SEND == 2 +static __Pyx_PyAsyncMethodsStruct __pyx_Generator_as_async; #endif static int __pyx_Generator_init(PyObject *module) { -#if CYTHON_USE_TYPE_SPECS - __pyx_GeneratorType = __Pyx_FetchCommonTypeFromSpec(module, &__pyx_GeneratorType_spec, NULL); -#else - CYTHON_UNUSED_VAR(module); - __pyx_GeneratorType_type.tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - __pyx_GeneratorType_type.tp_iter = PyObject_SelfIter; - __pyx_GeneratorType = __Pyx_FetchCommonType(&__pyx_GeneratorType_type); -#endif - if (unlikely(!__pyx_GeneratorType)) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + mstate->__pyx_GeneratorType = __Pyx_FetchCommonTypeFromSpec( + mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_GeneratorType_spec, NULL); + if (unlikely(!mstate->__pyx_GeneratorType)) { return -1; } +#if __PYX_HAS_PY_AM_SEND == 2 + __Pyx_SetBackportTypeAmSend(mstate->__pyx_GeneratorType, &__pyx_Generator_as_async, &__Pyx_Coroutine_AmSend); +#endif return 0; } +static PyObject *__Pyx_Generator_GetInlinedResult(PyObject *self) { + __pyx_CoroutineObject *gen = (__pyx_CoroutineObject*) self; + PyObject *retval = NULL; + if (unlikely(__Pyx_Coroutine_test_and_set_is_running(gen))) { + return __Pyx_Coroutine_AlreadyRunningError(gen); + } + __Pyx_PySendResult result = __Pyx_Coroutine_SendEx(gen, Py_None, &retval, 0); + __Pyx_Coroutine_unset_is_running(gen); + (void) result; + assert (result == PYGEN_RETURN || result == PYGEN_ERROR); + assert ((result == PYGEN_RETURN && retval != NULL) || (result == PYGEN_ERROR && retval == NULL)); + return retval; +} -/* CheckBinaryVersion */ +/* GetRuntimeVersion */ static unsigned long __Pyx_get_runtime_version(void) { -#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4 +#if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 return Py_Version & ~0xFFUL; #else - const char* rt_version = Py_GetVersion(); - unsigned long version = 0; - unsigned long factor = 0x01000000UL; - unsigned int digit = 0; - int i = 0; - while (factor) { - while ('0' <= rt_version[i] && rt_version[i] <= '9') { - digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + static unsigned long __Pyx_cached_runtime_version = 0; + if (__Pyx_cached_runtime_version == 0) { + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; + } + version += factor * digit; + if (rt_version[i] != '.') + break; + digit = 0; + factor >>= 8; ++i; } - version += factor * digit; - if (rt_version[i] != '.') - break; - digit = 0; - factor >>= 8; - ++i; + __Pyx_cached_runtime_version = version; } - return version; + return __Pyx_cached_runtime_version; #endif } + +/* CheckBinaryVersion */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { const unsigned long MAJOR_MINOR = 0xFFFF0000UL; if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) @@ -40052,14 +41723,14 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s void (*fp)(void); void *p; } tmp; - d = PyObject_GetAttrString(__pyx_m, (char *)"__pyx_capi__"); + d = PyObject_GetAttrString(__pyx_m, "__pyx_capi__"); if (!d) { PyErr_Clear(); d = PyDict_New(); if (!d) goto bad; Py_INCREF(d); - if (PyModule_AddObject(__pyx_m, (char *)"__pyx_capi__", d) < 0) + if (PyModule_AddObject(__pyx_m, "__pyx_capi__", d) < 0) goto bad; } tmp.fp = f; @@ -40078,19 +41749,24 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s } /* FunctionImport */ -#ifndef __PYX_HAVE_RT_ImportFunction_3_0_10 -#define __PYX_HAVE_RT_ImportFunction_3_0_10 -static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { +#ifndef __PYX_HAVE_RT_ImportFunction_3_1_2 +#define __PYX_HAVE_RT_ImportFunction_3_1_2 +static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { PyObject *d = 0; PyObject *cobj = 0; union { void (*fp)(void); void *p; } tmp; - d = PyObject_GetAttrString(module, (char *)"__pyx_capi__"); + d = PyObject_GetAttrString(module, "__pyx_capi__"); if (!d) goto bad; +#if (defined(Py_LIMITED_API) && Py_LIMITED_API >= 0x030d0000) || (!defined(Py_LIMITED_API) && PY_VERSION_HEX >= 0x030d0000) + PyDict_GetItemStringRef(d, funcname, &cobj); +#else cobj = PyDict_GetItemString(d, funcname); + Py_XINCREF(cobj); +#endif if (!cobj) { PyErr_Format(PyExc_ImportError, "%.200s does not export expected C function %.200s", @@ -40108,52 +41784,174 @@ static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, v if (!(*f)) goto bad; Py_DECREF(d); + Py_DECREF(cobj); return 0; bad: Py_XDECREF(d); + Py_XDECREF(cobj); return -1; } #endif -/* InitStrings */ -#if PY_MAJOR_VERSION >= 3 -static int __Pyx_InitString(__Pyx_StringTabEntry t, PyObject **str) { - if (t.is_unicode | t.is_str) { - if (t.intern) { - *str = PyUnicode_InternFromString(t.s); - } else if (t.encoding) { - *str = PyUnicode_Decode(t.s, t.n - 1, t.encoding, NULL); +/* NewCodeObj */ +#if CYTHON_COMPILING_IN_LIMITED_API + static PyObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; + PyObject *type, *value, *traceback; + PyErr_Fetch(&type, &value, &traceback); + #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); } else { - *str = PyUnicode_FromStringAndSize(t.s, t.n - 1); + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - } else { - *str = PyBytes_FromStringAndSize(t.s, t.n - 1); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); + if (type) { + PyErr_Restore(type, value, traceback); + } + return result; } - if (!*str) - return -1; - if (PyObject_Hash(*str) == -1) - return -1; - return 0; -} +#elif PY_VERSION_HEX >= 0x030B0000 + static PyCodeObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes); + return result; + } +#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#else + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #endif -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION >= 3 - __Pyx_InitString(*t, t->p); - #else +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +) { + PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL, *line_table_bytes = NULL; + Py_ssize_t var_count = (Py_ssize_t) descr.nlocals; + PyObject *varnames_tuple = PyTuple_New(var_count); + if (unlikely(!varnames_tuple)) return NULL; + for (Py_ssize_t i=0; i < var_count; i++) { + Py_INCREF(varnames[i]); + if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0)) goto done; + } + #if CYTHON_COMPILING_IN_LIMITED_API + varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple); + if (!varnames_tuple_dedup) { + if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0)) goto done; + varnames_tuple_dedup = varnames_tuple; + } + #else + varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple); + if (unlikely(!varnames_tuple_dedup)) goto done; + #endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(varnames_tuple_dedup); + #endif + if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL + && !CYTHON_COMPILING_IN_GRAAL) { + line_table_bytes = PyBytes_FromStringAndSize(line_table, descr.line_table_length); + if (unlikely(!line_table_bytes)) goto done; + Py_ssize_t code_len = (descr.line_table_length * 2 + 4) & ~3; + code_bytes = PyBytes_FromStringAndSize(NULL, code_len); + if (unlikely(!code_bytes)) goto done; + char* c_code_bytes = PyBytes_AsString(code_bytes); + if (unlikely(!c_code_bytes)) goto done; + memset(c_code_bytes, 0, (size_t) code_len); + } + code_obj = (PyObject*) __Pyx__PyCode_New( + (int) descr.argcount, + (int) descr.num_posonly_args, + (int) descr.num_kwonly_args, + (int) descr.nlocals, + 0, + (int) descr.flags, + code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + varnames_tuple_dedup, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + filename, + funcname, + (int) descr.first_line, + (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table_bytes) ? line_table_bytes : __pyx_mstate_global->__pyx_empty_bytes + ); +done: + Py_XDECREF(code_bytes); + Py_XDECREF(line_table_bytes); + #if CYTHON_AVOID_BORROWED_REFS + Py_XDECREF(varnames_tuple_dedup); + #endif + Py_DECREF(varnames_tuple); + return code_obj; +} + +/* InitStrings */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names) { + while (t->s) { + PyObject *str; if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); + if (t->intern) { + str = PyUnicode_InternFromString(t->s); + } else if (t->encoding) { + str = PyUnicode_Decode(t->s, t->n - 1, encoding_names[t->encoding], NULL); + } else { + str = PyUnicode_FromStringAndSize(t->s, t->n - 1); + } } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); + str = PyBytes_FromStringAndSize(t->s, t->n - 1); } - if (!*t->p) + if (!str) return -1; - if (PyObject_Hash(*t->p) == -1) + *target = str; + if (PyObject_Hash(str) == -1) return -1; - #endif ++t; + ++target; } return 0; } @@ -40181,31 +41979,30 @@ static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; return __Pyx_PyObject_AsStringAndSize(o, &ignore); } -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#if !CYTHON_PEP393_ENABLED -static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - char* defenc_c; - PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); - if (!defenc) return NULL; - defenc_c = PyBytes_AS_STRING(defenc); -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API { - char* end = defenc_c + PyBytes_GET_SIZE(defenc); - char* c; - for (c = defenc_c; c < end; c++) { - if ((unsigned char) (*c) >= 128) { - PyUnicode_AsASCIIString(o); - return NULL; - } + const char* result; + Py_ssize_t unicode_length; + CYTHON_MAYBE_UNUSED_VAR(unicode_length); // only for __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #if __PYX_LIMITED_VERSION_HEX < 0x030A0000 + if (unlikely(PyArg_Parse(o, "s#", &result, length) < 0)) return NULL; + #else + result = PyUnicode_AsUTF8AndSize(o, length); + #endif + #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + unicode_length = PyUnicode_GetLength(o); + if (unlikely(unicode_length < 0)) return NULL; + if (unlikely(unicode_length != *length)) { + PyUnicode_AsASCIIString(o); + return NULL; } + #endif + return result; } -#endif - *length = PyBytes_GET_SIZE(defenc); - return defenc_c; -} #else -static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII if (likely(PyUnicode_IS_ASCII(o))) { *length = PyUnicode_GET_LENGTH(o); @@ -40217,25 +42014,25 @@ static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py #else return PyUnicode_AsUTF8AndSize(o, length); #endif -} #endif +} #endif static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT - if ( -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - __Pyx_sys_getdefaultencoding_not_ascii && -#endif - PyUnicode_Check(o)) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + if (PyUnicode_Check(o)) { return __Pyx_PyUnicode_AsStringAndSize(o, length); } else #endif -#if (!CYTHON_COMPILING_IN_PYPY && !CYTHON_COMPILING_IN_LIMITED_API) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) if (PyByteArray_Check(o)) { +#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))) *length = PyByteArray_GET_SIZE(o); return PyByteArray_AS_STRING(o); - } else +#else + *length = PyByteArray_Size(o); + if (*length == -1) return NULL; + return PyByteArray_AsString(o); #endif + } else { char* result; int r = PyBytes_AsStringAndSize(o, &result, length); @@ -40258,9 +42055,8 @@ static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { Py_DECREF(x); return retval; } -static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { - __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); -#if PY_MAJOR_VERSION >= 3 +static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) { + __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result)); if (PyLong_Check(result)) { if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, "__int__ returned non-int (type " __Pyx_FMT_TYPENAME "). " @@ -40274,74 +42070,44 @@ static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const __Pyx_DECREF_TypeName(result_type_name); return result; } -#endif PyErr_Format(PyExc_TypeError, - "__%.4s__ returned non-%.4s (type " __Pyx_FMT_TYPENAME ")", - type_name, type_name, result_type_name); + "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ")", + result_type_name); __Pyx_DECREF_TypeName(result_type_name); Py_DECREF(result); return NULL; } -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) { #if CYTHON_USE_TYPE_SLOTS PyNumberMethods *m; #endif - const char *name = NULL; PyObject *res = NULL; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x) || PyLong_Check(x))) -#else if (likely(PyLong_Check(x))) -#endif - return __Pyx_NewRef(x); + return __Pyx_NewRef(x); #if CYTHON_USE_TYPE_SLOTS m = Py_TYPE(x)->tp_as_number; - #if PY_MAJOR_VERSION < 3 - if (m && m->nb_int) { - name = "int"; - res = m->nb_int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = m->nb_long(x); - } - #else if (likely(m && m->nb_int)) { - name = "int"; - res = m->nb_int(x); + res = m->nb_int(x); } - #endif #else if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { - res = PyNumber_Int(x); + res = PyNumber_Long(x); } #endif if (likely(res)) { -#if PY_MAJOR_VERSION < 3 - if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { -#else - if (unlikely(!PyLong_CheckExact(res))) { -#endif - return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); - } + if (unlikely(!PyLong_CheckExact(res))) { + return __Pyx_PyNumber_LongWrongResultType(res); + } } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); + PyErr_SetString(PyExc_TypeError, + "an integer is required"); } return res; } static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; PyObject *x; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(b))) { - if (sizeof(Py_ssize_t) >= sizeof(long)) - return PyInt_AS_LONG(b); - else - return PyInt_AsSsize_t(b); - } -#endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS if (likely(__Pyx_PyLong_IsCompact(b))) { @@ -40387,34 +42153,349 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { } x = PyNumber_Index(b); if (!x) return -1; - ival = PyInt_AsSsize_t(x); + ival = PyLong_AsSsize_t(x); Py_DECREF(x); return ival; } static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) { if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) { return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o); -#if PY_MAJOR_VERSION < 3 - } else if (likely(PyInt_CheckExact(o))) { - return PyInt_AS_LONG(o); -#endif } else { Py_ssize_t ival; PyObject *x; x = PyNumber_Index(o); if (!x) return -1; - ival = PyInt_AsLong(x); + ival = PyLong_AsLong(x); Py_DECREF(x); return ival; } } +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b) { + CYTHON_UNUSED_VAR(b); + return __Pyx_NewRef(Py_None); +} static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); } -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { - return PyInt_FromSize_t(ival); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t ival) { + return PyLong_FromSize_t(ival); +} + + +/* MultiPhaseInitModuleState */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000) + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1 +#else + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0 +#endif +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS +#error "Module state with PEP489 requires atomics. Currently that's one of\ + C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics" +#endif +#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#define __Pyx_ModuleStateLookup_Lock() +#define __Pyx_ModuleStateLookup_Unlock() +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000 +static PyMutex __Pyx_ModuleStateLookup_mutex = {0}; +#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(__cplusplus) && __cplusplus >= 201103L +#include +static std::mutex __Pyx_ModuleStateLookup_mutex; +#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock() +#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock() +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__) +#include +static mtx_t __Pyx_ModuleStateLookup_mutex; +static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT; +static void __Pyx_ModuleStateLookup_initialize_mutex(void) { + mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain); +} +#define __Pyx_ModuleStateLookup_Lock()\ + call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\ + mtx_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(HAVE_PTHREAD_H) +#include +static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER; +#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(_WIN32) +#include // synchapi.h on its own doesn't work +static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT; +#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#else +#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\ + Requires C standard >= C11, or C++ standard >= C++11,\ + or pthreads, or the Windows 32 API, or Python >= 3.13." +#endif +typedef struct { + int64_t id; + PyObject *module; +} __Pyx_InterpreterIdAndModule; +typedef struct { + char interpreter_id_as_index; + Py_ssize_t count; + Py_ssize_t allocated; + __Pyx_InterpreterIdAndModule table[1]; +} __Pyx_ModuleStateLookupData; +#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32 +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0; +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0; +#else +static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL; +#endif +static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound( + __Pyx_InterpreterIdAndModule* table, + Py_ssize_t count, + int64_t interpreterId) { + __Pyx_InterpreterIdAndModule* begin = table; + __Pyx_InterpreterIdAndModule* end = begin + count; + if (begin->id == interpreterId) { + return begin; + } + while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2; + if (halfway->id == interpreterId) { + return halfway; + } + if (halfway->id < interpreterId) { + begin = halfway; + } else { + end = halfway; + } + } + for (; begin < end; ++begin) { + if (begin->id >= interpreterId) return begin; + } + return begin; +} +static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return NULL; +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + { + __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + if (likely(data)) { + __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data); + if (likely(data == new_data)) { + goto read_finished; + } + } + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + __Pyx_ModuleStateLookup_Lock(); + __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter); + data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + __Pyx_ModuleStateLookup_Unlock(); + } + read_finished:; +#else + __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_InterpreterIdAndModule* found = NULL; + if (unlikely(!data)) goto end; + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + found = data->table+interpreter_id; + } + } else { + found = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + } + end: + { + PyObject *result=NULL; + if (found && found->id == interpreter_id) { + result = found->module; + } +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); +#endif + return result; + } +} +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static void __Pyx_ModuleStateLookup_wait_until_no_readers(void) { + while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0); } - +#else +#define __Pyx_ModuleStateLookup_wait_until_no_readers() +#endif +static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) { + Py_ssize_t to_allocate = (*old_data)->allocated; + while (to_allocate <= interpreter_id) { + if (to_allocate == 0) to_allocate = 1; + else to_allocate *= 2; + } + __Pyx_ModuleStateLookupData *new_data = *old_data; + if (to_allocate != (*old_data)->allocated) { + new_data = (__Pyx_ModuleStateLookupData *)realloc( + *old_data, + sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + PyErr_NoMemory(); + return -1; + } + for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) { + new_data->table[i].id = i; + new_data->table[i].module = NULL; + } + new_data->allocated = to_allocate; + } + new_data->table[interpreter_id].module = module; + if (new_data->count < interpreter_id+1) { + new_data->count = interpreter_id+1; + } + *old_data = new_data; + return 0; +} +static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) { + __Pyx_InterpreterIdAndModule *read = data->table; + __Pyx_InterpreterIdAndModule *write = data->table; + __Pyx_InterpreterIdAndModule *end = read + data->count; + for (; readmodule) { + write->id = read->id; + write->module = read->module; + ++write; + } + } + data->count = write - data->table; + for (; writeid = 0; + write->module = NULL; + } + data->interpreter_id_as_index = 0; +} +static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + int result = 0; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_ModuleStateLookupData *new_data = old_data; + if (!new_data) { + new_data = (__Pyx_ModuleStateLookupData *)calloc(1, sizeof(__Pyx_ModuleStateLookupData)); + if (!new_data) { + result = -1; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = 1; + new_data->interpreter_id_as_index = 1; + } + __Pyx_ModuleStateLookup_wait_until_no_readers(); + if (new_data->interpreter_id_as_index) { + if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id); + goto end; + } + __Pyx_State_ConvertFromInterpIdAsIndex(new_data); + } + { + Py_ssize_t insert_at = 0; + { + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + new_data->table, new_data->count, interpreter_id); + assert(lower_bound); + insert_at = lower_bound - new_data->table; + if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) { + lower_bound->module = module; + goto end; // already in table, nothing more to do + } + } + if (new_data->count+1 >= new_data->allocated) { + Py_ssize_t to_allocate = (new_data->count+1)*2; + new_data = + (__Pyx_ModuleStateLookupData*)realloc( + new_data, + sizeof(__Pyx_ModuleStateLookupData) + + (to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + result = -1; + new_data = old_data; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = to_allocate; + } + ++new_data->count; + int64_t last_id = interpreter_id; + PyObject *last_module = module; + for (Py_ssize_t i=insert_at; icount; ++i) { + int64_t current_id = new_data->table[i].id; + new_data->table[i].id = last_id; + last_id = current_id; + PyObject *current_module = new_data->table[i].module; + new_data->table[i].module = last_module; + last_module = current_module; + } + } + end: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data); +#else + __Pyx_ModuleStateLookup_data = new_data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return result; +} +static int __Pyx_State_RemoveModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data; +#endif + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + data->table[interpreter_id].module = NULL; + } + goto done; + } + { + __Pyx_ModuleStateLookup_wait_until_no_readers(); + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + if (!lower_bound) goto done; + if (lower_bound->id != interpreter_id) goto done; + __Pyx_InterpreterIdAndModule *end = data->table+data->count; + for (;lower_boundid = (lower_bound+1)->id; + lower_bound->module = (lower_bound+1)->module; + } + } + --data->count; + if (data->count == 0) { + free(data); + data = NULL; + } + done: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data); +#else + __Pyx_ModuleStateLookup_data = data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return 0; +} +#endif /* #### Code section: utility_code_pragmas_end ### */ #ifdef _MSC_VER diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index 70d9391..d24d6ff 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.10 */ +/* Generated by Cython 3.1.2 */ /* BEGIN: Cython Metadata { @@ -21,49 +21,21 @@ END: Cython Metadata */ #ifndef PY_SSIZE_T_CLEAN #define PY_SSIZE_T_CLEAN #endif /* PY_SSIZE_T_CLEAN */ -#if defined(CYTHON_LIMITED_API) && 0 - #ifndef Py_LIMITED_API - #if CYTHON_LIMITED_API+0 > 0x03030000 - #define Py_LIMITED_API CYTHON_LIMITED_API - #else - #define Py_LIMITED_API 0x03030000 - #endif - #endif +/* InitLimitedAPI */ +#if defined(Py_LIMITED_API) && !defined(CYTHON_LIMITED_API) + #define CYTHON_LIMITED_API 1 #endif #include "Python.h" - - #if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyFloat_FromString(obj) PyFloat_FromString(obj) - #else - #define __Pyx_PyFloat_FromString(obj) PyFloat_FromString(obj, NULL) - #endif - - - #if PY_MAJOR_VERSION <= 2 - #define PyDict_GetItemWithError _PyDict_GetItemWithError - #endif - - - #if (PY_VERSION_HEX < 0x030700b1 || (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030600)) && !defined(PyContextVar_Get) - #define PyContextVar_Get(var, d, v) ((d) ? ((void)(var), Py_INCREF(d), (v)[0] = (d), 0) : ((v)[0] = NULL, 0) ) - #endif - #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) - #error Cython requires Python 2.7+ or Python 3.3+. -#else -#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API -#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#elif PY_VERSION_HEX < 0x03080000 + #error Cython requires Python 3.8+. #else -#define __PYX_EXTRA_ABI_MODULE_NAME "" -#endif -#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME -#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI -#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x03000AF0 +#define __PYX_ABI_VERSION "3_1_2" +#define CYTHON_HEX_VERSION 0x030102F0 #define CYTHON_FUTURE_DIVISION 1 +/* CModulePreamble */ #include #ifndef offsetof #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) @@ -103,19 +75,13 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 1 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 #undef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -126,8 +92,12 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -139,18 +109,22 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #undef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #undef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 + #define CYTHON_USE_EXC_INFO_STACK 1 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif @@ -161,20 +135,14 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 + #define CYTHON_USE_TYPE_SLOTS 1 #ifndef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -185,8 +153,13 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -198,7 +171,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #if PY_VERSION_HEX < 0x03090000 #undef CYTHON_PEP489_MULTI_PHASE_INIT @@ -208,14 +181,19 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00) + #endif + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100) #endif #undef CYTHON_USE_FREELISTS #define CYTHON_USE_FREELISTS 0 @@ -228,7 +206,7 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_CLINE_IN_TRACEBACK #define CYTHON_CLINE_IN_TRACEBACK 0 #undef CYTHON_USE_TYPE_SLOTS @@ -237,8 +215,6 @@ END: Cython Metadata */ #define CYTHON_USE_TYPE_SPECS 1 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -251,8 +227,13 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -260,71 +241,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_GIL #define CYTHON_FAST_GIL 0 #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #undef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 1 - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #endif - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 1 - #ifndef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #ifndef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #endif - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #ifndef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif - #ifndef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #endif - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 1 - #endif + #define CYTHON_METH_FASTCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS @@ -336,26 +253,37 @@ END: Cython Metadata */ #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 + #endif + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000) #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 - #endif - #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 - #ifndef CYTHON_USE_TYPE_SLOTS + #ifdef Py_GIL_DISABLED + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1 + #else + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 + #endif + #if PY_VERSION_HEX < 0x030A0000 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #elif !defined(CYTHON_USE_TYPE_SLOTS) #define CYTHON_USE_TYPE_SLOTS 1 #endif #ifndef CYTHON_USE_TYPE_SPECS @@ -364,22 +292,19 @@ END: Cython Metadata */ #ifndef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 1 #endif - #if PY_MAJOR_VERSION < 3 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #ifndef CYTHON_USE_PYLONG_INTERNALS #define CYTHON_USE_PYLONG_INTERNALS 1 #endif - #ifndef CYTHON_USE_PYLIST_INTERNALS + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLIST_INTERNALS) #define CYTHON_USE_PYLIST_INTERNALS 1 #endif #ifndef CYTHON_USE_UNICODE_INTERNALS #define CYTHON_USE_UNICODE_INTERNALS 1 #endif - #if PY_VERSION_HEX < 0x030300F0 || PY_VERSION_HEX >= 0x030B00A2 + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2 #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 #elif !defined(CYTHON_USE_UNICODE_WRITER) @@ -388,20 +313,32 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 + #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS) + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #ifndef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 1 #endif + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #ifndef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 1 #endif #ifndef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 1 #endif - #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #elif !defined(CYTHON_FAST_GIL) + #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) + #define CYTHON_METH_FASTCALL 1 #endif #ifndef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 1 @@ -409,51 +346,49 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif - #if PY_VERSION_HEX < 0x030400a1 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #elif !defined(CYTHON_USE_TP_FINALIZE) + #ifndef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1) + #endif + #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif - #if PY_VERSION_HEX < 0x030600B1 + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 1 + #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #elif !defined(CYTHON_USE_DICT_VERSIONS) - #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5) + #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE) #endif - #if PY_VERSION_HEX < 0x030700A3 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #elif !defined(CYTHON_USE_EXC_INFO_STACK) + #ifndef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 1 #endif #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 1 + #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING) #endif #endif -#if !defined(CYTHON_FAST_PYCCALL) -#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#ifndef CYTHON_FAST_PYCCALL +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCALL #endif -#if !defined(CYTHON_VECTORCALL) +#ifndef CYTHON_VECTORCALL +#if CYTHON_COMPILING_IN_LIMITED_API +#define CYTHON_VECTORCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) +#else #define CYTHON_VECTORCALL (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1) #endif +#endif #define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1) #if CYTHON_USE_PYLONG_INTERNALS - #if PY_MAJOR_VERSION < 3 - #include "longintrepr.h" - #endif #undef SHIFT #undef BASE #undef MASK @@ -513,7 +448,7 @@ END: Cython Metadata */ #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x) #endif #ifndef CYTHON_NCP_UNUSED -# if CYTHON_COMPILING_IN_CPYTHON +# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING # define CYTHON_NCP_UNUSED # else # define CYTHON_NCP_UNUSED CYTHON_UNUSED @@ -588,6 +523,9 @@ END: Cython Metadata */ #endif #endif #endif +#ifndef Py_UNREACHABLE + #define Py_UNREACHABLE() assert(0); abort() +#endif #ifdef __cplusplus template struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; @@ -602,6 +540,7 @@ END: Cython Metadata */ #endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) +/* CInitCode */ #ifndef CYTHON_INLINE #if defined(__clang__) #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) @@ -616,109 +555,42 @@ END: Cython Metadata */ #endif #endif +/* PythonCompatibility */ #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" - #define __Pyx_DefaultClassType PyClass_Type - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" - #define __Pyx_DefaultClassType PyType_Type +#define __Pyx_BUILTIN_MODULE_NAME "builtins" +#define __Pyx_DefaultClassType PyType_Type #if CYTHON_COMPILING_IN_LIMITED_API - static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyObject *exception_table = NULL; - PyObject *types_module=NULL, *code_type=NULL, *result=NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 - PyObject *version_info; - PyObject *py_minor_version = NULL; - #endif - long minor_version = 0; - PyObject *type, *value, *traceback; - PyErr_Fetch(&type, &value, &traceback); - #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 - minor_version = 11; - #else - if (!(version_info = PySys_GetObject("version_info"))) goto end; - if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; - minor_version = PyLong_AsLong(py_minor_version); - Py_DECREF(py_minor_version); - if (minor_version == -1 && PyErr_Occurred()) goto end; - #endif - if (!(types_module = PyImport_ImportModule("types"))) goto end; - if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; - if (minor_version <= 7) { - (void)p; - result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else if (minor_version <= 10) { - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else { - if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); - } - end: - Py_XDECREF(code_type); - Py_XDECREF(exception_table); - Py_XDECREF(types_module); - if (type) { - PyErr_Restore(type, value, traceback); - } - return result; - } #ifndef CO_OPTIMIZED - #define CO_OPTIMIZED 0x0001 + static int CO_OPTIMIZED; #endif #ifndef CO_NEWLOCALS - #define CO_NEWLOCALS 0x0002 + static int CO_NEWLOCALS; #endif #ifndef CO_VARARGS - #define CO_VARARGS 0x0004 + static int CO_VARARGS; #endif #ifndef CO_VARKEYWORDS - #define CO_VARKEYWORDS 0x0008 + static int CO_VARKEYWORDS; #endif #ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x0200 + static int CO_ASYNC_GENERATOR; #endif #ifndef CO_GENERATOR - #define CO_GENERATOR 0x0020 + static int CO_GENERATOR; #endif #ifndef CO_COROUTINE - #define CO_COROUTINE 0x0080 + static int CO_COROUTINE; #endif -#elif PY_VERSION_HEX >= 0x030B0000 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyCodeObject *result; - PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); - if (!empty_bytes) return NULL; - result = - #if PY_VERSION_HEX >= 0x030C0000 - PyUnstable_Code_NewWithPosOnlyArgs - #else - PyCode_NewWithPosOnlyArgs - #endif - (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); - Py_DECREF(empty_bytes); - return result; - } -#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #else - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x80 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x200 + #endif #endif +static int __Pyx_init_co_variables(void); #if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE) #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type) #else @@ -750,12 +622,6 @@ END: Cython Metadata */ #else #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) #endif -#ifndef CO_COROUTINE - #define CO_COROUTINE 0x80 -#endif -#ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x200 -#endif #ifndef Py_TPFLAGS_CHECKTYPES #define Py_TPFLAGS_CHECKTYPES 0 #endif @@ -777,7 +643,7 @@ END: Cython Metadata */ #ifndef METH_STACKLESS #define METH_STACKLESS 0 #endif -#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) +#ifndef METH_FASTCALL #ifndef METH_FASTCALL #define METH_FASTCALL 0x80 #endif @@ -815,7 +681,7 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_MAJOR_VERSION >= 0x030900B1 +#if PY_VERSION_HEX >= 0x030900B1 #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) #else #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) @@ -832,7 +698,7 @@ static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; } #endif -static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void (*cfunc)(void)) { #if CYTHON_COMPILING_IN_LIMITED_API return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; #else @@ -840,7 +706,7 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #endif } #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) -#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 +#if __PYX_LIMITED_VERSION_HEX < 0x03090000 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -856,8 +722,10 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define PyObject_Realloc(p) PyMem_Realloc(p) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) +#elif CYTHON_COMPILING_IN_GRAAL + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno)) #else #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) @@ -868,15 +736,11 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define __Pyx_PyThreadState_Current PyThreadState_GET() #elif PY_VERSION_HEX >= 0x030d00A1 #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() -#elif PY_VERSION_HEX >= 0x03060000 - #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() -#elif PY_VERSION_HEX >= 0x03000000 - #define __Pyx_PyThreadState_Current PyThreadState_GET() #else - #define __Pyx_PyThreadState_Current _PyThreadState_Current + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #endif -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) +#if CYTHON_USE_MODULE_STATE +static CYTHON_INLINE void *__Pyx__PyModule_GetState(PyObject *op) { void *result; result = PyModule_GetState(op); @@ -884,85 +748,43 @@ static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) Py_FatalError("Couldn't find the module state"); return result; } -#endif -#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE(obj), name, func_ctype) -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) +#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o) #else - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) -#endif -#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) -#include "pythread.h" -#define Py_tss_NEEDS_INIT 0 -typedef int Py_tss_t; -static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { - *key = PyThread_create_key(); - return 0; -} -static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { - Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); - *key = Py_tss_NEEDS_INIT; - return key; -} -static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { - PyObject_Free(key); -} -static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { - return *key != Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { - PyThread_delete_key(*key); - *key = Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { - return PyThread_set_key_value(*key, value); -} -static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { - return PyThread_get_key_value(*key); -} -#endif -#if PY_MAJOR_VERSION < 3 - #if CYTHON_COMPILING_IN_PYPY - #if PYPY_VERSION_NUM < 0x07030600 - #if defined(__cplusplus) && __cplusplus >= 201402L - [[deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")]] - #elif defined(__GNUC__) || defined(__clang__) - __attribute__ ((__deprecated__("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6"))) - #elif defined(_MSC_VER) - __declspec(deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")) - #endif - static CYTHON_INLINE int PyGILState_Check(void) { - return 0; - } - #else // PYPY_VERSION_NUM < 0x07030600 - #endif // PYPY_VERSION_NUM < 0x07030600 - #else - static CYTHON_INLINE int PyGILState_Check(void) { - PyThreadState * tstate = _PyThreadState_Current; - return tstate && (tstate == PyGILState_GetThisThreadState()); - } - #endif +#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) +#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype) +#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype) +#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#if CYTHON_USE_TYPE_SLOTS + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype) + #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL) + #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) +#else + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\ + ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\ + (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\ + __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL) + #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype) + #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype) +#endif +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() #endif -#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) +#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); if (res == NULL) PyErr_Clear(); return res; } -#elif PY_MAJOR_VERSION >= 3 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000) +#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000 #define __Pyx_PyDict_GetItemStrWithError PyDict_GetItemWithError #define __Pyx_PyDict_GetItemStr PyDict_GetItem #else @@ -986,17 +808,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if CYTHON_USE_TYPE_SLOTS #define __Pyx_PyType_GetFlags(tp) (((PyTypeObject *)tp)->tp_flags) #define __Pyx_PyType_HasFeature(type, feature) ((__Pyx_PyType_GetFlags(type) & (feature)) != 0) - #define __Pyx_PyObject_GetIterNextFunc(obj) (Py_TYPE(obj)->tp_iternext) #else #define __Pyx_PyType_GetFlags(tp) (PyType_GetFlags((PyTypeObject *)tp)) #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) - #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) -#else - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) #endif +#define __Pyx_PyObject_GetIterNextFunc(iterator) __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc) #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ PyTypeObject *type = Py_TYPE((PyObject*)obj);\ @@ -1008,24 +824,20 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyHeapTypeObject_GC_Del(obj) PyObject_GC_Del(obj) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define CYTHON_PEP393_ENABLED 1 #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GetLength(u)) -#elif PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) - #define CYTHON_PEP393_ENABLED 1 +#else #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_READY(op) (0) #else #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ 0 : _PyUnicode_Ready((PyObject *)(op))) #endif - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) @@ -1041,20 +853,6 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) #endif #endif -#else - #define CYTHON_PEP393_ENABLED 0 - #define PyUnicode_1BYTE_KIND 1 - #define PyUnicode_2BYTE_KIND 2 - #define PyUnicode_4BYTE_KIND 4 - #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) - #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) - #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) - #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) - #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) @@ -1068,8 +866,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if !defined(PyUnicode_DecodeUnicodeEscape) #define PyUnicode_DecodeUnicodeEscape(s, size, errors) PyUnicode_Decode(s, size, "unicode_escape", errors) #endif - #if !defined(PyUnicode_Contains) || (PY_MAJOR_VERSION == 2 && PYPY_VERSION_NUM < 0x07030500) - #undef PyUnicode_Contains + #if !defined(PyUnicode_Contains) #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) #endif #if !defined(PyByteArray_Check) @@ -1079,33 +876,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) #endif #endif -#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) #define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) -#else - #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) -#endif -#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) - #define PyObject_ASCII(o) PyObject_Repr(o) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#ifndef PyObject_Unicode - #define PyObject_Unicode PyObject_Str -#endif -#endif -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) - #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) -#else - #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) - #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) -#endif #if CYTHON_COMPILING_IN_CPYTHON #define __Pyx_PySequence_ListKeepNew(obj)\ (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj)) @@ -1122,28 +893,83 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif +#if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) + #else + #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i) + #endif +#elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i)) + #endif +#else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_NewRef(PyList_GET_ITEM(o, i)) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result) +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyObject_GetItem(dict, key); + if (*result == NULL) { + if (PyErr_ExceptionMatches(PyExc_KeyError)) { + PyErr_Clear(); + return 0; + } + return -1; + } + return 1; +} +#else +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyDict_GetItemWithError(dict, key); + if (*result == NULL) { + return PyErr_Occurred() ? -1 : 0; + } + Py_INCREF(*result); + return 1; +} +#endif +#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST + #define __Pyx_VISIT_CONST(obj) Py_VISIT(obj) +#else + #define __Pyx_VISIT_CONST(obj) +#endif #if CYTHON_ASSUME_SAFE_MACROS #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i) #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i) +#endif +#if CYTHON_ASSUME_SAFE_SIZE #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o) #else - #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) - #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) - #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) - #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o) #endif -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) #else static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { @@ -1152,64 +978,108 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, return module; } #endif -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define __Pyx_Py3Int_Check(op) PyLong_Check(op) - #define __Pyx_Py3Int_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask - #define PyNumber_Int PyNumber_Long -#else - #define __Pyx_Py3Int_Check(op) (PyLong_Check(op) || PyInt_Check(op)) - #define __Pyx_Py3Int_CheckExact(op) (PyLong_CheckExact(op) || PyInt_CheckExact(op)) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif -#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY - #ifndef PyUnicode_InternFromString - #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) - #endif -#endif -#if PY_VERSION_HEX < 0x030200A4 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsHash_t -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsSsize_t -#endif -#if CYTHON_USE_ASYNC_SLOTS - #if PY_VERSION_HEX >= 0x030500B1 - #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods - #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) - #else - #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) - #endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString) + #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) +#endif +#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t +#define __Pyx_PyLong_AsHash_t __Pyx_PyIndex_AsSsize_t +#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000 + #define __Pyx_PySendResult PySendResult #else - #define __Pyx_PyType_AsAsync(obj) NULL + typedef enum { + PYGEN_RETURN = 0, + PYGEN_ERROR = -1, + PYGEN_NEXT = 1, + } __Pyx_PySendResult; #endif -#ifndef __Pyx_PyAsyncMethodsStruct - typedef struct { - unaryfunc am_await; +#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3 + typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result); +#else + #define __Pyx_pyiter_sendfunc sendfunc +#endif +#if !CYTHON_USE_AM_SEND +#define __PYX_HAS_PY_AM_SEND 0 +#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000 +#define __PYX_HAS_PY_AM_SEND 1 +#else +#define __PYX_HAS_PY_AM_SEND 2 // our own backported implementation +#endif +#if __PYX_HAS_PY_AM_SEND < 2 + #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods +#else + typedef struct { + unaryfunc am_await; unaryfunc am_aiter; unaryfunc am_anext; + __Pyx_pyiter_sendfunc am_send; } __Pyx_PyAsyncMethodsStruct; + #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s)) +#endif +#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0 + #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21) +#else + #define __Pyx_TPFLAGS_HAVE_AM_SEND (0) +#endif +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyInterpreterState_Get() PyInterpreterState_Get() +#else +#define __Pyx_PyInterpreterState_Get() PyThreadState_Get()->interp +#endif +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000 +#ifdef __cplusplus +extern "C" +#endif +PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); +#endif +#if CYTHON_COMPILING_IN_LIMITED_API +static int __Pyx_init_co_variable(PyObject *inspect, const char* name, int *write_to) { + int value; + PyObject *py_value = PyObject_GetAttrString(inspect, name); + if (!py_value) return 0; + value = (int) PyLong_AsLong(py_value); + Py_DECREF(py_value); + *write_to = value; + return value != -1 || !PyErr_Occurred(); +} +static int __Pyx_init_co_variables(void) { + PyObject *inspect; + int result; + inspect = PyImport_ImportModule("inspect"); + result = +#if !defined(CO_OPTIMIZED) + __Pyx_init_co_variable(inspect, "CO_OPTIMIZED", &CO_OPTIMIZED) && +#endif +#if !defined(CO_NEWLOCALS) + __Pyx_init_co_variable(inspect, "CO_NEWLOCALS", &CO_NEWLOCALS) && +#endif +#if !defined(CO_VARARGS) + __Pyx_init_co_variable(inspect, "CO_VARARGS", &CO_VARARGS) && +#endif +#if !defined(CO_VARKEYWORDS) + __Pyx_init_co_variable(inspect, "CO_VARKEYWORDS", &CO_VARKEYWORDS) && +#endif +#if !defined(CO_ASYNC_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) && +#endif +#if !defined(CO_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_GENERATOR", &CO_GENERATOR) && +#endif +#if !defined(CO_COROUTINE) + __Pyx_init_co_variable(inspect, "CO_COROUTINE", &CO_COROUTINE) && +#endif + 1; + Py_DECREF(inspect); + return result ? 0 : -1; +} +#else +static int __Pyx_init_co_variables(void) { + return 0; // It's a limited API-only feature +} #endif +/* MathInitCode */ #if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) - #if !defined(_USE_MATH_DEFINES) + #ifndef _USE_MATH_DEFINES #define _USE_MATH_DEFINES #endif #endif @@ -1229,8 +1099,17 @@ static CYTHON_INLINE float __PYX_NAN() { #define __Pyx_truncl truncl #endif -#define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } +#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 0 +#endif +#ifndef CYTHON_CLINE_IN_TRACEBACK +#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#endif +#if CYTHON_CLINE_IN_TRACEBACK +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; } +#else +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; } +#endif #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } @@ -1258,8 +1137,47 @@ static CYTHON_INLINE float __PYX_NAN() { #include #include "vendor/_compat.h" #include "pystate.h" + + #if PY_MAJOR_VERSION >= 3 + #define __Pyx_PyFloat_FromString(obj) PyFloat_FromString(obj) + #else + #define __Pyx_PyFloat_FromString(obj) PyFloat_FromString(obj, NULL) + #endif + #include + + #if PY_MAJOR_VERSION <= 2 + #define PyDict_GetItemWithError _PyDict_GetItemWithError + #endif + + + #if PY_VERSION_HEX < 0x030d0000 + static CYTHON_INLINE int __Pyx_PyWeakref_GetRef(PyObject *ref, PyObject **pobj) + { + PyObject *obj = PyWeakref_GetObject(ref); + if (obj == NULL) { + // SystemError if ref is NULL + *pobj = NULL; + return -1; + } + if (obj == Py_None) { + *pobj = NULL; + return 0; + } + Py_INCREF(obj); + *pobj = obj; + return 1; + } + #else + #define __Pyx_PyWeakref_GetRef PyWeakref_GetRef + #endif + #include "pythread.h" + + #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030600) && !defined(PyContextVar_Get) + #define PyContextVar_Get(var, d, v) ((d) ? ((void)(var), Py_INCREF(d), (v)[0] = (d), 0) : ((v)[0] = NULL, 0) ) + #endif + #ifdef _OPENMP #include #endif /* _OPENMP */ @@ -1268,12 +1186,8 @@ static CYTHON_INLINE float __PYX_NAN() { #define CYTHON_WITHOUT_ASSERTIONS #endif -typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; - const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; - #define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 #define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) #define __PYX_DEFAULT_STRING_ENCODING "" #define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString #define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize @@ -1316,19 +1230,23 @@ static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); -#if PY_MAJOR_VERSION < 3 - #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#else - #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize -#endif -#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s) +#else + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s) +#endif #define __Pyx_PyObject_AsWritableString(s) ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableSString(s) ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) @@ -1337,32 +1255,44 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) #define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) #define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) -#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef) + return Py_NewRef(obj); +#else + Py_INCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef) + return Py_XNewRef(obj); +#else + Py_XINCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b); static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x); #define __Pyx_PySequence_Tuple(obj)\ (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t); static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #if CYTHON_ASSUME_SAFE_MACROS -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x) #else -#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x) #endif -#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) -#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x)) #define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) -#else -#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) -#endif #if CYTHON_USE_PYLONG_INTERNALS #if PY_VERSION_HEX >= 0x030C00A7 #ifndef _PyLong_SIGN_MASK @@ -1409,81 +1339,12 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) #endif #endif -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII -#include -static int __Pyx_sys_getdefaultencoding_not_ascii; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - PyObject* ascii_chars_u = NULL; - PyObject* ascii_chars_b = NULL; - const char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - if (strcmp(default_encoding_c, "ascii") == 0) { - __Pyx_sys_getdefaultencoding_not_ascii = 0; - } else { - char ascii_chars[128]; - int c; - for (c = 0; c < 128; c++) { - ascii_chars[c] = (char) c; - } - __Pyx_sys_getdefaultencoding_not_ascii = 1; - ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); - if (!ascii_chars_u) goto bad; - ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); - if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { - PyErr_Format( - PyExc_ValueError, - "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", - default_encoding_c); - goto bad; - } - Py_DECREF(ascii_chars_u); - Py_DECREF(ascii_chars_b); - } - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - Py_XDECREF(ascii_chars_u); - Py_XDECREF(ascii_chars_b); - return -1; -} -#endif -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL) #else -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#include -static char* __PYX_DEFAULT_STRING_ENCODING; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); - if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; - strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - return -1; -} -#endif + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #endif @@ -1495,33 +1356,93 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ */ +/* PretendToInitialize */ +#ifdef __cplusplus +#if __cplusplus > 201103L +#include +#endif +template +static void __Pyx_pretend_to_initialize(T* ptr) { +#if __cplusplus > 201103L + if ((std::is_trivially_default_constructible::value)) +#endif + *ptr = T(); + (void)ptr; +} +#else static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } +#endif + #if !CYTHON_USE_MODULE_STATE static PyObject *__pyx_m = NULL; #endif static int __pyx_lineno; static int __pyx_clineno = 0; -static const char * __pyx_cfilenm = __FILE__; +static const char * const __pyx_cfilenm = __FILE__; static const char *__pyx_filename; /* #### Code section: filename_table ### */ -static const char *__pyx_f[] = { +static const char* const __pyx_f[] = { "src/hunter/_tracer.pyx", "", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/contextvars.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/contextvars.pxd", "src/hunter/_tracer.pxd", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/type.pxd", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/bool.pxd", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/complex.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/bool.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/complex.pxd", "src/hunter/_event.pxd", "src/hunter/_predicates.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ -/* ForceInitThreads.proto */ -#ifndef __PYX_FORCE_INIT_THREADS - #define __PYX_FORCE_INIT_THREADS 0 +/* Profile_config.proto */ +#ifndef CYTHON_PROFILE +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + #define CYTHON_PROFILE 0 +#else + #define CYTHON_PROFILE 1 +#endif +#endif +#ifndef CYTHON_TRACE_NOGIL + #define CYTHON_TRACE_NOGIL 0 +#else + #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) + #define CYTHON_TRACE 1 + #endif +#endif +#ifndef CYTHON_TRACE + #define CYTHON_TRACE 0 +#endif +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef enum { + __Pyx_Monitoring_PY_START = 0, + __Pyx_Monitoring_PY_RETURN, + __Pyx_Monitoring_PY_UNWIND, + __Pyx_Monitoring_LINE, + __Pyx_Monitoring_RAISE, + __Pyx_Monitoring_RERAISE, + __Pyx_Monitoring_EXCEPTION_HANDLED, + __Pyx_Monitoring_PY_RESUME, + __Pyx_Monitoring_PY_YIELD, + __Pyx_Monitoring_STOP_ITERATION, + } __Pyx_Monitoring_Event_Index; + static const unsigned char __Pyx_MonitoringEventTypes[] = { + PY_MONITORING_EVENT_PY_START, + PY_MONITORING_EVENT_PY_RETURN, + PY_MONITORING_EVENT_PY_UNWIND, + PY_MONITORING_EVENT_LINE, + PY_MONITORING_EVENT_RAISE, + PY_MONITORING_EVENT_RERAISE, + PY_MONITORING_EVENT_EXCEPTION_HANDLED, + PY_MONITORING_EVENT_PY_RESUME, + PY_MONITORING_EVENT_PY_YIELD, + PY_MONITORING_EVENT_STOP_ITERATION, + }; + #define __Pyx_MonitoringEventTypes_CyFunc_count (sizeof(__Pyx_MonitoringEventTypes) - 3) + #define __Pyx_MonitoringEventTypes_CyGen_count (sizeof(__Pyx_MonitoringEventTypes)) +#endif #endif /* NoFastGil.proto */ @@ -1531,6 +1452,165 @@ static const char *__pyx_f[] = { #define __Pyx_FastGIL_Forget() #define __Pyx_FastGilFuncInit() +/* Atomics.proto */ +#include +#ifndef CYTHON_ATOMICS + #define CYTHON_ATOMICS 1 +#endif +#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS +#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __pyx_atomic_int_type int +#define __pyx_nonatomic_int_type int +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__)) + #include +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ + (defined(_MSC_VER) && _MSC_VER >= 1700))) + #include +#endif +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type atomic_int + #define __pyx_atomic_ptr_type atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) atomic_load(value) + #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C atomics" + #endif +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ +\ + (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type std::atomic_int + #define __pyx_atomic_ptr_type std::atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) std::atomic_load(value) + #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C++ atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C++ atomics" + #endif +#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\ + (__GNUC_MINOR__ > 1 ||\ + (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2)))) + #define __pyx_atomic_ptr_type void* + #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1) + #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #warning "Using GNU atomics" + #endif +#elif CYTHON_ATOMICS && defined(_MSC_VER) + #include + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type long + #define __pyx_atomic_ptr_type void* + #undef __pyx_nonatomic_int_type + #define __pyx_nonatomic_int_type long + #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer) + #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1) + #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0) + #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value + #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #pragma message ("Using MSVC atomics") + #endif +#else + #undef CYTHON_ATOMICS + #define CYTHON_ATOMICS 0 + #ifdef __PYX_DEBUG_ATOMICS + #warning "Not using atomics" + #endif +#endif +#if CYTHON_ATOMICS + #define __pyx_add_acquisition_count(memview)\ + __pyx_atomic_incr_relaxed(__pyx_get_slice_count_pointer(memview)) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_atomic_decr_acq_rel(__pyx_get_slice_count_pointer(memview)) +#else + #define __pyx_add_acquisition_count(memview)\ + __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) +#endif + +/* IncludeStructmemberH.proto */ +#include + +/* CriticalSections.proto */ +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __Pyx_PyCriticalSection void* +#define __Pyx_PyCriticalSection2 void* +#define __Pyx_PyCriticalSection_Begin1(cs, arg) (void)cs +#define __Pyx_PyCriticalSection_Begin2(cs, arg1, arg2) (void)cs +#define __Pyx_PyCriticalSection_End1(cs) +#define __Pyx_PyCriticalSection_End2(cs) +#else +#define __Pyx_PyCriticalSection PyCriticalSection +#define __Pyx_PyCriticalSection2 PyCriticalSection2 +#define __Pyx_PyCriticalSection_Begin1 PyCriticalSection_Begin +#define __Pyx_PyCriticalSection_Begin2 PyCriticalSection2_Begin +#define __Pyx_PyCriticalSection_End1 PyCriticalSection_End +#define __Pyx_PyCriticalSection_End2 PyCriticalSection2_End +#endif +#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_BEGIN_CRITICAL_SECTION(o) { +#define __Pyx_END_CRITICAL_SECTION() } +#else +#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION +#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION +#endif + /* #### Code section: numeric_typedefs ### */ /* #### Code section: complex_type_declarations ### */ /* #### Code section: type_declarations ### */ @@ -1548,41 +1628,50 @@ struct __pyx_obj_6hunter_7_tracer_Tracer; struct __pyx_opt_args_7cpython_11contextvars_get_value; struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default; -/* "cpython/contextvars.pxd":112 - * +/* "cpython/contextvars.pxd":116 * + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") * cdef inline object get_value(var, default_value=None): # <<<<<<<<<<<<<< * """Return a new reference to the value of the context variable, * or the default value of the context variable, - */ +*/ struct __pyx_opt_args_7cpython_11contextvars_get_value { int __pyx_n; PyObject *default_value; }; -/* "cpython/contextvars.pxd":129 - * +/* "cpython/contextvars.pxd":134 * + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") * cdef inline object get_value_no_default(var, default_value=None): # <<<<<<<<<<<<<< * """Return a new reference to the value of the context variable, * or the provided default value if no such value was found. - */ +*/ struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default { int __pyx_n; PyObject *default_value; }; -/* "_event.pxd":13 +/* "hunter/_tracer.pxd":7 + * from cpython.ref cimport PyObject + * + * ctypedef extern FrameType # <<<<<<<<<<<<<< + * + * cdef extern from "vendor/_compat.h": +*/ +typedef PyObject *FrameType; + +/* "_event.pxd":11 * - * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Event: * cdef: - * readonly FrameType frame - */ +*/ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtab; - PyFrameObject *frame; + FrameType frame; PyObject *kind; PyObject *arg; int depth; @@ -1608,13 +1697,13 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "_predicates.pxd":8 +/* "_predicates.pxd":7 * - * @cython.final - * cdef class Query: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Query: * cdef: - * readonly tuple query_contains - */ +*/ struct __pyx_obj_6hunter_11_predicates_Query { PyObject_HEAD PyObject *query_contains; @@ -1630,52 +1719,52 @@ struct __pyx_obj_6hunter_11_predicates_Query { }; -/* "_predicates.pxd":23 +/* "_predicates.pxd":22 * - * @cython.final - * cdef class And: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class And: * cdef: - * readonly tuple predicates - */ +*/ struct __pyx_obj_6hunter_11_predicates_And { PyObject_HEAD PyObject *predicates; }; -/* "_predicates.pxd":29 +/* "_predicates.pxd":28 * - * @cython.final - * cdef class Or: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Or: * cdef: - * readonly tuple predicates - */ +*/ struct __pyx_obj_6hunter_11_predicates_Or { PyObject_HEAD PyObject *predicates; }; -/* "_predicates.pxd":35 +/* "_predicates.pxd":34 * - * @cython.final - * cdef class Not: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Not: * cdef: - * readonly object predicate - */ +*/ struct __pyx_obj_6hunter_11_predicates_Not { PyObject_HEAD PyObject *predicate; }; -/* "_predicates.pxd":41 +/* "_predicates.pxd":40 * - * @cython.final - * cdef class When: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class When: * cdef: - * readonly object condition - */ +*/ struct __pyx_obj_6hunter_11_predicates_When { PyObject_HEAD PyObject *condition; @@ -1683,13 +1772,13 @@ struct __pyx_obj_6hunter_11_predicates_When { }; -/* "_predicates.pxd":48 +/* "_predicates.pxd":47 * - * @cython.final - * cdef class From: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class From: * cdef: - * readonly object condition - */ +*/ struct __pyx_obj_6hunter_11_predicates_From { PyObject_HEAD PyObject *condition; @@ -1700,13 +1789,13 @@ struct __pyx_obj_6hunter_11_predicates_From { }; -/* "_predicates.pxd":58 +/* "_predicates.pxd":57 * - * @cython.final - * cdef class Backlog: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Backlog: * cdef: - * readonly object condition - */ +*/ struct __pyx_obj_6hunter_11_predicates_Backlog { PyObject_HEAD PyObject *condition; @@ -1721,13 +1810,13 @@ struct __pyx_obj_6hunter_11_predicates_Backlog { }; -/* "hunter/_tracer.pxd":36 +/* "hunter/_tracer.pxd":35 * - * @cython.final - * cdef class Tracer: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Tracer: * cdef: - * readonly object handler - */ +*/ struct __pyx_obj_6hunter_7_tracer_Tracer { PyObject_HEAD PyObject *handler; @@ -1743,13 +1832,13 @@ struct __pyx_obj_6hunter_7_tracer_Tracer { -/* "_event.pxd":13 +/* "_event.pxd":11 * - * @cython.final - * cdef class Event: # <<<<<<<<<<<<<< + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Event: * cdef: - * readonly FrameType frame - */ +*/ struct __pyx_vtabstruct_6hunter_6_event_Event { PyCodeObject *(*code_getter)(struct __pyx_obj_6hunter_6_event_Event *); @@ -1786,7 +1875,6 @@ static struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtabptr_6hunter_6_ev static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; -#ifdef WITH_THREAD #define __Pyx_RefNannySetupContext(name, acquire_gil)\ if (acquire_gil) {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ @@ -1800,11 +1888,6 @@ static struct __pyx_vtabstruct_6hunter_6_event_Event *__pyx_vtabptr_6hunter_6_ev __Pyx_RefNannyFinishContext();\ PyGILState_Release(__pyx_gilstate_save);\ } -#else - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__)) - #define __Pyx_RefNannyFinishContextNogil() __Pyx_RefNannyFinishContext() -#endif #define __Pyx_RefNannyFinishContextNogil() {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ __Pyx_RefNannyFinishContext();\ @@ -1914,34 +1997,191 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P static PyObject *__Pyx_GetBuiltinName(PyObject *name); /* Profile.proto */ -#ifndef CYTHON_PROFILE -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - #define CYTHON_PROFILE 0 -#else - #define CYTHON_PROFILE 1 -#endif -#endif -#ifndef CYTHON_TRACE_NOGIL - #define CYTHON_TRACE_NOGIL 0 -#else - #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) - #define CYTHON_TRACE 1 - #endif -#endif -#ifndef CYTHON_TRACE - #define CYTHON_TRACE 0 -#endif #if CYTHON_TRACE #undef CYTHON_PROFILE_REUSE_FRAME #endif +#if CYTHON_USE_MODULE_STATE + #undef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 0 + #undef CYTHON_PROFILE_REUSE_FRAME +#endif +#ifndef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 1 +#endif #ifndef CYTHON_PROFILE_REUSE_FRAME #define CYTHON_PROFILE_REUSE_FRAME 0 #endif +#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) + #define __PYX_MONITORING_ABI_SUFFIX "_mon" +#else + #define __PYX_MONITORING_ABI_SUFFIX +#endif #if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef uint64_t __pyx_monitoring_version_type; + #define __Pyx_TraceDeclarationsFunc\ + PyObject *__pyx_frame_code = NULL;\ + PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyFunc_count];\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_TraceDeclarationsGen\ + PyObject *__pyx_frame_code = Py_NewRef(__pyx_generator->gi_code);\ + PyMonitoringState* __pyx_pymonitoring_state = __pyx_generator->__pyx_pymonitoring_state;\ + __pyx_monitoring_version_type __pyx_pymonitoring_version = __pyx_generator->__pyx_pymonitoring_version;\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_IsTracing(event_id) ((!__pyx_sys_monitoring_disabled_in_parallel) && (__pyx_pymonitoring_state[event_id]).active) + #define __Pyx_TraceFrameInit(codeobj)\ + if (codeobj) __pyx_frame_code = codeobj; + #define __Pyx_TurnOffSysMonitoringInParallel\ + const int __pyx_sys_monitoring_disabled_in_parallel = 1;\ + CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno); + CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event); + CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset); + CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset); + CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised); + #define __Pyx_PyMonitoring_ExitScope(nogil)\ + if (nogil) {\ + (void) __pyx_exception_already_reported;\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + PyMonitoring_ExitScope();\ + Py_XDECREF(__pyx_frame_code);\ + PyGILState_Release(state);\ + }\ + } else {\ + PyMonitoring_ExitScope();\ + Py_XDECREF(__pyx_frame_code);\ + } + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ + if ((0) ); else {\ + int ret = 0;\ + memset(__pyx_pymonitoring_state, 0, sizeof(__pyx_pymonitoring_state));\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + if (!__Pyx_PyThreadState_Current->tracing) {\ + if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\ + else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\ + if (unlikely(!__pyx_frame_code)) goto_error;\ + ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + if (!__Pyx_PyThreadState_Current->tracing) {\ + if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\ + else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\ + if (unlikely(!__pyx_frame_code)) goto_error;\ + ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\ + }\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceStartGen(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ + if ((0) ); else {\ + int ret = __Pyx__TraceStartGen(__pyx_pymonitoring_state, &__pyx_pymonitoring_version, __pyx_frame_code, offset);\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error)\ + if ((0) ); else {\ + int ret = __Pyx__TraceResumeGen(__pyx_pymonitoring_state, &__pyx_pymonitoring_version, __pyx_frame_code, offset);\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceYield(result, offset, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_YIELD)); else {\ + int ret = PyMonitoring_FirePyYieldEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + PyMonitoring_ExitScope();\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceException(offset, reraised, fresh)\ + if (!__Pyx_IsTracing((reraised) ? __Pyx_Monitoring_RERAISE : __Pyx_Monitoring_RAISE)); else {\ + if (fresh || reraised || !__pyx_exception_already_reported) {\ + __Pyx__TraceException(&__pyx_pymonitoring_state[(reraised) ? __Pyx_Monitoring_RERAISE : __Pyx_Monitoring_RAISE], __pyx_frame_code, offset, reraised);\ + }\ + __pyx_exception_already_reported = 1;\ + } + #define __Pyx_TraceExceptionDone() __pyx_exception_already_reported = 0 + #define __Pyx_TraceExceptionHandled(offset)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_EXCEPTION_HANDLED)); else {\ + (void) PyMonitoring_FireExceptionHandledEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_EXCEPTION_HANDLED], __pyx_frame_code, offset);\ + __pyx_exception_already_reported = 0;\ + } + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_RETURN)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + PyGILState_Release(state);\ + }\ + } else {\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, result);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_RETURN)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) {\ + PyErr_Clear();\ + pyvalue = Py_None; Py_INCREF(Py_None);\ + }\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, pyvalue);\ + Py_DECREF(pyvalue);\ + PyGILState_Release(state);\ + }\ + } else {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) {\ + PyErr_Clear();\ + pyvalue = Py_None; Py_INCREF(Py_None);\ + }\ + ret = PyMonitoring_FirePyReturnEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_RETURN], __pyx_frame_code, offset, pyvalue);\ + Py_DECREF(pyvalue);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #define __Pyx_TraceExceptionUnwind(offset, nogil)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_PY_UNWIND)); else {\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + (void) PyMonitoring_FirePyUnwindEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_UNWIND], __pyx_frame_code, offset);\ + PyGILState_Release(state);\ + }\ + } else {\ + (void) PyMonitoring_FirePyUnwindEvent(&__pyx_pymonitoring_state[__Pyx_Monitoring_PY_UNWIND], __pyx_frame_code, offset);\ + }\ + } + #if CYTHON_TRACE + CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset); + #define __Pyx_TraceLine(line, offset, nogil, goto_error)\ + if (!__Pyx_IsTracing(__Pyx_Monitoring_LINE)); else {\ + int ret = 0;\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyGILState_STATE state = PyGILState_Ensure();\ + ret = __Pyx__TraceLine(&__pyx_pymonitoring_state[__Pyx_Monitoring_LINE], __pyx_frame_code, line, offset);\ + PyGILState_Release(state);\ + }\ + } else {\ + ret = __Pyx__TraceLine(&__pyx_pymonitoring_state[__Pyx_Monitoring_LINE], __pyx_frame_code, line, offset);\ + }\ + if (unlikely(ret == -1)) goto_error;\ + } + #endif +#else #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 +#if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -1954,12 +2194,26 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define CYTHON_FRAME_MODIFIER #define CYTHON_FRAME_DEL(frame) Py_CLEAR(frame) #endif - #define __Pyx_TraceDeclarations\ - static PyCodeObject *__pyx_frame_code = NULL;\ + #if CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_CODEOBJ_MODIFIER static + #else + #define CYTHON_CODEOBJ_MODIFIER + #endif + #define __Pyx_TraceDeclarationsFunc\ + CYTHON_CODEOBJ_MODIFIER PyCodeObject *__pyx_frame_code = NULL;\ + CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\ + int __Pyx_use_tracing = 0; + #define __Pyx_TraceDeclarationsGen\ + PyObject *__pyx_frame_code = __pyx_generator->gi_code;\ CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\ int __Pyx_use_tracing = 0; #define __Pyx_TraceFrameInit(codeobj)\ if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj; + #define __Pyx_PyMonitoring_ExitScope(nogil) {} + #define __Pyx_TraceException(offset, reraised, fresh) {} + #define __Pyx_TraceExceptionHandled(offset) {} + #define __Pyx_TraceExceptionDone() {} + #define __Pyx_TurnOffSysMonitoringInParallel {} // Only needed for freethreading #if PY_VERSION_HEX >= 0x030b00a2 #if PY_VERSION_HEX >= 0x030C00b1 #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\ @@ -2000,15 +2254,14 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); || tstate->c_profilefunc != NULL);\ } while (0) #endif - #ifdef WITH_THREAD - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\ + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error)\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ PyThreadState *tstate;\ PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ + __Pyx_use_tracing = __Pyx_TraceSetupAndCall((PyCodeObject**)&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno, skip_event);\ }\ PyGILState_Release(state);\ if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ @@ -2016,37 +2269,22 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); } else {\ PyThreadState* tstate = PyThreadState_GET();\ if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ - if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ - }\ - } - #else - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\ - { PyThreadState* tstate = PyThreadState_GET();\ - if (__Pyx_IsTracing(tstate, 1, 1)) {\ - __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\ + __Pyx_use_tracing = __Pyx_TraceSetupAndCall((PyCodeObject**)&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno, skip_event);\ if (unlikely(__Pyx_use_tracing < 0)) goto_error;\ }\ } - #endif - #define __Pyx_TraceException()\ + #define __Pyx_TraceStartGen __Pyx_TraceStartFunc + #define __Pyx_TraceYield(result, offset, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 1)) {\ - __Pyx_EnterTracing(tstate);\ - PyObject *exc_info = __Pyx_GetExceptionTuple(tstate);\ - if (exc_info) {\ - if (CYTHON_TRACE && tstate->c_tracefunc)\ - tstate->c_tracefunc(\ - tstate->c_traceobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\ - tstate->c_profilefunc(\ - tstate->c_profileobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\ - Py_DECREF(exc_info);\ - }\ - __Pyx_LeaveTracing(tstate);\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 0);\ }\ + if ((1)); else goto_error;\ } - static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result) { + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error)\ + __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, 0, 0, goto_error) + CYTHON_UNUSED static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result, int delete_frame) { PyObject *type, *value, *traceback; __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); __Pyx_EnterTracing(tstate); @@ -2054,12 +2292,13 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_RETURN, result); if (tstate->c_profilefunc) tstate->c_profilefunc(tstate->c_profileobj, frame, PyTrace_RETURN, result); - CYTHON_FRAME_DEL(frame); + if (delete_frame) { + CYTHON_FRAME_DEL(frame); + } __Pyx_LeaveTracing(tstate); __Pyx_ErrRestoreInState(tstate, type, value, traceback); } - #ifdef WITH_THREAD - #define __Pyx_TraceReturn(result, nogil)\ + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ @@ -2067,88 +2306,116 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); PyGILState_STATE state = PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 1);\ }\ PyGILState_Release(state);\ }\ } else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result, 1);\ }\ }\ + if ((1)); else goto_error;\ } - #else - #define __Pyx_TraceReturn(result, nogil)\ + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ - PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0)) {\ - __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyThreadState *tstate;\ + PyGILState_STATE state = PyGILState_Ensure();\ + tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) goto_error;\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, pyvalue, 1);\ + Py_DECREF(pyvalue);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + PyThreadState* tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + PyObject *pyvalue = convert_function(cresult);\ + if (unlikely(!pyvalue)) goto_error;\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, pyvalue, 1);\ + Py_DECREF(pyvalue);\ + }\ }\ } - #endif - static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno); - static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno); -#else - #define __Pyx_TraceDeclarations - #define __Pyx_TraceFrameInit(codeobj) - #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error) if ((1)); else goto_error; - #define __Pyx_TraceException() - #define __Pyx_TraceReturn(result, nogil) -#endif -#if CYTHON_TRACE - static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int lineno) { - int ret; - PyObject *type, *value, *traceback; - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - __Pyx_PyFrame_SetLineNumber(frame, lineno); - __Pyx_EnterTracing(tstate); - ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); - __Pyx_LeaveTracing(tstate); - if (likely(!ret)) { - __Pyx_ErrRestoreInState(tstate, type, value, traceback); - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); - } - return ret; + #define __Pyx_TraceExceptionUnwind(offset, nogil)\ + if (likely(!__Pyx_use_tracing)); else {\ + if (nogil) {\ + if (CYTHON_TRACE_NOGIL) {\ + PyThreadState *tstate;\ + PyGILState_STATE state = PyGILState_Ensure();\ + tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, Py_None, 1);\ + }\ + PyGILState_Release(state);\ + }\ + } else {\ + PyThreadState* tstate = __Pyx_PyThreadState_Current;\ + if (__Pyx_IsTracing(tstate, 0, 0)) {\ + __Pyx_call_return_trace_func(tstate, __pyx_frame, Py_None, 1);\ + }\ + }\ } - #ifdef WITH_THREAD - #define __Pyx_TraceLine(lineno, nogil, goto_error)\ + static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno, int skip_event); +#if CYTHON_TRACE + CYTHON_UNUSED static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line); + #define __Pyx_TraceLine(line, offset, nogil, goto_error)\ if (likely(!__Pyx_use_tracing)); else {\ + int ret = 0;\ if (nogil) {\ if (CYTHON_TRACE_NOGIL) {\ - int ret = 0;\ PyThreadState *tstate;\ PyGILState_STATE state = __Pyx_PyGILState_Ensure();\ tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ + ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, line);\ }\ __Pyx_PyGILState_Release(state);\ - if (unlikely(ret)) goto_error;\ }\ } else {\ PyThreadState* tstate = __Pyx_PyThreadState_Current;\ if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ - if (unlikely(ret)) goto_error;\ + ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, line);\ }\ }\ + if (unlikely(ret)) goto_error;\ } - #else - #define __Pyx_TraceLine(lineno, nogil, goto_error)\ - if (likely(!__Pyx_use_tracing)); else {\ - PyThreadState* tstate = __Pyx_PyThreadState_Current;\ - if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\ - int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\ - if (unlikely(ret)) goto_error;\ - }\ - } - #endif +#endif +#endif +#else + #define __Pyx_TraceDeclarationsFunc + #define __Pyx_TraceDeclarationsGen + #define __Pyx_TraceExceptionDone() {} + #define __Pyx_TraceFrameInit(codeobj) {} + #define __Pyx_TurnOffSysMonitoringInParallel {} + #define __Pyx_PyMonitoring_ExitScope(nogil) {} + #define __Pyx_TraceException(offset, reraised, fresh) {} + #define __Pyx_TraceExceptionUnwind(offset, nogil) {} + #define __Pyx_TraceExceptionHandled(offset) {} + #define __Pyx_TraceStartFunc(funcname, srcfile, firstlineno, offset, nogil, skip_event, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceStartGen __Pyx_TraceStartFunc + #define __Pyx_TraceResumeGen(funcname, srcfile, firstlineno, offset, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceYield(result, offset, goto_error) if ((1)); else goto_error; + #define __Pyx_TraceReturnValue(result, offset, nogil, goto_error)\ + if ((1)); else goto_error; + #define __Pyx_TraceReturnCValue(cresult, convert_function, offset, nogil, goto_error)\ + if ((1)); else { (void) convert_function; goto_error } +#endif +#if !CYTHON_TRACE + #define __Pyx_TraceLine(line, offset, nogil, goto_error) if ((1)); else goto_error; +#endif + +/* PyObjectDelAttr.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 +#define __Pyx_PyObject_DelAttr(o, n) PyObject_SetAttr(o, n, NULL) #else - #define __Pyx_TraceLine(lineno, nogil, goto_error) if ((1)); else goto_error; +#define __Pyx_PyObject_DelAttr(o, n) PyObject_DelAttr(o, n) #endif /* PyObjectSetAttrStr.proto */ @@ -2156,10 +2423,39 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL) static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value); #else -#define __Pyx_PyObject_DelAttrStr(o,n) PyObject_DelAttr(o,n) +#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_DelAttr(o,n) #define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v) #endif +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#if !CYTHON_VECTORCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); +#endif +#define __Pyx_BUILD_ASSERT_EXPR(cond)\ + (sizeof(char [1 - 2*!(cond)]) - 1) +#ifndef Py_MEMBER_SIZE +#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) +#endif +#if !CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03080000 + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets() + #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) +#else + static size_t __pyx_pyframe_localsplus_offset = 0; + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets()\ + ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ + (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) + #define __Pyx_PyFrame_GetLocalsplus(frame)\ + (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) +#endif +#endif +#endif + /* PyObjectCall.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); @@ -2167,6 +2463,15 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg #define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) #endif +/* PyObjectCallMethO.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif + +/* PyObjectFastCall.proto */ +#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); + /* GetTopmostException.proto */ #if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); @@ -2222,7 +2527,7 @@ static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UIN #define __Pyx_GetModuleGlobalName(var, name) do {\ static PY_UINT64_T __pyx_dict_version = 0;\ static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ } while(0) @@ -2238,49 +2543,41 @@ static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_ve static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); #endif -/* PyFunctionFastCall.proto */ -#if CYTHON_FAST_PYCALL -#if !CYTHON_VECTORCALL -#define __Pyx_PyFunction_FastCall(func, args, nargs)\ - __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); -#endif -#define __Pyx_BUILD_ASSERT_EXPR(cond)\ - (sizeof(char [1 - 2*!(cond)]) - 1) -#ifndef Py_MEMBER_SIZE -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) -#endif -#if !CYTHON_VECTORCALL -#if PY_VERSION_HEX >= 0x03080000 - #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif - #define __Pxy_PyFrame_Initialize_Offsets() - #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) +/* PyObjectVectorCallKwBuilder.proto */ +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#if CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_Object_Vectorcall_CallFromBuilder PyObject_Vectorcall #else - static size_t __pyx_pyframe_localsplus_offset = 0; - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets()\ - ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ - (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) - #define __Pyx_PyFrame_GetLocalsplus(frame)\ - (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) -#endif +#define __Pyx_Object_Vectorcall_CallFromBuilder _PyObject_Vectorcall #endif +#define __Pyx_MakeVectorcallBuilderKwds(n) PyTuple_New(n) +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder __Pyx_PyObject_FastCallDict +#define __Pyx_MakeVectorcallBuilderKwds(n) __Pyx_PyDict_NewPresized(n) +#define __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n) PyDict_SetItem(builder, key, value) +#define __Pyx_VectorcallBuilder_AddArgStr(key, value, builder, args, n) PyDict_SetItemString(builder, key, value) #endif -/* PyObjectCallMethO.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); -#endif +/* PyObjectFormatAndDecref.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); -/* PyObjectFastCall.proto */ -#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs); +/* IncludeStringH.proto */ +#include + +/* JoinPyUnicode.proto */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char); + +/* PyObjectFastCallMethod.proto */ +#if CYTHON_VECTORCALL && PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyObject_FastCallMethod(name, args, nargsf) PyObject_VectorcallMethod(name, args, nargsf, NULL) +#else +static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf); +#endif /* SwapException.proto */ #if CYTHON_FAST_THREAD_STATE @@ -2293,12 +2590,11 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, /* TupleAndListFromArray.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); +#endif +#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); #endif -/* IncludeStringH.proto */ -#include - /* BytesEquals.proto */ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); @@ -2307,50 +2603,37 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int /* fastcall.proto */ #if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) #elif CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) #else - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) -#endif -#if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) - #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) -#else - #define __Pyx_Arg_NewRef_VARARGS(arg) arg - #define __Pyx_Arg_XDECREF_VARARGS(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) #endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) #define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) #if CYTHON_METH_FASTCALL - #define __Pyx_Arg_FASTCALL(args, i) args[i] - #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) + #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) + #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) #endif - #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs - to have the same reference counting */ - #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else - #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS + #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS - #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) - #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS -#define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) -#else #define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) +#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) +#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) +#else #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) #endif @@ -2358,10 +2641,65 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); /* ParseKeywords.proto */ -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, - const char* function_name); +static CYTHON_INLINE int __Pyx_ParseKeywords( + PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], + PyObject *kwds2, PyObject *values[], + Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs +); + +/* CallCFunction.proto */ +#define __Pyx_CallCFunction(cfunc, self, args)\ + ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) +#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ + ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) +#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ + ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) +#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ + ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) + +/* UnpackUnboundCMethod.proto */ +typedef struct { + PyObject *type; + PyObject **method_name; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS + __pyx_atomic_int_type initialized; +#endif + PyCFunction func; + PyObject *method; + int flag; +} __Pyx_CachedCFunction; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { +#if !CYTHON_ATOMICS + return 1; +#else + __pyx_nonatomic_int_type expected = 0; + if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { + return 0; + } + return expected; +#endif +} +static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { +#if CYTHON_ATOMICS + __pyx_atomic_store(&cfunc->initialized, 2); +#endif +} +#else +#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 +#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) +#endif + +/* CallUnboundCMethod2.proto */ +CYTHON_UNUSED +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); +#else +#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) +#endif /* RaiseArgTupleInvalid.proto */ static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, @@ -2375,17 +2713,24 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, /* PyObjectCallOneArg.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); +/* PyObjectFormat.proto */ +#if CYTHON_USE_UNICODE_WRITER +static PyObject* __Pyx_PyObject_Format(PyObject* s, PyObject* f); +#else +#define __Pyx_PyObject_Format(s, f) PyObject_Format(s, f) +#endif + +/* PyUnicode_Unicode.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_Unicode(PyObject *obj); + /* ArgTypeTest.proto */ #define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ __Pyx__ArgTypeTest(obj, type, name, exact)) static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); -/* ExtTypeTest.proto */ -static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); - /* DictGetItem.proto */ -#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +#if !CYTHON_COMPILING_IN_PYPY static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); #define __Pyx_PyObject_Dict_GetItem(obj, name)\ (likely(PyDict_CheckExact(obj)) ?\ @@ -2395,48 +2740,52 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); #define __Pyx_PyObject_Dict_GetItem(obj, name) PyObject_GetItem(obj, name) #endif -/* StrEquals.proto */ -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - /* GetAttr3.proto */ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); -/* KeywordStringCheck.proto */ -static int __Pyx_CheckKeywordStrings(PyObject *kw, const char* function_name, int kw_allowed); +/* RejectKeywords.proto */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); /* RaiseException.proto */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); +/* CallTypeTraverse.proto */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg); +#endif + /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 -#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 +#define __PYX_HAVE_RT_ImportType_proto_3_1_2 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_0_10 { - __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, - __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 +enum __Pyx_ImportType_CheckSize_3_1_2 { + __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); #endif -/* IncludeStructmemberH.proto */ -#include +/* LimitedApiGetTypeDict.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp); +#endif + +/* SetItemOnTypeDict.proto */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v); +#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v) /* FixUpExtensionType.proto */ -#if CYTHON_USE_TYPE_SPECS -static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); -#endif +static CYTHON_INLINE int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); /* PyObjectCallNoArg.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); @@ -2455,17 +2804,12 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs /* PyType_Ready.proto */ CYTHON_UNUSED static int __Pyx_PyType_Ready(PyTypeObject *t); -/* PyObject_GenericGetAttrNoDict.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr -#endif +/* DelItemOnTypeDict.proto */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); +#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k) /* SetupReduce.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce(PyObject* type_obj); -#endif /* GetVTable.proto */ static void* __Pyx_GetVtable(PyTypeObject *type); @@ -2475,49 +2819,26 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); /* ImportDottedModule.proto */ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple); -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple); -#endif /* FetchSharedCythonModule.proto */ static PyObject *__Pyx_FetchSharedCythonABIModule(void); +/* dict_setdefault.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, int is_safe_type); + /* FetchCommonType.proto */ -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type); -#else -static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases); -#endif +static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases); + +/* CommonTypesMetaclass.proto */ +static int __pyx_CommonTypesMetaclass_init(PyObject *module); +#define __Pyx_CommonTypesMetaclass_USED /* PyMethodNew.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - typesModule = PyImport_ImportModule("types"); - if (!typesModule) return NULL; - methodType = PyObject_GetAttrString(typesModule, "MethodType"); - Py_DECREF(typesModule); - if (!methodType) return NULL; - result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); - Py_DECREF(methodType); - return result; -} -#elif PY_MAJOR_VERSION >= 3 -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - return PyMethod_New(func, self); -} -#else - #define __Pyx_PyMethod_New PyMethod_New -#endif +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ); /* PyVectorcallFastCallDict.proto */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw); #endif @@ -2551,10 +2872,11 @@ typedef struct { #else PyCMethodObject func; #endif -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL ||\ + (CYTHON_COMPILING_IN_LIMITED_API && CYTHON_METH_FASTCALL) __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2567,9 +2889,7 @@ typedef struct { #if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif - void *defaults; - int defaults_pyobjects; - size_t defaults_size; + PyObject *defaults; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2578,10 +2898,10 @@ typedef struct { PyObject *func_is_coroutine; } __pyx_CyFunctionObject; #undef __Pyx_CyOrPyCFunction_Check -#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) -#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)); #undef __Pyx_IsSameCFunction #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, @@ -2590,9 +2910,8 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef * PyObject *module, PyObject *globals, PyObject* code); static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj); -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *m, - size_t size, - int pyobjects); +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, + PyTypeObject *defaults_type); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m, PyObject *tuple); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m, @@ -2605,7 +2924,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_func_vectorcall(f) (((__pyx_CyFunctionObject*)f)->func_vectorcall) #else #define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall) @@ -2620,28 +2939,33 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, PyObject* code); /* CLineInTraceback.proto */ -#ifdef CYTHON_CLINE_IN_TRACEBACK -#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) -#else +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#else +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) #endif /* CodeObjectCache.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API +typedef PyObject __Pyx_CachedCodeObjectType; +#else +typedef PyCodeObject __Pyx_CachedCodeObjectType; +#endif typedef struct { - PyCodeObject* code_object; + __Pyx_CachedCodeObjectType* code_object; int code_line; } __Pyx_CodeObjectCacheEntry; struct __Pyx_CodeObjectCache { int count; int max_count; __Pyx_CodeObjectCacheEntry* entries; + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_int_type accessor_count; + #endif }; -static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); -static PyCodeObject *__pyx_find_code_object(int code_line); -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); -#endif +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line); +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object); /* AddTraceback.proto */ static void __Pyx_AddTraceback(const char *funcname, int c_line, @@ -2653,29 +2977,33 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, #endif /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value); /* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); /* FormatTypeName.proto */ #if CYTHON_COMPILING_IN_LIMITED_API typedef PyObject *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%U" -static __Pyx_TypeName __Pyx_PyType_GetName(PyTypeObject* tp); #define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj) +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName #else +static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp); +#endif +#else // !LIMITED_API typedef const char *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%.200s" -#define __Pyx_PyType_GetName(tp) ((tp)->tp_name) +#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name) #define __Pyx_DECREF_TypeName(obj) #endif /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); /* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); /* FastTypeChecks.proto */ #if CYTHON_COMPILING_IN_CPYTHON @@ -2689,24 +3017,80 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) #define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2)) #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) -#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) { + return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2); +} #endif #define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) +#ifdef PyExceptionInstance_Check + #define __Pyx_PyBaseException_Check(obj) PyExceptionInstance_Check(obj) +#else + #define __Pyx_PyBaseException_Check(obj) __Pyx_TypeCheck(obj, PyExc_BaseException) +#endif -/* CheckBinaryVersion.proto */ +/* GetRuntimeVersion.proto */ static unsigned long __Pyx_get_runtime_version(void); + +/* CheckBinaryVersion.proto */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionImport.proto */ -static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig); +static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig); -/* InitStrings.proto */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); +/* MultiPhaseInitModuleState.proto */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +static PyObject *__Pyx_State_FindModule(void*); +static int __Pyx_State_AddModule(PyObject* module, void*); +static int __Pyx_State_RemoveModule(void*); +#elif CYTHON_USE_MODULE_STATE +#define __Pyx_State_FindModule PyState_FindModule +#define __Pyx_State_AddModule PyState_AddModule +#define __Pyx_State_RemoveModule PyState_RemoveModule +#endif /* #### Code section: module_declarations ### */ +/* CythonABIVersion.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API + #if CYTHON_METH_FASTCALL + #define __PYX_FASTCALL_ABI_SUFFIX "_fastcall" + #else + #define __PYX_FASTCALL_ABI_SUFFIX + #endif + #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_FASTCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#else + #define __PYX_LIMITED_ABI_SUFFIX +#endif +#if __PYX_HAS_PY_AM_SEND == 1 + #define __PYX_AM_SEND_ABI_SUFFIX +#elif __PYX_HAS_PY_AM_SEND == 2 + #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport" +#else + #define __PYX_AM_SEND_ABI_SUFFIX "noamsend" +#endif +#ifndef __PYX_MONITORING_ABI_SUFFIX + #define __PYX_MONITORING_ABI_SUFFIX +#endif +#if CYTHON_USE_TP_FINALIZE + #define __PYX_TP_FINALIZE_ABI_SUFFIX +#else + #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize" +#endif +#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED) + #define __PYX_FREELISTS_ABI_SUFFIX +#else + #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists" +#endif +#define CYTHON_ABI __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI +#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." + +#if !CYTHON_COMPILING_IN_LIMITED_API static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComplexObject *__pyx_v_self); /* proto*/ +#endif +#if !CYTHON_COMPILING_IN_LIMITED_API static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComplexObject *__pyx_v_self); /* proto*/ +#endif /* Module declarations from "cython" */ @@ -2740,8 +3124,6 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp /* Module declarations from "cpython.number" */ -/* Module declarations from "cpython.int" */ - /* Module declarations from "__builtin__" */ /* Module declarations from "cpython.bool" */ @@ -2754,8 +3136,6 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp /* Module declarations from "cpython.complex" */ -/* Module declarations from "cpython.string" */ - /* Module declarations from "libc.stddef" */ /* Module declarations from "cpython.unicode" */ @@ -2776,10 +3156,6 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp /* Module declarations from "cpython.pythread" */ -/* Module declarations from "cpython.cobject" */ - -/* Module declarations from "cpython.oldbuffer" */ - /* Module declarations from "cpython.set" */ /* Module declarations from "cpython.buffer" */ @@ -2805,7 +3181,7 @@ static PyObject *(*__pyx_f_6hunter_11_predicates_fast_call)(PyObject *, struct _ /* Module declarations from "hunter._tracer" */ static PyObject *__pyx_v_6hunter_7_tracer_KIND_INTS = 0; -static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6hunter_7_tracer_Tracer *, PyFrameObject *, int, PyObject *); /*proto*/ +static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6hunter_7_tracer_Tracer *, FrameType, int, PyObject *); /*proto*/ /* #### Code section: typeinfo ### */ /* #### Code section: before_global_var ### */ #define __Pyx_MODULE_NAME "hunter._tracer" @@ -2817,24 +3193,40 @@ int __pyx_module_is_main_hunter___tracer = 0; static PyObject *__pyx_builtin_id; static PyObject *__pyx_builtin_TypeError; /* #### Code section: string_decls ### */ -static const char __pyx_k_[] = ""; -static const char __pyx_k__8[] = "*"; +static const char __pyx_k_[] = ".\n\n"; +static const char __pyx_k_Q[] = "\220Q"; +static const char __pyx_k_a[] = "\220a"; +static const char __pyx_k_x[] = "x"; +static const char __pyx_k__2[] = ", "; +static const char __pyx_k__3[] = ""; +static const char __pyx_k__4[] = ">"; +static const char __pyx_k__5[] = "?"; +static const char __pyx_k__6[] = "\230\001"; +static const char __pyx_k_at[] = ") at "; static const char __pyx_k_gc[] = "gc"; static const char __pyx_k_id[] = "id"; -static const char __pyx_k__14[] = "?"; +static const char __pyx_k_A_E[] = "\200A\330\010\014\210E\220\021"; +static const char __pyx_k_A_q[] = "\200A\330\010\017\210q"; +static const char __pyx_k_Q_2[] = "\200\001\330\004\n\210+\220Q"; static const char __pyx_k_all[] = "__all__"; static const char __pyx_k_arg[] = "arg"; +static const char __pyx_k_get[] = "__get__"; +static const char __pyx_k_pop[] = "pop"; +static const char __pyx_k_None[] = "None"; static const char __pyx_k_call[] = "call"; static const char __pyx_k_exit[] = "__exit__"; static const char __pyx_k_file[] = "file"; +static const char __pyx_k_func[] = "__func__"; static const char __pyx_k_kind[] = "kind"; static const char __pyx_k_line[] = "line"; static const char __pyx_k_main[] = "__main__"; static const char __pyx_k_name[] = "__name__"; +static const char __pyx_k_repr[] = "__repr__"; static const char __pyx_k_self[] = "self"; static const char __pyx_k_spec[] = "__spec__"; static const char __pyx_k_stop[] = "stop"; static const char __pyx_k_test[] = "__test__"; +static const char __pyx_k_cinit[] = "__cinit__"; static const char __pyx_k_enter[] = "__enter__"; static const char __pyx_k_frame[] = "frame"; static const char __pyx_k_state[] = "state"; @@ -2842,23 +3234,30 @@ static const char __pyx_k_trace[] = "trace"; static const char __pyx_k_write[] = "write"; static const char __pyx_k_Tracer[] = "Tracer"; static const char __pyx_k_c_call[] = "c_call"; +static const char __pyx_k_call_2[] = "__call__"; static const char __pyx_k_enable[] = "enable"; static const char __pyx_k_exc_tb[] = "exc_tb"; +static const char __pyx_k_failed[] = " failed ("; static const char __pyx_k_hunter[] = "hunter"; -static const char __pyx_k_import[] = "__import__"; +static const char __pyx_k_module[] = "__module__"; static const char __pyx_k_reduce[] = "__reduce__"; static const char __pyx_k_return[] = "return"; +static const char __pyx_k_dealloc[] = "__dealloc__"; static const char __pyx_k_disable[] = "disable"; static const char __pyx_k_exc_val[] = "exc_val"; static const char __pyx_k_f_trace[] = "f_trace"; static const char __pyx_k_handler[] = "handler="; static const char __pyx_k_stopped[] = ""; +static const char __pyx_k_add_note[] = "add_note"; static const char __pyx_k_c_return[] = "c_return"; static const char __pyx_k_exc_type[] = "exc_type"; static const char __pyx_k_getstate[] = "__getstate__"; static const char __pyx_k_previous[] = ", previous="; +static const char __pyx_k_qualname[] = "__qualname__"; +static const char __pyx_k_set_name[] = "__set_name__"; static const char __pyx_k_setstate[] = "__setstate__"; static const char __pyx_k_settrace[] = "settrace"; +static const char __pyx_k_KIND_INTS[] = "KIND_INTS"; static const char __pyx_k_TypeError[] = "TypeError"; static const char __pyx_k_exception[] = "exception"; static const char __pyx_k_isenabled[] = "isenabled"; @@ -2870,9 +3269,11 @@ static const char __pyx_k_threading[] = "threading"; static const char __pyx_k_traceback[] = "traceback"; static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__"; static const char __pyx_k_setprofile[] = "setprofile"; +static const char __pyx_k_trace_func[] = "trace_func"; static const char __pyx_k_trace_hook[] = "_trace_hook"; static const char __pyx_k_Tracer_stop[] = "Tracer.stop"; static const char __pyx_k_c_exception[] = "c_exception"; +static const char __pyx_k_A_5Q_5_C_1_Q[] = "\200A\330\010$\320$5\260Q\330\010\013\2105\220\014\230C\230|\2501\330\014\020\220\005\220Q"; static const char __pyx_k_Tracer_trace[] = "Tracer.trace"; static const char __pyx_k_initializing[] = "_initializing"; static const char __pyx_k_is_coroutine[] = "_is_coroutine"; @@ -2885,14 +3286,23 @@ static const char __pyx_k_default_stream[] = "_default_stream"; static const char __pyx_k_hunter__tracer[] = "hunter._tracer"; static const char __pyx_k_profiling_mode[] = "profiling_mode"; static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; +static const char __pyx_k_A_6_Q_5_1_1_3_1_q[] = "\200A\330\010\022\220!\2206\230\027\240\t\250\021\250'\260\034\270Q\330\010\013\2105\220\003\2201\330\014\033\2301\320\0343\260<\270|\3101\330\010\017\210q"; static const char __pyx_k_threading_support[] = "threading_support"; static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines"; static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; +static const char __pyx_k_q_Kq_L_Q_1_a_IQ_IQ[] = "\320\004*\320*?\270q\330\010\014\210K\220q\330\010\014\210L\230\001\330\010\014\320\014\035\230Q\330\010\014\320\014#\2401\330\010\014\320\014!\240\021\330\010\014\320\014\036\230a\330\010\014\210I\220Q\330\010\014\210I\220Q"; +static const char __pyx_k_threading_support_2[] = ": threading_support="; static const char __pyx_k_Tracer___reduce_cython[] = "Tracer.__reduce_cython__"; +static const char __pyx_k_src_hunter__tracer_pxd[] = "src/hunter/_tracer.pxd"; static const char __pyx_k_src_hunter__tracer_pyx[] = "src/hunter/_tracer.pyx"; static const char __pyx_k_Tracer___setstate_cython[] = "Tracer.__setstate_cython__"; -static const char __pyx_k_hunter__tracer_Tracer_at_0x_x_t[] = ""; -static const char __pyx_k_Disabling_tracer_because_handler[] = "Disabling tracer because handler %r failed (%r) at %r.\n\n"; +static const char __pyx_k_hunter__tracer_Tracer_at_0x[] = " 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + #define CYTHON_SMALL_CODE __attribute__((cold)) +#else + #define CYTHON_SMALL_CODE +#endif +#endif + +typedef struct { + PyObject *__pyx_d; + PyObject *__pyx_b; + PyObject *__pyx_cython_runtime; + PyObject *__pyx_empty_tuple; + PyObject *__pyx_empty_bytes; PyObject *__pyx_empty_unicode; #ifdef __Pyx_CyFunction_USED PyTypeObject *__pyx_CyFunctionType; @@ -2940,104 +3361,10 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_7cpython_4type_type; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_7cpython_4bool_bool; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_7cpython_7complex_complex; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_6hunter_6_event_Event; - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_6hunter_11_predicates_Query; PyTypeObject *__pyx_ptype_6hunter_11_predicates_And; PyTypeObject *__pyx_ptype_6hunter_11_predicates_Or; @@ -3045,89 +3372,13 @@ typedef struct { PyTypeObject *__pyx_ptype_6hunter_11_predicates_When; PyTypeObject *__pyx_ptype_6hunter_11_predicates_From; PyTypeObject *__pyx_ptype_6hunter_11_predicates_Backlog; - #if CYTHON_USE_MODULE_STATE PyObject *__pyx_type_6hunter_7_tracer_Tracer; - #endif - PyTypeObject *__pyx_ptype_6hunter_7_tracer_FrameType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_CodeType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_Tracer; - PyObject *__pyx_kp_s_; - PyObject *__pyx_kp_s_Disabling_tracer_because_handler; - PyObject *__pyx_n_s_Tracer; - PyObject *__pyx_n_s_Tracer___enter; - PyObject *__pyx_n_s_Tracer___exit; - PyObject *__pyx_n_s_Tracer___reduce_cython; - PyObject *__pyx_n_s_Tracer___setstate_cython; - PyObject *__pyx_n_s_Tracer_stop; - PyObject *__pyx_n_s_Tracer_trace; - PyObject *__pyx_n_s_TypeError; - PyObject *__pyx_n_s__14; - PyObject *__pyx_n_s__8; - PyObject *__pyx_n_s_all; - PyObject *__pyx_n_s_arg; - PyObject *__pyx_n_s_asyncio_coroutines; - PyObject *__pyx_n_s_c_call; - PyObject *__pyx_n_s_c_exception; - PyObject *__pyx_n_s_c_return; - PyObject *__pyx_n_s_call; - PyObject *__pyx_n_s_cline_in_traceback; - PyObject *__pyx_n_s_default_stream; - PyObject *__pyx_kp_u_disable; - PyObject *__pyx_kp_u_enable; - PyObject *__pyx_n_s_enter; - PyObject *__pyx_n_s_exc_tb; - PyObject *__pyx_n_s_exc_type; - PyObject *__pyx_n_s_exc_val; - PyObject *__pyx_n_s_exception; - PyObject *__pyx_n_s_exit; - PyObject *__pyx_n_s_f_trace; - PyObject *__pyx_n_s_file; - PyObject *__pyx_n_s_frame; - PyObject *__pyx_kp_u_gc; - PyObject *__pyx_n_s_getstate; - PyObject *__pyx_kp_s_handler; - PyObject *__pyx_n_s_hunter; - PyObject *__pyx_n_s_hunter__tracer; - PyObject *__pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t; - PyObject *__pyx_n_s_id; - PyObject *__pyx_n_s_import; - PyObject *__pyx_n_s_initializing; - PyObject *__pyx_n_s_is_coroutine; - PyObject *__pyx_kp_u_isenabled; - PyObject *__pyx_n_s_kind; - PyObject *__pyx_n_s_line; - PyObject *__pyx_n_s_main; - PyObject *__pyx_n_s_name; - PyObject *__pyx_kp_s_no_default___reduce___due_to_non; - PyObject *__pyx_n_s_predicate; - PyObject *__pyx_kp_s_previous; - PyObject *__pyx_n_s_print_exc; - PyObject *__pyx_n_s_profile_hook; - PyObject *__pyx_n_s_profiling_mode; - PyObject *__pyx_n_s_pyx_state; - PyObject *__pyx_n_s_pyx_vtable; - PyObject *__pyx_n_s_reduce; - PyObject *__pyx_n_s_reduce_cython; - PyObject *__pyx_n_s_reduce_ex; - PyObject *__pyx_n_s_return; - PyObject *__pyx_n_s_self; - PyObject *__pyx_n_s_setprofile; - PyObject *__pyx_n_s_setstate; - PyObject *__pyx_n_s_setstate_cython; - PyObject *__pyx_n_s_settrace; - PyObject *__pyx_n_s_spec; - PyObject *__pyx_kp_s_src_hunter__tracer_pyx; - PyObject *__pyx_n_s_state; - PyObject *__pyx_n_s_stop; - PyObject *__pyx_kp_s_stopped; - PyObject *__pyx_kp_s_stringsource; - PyObject *__pyx_n_s_test; - PyObject *__pyx_n_s_threading; - PyObject *__pyx_n_s_threading_support; - PyObject *__pyx_n_s_trace; - PyObject *__pyx_n_s_trace_hook; - PyObject *__pyx_n_s_traceback; - PyObject *__pyx_n_s_write; + __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; + PyObject *__pyx_tuple[1]; + PyObject *__pyx_codeobj_tab[18]; + PyObject *__pyx_string_tab[98]; PyObject *__pyx_int_0; PyObject *__pyx_int_1; PyObject *__pyx_int_2; @@ -3135,46 +3386,145 @@ typedef struct { PyObject *__pyx_int_4; PyObject *__pyx_int_5; PyObject *__pyx_int_6; - PyObject *__pyx_tuple__9; - PyObject *__pyx_tuple__10; - PyObject *__pyx_tuple__11; - PyObject *__pyx_tuple__12; - PyObject *__pyx_tuple__13; - PyObject *__pyx_codeobj__2; - PyObject *__pyx_codeobj__3; - PyObject *__pyx_codeobj__4; - PyObject *__pyx_codeobj__5; - PyObject *__pyx_codeobj__6; - PyObject *__pyx_codeobj__7; -} __pyx_mstate; +/* #### Code section: module_state_contents ### */ +/* CommonTypesMetaclass.module_state_decls */ +PyTypeObject *__pyx_CommonTypesMetaclassType; + +/* CachedMethodType.module_state_decls */ +#if CYTHON_COMPILING_IN_LIMITED_API +PyObject *__Pyx_CachedMethodType; +#endif + +/* CodeObjectCache.module_state_decls */ +struct __Pyx_CodeObjectCache __pyx_code_cache; + +/* #### Code section: module_state_end ### */ +} __pyx_mstatetype; #if CYTHON_USE_MODULE_STATE #ifdef __cplusplus namespace { - extern struct PyModuleDef __pyx_moduledef; +extern struct PyModuleDef __pyx_moduledef; } /* anonymous namespace */ #else static struct PyModuleDef __pyx_moduledef; #endif -#define __pyx_mstate(o) ((__pyx_mstate *)__Pyx_PyModule_GetState(o)) - -#define __pyx_mstate_global (__pyx_mstate(PyState_FindModule(&__pyx_moduledef))) +#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef))) -#define __pyx_m (PyState_FindModule(&__pyx_moduledef)) +#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef)) #else -static __pyx_mstate __pyx_mstate_global_static = +static __pyx_mstatetype __pyx_mstate_global_static = #ifdef __cplusplus {}; #else {0}; #endif -static __pyx_mstate *__pyx_mstate_global = &__pyx_mstate_global_static; -#endif +static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_static; +#endif +/* #### Code section: constant_name_defines ### */ +#define __pyx_kp_u_ __pyx_string_tab[0] +#define __pyx_kp_u_Disabling_tracer_because_handler __pyx_string_tab[1] +#define __pyx_n_u_KIND_INTS __pyx_string_tab[2] +#define __pyx_kp_u_None __pyx_string_tab[3] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[4] +#define __pyx_n_u_Tracer __pyx_string_tab[5] +#define __pyx_n_u_Tracer___enter __pyx_string_tab[6] +#define __pyx_n_u_Tracer___exit __pyx_string_tab[7] +#define __pyx_n_u_Tracer___reduce_cython __pyx_string_tab[8] +#define __pyx_n_u_Tracer___setstate_cython __pyx_string_tab[9] +#define __pyx_n_u_Tracer_stop __pyx_string_tab[10] +#define __pyx_n_u_Tracer_trace __pyx_string_tab[11] +#define __pyx_n_u_TypeError __pyx_string_tab[12] +#define __pyx_kp_u__2 __pyx_string_tab[13] +#define __pyx_kp_u__3 __pyx_string_tab[14] +#define __pyx_kp_u__4 __pyx_string_tab[15] +#define __pyx_kp_u__5 __pyx_string_tab[16] +#define __pyx_kp_u_add_note __pyx_string_tab[17] +#define __pyx_n_u_all __pyx_string_tab[18] +#define __pyx_n_u_arg __pyx_string_tab[19] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[20] +#define __pyx_kp_u_at __pyx_string_tab[21] +#define __pyx_n_u_c_call __pyx_string_tab[22] +#define __pyx_n_u_c_exception __pyx_string_tab[23] +#define __pyx_n_u_c_return __pyx_string_tab[24] +#define __pyx_n_u_call __pyx_string_tab[25] +#define __pyx_n_u_call_2 __pyx_string_tab[26] +#define __pyx_n_u_cinit __pyx_string_tab[27] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[28] +#define __pyx_n_u_dealloc __pyx_string_tab[29] +#define __pyx_n_u_default_stream __pyx_string_tab[30] +#define __pyx_kp_u_disable __pyx_string_tab[31] +#define __pyx_kp_u_enable __pyx_string_tab[32] +#define __pyx_n_u_enter __pyx_string_tab[33] +#define __pyx_n_u_exc_tb __pyx_string_tab[34] +#define __pyx_n_u_exc_type __pyx_string_tab[35] +#define __pyx_n_u_exc_val __pyx_string_tab[36] +#define __pyx_n_u_exception __pyx_string_tab[37] +#define __pyx_n_u_exit __pyx_string_tab[38] +#define __pyx_n_u_f_trace __pyx_string_tab[39] +#define __pyx_kp_u_failed __pyx_string_tab[40] +#define __pyx_n_u_file __pyx_string_tab[41] +#define __pyx_n_u_frame __pyx_string_tab[42] +#define __pyx_n_u_func __pyx_string_tab[43] +#define __pyx_kp_u_gc __pyx_string_tab[44] +#define __pyx_n_u_get __pyx_string_tab[45] +#define __pyx_n_u_getstate __pyx_string_tab[46] +#define __pyx_kp_u_handler __pyx_string_tab[47] +#define __pyx_n_u_hunter __pyx_string_tab[48] +#define __pyx_n_u_hunter__tracer __pyx_string_tab[49] +#define __pyx_kp_u_hunter__tracer_Tracer_at_0x __pyx_string_tab[50] +#define __pyx_n_u_id __pyx_string_tab[51] +#define __pyx_n_u_initializing __pyx_string_tab[52] +#define __pyx_n_u_is_coroutine __pyx_string_tab[53] +#define __pyx_kp_u_isenabled __pyx_string_tab[54] +#define __pyx_n_u_kind __pyx_string_tab[55] +#define __pyx_n_u_line __pyx_string_tab[56] +#define __pyx_n_u_main __pyx_string_tab[57] +#define __pyx_n_u_module __pyx_string_tab[58] +#define __pyx_n_u_name __pyx_string_tab[59] +#define __pyx_kp_u_no_default___reduce___due_to_non __pyx_string_tab[60] +#define __pyx_n_u_pop __pyx_string_tab[61] +#define __pyx_n_u_predicate __pyx_string_tab[62] +#define __pyx_kp_u_previous __pyx_string_tab[63] +#define __pyx_n_u_print_exc __pyx_string_tab[64] +#define __pyx_n_u_profile_hook __pyx_string_tab[65] +#define __pyx_n_u_profiling_mode __pyx_string_tab[66] +#define __pyx_n_u_pyx_state __pyx_string_tab[67] +#define __pyx_n_u_pyx_vtable __pyx_string_tab[68] +#define __pyx_n_u_qualname __pyx_string_tab[69] +#define __pyx_n_u_reduce __pyx_string_tab[70] +#define __pyx_n_u_reduce_cython __pyx_string_tab[71] +#define __pyx_n_u_reduce_ex __pyx_string_tab[72] +#define __pyx_n_u_repr __pyx_string_tab[73] +#define __pyx_n_u_return __pyx_string_tab[74] +#define __pyx_n_u_self __pyx_string_tab[75] +#define __pyx_n_u_set_name __pyx_string_tab[76] +#define __pyx_n_u_setprofile __pyx_string_tab[77] +#define __pyx_n_u_setstate __pyx_string_tab[78] +#define __pyx_n_u_setstate_cython __pyx_string_tab[79] +#define __pyx_n_u_settrace __pyx_string_tab[80] +#define __pyx_n_u_spec __pyx_string_tab[81] +#define __pyx_kp_u_src_hunter__tracer_pxd __pyx_string_tab[82] +#define __pyx_kp_u_src_hunter__tracer_pyx __pyx_string_tab[83] +#define __pyx_n_u_state __pyx_string_tab[84] +#define __pyx_n_u_stop __pyx_string_tab[85] +#define __pyx_kp_u_stopped __pyx_string_tab[86] +#define __pyx_kp_u_stringsource __pyx_string_tab[87] +#define __pyx_n_u_test __pyx_string_tab[88] +#define __pyx_n_u_threading __pyx_string_tab[89] +#define __pyx_n_u_threading_support __pyx_string_tab[90] +#define __pyx_kp_u_threading_support_2 __pyx_string_tab[91] +#define __pyx_n_u_trace __pyx_string_tab[92] +#define __pyx_n_u_trace_func __pyx_string_tab[93] +#define __pyx_n_u_trace_hook __pyx_string_tab[94] +#define __pyx_n_u_traceback __pyx_string_tab[95] +#define __pyx_n_u_write __pyx_string_tab[96] +#define __pyx_n_u_x __pyx_string_tab[97] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_clear(PyObject *m) { - __pyx_mstate *clear_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { + __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m); if (!clear_module_state) return 0; Py_CLEAR(clear_module_state->__pyx_d); Py_CLEAR(clear_module_state->__pyx_b); @@ -3188,6 +3538,9 @@ static int __pyx_m_clear(PyObject *m) { #ifdef __Pyx_FusedFunction_USED Py_CLEAR(clear_module_state->__pyx_FusedFunctionType); #endif + #if CYTHON_PEP489_MULTI_PHASE_INIT + __Pyx_State_RemoveModule(NULL); + #endif Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4bool_bool); Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_7complex_complex); @@ -3199,87 +3552,12 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_When); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_From); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_CLEAR(clear_module_state->__pyx_type_6hunter_7_tracer_Tracer); - Py_CLEAR(clear_module_state->__pyx_kp_s_); - Py_CLEAR(clear_module_state->__pyx_kp_s_Disabling_tracer_because_handler); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer___enter); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer___exit); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer_stop); - Py_CLEAR(clear_module_state->__pyx_n_s_Tracer_trace); - Py_CLEAR(clear_module_state->__pyx_n_s_TypeError); - Py_CLEAR(clear_module_state->__pyx_n_s__14); - Py_CLEAR(clear_module_state->__pyx_n_s__8); - Py_CLEAR(clear_module_state->__pyx_n_s_all); - Py_CLEAR(clear_module_state->__pyx_n_s_arg); - Py_CLEAR(clear_module_state->__pyx_n_s_asyncio_coroutines); - Py_CLEAR(clear_module_state->__pyx_n_s_c_call); - Py_CLEAR(clear_module_state->__pyx_n_s_c_exception); - Py_CLEAR(clear_module_state->__pyx_n_s_c_return); - Py_CLEAR(clear_module_state->__pyx_n_s_call); - Py_CLEAR(clear_module_state->__pyx_n_s_cline_in_traceback); - Py_CLEAR(clear_module_state->__pyx_n_s_default_stream); - Py_CLEAR(clear_module_state->__pyx_kp_u_disable); - Py_CLEAR(clear_module_state->__pyx_kp_u_enable); - Py_CLEAR(clear_module_state->__pyx_n_s_enter); - Py_CLEAR(clear_module_state->__pyx_n_s_exc_tb); - Py_CLEAR(clear_module_state->__pyx_n_s_exc_type); - Py_CLEAR(clear_module_state->__pyx_n_s_exc_val); - Py_CLEAR(clear_module_state->__pyx_n_s_exception); - Py_CLEAR(clear_module_state->__pyx_n_s_exit); - Py_CLEAR(clear_module_state->__pyx_n_s_f_trace); - Py_CLEAR(clear_module_state->__pyx_n_s_file); - Py_CLEAR(clear_module_state->__pyx_n_s_frame); - Py_CLEAR(clear_module_state->__pyx_kp_u_gc); - Py_CLEAR(clear_module_state->__pyx_n_s_getstate); - Py_CLEAR(clear_module_state->__pyx_kp_s_handler); - Py_CLEAR(clear_module_state->__pyx_n_s_hunter); - Py_CLEAR(clear_module_state->__pyx_n_s_hunter__tracer); - Py_CLEAR(clear_module_state->__pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t); - Py_CLEAR(clear_module_state->__pyx_n_s_id); - Py_CLEAR(clear_module_state->__pyx_n_s_import); - Py_CLEAR(clear_module_state->__pyx_n_s_initializing); - Py_CLEAR(clear_module_state->__pyx_n_s_is_coroutine); - Py_CLEAR(clear_module_state->__pyx_kp_u_isenabled); - Py_CLEAR(clear_module_state->__pyx_n_s_kind); - Py_CLEAR(clear_module_state->__pyx_n_s_line); - Py_CLEAR(clear_module_state->__pyx_n_s_main); - Py_CLEAR(clear_module_state->__pyx_n_s_name); - Py_CLEAR(clear_module_state->__pyx_kp_s_no_default___reduce___due_to_non); - Py_CLEAR(clear_module_state->__pyx_n_s_predicate); - Py_CLEAR(clear_module_state->__pyx_kp_s_previous); - Py_CLEAR(clear_module_state->__pyx_n_s_print_exc); - Py_CLEAR(clear_module_state->__pyx_n_s_profile_hook); - Py_CLEAR(clear_module_state->__pyx_n_s_profiling_mode); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_state); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_vtable); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce_ex); - Py_CLEAR(clear_module_state->__pyx_n_s_return); - Py_CLEAR(clear_module_state->__pyx_n_s_self); - Py_CLEAR(clear_module_state->__pyx_n_s_setprofile); - Py_CLEAR(clear_module_state->__pyx_n_s_setstate); - Py_CLEAR(clear_module_state->__pyx_n_s_setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_settrace); - Py_CLEAR(clear_module_state->__pyx_n_s_spec); - Py_CLEAR(clear_module_state->__pyx_kp_s_src_hunter__tracer_pyx); - Py_CLEAR(clear_module_state->__pyx_n_s_state); - Py_CLEAR(clear_module_state->__pyx_n_s_stop); - Py_CLEAR(clear_module_state->__pyx_kp_s_stopped); - Py_CLEAR(clear_module_state->__pyx_kp_s_stringsource); - Py_CLEAR(clear_module_state->__pyx_n_s_test); - Py_CLEAR(clear_module_state->__pyx_n_s_threading); - Py_CLEAR(clear_module_state->__pyx_n_s_threading_support); - Py_CLEAR(clear_module_state->__pyx_n_s_trace); - Py_CLEAR(clear_module_state->__pyx_n_s_trace_hook); - Py_CLEAR(clear_module_state->__pyx_n_s_traceback); - Py_CLEAR(clear_module_state->__pyx_n_s_write); + for (int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } + for (int i=0; i<18; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<98; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_0); Py_CLEAR(clear_module_state->__pyx_int_1); Py_CLEAR(clear_module_state->__pyx_int_2); @@ -3287,31 +3565,20 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_int_4); Py_CLEAR(clear_module_state->__pyx_int_5); Py_CLEAR(clear_module_state->__pyx_int_6); - Py_CLEAR(clear_module_state->__pyx_tuple__9); - Py_CLEAR(clear_module_state->__pyx_tuple__10); - Py_CLEAR(clear_module_state->__pyx_tuple__11); - Py_CLEAR(clear_module_state->__pyx_tuple__12); - Py_CLEAR(clear_module_state->__pyx_tuple__13); - Py_CLEAR(clear_module_state->__pyx_codeobj__2); - Py_CLEAR(clear_module_state->__pyx_codeobj__3); - Py_CLEAR(clear_module_state->__pyx_codeobj__4); - Py_CLEAR(clear_module_state->__pyx_codeobj__5); - Py_CLEAR(clear_module_state->__pyx_codeobj__6); - Py_CLEAR(clear_module_state->__pyx_codeobj__7); return 0; } #endif /* #### Code section: module_state_traverse ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { - __pyx_mstate *traverse_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { + __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m); if (!traverse_module_state) return 0; Py_VISIT(traverse_module_state->__pyx_d); Py_VISIT(traverse_module_state->__pyx_b); Py_VISIT(traverse_module_state->__pyx_cython_runtime); - Py_VISIT(traverse_module_state->__pyx_empty_tuple); - Py_VISIT(traverse_module_state->__pyx_empty_bytes); - Py_VISIT(traverse_module_state->__pyx_empty_unicode); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode); #ifdef __Pyx_CyFunction_USED Py_VISIT(traverse_module_state->__pyx_CyFunctionType); #endif @@ -3329,418 +3596,114 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_When); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_From); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Backlog); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_FrameType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); Py_VISIT(traverse_module_state->__pyx_type_6hunter_7_tracer_Tracer); - Py_VISIT(traverse_module_state->__pyx_kp_s_); - Py_VISIT(traverse_module_state->__pyx_kp_s_Disabling_tracer_because_handler); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer___enter); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer___exit); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer_stop); - Py_VISIT(traverse_module_state->__pyx_n_s_Tracer_trace); - Py_VISIT(traverse_module_state->__pyx_n_s_TypeError); - Py_VISIT(traverse_module_state->__pyx_n_s__14); - Py_VISIT(traverse_module_state->__pyx_n_s__8); - Py_VISIT(traverse_module_state->__pyx_n_s_all); - Py_VISIT(traverse_module_state->__pyx_n_s_arg); - Py_VISIT(traverse_module_state->__pyx_n_s_asyncio_coroutines); - Py_VISIT(traverse_module_state->__pyx_n_s_c_call); - Py_VISIT(traverse_module_state->__pyx_n_s_c_exception); - Py_VISIT(traverse_module_state->__pyx_n_s_c_return); - Py_VISIT(traverse_module_state->__pyx_n_s_call); - Py_VISIT(traverse_module_state->__pyx_n_s_cline_in_traceback); - Py_VISIT(traverse_module_state->__pyx_n_s_default_stream); - Py_VISIT(traverse_module_state->__pyx_kp_u_disable); - Py_VISIT(traverse_module_state->__pyx_kp_u_enable); - Py_VISIT(traverse_module_state->__pyx_n_s_enter); - Py_VISIT(traverse_module_state->__pyx_n_s_exc_tb); - Py_VISIT(traverse_module_state->__pyx_n_s_exc_type); - Py_VISIT(traverse_module_state->__pyx_n_s_exc_val); - Py_VISIT(traverse_module_state->__pyx_n_s_exception); - Py_VISIT(traverse_module_state->__pyx_n_s_exit); - Py_VISIT(traverse_module_state->__pyx_n_s_f_trace); - Py_VISIT(traverse_module_state->__pyx_n_s_file); - Py_VISIT(traverse_module_state->__pyx_n_s_frame); - Py_VISIT(traverse_module_state->__pyx_kp_u_gc); - Py_VISIT(traverse_module_state->__pyx_n_s_getstate); - Py_VISIT(traverse_module_state->__pyx_kp_s_handler); - Py_VISIT(traverse_module_state->__pyx_n_s_hunter); - Py_VISIT(traverse_module_state->__pyx_n_s_hunter__tracer); - Py_VISIT(traverse_module_state->__pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t); - Py_VISIT(traverse_module_state->__pyx_n_s_id); - Py_VISIT(traverse_module_state->__pyx_n_s_import); - Py_VISIT(traverse_module_state->__pyx_n_s_initializing); - Py_VISIT(traverse_module_state->__pyx_n_s_is_coroutine); - Py_VISIT(traverse_module_state->__pyx_kp_u_isenabled); - Py_VISIT(traverse_module_state->__pyx_n_s_kind); - Py_VISIT(traverse_module_state->__pyx_n_s_line); - Py_VISIT(traverse_module_state->__pyx_n_s_main); - Py_VISIT(traverse_module_state->__pyx_n_s_name); - Py_VISIT(traverse_module_state->__pyx_kp_s_no_default___reduce___due_to_non); - Py_VISIT(traverse_module_state->__pyx_n_s_predicate); - Py_VISIT(traverse_module_state->__pyx_kp_s_previous); - Py_VISIT(traverse_module_state->__pyx_n_s_print_exc); - Py_VISIT(traverse_module_state->__pyx_n_s_profile_hook); - Py_VISIT(traverse_module_state->__pyx_n_s_profiling_mode); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_state); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_vtable); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce_ex); - Py_VISIT(traverse_module_state->__pyx_n_s_return); - Py_VISIT(traverse_module_state->__pyx_n_s_self); - Py_VISIT(traverse_module_state->__pyx_n_s_setprofile); - Py_VISIT(traverse_module_state->__pyx_n_s_setstate); - Py_VISIT(traverse_module_state->__pyx_n_s_setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_settrace); - Py_VISIT(traverse_module_state->__pyx_n_s_spec); - Py_VISIT(traverse_module_state->__pyx_kp_s_src_hunter__tracer_pyx); - Py_VISIT(traverse_module_state->__pyx_n_s_state); - Py_VISIT(traverse_module_state->__pyx_n_s_stop); - Py_VISIT(traverse_module_state->__pyx_kp_s_stopped); - Py_VISIT(traverse_module_state->__pyx_kp_s_stringsource); - Py_VISIT(traverse_module_state->__pyx_n_s_test); - Py_VISIT(traverse_module_state->__pyx_n_s_threading); - Py_VISIT(traverse_module_state->__pyx_n_s_threading_support); - Py_VISIT(traverse_module_state->__pyx_n_s_trace); - Py_VISIT(traverse_module_state->__pyx_n_s_trace_hook); - Py_VISIT(traverse_module_state->__pyx_n_s_traceback); - Py_VISIT(traverse_module_state->__pyx_n_s_write); - Py_VISIT(traverse_module_state->__pyx_int_0); - Py_VISIT(traverse_module_state->__pyx_int_1); - Py_VISIT(traverse_module_state->__pyx_int_2); - Py_VISIT(traverse_module_state->__pyx_int_3); - Py_VISIT(traverse_module_state->__pyx_int_4); - Py_VISIT(traverse_module_state->__pyx_int_5); - Py_VISIT(traverse_module_state->__pyx_int_6); - Py_VISIT(traverse_module_state->__pyx_tuple__9); - Py_VISIT(traverse_module_state->__pyx_tuple__10); - Py_VISIT(traverse_module_state->__pyx_tuple__11); - Py_VISIT(traverse_module_state->__pyx_tuple__12); - Py_VISIT(traverse_module_state->__pyx_tuple__13); - Py_VISIT(traverse_module_state->__pyx_codeobj__2); - Py_VISIT(traverse_module_state->__pyx_codeobj__3); - Py_VISIT(traverse_module_state->__pyx_codeobj__4); - Py_VISIT(traverse_module_state->__pyx_codeobj__5); - Py_VISIT(traverse_module_state->__pyx_codeobj__6); - Py_VISIT(traverse_module_state->__pyx_codeobj__7); + for (int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } + for (int i=0; i<18; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<98; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_0); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_2); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_3); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_4); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_5); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_6); return 0; } #endif -/* #### Code section: module_state_defines ### */ -#define __pyx_d __pyx_mstate_global->__pyx_d -#define __pyx_b __pyx_mstate_global->__pyx_b -#define __pyx_cython_runtime __pyx_mstate_global->__pyx_cython_runtime -#define __pyx_empty_tuple __pyx_mstate_global->__pyx_empty_tuple -#define __pyx_empty_bytes __pyx_mstate_global->__pyx_empty_bytes -#define __pyx_empty_unicode __pyx_mstate_global->__pyx_empty_unicode -#ifdef __Pyx_CyFunction_USED -#define __pyx_CyFunctionType __pyx_mstate_global->__pyx_CyFunctionType -#endif -#ifdef __Pyx_FusedFunction_USED -#define __pyx_FusedFunctionType __pyx_mstate_global->__pyx_FusedFunctionType -#endif -#ifdef __Pyx_Generator_USED -#define __pyx_GeneratorType __pyx_mstate_global->__pyx_GeneratorType -#endif -#ifdef __Pyx_IterableCoroutine_USED -#define __pyx_IterableCoroutineType __pyx_mstate_global->__pyx_IterableCoroutineType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineAwaitType __pyx_mstate_global->__pyx_CoroutineAwaitType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineType __pyx_mstate_global->__pyx_CoroutineType -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_7cpython_4type_type __pyx_mstate_global->__pyx_ptype_7cpython_4type_type -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_7cpython_4bool_bool __pyx_mstate_global->__pyx_ptype_7cpython_4bool_bool -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_7cpython_7complex_complex __pyx_mstate_global->__pyx_ptype_7cpython_7complex_complex -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_6hunter_6_event_Event __pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_6hunter_11_predicates_Query __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query -#define __pyx_ptype_6hunter_11_predicates_And __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And -#define __pyx_ptype_6hunter_11_predicates_Or __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or -#define __pyx_ptype_6hunter_11_predicates_Not __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not -#define __pyx_ptype_6hunter_11_predicates_When __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When -#define __pyx_ptype_6hunter_11_predicates_From __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From -#define __pyx_ptype_6hunter_11_predicates_Backlog __pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog -#if CYTHON_USE_MODULE_STATE -#define __pyx_type_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_type_6hunter_7_tracer_Tracer -#endif -#define __pyx_ptype_6hunter_7_tracer_FrameType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_FrameType -#define __pyx_ptype_6hunter_7_tracer_CodeType __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType -#define __pyx_ptype_6hunter_7_tracer_Tracer __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer -#define __pyx_kp_s_ __pyx_mstate_global->__pyx_kp_s_ -#define __pyx_kp_s_Disabling_tracer_because_handler __pyx_mstate_global->__pyx_kp_s_Disabling_tracer_because_handler -#define __pyx_n_s_Tracer __pyx_mstate_global->__pyx_n_s_Tracer -#define __pyx_n_s_Tracer___enter __pyx_mstate_global->__pyx_n_s_Tracer___enter -#define __pyx_n_s_Tracer___exit __pyx_mstate_global->__pyx_n_s_Tracer___exit -#define __pyx_n_s_Tracer___reduce_cython __pyx_mstate_global->__pyx_n_s_Tracer___reduce_cython -#define __pyx_n_s_Tracer___setstate_cython __pyx_mstate_global->__pyx_n_s_Tracer___setstate_cython -#define __pyx_n_s_Tracer_stop __pyx_mstate_global->__pyx_n_s_Tracer_stop -#define __pyx_n_s_Tracer_trace __pyx_mstate_global->__pyx_n_s_Tracer_trace -#define __pyx_n_s_TypeError __pyx_mstate_global->__pyx_n_s_TypeError -#define __pyx_n_s__14 __pyx_mstate_global->__pyx_n_s__14 -#define __pyx_n_s__8 __pyx_mstate_global->__pyx_n_s__8 -#define __pyx_n_s_all __pyx_mstate_global->__pyx_n_s_all -#define __pyx_n_s_arg __pyx_mstate_global->__pyx_n_s_arg -#define __pyx_n_s_asyncio_coroutines __pyx_mstate_global->__pyx_n_s_asyncio_coroutines -#define __pyx_n_s_c_call __pyx_mstate_global->__pyx_n_s_c_call -#define __pyx_n_s_c_exception __pyx_mstate_global->__pyx_n_s_c_exception -#define __pyx_n_s_c_return __pyx_mstate_global->__pyx_n_s_c_return -#define __pyx_n_s_call __pyx_mstate_global->__pyx_n_s_call -#define __pyx_n_s_cline_in_traceback __pyx_mstate_global->__pyx_n_s_cline_in_traceback -#define __pyx_n_s_default_stream __pyx_mstate_global->__pyx_n_s_default_stream -#define __pyx_kp_u_disable __pyx_mstate_global->__pyx_kp_u_disable -#define __pyx_kp_u_enable __pyx_mstate_global->__pyx_kp_u_enable -#define __pyx_n_s_enter __pyx_mstate_global->__pyx_n_s_enter -#define __pyx_n_s_exc_tb __pyx_mstate_global->__pyx_n_s_exc_tb -#define __pyx_n_s_exc_type __pyx_mstate_global->__pyx_n_s_exc_type -#define __pyx_n_s_exc_val __pyx_mstate_global->__pyx_n_s_exc_val -#define __pyx_n_s_exception __pyx_mstate_global->__pyx_n_s_exception -#define __pyx_n_s_exit __pyx_mstate_global->__pyx_n_s_exit -#define __pyx_n_s_f_trace __pyx_mstate_global->__pyx_n_s_f_trace -#define __pyx_n_s_file __pyx_mstate_global->__pyx_n_s_file -#define __pyx_n_s_frame __pyx_mstate_global->__pyx_n_s_frame -#define __pyx_kp_u_gc __pyx_mstate_global->__pyx_kp_u_gc -#define __pyx_n_s_getstate __pyx_mstate_global->__pyx_n_s_getstate -#define __pyx_kp_s_handler __pyx_mstate_global->__pyx_kp_s_handler -#define __pyx_n_s_hunter __pyx_mstate_global->__pyx_n_s_hunter -#define __pyx_n_s_hunter__tracer __pyx_mstate_global->__pyx_n_s_hunter__tracer -#define __pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t __pyx_mstate_global->__pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t -#define __pyx_n_s_id __pyx_mstate_global->__pyx_n_s_id -#define __pyx_n_s_import __pyx_mstate_global->__pyx_n_s_import -#define __pyx_n_s_initializing __pyx_mstate_global->__pyx_n_s_initializing -#define __pyx_n_s_is_coroutine __pyx_mstate_global->__pyx_n_s_is_coroutine -#define __pyx_kp_u_isenabled __pyx_mstate_global->__pyx_kp_u_isenabled -#define __pyx_n_s_kind __pyx_mstate_global->__pyx_n_s_kind -#define __pyx_n_s_line __pyx_mstate_global->__pyx_n_s_line -#define __pyx_n_s_main __pyx_mstate_global->__pyx_n_s_main -#define __pyx_n_s_name __pyx_mstate_global->__pyx_n_s_name -#define __pyx_kp_s_no_default___reduce___due_to_non __pyx_mstate_global->__pyx_kp_s_no_default___reduce___due_to_non -#define __pyx_n_s_predicate __pyx_mstate_global->__pyx_n_s_predicate -#define __pyx_kp_s_previous __pyx_mstate_global->__pyx_kp_s_previous -#define __pyx_n_s_print_exc __pyx_mstate_global->__pyx_n_s_print_exc -#define __pyx_n_s_profile_hook __pyx_mstate_global->__pyx_n_s_profile_hook -#define __pyx_n_s_profiling_mode __pyx_mstate_global->__pyx_n_s_profiling_mode -#define __pyx_n_s_pyx_state __pyx_mstate_global->__pyx_n_s_pyx_state -#define __pyx_n_s_pyx_vtable __pyx_mstate_global->__pyx_n_s_pyx_vtable -#define __pyx_n_s_reduce __pyx_mstate_global->__pyx_n_s_reduce -#define __pyx_n_s_reduce_cython __pyx_mstate_global->__pyx_n_s_reduce_cython -#define __pyx_n_s_reduce_ex __pyx_mstate_global->__pyx_n_s_reduce_ex -#define __pyx_n_s_return __pyx_mstate_global->__pyx_n_s_return -#define __pyx_n_s_self __pyx_mstate_global->__pyx_n_s_self -#define __pyx_n_s_setprofile __pyx_mstate_global->__pyx_n_s_setprofile -#define __pyx_n_s_setstate __pyx_mstate_global->__pyx_n_s_setstate -#define __pyx_n_s_setstate_cython __pyx_mstate_global->__pyx_n_s_setstate_cython -#define __pyx_n_s_settrace __pyx_mstate_global->__pyx_n_s_settrace -#define __pyx_n_s_spec __pyx_mstate_global->__pyx_n_s_spec -#define __pyx_kp_s_src_hunter__tracer_pyx __pyx_mstate_global->__pyx_kp_s_src_hunter__tracer_pyx -#define __pyx_n_s_state __pyx_mstate_global->__pyx_n_s_state -#define __pyx_n_s_stop __pyx_mstate_global->__pyx_n_s_stop -#define __pyx_kp_s_stopped __pyx_mstate_global->__pyx_kp_s_stopped -#define __pyx_kp_s_stringsource __pyx_mstate_global->__pyx_kp_s_stringsource -#define __pyx_n_s_test __pyx_mstate_global->__pyx_n_s_test -#define __pyx_n_s_threading __pyx_mstate_global->__pyx_n_s_threading -#define __pyx_n_s_threading_support __pyx_mstate_global->__pyx_n_s_threading_support -#define __pyx_n_s_trace __pyx_mstate_global->__pyx_n_s_trace -#define __pyx_n_s_trace_hook __pyx_mstate_global->__pyx_n_s_trace_hook -#define __pyx_n_s_traceback __pyx_mstate_global->__pyx_n_s_traceback -#define __pyx_n_s_write __pyx_mstate_global->__pyx_n_s_write -#define __pyx_int_0 __pyx_mstate_global->__pyx_int_0 -#define __pyx_int_1 __pyx_mstate_global->__pyx_int_1 -#define __pyx_int_2 __pyx_mstate_global->__pyx_int_2 -#define __pyx_int_3 __pyx_mstate_global->__pyx_int_3 -#define __pyx_int_4 __pyx_mstate_global->__pyx_int_4 -#define __pyx_int_5 __pyx_mstate_global->__pyx_int_5 -#define __pyx_int_6 __pyx_mstate_global->__pyx_int_6 -#define __pyx_tuple__9 __pyx_mstate_global->__pyx_tuple__9 -#define __pyx_tuple__10 __pyx_mstate_global->__pyx_tuple__10 -#define __pyx_tuple__11 __pyx_mstate_global->__pyx_tuple__11 -#define __pyx_tuple__12 __pyx_mstate_global->__pyx_tuple__12 -#define __pyx_tuple__13 __pyx_mstate_global->__pyx_tuple__13 -#define __pyx_codeobj__2 __pyx_mstate_global->__pyx_codeobj__2 -#define __pyx_codeobj__3 __pyx_mstate_global->__pyx_codeobj__3 -#define __pyx_codeobj__4 __pyx_mstate_global->__pyx_codeobj__4 -#define __pyx_codeobj__5 __pyx_mstate_global->__pyx_codeobj__5 -#define __pyx_codeobj__6 __pyx_mstate_global->__pyx_codeobj__6 -#define __pyx_codeobj__7 __pyx_mstate_global->__pyx_codeobj__7 /* #### Code section: module_code ### */ -/* "cpython/complex.pxd":19 +/* "cpython/complex.pxd":20 * - * @property - * cdef inline double real(self) noexcept: # <<<<<<<<<<<<<< - * return self.cval.real - * - */ + * # unavailable in limited API + * @property # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") + * cdef inline double real(self) noexcept: +*/ +#if !CYTHON_COMPILING_IN_LIMITED_API static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComplexObject *__pyx_v_self) { double __pyx_r; - /* "cpython/complex.pxd":20 - * @property + /* "cpython/complex.pxd":23 + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") * cdef inline double real(self) noexcept: * return self.cval.real # <<<<<<<<<<<<<< * - * @property - */ + * # unavailable in limited API +*/ __pyx_r = __pyx_v_self->cval.real; goto __pyx_L0; - /* "cpython/complex.pxd":19 - * - * @property - * cdef inline double real(self) noexcept: # <<<<<<<<<<<<<< - * return self.cval.real + /* "cpython/complex.pxd":20 * - */ + * # unavailable in limited API + * @property # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") + * cdef inline double real(self) noexcept: +*/ /* function exit code */ __pyx_L0:; return __pyx_r; } +#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ -/* "cpython/complex.pxd":23 - * - * @property - * cdef inline double imag(self) noexcept: # <<<<<<<<<<<<<< - * return self.cval.imag +/* "cpython/complex.pxd":26 * - */ + * # unavailable in limited API + * @property # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") + * cdef inline double imag(self) noexcept: +*/ +#if !CYTHON_COMPILING_IN_LIMITED_API static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComplexObject *__pyx_v_self) { double __pyx_r; - /* "cpython/complex.pxd":24 - * @property + /* "cpython/complex.pxd":29 + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") * cdef inline double imag(self) noexcept: * return self.cval.imag # <<<<<<<<<<<<<< * * # PyTypeObject PyComplex_Type - */ +*/ __pyx_r = __pyx_v_self->cval.imag; goto __pyx_L0; - /* "cpython/complex.pxd":23 - * - * @property - * cdef inline double imag(self) noexcept: # <<<<<<<<<<<<<< - * return self.cval.imag + /* "cpython/complex.pxd":26 * - */ + * # unavailable in limited API + * @property # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") + * cdef inline double imag(self) noexcept: +*/ /* function exit code */ __pyx_L0:; return __pyx_r; } +#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ -/* "cpython/contextvars.pxd":112 +/* "cpython/contextvars.pxd":115 * * - * cdef inline object get_value(var, default_value=None): # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< + * cdef inline object get_value(var, default_value=None): * """Return a new reference to the value of the context variable, - * or the default value of the context variable, - */ +*/ +#if !CYTHON_COMPILING_IN_LIMITED_API static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value(PyObject *__pyx_v_var, struct __pyx_opt_args_7cpython_11contextvars_get_value *__pyx_optional_args) { + + /* "cpython/contextvars.pxd":116 + * + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") + * cdef inline object get_value(var, default_value=None): # <<<<<<<<<<<<<< + * """Return a new reference to the value of the context variable, + * or the default value of the context variable, +*/ PyObject *__pyx_v_default_value = ((PyObject *)Py_None); PyObject *__pyx_v_value; PyObject *__pyx_v_pyvalue = NULL; @@ -3752,104 +3715,104 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value(PyObject int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_value", 1); + __Pyx_RefNannySetupContext("get_value", 0); if (__pyx_optional_args) { if (__pyx_optional_args->__pyx_n > 0) { __pyx_v_default_value = __pyx_optional_args->default_value; } } - /* "cpython/contextvars.pxd":117 + /* "cpython/contextvars.pxd":121 * or None if no such value or default was found. * """ * cdef PyObject *value = NULL # <<<<<<<<<<<<<< * PyContextVar_Get(var, NULL, &value) * if value is NULL: - */ +*/ __pyx_v_value = NULL; - /* "cpython/contextvars.pxd":118 + /* "cpython/contextvars.pxd":122 * """ * cdef PyObject *value = NULL * PyContextVar_Get(var, NULL, &value) # <<<<<<<<<<<<<< * if value is NULL: * # context variable does not have a default - */ - __pyx_t_1 = PyContextVar_Get(__pyx_v_var, NULL, (&__pyx_v_value)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(2, 118, __pyx_L1_error) +*/ + __pyx_t_1 = PyContextVar_Get(__pyx_v_var, NULL, (&__pyx_v_value)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(2, 122, __pyx_L1_error) - /* "cpython/contextvars.pxd":119 + /* "cpython/contextvars.pxd":123 * cdef PyObject *value = NULL * PyContextVar_Get(var, NULL, &value) * if value is NULL: # <<<<<<<<<<<<<< * # context variable does not have a default * pyvalue = default_value - */ +*/ __pyx_t_2 = (__pyx_v_value == NULL); if (__pyx_t_2) { - /* "cpython/contextvars.pxd":121 + /* "cpython/contextvars.pxd":125 * if value is NULL: * # context variable does not have a default * pyvalue = default_value # <<<<<<<<<<<<<< * else: * # value or default value of context variable - */ +*/ __Pyx_INCREF(__pyx_v_default_value); __pyx_v_pyvalue = __pyx_v_default_value; - /* "cpython/contextvars.pxd":119 + /* "cpython/contextvars.pxd":123 * cdef PyObject *value = NULL * PyContextVar_Get(var, NULL, &value) * if value is NULL: # <<<<<<<<<<<<<< * # context variable does not have a default * pyvalue = default_value - */ +*/ goto __pyx_L3; } - /* "cpython/contextvars.pxd":124 + /* "cpython/contextvars.pxd":128 * else: * # value or default value of context variable * pyvalue = value # <<<<<<<<<<<<<< * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' * return pyvalue - */ +*/ /*else*/ { __pyx_t_3 = ((PyObject *)__pyx_v_value); __Pyx_INCREF(__pyx_t_3); __pyx_v_pyvalue = __pyx_t_3; __pyx_t_3 = 0; - /* "cpython/contextvars.pxd":125 + /* "cpython/contextvars.pxd":129 * # value or default value of context variable * pyvalue = value * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' # <<<<<<<<<<<<<< * return pyvalue * - */ +*/ Py_XDECREF(__pyx_v_value); } __pyx_L3:; - /* "cpython/contextvars.pxd":126 + /* "cpython/contextvars.pxd":130 * pyvalue = value * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' * return pyvalue # <<<<<<<<<<<<<< * * - */ +*/ __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_pyvalue); __pyx_r = __pyx_v_pyvalue; goto __pyx_L0; - /* "cpython/contextvars.pxd":112 + /* "cpython/contextvars.pxd":115 * * - * cdef inline object get_value(var, default_value=None): # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< + * cdef inline object get_value(var, default_value=None): * """Return a new reference to the value of the context variable, - * or the default value of the context variable, - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -3862,16 +3825,26 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value(PyObject __Pyx_RefNannyFinishContext(); return __pyx_r; } +#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ -/* "cpython/contextvars.pxd":129 +/* "cpython/contextvars.pxd":133 * * - * cdef inline object get_value_no_default(var, default_value=None): # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< + * cdef inline object get_value_no_default(var, default_value=None): * """Return a new reference to the value of the context variable, - * or the provided default value if no such value was found. - */ +*/ +#if !CYTHON_COMPILING_IN_LIMITED_API static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_default(PyObject *__pyx_v_var, struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default *__pyx_optional_args) { + + /* "cpython/contextvars.pxd":134 + * + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") + * cdef inline object get_value_no_default(var, default_value=None): # <<<<<<<<<<<<<< + * """Return a new reference to the value of the context variable, + * or the provided default value if no such value was found. +*/ PyObject *__pyx_v_default_value = ((PyObject *)Py_None); PyObject *__pyx_v_value; PyObject *__pyx_v_pyvalue = NULL; @@ -3882,68 +3855,68 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_defau int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_value_no_default", 1); + __Pyx_RefNannySetupContext("get_value_no_default", 0); if (__pyx_optional_args) { if (__pyx_optional_args->__pyx_n > 0) { __pyx_v_default_value = __pyx_optional_args->default_value; } } - /* "cpython/contextvars.pxd":135 + /* "cpython/contextvars.pxd":140 * Ignores the default value of the context variable, if any. * """ * cdef PyObject *value = NULL # <<<<<<<<<<<<<< * PyContextVar_Get(var, default_value, &value) * # value of context variable or 'default_value' - */ +*/ __pyx_v_value = NULL; - /* "cpython/contextvars.pxd":136 + /* "cpython/contextvars.pxd":141 * """ * cdef PyObject *value = NULL * PyContextVar_Get(var, default_value, &value) # <<<<<<<<<<<<<< * # value of context variable or 'default_value' * pyvalue = value - */ - __pyx_t_1 = PyContextVar_Get(__pyx_v_var, ((PyObject *)__pyx_v_default_value), (&__pyx_v_value)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(2, 136, __pyx_L1_error) +*/ + __pyx_t_1 = PyContextVar_Get(__pyx_v_var, ((PyObject *)__pyx_v_default_value), (&__pyx_v_value)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(2, 141, __pyx_L1_error) - /* "cpython/contextvars.pxd":138 + /* "cpython/contextvars.pxd":143 * PyContextVar_Get(var, default_value, &value) * # value of context variable or 'default_value' * pyvalue = value # <<<<<<<<<<<<<< * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' * return pyvalue - */ +*/ __pyx_t_2 = ((PyObject *)__pyx_v_value); __Pyx_INCREF(__pyx_t_2); __pyx_v_pyvalue = __pyx_t_2; __pyx_t_2 = 0; - /* "cpython/contextvars.pxd":139 + /* "cpython/contextvars.pxd":144 * # value of context variable or 'default_value' * pyvalue = value * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' # <<<<<<<<<<<<<< * return pyvalue - */ +*/ Py_XDECREF(__pyx_v_value); - /* "cpython/contextvars.pxd":140 + /* "cpython/contextvars.pxd":145 * pyvalue = value * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' * return pyvalue # <<<<<<<<<<<<<< - */ +*/ __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_pyvalue); __pyx_r = __pyx_v_pyvalue; goto __pyx_L0; - /* "cpython/contextvars.pxd":129 + /* "cpython/contextvars.pxd":133 * * - * cdef inline object get_value_no_default(var, default_value=None): # <<<<<<<<<<<<<< + * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< + * cdef inline object get_value_no_default(var, default_value=None): * """Return a new reference to the value of the context variable, - * or the provided default value if no such value was found. - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -3956,6 +3929,7 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_defau __Pyx_RefNannyFinishContext(); return __pyx_r; } +#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ /* "hunter/_tracer.pyx":25 * } @@ -3963,14 +3937,14 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_defau * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: # <<<<<<<<<<<<<< * if frame.f_trace is not self: * frame.f_trace = self - */ +*/ -static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, PyFrameObject *__pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg) { +static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, FrameType __pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg) { PyObject *__pyx_v_handler = NULL; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; PyObject *__pyx_v_exc = NULL; int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -3979,25 +3953,31 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_t_9; + size_t __pyx_t_8; + PyObject *__pyx_t_9 = NULL; PyObject *__pyx_t_10 = NULL; PyObject *__pyx_t_11 = NULL; - PyObject *__pyx_t_12 = NULL; + int __pyx_t_12; PyObject *__pyx_t_13 = NULL; - int __pyx_t_14; - char const *__pyx_t_15; + PyObject *__pyx_t_14 = NULL; + PyObject *__pyx_t_15 = NULL; PyObject *__pyx_t_16 = NULL; - PyObject *__pyx_t_17 = NULL; + PyObject *__pyx_t_17[7]; PyObject *__pyx_t_18 = NULL; - PyObject *__pyx_t_19 = NULL; - PyObject *__pyx_t_20 = NULL; + int __pyx_t_19; + char const *__pyx_t_20; PyObject *__pyx_t_21 = NULL; + PyObject *__pyx_t_22 = NULL; + PyObject *__pyx_t_23 = NULL; + PyObject *__pyx_t_24 = NULL; + PyObject *__pyx_t_25 = NULL; + PyObject *__pyx_t_26 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("trace_func", 1); - __Pyx_TraceCall("trace_func", __pyx_f[0], 25, 0, __PYX_ERR(0, 25, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) + __Pyx_RefNannySetupContext("trace_func", 0); + __Pyx_TraceStartFunc("trace_func", __pyx_f[0], 25, 0, 0, 0, __PYX_ERR(0, 25, __pyx_L1_error)); /* "hunter/_tracer.pyx":26 * @@ -4005,9 +3985,9 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if frame.f_trace is not self: # <<<<<<<<<<<<<< * frame.f_trace = self * - */ - __Pyx_TraceLine(26,0,__PYX_ERR(0, 26, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_n_s_f_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 26, __pyx_L1_error) +*/ + __Pyx_TraceLine(26,4,0,__PYX_ERR(0, 26, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_mstate_global->__pyx_n_u_f_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = (__pyx_t_1 != ((PyObject *)__pyx_v_self)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -4019,9 +3999,9 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * frame.f_trace = self # <<<<<<<<<<<<<< * * handler = self.handler - */ - __Pyx_TraceLine(27,0,__PYX_ERR(0, 27, __pyx_L1_error)) - if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_frame), __pyx_n_s_f_trace, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(0, 27, __pyx_L1_error) +*/ + __Pyx_TraceLine(27,7,0,__PYX_ERR(0, 27, __pyx_L1_error)) + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_frame), __pyx_mstate_global->__pyx_n_u_f_trace, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(0, 27, __pyx_L1_error) /* "hunter/_tracer.pyx":26 * @@ -4029,7 +4009,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if frame.f_trace is not self: # <<<<<<<<<<<<<< * frame.f_trace = self * - */ +*/ } /* "hunter/_tracer.pyx":29 @@ -4038,8 +4018,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * handler = self.handler # <<<<<<<<<<<<<< * * if handler is None: # the tracer was stopped - */ - __Pyx_TraceLine(29,0,__PYX_ERR(0, 29, __pyx_L1_error)) +*/ + __Pyx_TraceLine(29,12,0,__PYX_ERR(0, 29, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->handler; __Pyx_INCREF(__pyx_t_1); __pyx_v_handler = __pyx_t_1; @@ -4051,8 +4031,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if handler is None: # the tracer was stopped # <<<<<<<<<<<<<< * # make sure it's uninstalled even for running threads * if self.profiling_mode: - */ - __Pyx_TraceLine(31,0,__PYX_ERR(0, 31, __pyx_L1_error)) +*/ + __Pyx_TraceLine(31,16,0,__PYX_ERR(0, 31, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_handler == Py_None); if (__pyx_t_2) { @@ -4062,8 +4042,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if self.profiling_mode: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: - */ - __Pyx_TraceLine(33,0,__PYX_ERR(0, 33, __pyx_L1_error)) +*/ + __Pyx_TraceLine(33,18,0,__PYX_ERR(0, 33, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { /* "hunter/_tracer.pyx":34 @@ -4072,8 +4052,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * PyEval_SetProfile(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetTrace(NULL, NULL) - */ - __Pyx_TraceLine(34,0,__PYX_ERR(0, 34, __pyx_L1_error)) +*/ + __Pyx_TraceLine(34,21,0,__PYX_ERR(0, 34, __pyx_L1_error)) PyEval_SetProfile(NULL, NULL); /* "hunter/_tracer.pyx":33 @@ -4082,7 +4062,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if self.profiling_mode: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: - */ +*/ goto __pyx_L5; } @@ -4092,8 +4072,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * PyEval_SetTrace(NULL, NULL) # <<<<<<<<<<<<<< * return 0 * - */ - __Pyx_TraceLine(36,0,__PYX_ERR(0, 36, __pyx_L1_error)) +*/ + __Pyx_TraceLine(36,25,0,__PYX_ERR(0, 36, __pyx_L1_error)) /*else*/ { PyEval_SetTrace(NULL, NULL); } @@ -4105,9 +4085,10 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * return 0 # <<<<<<<<<<<<<< * * if kind == 3 and self.depth > 0: - */ - __Pyx_TraceLine(37,0,__PYX_ERR(0, 37, __pyx_L1_error)) +*/ + __Pyx_TraceLine(37,28,0,__PYX_ERR(0, 37, __pyx_L1_error)) __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 28, 0, __PYX_ERR(0, 37, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":31 @@ -4116,7 +4097,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if handler is None: # the tracer was stopped # <<<<<<<<<<<<<< * # make sure it's uninstalled even for running threads * if self.profiling_mode: - */ +*/ } /* "hunter/_tracer.pyx":39 @@ -4125,8 +4106,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if kind == 3 and self.depth > 0: # <<<<<<<<<<<<<< * self.depth -= 1 * - */ - __Pyx_TraceLine(39,0,__PYX_ERR(0, 39, __pyx_L1_error)) +*/ + __Pyx_TraceLine(39,32,0,__PYX_ERR(0, 39, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_kind == 3); if (__pyx_t_3) { } else { @@ -4144,8 +4125,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * self.depth -= 1 # <<<<<<<<<<<<<< * * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) - */ - __Pyx_TraceLine(40,0,__PYX_ERR(0, 40, __pyx_L1_error)) +*/ + __Pyx_TraceLine(40,39,0,__PYX_ERR(0, 40, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth - 1); /* "hunter/_tracer.pyx":39 @@ -4154,7 +4135,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if kind == 3 and self.depth > 0: # <<<<<<<<<<<<<< * self.depth -= 1 * - */ +*/ } /* "hunter/_tracer.pyx":42 @@ -4163,37 +4144,34 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) # <<<<<<<<<<<<<< * * try: - */ - __Pyx_TraceLine(42,0,__PYX_ERR(0, 42, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); +*/ + __Pyx_TraceLine(42,44,0,__PYX_ERR(0, 42, __pyx_L1_error)) + __pyx_t_4 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); + __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); + __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 42, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); __pyx_t_2 = (__pyx_v_arg == NULL); if (__pyx_t_2) { __Pyx_INCREF(Py_None); - __pyx_t_4 = Py_None; + __pyx_t_7 = Py_None; } else { __Pyx_INCREF(((PyObject *)__pyx_v_arg)); - __pyx_t_4 = ((PyObject *)__pyx_v_arg); + __pyx_t_7 = ((PyObject *)__pyx_v_arg); } - __pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 42, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF((PyObject *)__pyx_v_frame); - __Pyx_GIVEREF((PyObject *)__pyx_v_frame); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_v_frame))) __PYX_ERR(0, 42, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error); - __Pyx_INCREF((PyObject *)__pyx_v_self); - __Pyx_GIVEREF((PyObject *)__pyx_v_self); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_self))) __PYX_ERR(0, 42, __pyx_L1_error); + __pyx_t_8 = 1; + { + PyObject *__pyx_callargs[5] = {__pyx_t_4, ((PyObject *)__pyx_v_frame), __pyx_t_6, __pyx_t_7, ((PyObject *)__pyx_v_self)}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_8, (5-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } + __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_6hunter_6_event_Event), __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_4); - __pyx_t_4 = 0; /* "hunter/_tracer.pyx":44 * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) @@ -4201,15 +4179,15 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: - */ - __Pyx_TraceLine(44,0,__PYX_ERR(0, 44, __pyx_L1_error)) +*/ + __Pyx_TraceLine(44,54,0,__PYX_ERR(0, 44, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8); - __Pyx_XGOTREF(__pyx_t_6); - __Pyx_XGOTREF(__pyx_t_7); - __Pyx_XGOTREF(__pyx_t_8); + __Pyx_ExceptionSave(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11); + __Pyx_XGOTREF(__pyx_t_9); + __Pyx_XGOTREF(__pyx_t_10); + __Pyx_XGOTREF(__pyx_t_11); /*try:*/ { /* "hunter/_tracer.pyx":45 @@ -4218,11 +4196,11 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * fast_call(handler, event) # <<<<<<<<<<<<<< * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) - */ - __Pyx_TraceLine(45,0,__PYX_ERR(0, 45, __pyx_L9_error)) - __pyx_t_4 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L9_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(45,56,0,__PYX_ERR(0, 45, __pyx_L9_error)) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 45, __pyx_L9_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_tracer.pyx":44 * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) @@ -4230,16 +4208,19 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: - */ +*/ } - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L14_try_end; __pyx_L9_error:; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_TraceException(__pyx_lineno, 0, 0); /* "hunter/_tracer.pyx":46 * try: @@ -4247,15 +4228,17 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * except Exception as exc: # <<<<<<<<<<<<<< * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( - */ - __Pyx_TraceLine(46,0,__PYX_ERR(0, 46, __pyx_L11_except_error)) - __pyx_t_9 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); - if (__pyx_t_9) { +*/ + __Pyx_TraceLine(46,60,0,__PYX_ERR(0, 46, __pyx_L11_except_error)) + __pyx_t_12 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); + if (__pyx_t_12) { __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_1) < 0) __PYX_ERR(0, 46, __pyx_L11_except_error) - __Pyx_XGOTREF(__pyx_t_4); - __Pyx_XGOTREF(__pyx_t_5); + __Pyx_TraceExceptionHandled(59); + if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 46, __pyx_L11_except_error) __Pyx_XGOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_5); + __Pyx_XGOTREF(__pyx_t_7); + __Pyx_TraceExceptionDone(); __Pyx_INCREF(__pyx_t_5); __pyx_v_exc = __pyx_t_5; /*try:*/ { @@ -4266,27 +4249,45 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * traceback.print_exc(file=hunter._default_stream) # <<<<<<<<<<<<<< * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) - */ - __Pyx_TraceLine(47,0,__PYX_ERR(0, 47, __pyx_L20_error)) - __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_traceback); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_print_exc); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_hunter); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_12); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_default_stream); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) +*/ + __Pyx_TraceLine(47,64,0,__PYX_ERR(0, 47, __pyx_L20_error)) + __pyx_t_4 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_file, __pyx_t_13) < 0) __PYX_ERR(0, 47, __pyx_L20_error) + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_15); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __pyx_t_8 = 1; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_14))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_14); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_14); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_14, __pyx__function); + __pyx_t_8 = 0; + } + #endif + { + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_4, NULL}; + __pyx_t_13 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_13); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_13, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 47, __pyx_L20_error) + __pyx_t_6 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_14, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_13); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_6); + } + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; /* "hunter/_tracer.pyx":48 * except Exception as exc: @@ -4294,16 +4295,15 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( # <<<<<<<<<<<<<< * handler, exc, event)) * self.stop() - */ - __Pyx_TraceLine(48,0,__PYX_ERR(0, 48, __pyx_L20_error)) - __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_hunter); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_default_stream); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_write); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; +*/ + __Pyx_TraceLine(48,68,0,__PYX_ERR(0, 48, __pyx_L20_error)) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 48, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_13); + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 48, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_15); + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __pyx_t_14 = __pyx_t_15; + __Pyx_INCREF(__pyx_t_14); /* "hunter/_tracer.pyx":49 * traceback.print_exc(file=hunter._default_stream) @@ -4311,19 +4311,21 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * handler, exc, event)) # <<<<<<<<<<<<<< * self.stop() * return 0 - */ - __Pyx_TraceLine(49,0,__PYX_ERR(0, 49, __pyx_L20_error)) - __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 49, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_INCREF(__pyx_v_handler); - __Pyx_GIVEREF(__pyx_v_handler); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_handler)) __PYX_ERR(0, 49, __pyx_L20_error); - __Pyx_INCREF(__pyx_v_exc); - __Pyx_GIVEREF(__pyx_v_exc); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_exc)) __PYX_ERR(0, 49, __pyx_L20_error); - __Pyx_INCREF((PyObject *)__pyx_v_event); - __Pyx_GIVEREF((PyObject *)__pyx_v_event); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_11, 2, ((PyObject *)__pyx_v_event))) __PYX_ERR(0, 49, __pyx_L20_error); +*/ + __Pyx_TraceLine(49,73,0,__PYX_ERR(0, 49, __pyx_L20_error)) + __pyx_t_13 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 49, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_13); + __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 49, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_16 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(((PyObject *)__pyx_v_event)), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 49, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_16); + __pyx_t_17[0] = __pyx_mstate_global->__pyx_kp_u_Disabling_tracer_because_handler; + __pyx_t_17[1] = __pyx_t_13; + __pyx_t_17[2] = __pyx_mstate_global->__pyx_kp_u_failed; + __pyx_t_17[3] = __pyx_t_4; + __pyx_t_17[4] = __pyx_mstate_global->__pyx_kp_u_at; + __pyx_t_17[5] = __pyx_t_16; + __pyx_t_17[6] = __pyx_mstate_global->__pyx_kp_u_; /* "hunter/_tracer.pyx":48 * except Exception as exc: @@ -4331,35 +4333,25 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( # <<<<<<<<<<<<<< * handler, exc, event)) * self.stop() - */ - __Pyx_TraceLine(48,0,__PYX_ERR(0, 48, __pyx_L20_error)) - __pyx_t_12 = __Pyx_PyString_Format(__pyx_kp_s_Disabling_tracer_because_handler, __pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_12); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = NULL; - __pyx_t_9 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_10))) { - __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_10); - if (likely(__pyx_t_11)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); - __Pyx_INCREF(__pyx_t_11); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_10, function); - __pyx_t_9 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(48,72,0,__PYX_ERR(0, 48, __pyx_L20_error)) + __pyx_t_18 = __Pyx_PyUnicode_Join(__pyx_t_17, 7, 33 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_13) + 9 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + 3, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_13) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16)); + if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 48, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_18); + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + __pyx_t_8 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_11, __pyx_t_12}; - __pyx_t_13 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_9, 1+__pyx_t_9); - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_18}; + __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_write, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 48, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_6); } - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; /* "hunter/_tracer.pyx":50 * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( @@ -4367,33 +4359,19 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * self.stop() # <<<<<<<<<<<<<< * return 0 * - */ - __Pyx_TraceLine(50,0,__PYX_ERR(0, 50, __pyx_L20_error)) - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_stop); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 50, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_12 = NULL; - __pyx_t_9 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_10))) { - __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_10); - if (likely(__pyx_t_12)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); - __Pyx_INCREF(__pyx_t_12); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_10, function); - __pyx_t_9 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(50,76,0,__PYX_ERR(0, 50, __pyx_L20_error)) + __pyx_t_15 = ((PyObject *)__pyx_v_self); + __Pyx_INCREF(__pyx_t_15); + __pyx_t_8 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_12, NULL}; - __pyx_t_13 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_9, 0+__pyx_t_9); - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 50, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_15, NULL}; + __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 50, __pyx_L20_error) + __Pyx_GOTREF(__pyx_t_6); } - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; /* "hunter/_tracer.pyx":51 * handler, exc, event)) @@ -4401,12 +4379,13 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * return 0 # <<<<<<<<<<<<<< * * if kind == 0: - */ - __Pyx_TraceLine(51,0,__PYX_ERR(0, 51, __pyx_L20_error)) +*/ + __Pyx_TraceLine(51,79,0,__PYX_ERR(0, 51, __pyx_L20_error)) __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 79, 0, __PYX_ERR(0, 51, __pyx_L20_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L19_return; } @@ -4416,48 +4395,52 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * except Exception as exc: # <<<<<<<<<<<<<< * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( - */ - __Pyx_TraceLine(46,0,__PYX_ERR(0, 46, __pyx_L20_error)) +*/ + __Pyx_TraceLine(46,59,0,__PYX_ERR(0, 46, __pyx_L20_error)) /*finally:*/ { __pyx_L20_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_TraceExceptionHandled(59); __Pyx_PyThreadState_assign - __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); - if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18) < 0)) __Pyx_ErrFetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); - __Pyx_XGOTREF(__pyx_t_16); - __Pyx_XGOTREF(__pyx_t_17); - __Pyx_XGOTREF(__pyx_t_18); - __Pyx_XGOTREF(__pyx_t_19); - __Pyx_XGOTREF(__pyx_t_20); + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; + __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_ExceptionSwap(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26); + if ( unlikely(__Pyx_GetException(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23) < 0)) __Pyx_ErrFetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); __Pyx_XGOTREF(__pyx_t_21); - __pyx_t_9 = __pyx_lineno; __pyx_t_14 = __pyx_clineno; __pyx_t_15 = __pyx_filename; + __Pyx_XGOTREF(__pyx_t_22); + __Pyx_XGOTREF(__pyx_t_23); + __Pyx_XGOTREF(__pyx_t_24); + __Pyx_XGOTREF(__pyx_t_25); + __Pyx_XGOTREF(__pyx_t_26); + __pyx_t_12 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_20 = __pyx_filename; { __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; } - if (PY_MAJOR_VERSION >= 3) { - __Pyx_XGIVEREF(__pyx_t_19); - __Pyx_XGIVEREF(__pyx_t_20); - __Pyx_XGIVEREF(__pyx_t_21); - __Pyx_ExceptionReset(__pyx_t_19, __pyx_t_20, __pyx_t_21); - } - __Pyx_XGIVEREF(__pyx_t_16); - __Pyx_XGIVEREF(__pyx_t_17); - __Pyx_XGIVEREF(__pyx_t_18); - __Pyx_ErrRestore(__pyx_t_16, __pyx_t_17, __pyx_t_18); - __pyx_t_16 = 0; __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; - __pyx_lineno = __pyx_t_9; __pyx_clineno = __pyx_t_14; __pyx_filename = __pyx_t_15; + __Pyx_XGIVEREF(__pyx_t_24); + __Pyx_XGIVEREF(__pyx_t_25); + __Pyx_XGIVEREF(__pyx_t_26); + __Pyx_ExceptionReset(__pyx_t_24, __pyx_t_25, __pyx_t_26); + __Pyx_XGIVEREF(__pyx_t_21); + __Pyx_XGIVEREF(__pyx_t_22); + __Pyx_XGIVEREF(__pyx_t_23); + __Pyx_ErrRestore(__pyx_t_21, __pyx_t_22, __pyx_t_23); + __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; + __pyx_lineno = __pyx_t_12; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20; + __Pyx_TraceException(59, 1, 0); goto __pyx_L11_except_error; } __pyx_L19_return: { - __pyx_t_14 = __pyx_r; + __pyx_t_19 = __pyx_r; __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; - __pyx_r = __pyx_t_14; + __pyx_r = __pyx_t_19; goto __pyx_L12_except_return; } } @@ -4470,18 +4453,18 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: - */ +*/ __pyx_L11_except_error:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8); + __Pyx_XGIVEREF(__pyx_t_9); + __Pyx_XGIVEREF(__pyx_t_10); + __Pyx_XGIVEREF(__pyx_t_11); + __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); goto __pyx_L1_error; __pyx_L12_except_return:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8); + __Pyx_XGIVEREF(__pyx_t_9); + __Pyx_XGIVEREF(__pyx_t_10); + __Pyx_XGIVEREF(__pyx_t_11); + __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); goto __pyx_L0; __pyx_L14_try_end:; } @@ -4492,8 +4475,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if kind == 0: # <<<<<<<<<<<<<< * self.depth += 1 * self.calls += 1 - */ - __Pyx_TraceLine(53,0,__PYX_ERR(0, 53, __pyx_L1_error)) +*/ + __Pyx_TraceLine(53,83,0,__PYX_ERR(0, 53, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_kind == 0); if (__pyx_t_2) { @@ -4503,8 +4486,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * self.depth += 1 # <<<<<<<<<<<<<< * self.calls += 1 * - */ - __Pyx_TraceLine(54,0,__PYX_ERR(0, 54, __pyx_L1_error)) +*/ + __Pyx_TraceLine(54,85,0,__PYX_ERR(0, 54, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth + 1); /* "hunter/_tracer.pyx":55 @@ -4513,8 +4496,8 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * self.calls += 1 # <<<<<<<<<<<<<< * * - */ - __Pyx_TraceLine(55,0,__PYX_ERR(0, 55, __pyx_L1_error)) +*/ + __Pyx_TraceLine(55,88,0,__PYX_ERR(0, 55, __pyx_L1_error)) __pyx_v_self->calls = (__pyx_v_self->calls + 1); /* "hunter/_tracer.pyx":53 @@ -4523,7 +4506,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * if kind == 0: # <<<<<<<<<<<<<< * self.depth += 1 * self.calls += 1 - */ +*/ } /* "hunter/_tracer.pyx":25 @@ -4532,26 +4515,36 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: # <<<<<<<<<<<<<< * if frame.f_trace is not self: * frame.f_trace = self - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 0, 0, __PYX_ERR(0, 25, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_XDECREF(__pyx_t_12); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_13); + __Pyx_XDECREF(__pyx_t_14); + __Pyx_XDECREF(__pyx_t_15); + __Pyx_XDECREF(__pyx_t_16); + __Pyx_XDECREF(__pyx_t_18); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 25, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_XDECREF(__pyx_v_handler); __Pyx_XDECREF((PyObject *)__pyx_v_event); __Pyx_XDECREF(__pyx_v_exc); - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4562,7 +4555,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h * def __cinit__(self, threading_support=None, profiling_mode=False): # <<<<<<<<<<<<<< * self.handler = None * self.previous = None - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -4578,55 +4571,48 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_threading_support,&__pyx_n_s_profiling_mode,0}; - values[0] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_None)); - values[1] = __Pyx_Arg_NewRef_VARARGS(((PyObject *)Py_False)); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_threading_support,&__pyx_mstate_global->__pyx_n_u_profiling_mode,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 59, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_threading_support); - if (value) { values[0] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 1: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_profiling_mode); - if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__cinit__") < 0)) __PYX_ERR(0, 59, __pyx_L3_error) - } + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 59, __pyx_L3_error) + if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_False)); } else { switch (__pyx_nargs) { - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } + if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); + if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_False)); } __pyx_v_threading_support = values[0]; __pyx_v_profiling_mode = values[1]; @@ -4637,11 +4623,8 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._tracer.Tracer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -4650,11 +4633,8 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_threading_support, __pyx_v_profiling_mode); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -4662,14 +4642,15 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, PyObject *__pyx_v_threading_support, PyObject *__pyx_v_profiling_mode) { int __pyx_r; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 1); - __Pyx_TraceCall("__cinit__", __pyx_f[0], 59, 0, __PYX_ERR(0, 59, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) + __Pyx_RefNannySetupContext("__cinit__", 0); + __Pyx_TraceStartFunc("__cinit__", __pyx_f[0], 59, 0, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); /* "hunter/_tracer.pyx":60 * cdef class Tracer: @@ -4677,8 +4658,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self.handler = None # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL - */ - __Pyx_TraceLine(60,0,__PYX_ERR(0, 60, __pyx_L1_error)) +*/ + __Pyx_TraceLine(60,3,0,__PYX_ERR(0, 60, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -4691,8 +4672,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * self._threading_previous = None - */ - __Pyx_TraceLine(61,0,__PYX_ERR(0, 61, __pyx_L1_error)) +*/ + __Pyx_TraceLine(61,6,0,__PYX_ERR(0, 61, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); @@ -4705,8 +4686,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self._previousfunc = NULL # <<<<<<<<<<<<<< * self._threading_previous = None * self.threading_support = threading_support - */ - __Pyx_TraceLine(62,0,__PYX_ERR(0, 62, __pyx_L1_error)) +*/ + __Pyx_TraceLine(62,9,0,__PYX_ERR(0, 62, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; /* "hunter/_tracer.pyx":63 @@ -4715,8 +4696,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self._threading_previous = None # <<<<<<<<<<<<<< * self.threading_support = threading_support * self.profiling_mode = profiling_mode - */ - __Pyx_TraceLine(63,0,__PYX_ERR(0, 63, __pyx_L1_error)) +*/ + __Pyx_TraceLine(63,12,0,__PYX_ERR(0, 63, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); @@ -4729,8 +4710,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self.threading_support = threading_support # <<<<<<<<<<<<<< * self.profiling_mode = profiling_mode * self.depth = 0 - */ - __Pyx_TraceLine(64,0,__PYX_ERR(0, 64, __pyx_L1_error)) +*/ + __Pyx_TraceLine(64,15,0,__PYX_ERR(0, 64, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_threading_support); __Pyx_GIVEREF(__pyx_v_threading_support); __Pyx_GOTREF(__pyx_v_self->threading_support); @@ -4743,8 +4724,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self.profiling_mode = profiling_mode # <<<<<<<<<<<<<< * self.depth = 0 * self.calls = 0 - */ - __Pyx_TraceLine(65,0,__PYX_ERR(0, 65, __pyx_L1_error)) +*/ + __Pyx_TraceLine(65,20,0,__PYX_ERR(0, 65, __pyx_L1_error)) __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_profiling_mode); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 65, __pyx_L1_error) __pyx_v_self->profiling_mode = __pyx_t_1; @@ -4754,8 +4735,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self.depth = 0 # <<<<<<<<<<<<<< * self.calls = 0 * - */ - __Pyx_TraceLine(66,0,__PYX_ERR(0, 66, __pyx_L1_error)) +*/ + __Pyx_TraceLine(66,21,0,__PYX_ERR(0, 66, __pyx_L1_error)) __pyx_v_self->depth = 0; /* "hunter/_tracer.pyx":67 @@ -4764,8 +4745,8 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * self.calls = 0 # <<<<<<<<<<<<<< * * def __dealloc__(self): - */ - __Pyx_TraceLine(67,0,__PYX_ERR(0, 67, __pyx_L1_error)) +*/ + __Pyx_TraceLine(67,24,0,__PYX_ERR(0, 67, __pyx_L1_error)) __pyx_v_self->calls = 0; /* "hunter/_tracer.pyx":59 @@ -4774,16 +4755,23 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * def __cinit__(self, threading_support=None, profiling_mode=False): # <<<<<<<<<<<<<< * self.handler = None * self.previous = None - */ +*/ /* function exit code */ __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -4794,7 +4782,7 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ * def __dealloc__(self): # <<<<<<<<<<<<<< * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: - */ +*/ /* Python wrapper */ static void __pyx_pw_6hunter_7_tracer_6Tracer_3__dealloc__(PyObject *__pyx_v_self); /*proto*/ @@ -4811,18 +4799,18 @@ static void __pyx_pw_6hunter_7_tracer_6Tracer_3__dealloc__(PyObject *__pyx_v_sel static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyThreadState *__pyx_v_state; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__dealloc__", 1); - __Pyx_TraceCall("__dealloc__", __pyx_f[0], 69, 0, __PYX_ERR(0, 69, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) + __Pyx_RefNannySetupContext("__dealloc__", 0); + __Pyx_TraceStartFunc("__dealloc__", __pyx_f[0], 69, 0, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); /* "hunter/_tracer.pyx":70 * @@ -4830,8 +4818,8 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun * cdef PyThreadState *state = PyThreadState_Get() # <<<<<<<<<<<<<< * if state.c_traceobj is self: * self.stop() - */ - __Pyx_TraceLine(70,0,__PYX_ERR(0, 70, __pyx_L1_error)) +*/ + __Pyx_TraceLine(70,3,0,__PYX_ERR(0, 70, __pyx_L1_error)) __pyx_v_state = PyThreadState_Get(); /* "hunter/_tracer.pyx":71 @@ -4840,8 +4828,8 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun * if state.c_traceobj is self: # <<<<<<<<<<<<<< * self.stop() * - */ - __Pyx_TraceLine(71,0,__PYX_ERR(0, 71, __pyx_L1_error)) +*/ + __Pyx_TraceLine(71,7,0,__PYX_ERR(0, 71, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_traceobj == ((PyObject *)__pyx_v_self)); if (__pyx_t_1) { @@ -4851,31 +4839,17 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun * self.stop() # <<<<<<<<<<<<<< * * def __repr__(self): - */ - __Pyx_TraceLine(72,0,__PYX_ERR(0, 72, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_stop); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 72, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - __pyx_t_5 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_5 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(72,10,0,__PYX_ERR(0, 72, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_v_self); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; + __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -4885,7 +4859,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun * if state.c_traceobj is self: # <<<<<<<<<<<<<< * self.stop() * - */ +*/ } /* "hunter/_tracer.pyx":69 @@ -4894,17 +4868,23 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun * def __dealloc__(self): # <<<<<<<<<<<<<< * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: - */ +*/ /* function exit code */ + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); + #endif __Pyx_WriteUnraisable("hunter._tracer.Tracer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); __pyx_L0:; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); } @@ -4914,7 +4894,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * id(self), - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5__repr__(PyObject *__pyx_v_self); /*proto*/ @@ -4933,21 +4913,24 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5__repr__(PyObject *__pyx_v_s static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *__pyx_t_8 = NULL; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10[10]; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 1); - __Pyx_TraceCall("__repr__", __pyx_f[0], 74, 0, __PYX_ERR(0, 74, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) + __Pyx_RefNannySetupContext("__repr__", 0); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 74, 0, 0, 0, __PYX_ERR(0, 74, __pyx_L1_error)); /* "hunter/_tracer.pyx":75 * @@ -4955,8 +4938,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * return '' % ( # <<<<<<<<<<<<<< * id(self), * self.threading_support, - */ - __Pyx_TraceLine(75,0,__PYX_ERR(0, 75, __pyx_L1_error)) +*/ + __Pyx_TraceLine(75,1,0,__PYX_ERR(0, 75, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); /* "hunter/_tracer.pyx":76 @@ -4965,10 +4948,24 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * id(self), # <<<<<<<<<<<<<< * self.threading_support, * '' if self.handler is None else 'handler=', - */ - __Pyx_TraceLine(76,0,__PYX_ERR(0, 76, __pyx_L1_error)) +*/ + __Pyx_TraceLine(76,4,0,__PYX_ERR(0, 76, __pyx_L1_error)) __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_Format(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "hunter/_tracer.pyx":77 + * return '' % ( + * id(self), + * self.threading_support, # <<<<<<<<<<<<<< + * '' if self.handler is None else 'handler=', + * '' if self.handler is None else repr(self.handler), +*/ + __Pyx_TraceLine(77,7,0,__PYX_ERR(0, 77, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->threading_support), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); /* "hunter/_tracer.pyx":78 * id(self), @@ -4976,16 +4973,19 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * '' if self.handler is None else 'handler=', # <<<<<<<<<<<<<< * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', - */ - __Pyx_TraceLine(78,0,__PYX_ERR(0, 78, __pyx_L1_error)) - __pyx_t_3 = (__pyx_v_self->handler == Py_None); - if (__pyx_t_3) { - __Pyx_INCREF(__pyx_kp_s_stopped); - __pyx_t_2 = __pyx_kp_s_stopped; +*/ + __Pyx_TraceLine(78,12,0,__PYX_ERR(0, 78, __pyx_L1_error)) + __pyx_t_4 = (__pyx_v_self->handler == Py_None); + if (__pyx_t_4) { + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_stopped); + __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_stopped; } else { - __Pyx_INCREF(__pyx_kp_s_handler); - __pyx_t_2 = __pyx_kp_s_handler; + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_handler); + __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_handler; } + __pyx_t_5 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 78, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "hunter/_tracer.pyx":79 * self.threading_support, @@ -4993,21 +4993,24 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * '' if self.handler is None else repr(self.handler), # <<<<<<<<<<<<<< * '' if self.previous is None else ', previous=', * '' if self.previous is None else repr(self.previous), - */ - __Pyx_TraceLine(79,0,__PYX_ERR(0, 79, __pyx_L1_error)) - __pyx_t_3 = (__pyx_v_self->handler == Py_None); - if (__pyx_t_3) { - __Pyx_INCREF(__pyx_kp_s_); - __pyx_t_4 = __pyx_kp_s_; +*/ + __Pyx_TraceLine(79,18,0,__PYX_ERR(0, 79, __pyx_L1_error)) + __pyx_t_4 = (__pyx_v_self->handler == Py_None); + if (__pyx_t_4) { + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); + __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u__3; } else { - __pyx_t_5 = __pyx_v_self->handler; - __Pyx_INCREF(__pyx_t_5); - __pyx_t_6 = PyObject_Repr(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 79, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_4 = __pyx_t_6; - __pyx_t_6 = 0; + __pyx_t_6 = __pyx_v_self->handler; + __Pyx_INCREF(__pyx_t_6); + __pyx_t_7 = PyObject_Repr(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_3 = __pyx_t_7; + __pyx_t_7 = 0; } + __pyx_t_7 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "hunter/_tracer.pyx":80 * '' if self.handler is None else 'handler=', @@ -5015,16 +5018,19 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * '' if self.previous is None else ', previous=', # <<<<<<<<<<<<<< * '' if self.previous is None else repr(self.previous), * ) - */ - __Pyx_TraceLine(80,0,__PYX_ERR(0, 80, __pyx_L1_error)) - __pyx_t_3 = (__pyx_v_self->previous == Py_None); - if (__pyx_t_3) { - __Pyx_INCREF(__pyx_kp_s_); - __pyx_t_6 = __pyx_kp_s_; +*/ + __Pyx_TraceLine(80,27,0,__PYX_ERR(0, 80, __pyx_L1_error)) + __pyx_t_4 = (__pyx_v_self->previous == Py_None); + if (__pyx_t_4) { + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); + __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u__3; } else { - __Pyx_INCREF(__pyx_kp_s_previous); - __pyx_t_6 = __pyx_kp_s_previous; + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_previous); + __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_previous; } + __pyx_t_6 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 80, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "hunter/_tracer.pyx":81 * '' if self.handler is None else repr(self.handler), @@ -5032,50 +5038,34 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * '' if self.previous is None else repr(self.previous), # <<<<<<<<<<<<<< * ) * - */ - __Pyx_TraceLine(81,0,__PYX_ERR(0, 81, __pyx_L1_error)) - __pyx_t_3 = (__pyx_v_self->previous == Py_None); - if (__pyx_t_3) { - __Pyx_INCREF(__pyx_kp_s_); - __pyx_t_5 = __pyx_kp_s_; +*/ + __Pyx_TraceLine(81,33,0,__PYX_ERR(0, 81, __pyx_L1_error)) + __pyx_t_4 = (__pyx_v_self->previous == Py_None); + if (__pyx_t_4) { + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); + __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u__3; } else { - __pyx_t_7 = __pyx_v_self->previous; - __Pyx_INCREF(__pyx_t_7); - __pyx_t_8 = PyObject_Repr(__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 81, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_5 = __pyx_t_8; - __pyx_t_8 = 0; + __pyx_t_8 = __pyx_v_self->previous; + __Pyx_INCREF(__pyx_t_8); + __pyx_t_9 = PyObject_Repr(__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __pyx_t_3 = __pyx_t_9; + __pyx_t_9 = 0; } - - /* "hunter/_tracer.pyx":76 - * def __repr__(self): - * return '' % ( - * id(self), # <<<<<<<<<<<<<< - * self.threading_support, - * '' if self.handler is None else 'handler=', - */ - __Pyx_TraceLine(76,0,__PYX_ERR(0, 76, __pyx_L1_error)) - __pyx_t_8 = PyTuple_New(6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 76, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->threading_support); - __Pyx_GIVEREF(__pyx_v_self->threading_support); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_self->threading_support)) __PYX_ERR(0, 76, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_4)) __PYX_ERR(0, 76, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_6); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_t_6)) __PYX_ERR(0, 76, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_8, 5, __pyx_t_5)) __PYX_ERR(0, 76, __pyx_L1_error); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_4 = 0; - __pyx_t_6 = 0; - __pyx_t_5 = 0; + __pyx_t_9 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_10[0] = __pyx_mstate_global->__pyx_kp_u_hunter__tracer_Tracer_at_0x; + __pyx_t_10[1] = __pyx_t_2; + __pyx_t_10[2] = __pyx_mstate_global->__pyx_kp_u_threading_support_2; + __pyx_t_10[3] = __pyx_t_1; + __pyx_t_10[4] = __pyx_mstate_global->__pyx_kp_u__2; + __pyx_t_10[5] = __pyx_t_5; + __pyx_t_10[6] = __pyx_t_7; + __pyx_t_10[7] = __pyx_t_6; + __pyx_t_10[8] = __pyx_t_9; + __pyx_t_10[9] = __pyx_mstate_global->__pyx_kp_u__4; /* "hunter/_tracer.pyx":75 * @@ -5083,13 +5073,20 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * return '' % ( # <<<<<<<<<<<<<< * id(self), * self.threading_support, - */ - __Pyx_TraceLine(75,0,__PYX_ERR(0, 75, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 75, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; +*/ + __Pyx_TraceLine(75,2,0,__PYX_ERR(0, 75, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_10, 10, 28 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 20 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_7) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_9) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_7) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9)); + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 75, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __pyx_r = __pyx_t_3; + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 75, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":74 @@ -5098,22 +5095,29 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * def __repr__(self): # <<<<<<<<<<<<<< * return '' % ( * id(self), - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 74, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5124,7 +5128,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h * def __call__(self, frame, str kind, arg): # <<<<<<<<<<<<<< * trace_func(self, frame, KIND_INTS[kind], arg) * if kind == 0: - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -5141,66 +5145,47 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__call__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_frame,&__pyx_n_s_kind,&__pyx_n_s_arg,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 84, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 84, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 84, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 84, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_frame)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_kind)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 1); __PYX_ERR(0, 84, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_arg)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, 2); __PYX_ERR(0, 84, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__call__") < 0)) __PYX_ERR(0, 84, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 84, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, i); __PYX_ERR(0, 84, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); - values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); - values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 84, __pyx_L3_error) + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 84, __pyx_L3_error) + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 84, __pyx_L3_error) } __pyx_v_frame = values[0]; __pyx_v_kind = ((PyObject*)values[1]); @@ -5212,37 +5197,36 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._tracer.Tracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_kind), (&PyString_Type), 1, "kind", 1))) __PYX_ERR(0, 84, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_kind), (&PyUnicode_Type), 1, "kind", 1))) __PYX_ERR(0, 84, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_6__call__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_frame, __pyx_v_kind, __pyx_v_arg); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, PyObject *__pyx_v_frame, PyObject *__pyx_v_kind, PyObject *__pyx_v_arg) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; @@ -5251,8 +5235,9 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__call__", 1); - __Pyx_TraceCall("__call__", __pyx_f[0], 84, 0, __PYX_ERR(0, 84, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) + __Pyx_RefNannySetupContext("__call__", 0); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 84, 0, 0, 0, __PYX_ERR(0, 84, __pyx_L1_error)); /* "hunter/_tracer.pyx":85 * @@ -5260,18 +5245,17 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * trace_func(self, frame, KIND_INTS[kind], arg) # <<<<<<<<<<<<<< * if kind == 0: * PyEval_SetTrace( trace_func, self) - */ - __Pyx_TraceLine(85,0,__PYX_ERR(0, 85, __pyx_L1_error)) - if (!(likely(((__pyx_v_frame) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_frame, __pyx_ptype_6hunter_7_tracer_FrameType))))) __PYX_ERR(0, 85, __pyx_L1_error) +*/ + __Pyx_TraceLine(85,5,0,__PYX_ERR(0, 85, __pyx_L1_error)) if (unlikely(__pyx_v_6hunter_7_tracer_KIND_INTS == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); __PYX_ERR(0, 85, __pyx_L1_error) } __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_6hunter_7_tracer_KIND_INTS, __pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __pyx_f_6hunter_7_tracer_trace_func(__pyx_v_self, ((PyFrameObject *)__pyx_v_frame), __pyx_t_2, ((PyObject *)__pyx_v_arg)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_3 = __pyx_f_6hunter_7_tracer_trace_func(__pyx_v_self, ((FrameType)__pyx_v_frame), __pyx_t_2, ((PyObject *)__pyx_v_arg)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 85, __pyx_L1_error) /* "hunter/_tracer.pyx":86 * def __call__(self, frame, str kind, arg): @@ -5279,9 +5263,9 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * if kind == 0: # <<<<<<<<<<<<<< * PyEval_SetTrace( trace_func, self) * return self - */ - __Pyx_TraceLine(86,0,__PYX_ERR(0, 86, __pyx_L1_error)) - __pyx_t_4 = (__Pyx_PyString_Equals(__pyx_v_kind, __pyx_int_0, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 86, __pyx_L1_error) +*/ + __Pyx_TraceLine(86,11,0,__PYX_ERR(0, 86, __pyx_L1_error)) + __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_v_kind, __pyx_mstate_global->__pyx_int_0, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 86, __pyx_L1_error) if (__pyx_t_4) { /* "hunter/_tracer.pyx":87 @@ -5290,8 +5274,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * PyEval_SetTrace( trace_func, self) # <<<<<<<<<<<<<< * return self * - */ - __Pyx_TraceLine(87,0,__PYX_ERR(0, 87, __pyx_L1_error)) +*/ + __Pyx_TraceLine(87,15,0,__PYX_ERR(0, 87, __pyx_L1_error)) PyEval_SetTrace(((Py_tracefunc)__pyx_f_6hunter_7_tracer_trace_func), ((PyObject *)__pyx_v_self)); /* "hunter/_tracer.pyx":86 @@ -5300,7 +5284,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * if kind == 0: # <<<<<<<<<<<<<< * PyEval_SetTrace( trace_func, self) * return self - */ +*/ } /* "hunter/_tracer.pyx":88 @@ -5309,11 +5293,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * return self # <<<<<<<<<<<<<< * * def trace(self, predicate): - */ - __Pyx_TraceLine(88,0,__PYX_ERR(0, 88, __pyx_L1_error)) +*/ + __Pyx_TraceLine(88,20,0,__PYX_ERR(0, 88, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 88, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":84 @@ -5322,16 +5307,22 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * def __call__(self, frame, str kind, arg): # <<<<<<<<<<<<<< * trace_func(self, frame, KIND_INTS[kind], arg) * if kind == 0: - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 84, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5342,7 +5333,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h * def trace(self, predicate): # <<<<<<<<<<<<<< * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_9trace(PyObject *__pyx_v_self, @@ -5352,7 +5343,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_9trace = {"trace", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_9trace, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_9trace = {"trace", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_9trace, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_9trace(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -5373,7 +5364,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("trace (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -5381,33 +5372,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_predicate,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_predicate,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 90, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_predicate)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 90, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "trace") < 0)) __PYX_ERR(0, 90, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "trace", 0) < 0) __PYX_ERR(0, 90, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, i); __PYX_ERR(0, 90, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) } __pyx_v_predicate = values[0]; } @@ -5417,11 +5403,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._tracer.Tracer.trace", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -5430,11 +5413,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_8trace(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_predicate); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -5443,21 +5423,22 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, PyObject *__pyx_v_predicate) { PyThreadState *__pyx_v_state; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - Py_tracefunc __pyx_t_7; + PyObject *__pyx_t_6 = NULL; + size_t __pyx_t_7; + Py_tracefunc __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__2) - __Pyx_RefNannySetupContext("trace", 1); - __Pyx_TraceCall("trace", __pyx_f[0], 90, 0, __PYX_ERR(0, 90, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) + __Pyx_RefNannySetupContext("trace", 0); + __Pyx_TraceStartFunc("trace", __pyx_f[0], 90, 0, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); /* "hunter/_tracer.pyx":91 * @@ -5465,8 +5446,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self.handler = predicate # <<<<<<<<<<<<<< * cdef PyThreadState *state = PyThreadState_Get() * - */ - __Pyx_TraceLine(91,0,__PYX_ERR(0, 91, __pyx_L1_error)) +*/ + __Pyx_TraceLine(91,1,0,__PYX_ERR(0, 91, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->handler); @@ -5479,8 +5460,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * cdef PyThreadState *state = PyThreadState_Get() # <<<<<<<<<<<<<< * * if self.profiling_mode: - */ - __Pyx_TraceLine(92,0,__PYX_ERR(0, 92, __pyx_L1_error)) +*/ + __Pyx_TraceLine(92,6,0,__PYX_ERR(0, 92, __pyx_L1_error)) __pyx_v_state = PyThreadState_Get(); /* "hunter/_tracer.pyx":94 @@ -5489,8 +5470,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) - */ - __Pyx_TraceLine(94,0,__PYX_ERR(0, 94, __pyx_L1_error)) +*/ + __Pyx_TraceLine(94,8,0,__PYX_ERR(0, 94, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { /* "hunter/_tracer.pyx":95 @@ -5499,8 +5480,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) - */ - __Pyx_TraceLine(95,0,__PYX_ERR(0, 95, __pyx_L1_error)) +*/ + __Pyx_TraceLine(95,14,0,__PYX_ERR(0, 95, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { @@ -5518,11 +5499,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self._threading_previous = getattr(threading, '_profile_hook', None) # <<<<<<<<<<<<<< * threading.setprofile(self) * if state.c_profileobj is NULL: - */ - __Pyx_TraceLine(96,0,__PYX_ERR(0, 96, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 96, __pyx_L1_error) +*/ + __Pyx_TraceLine(96,22,0,__PYX_ERR(0, 96, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_3, __pyx_n_s_profile_hook, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 96, __pyx_L1_error) + __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_profile_hook, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_4); @@ -5537,34 +5518,33 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * threading.setprofile(self) # <<<<<<<<<<<<<< * if state.c_profileobj is NULL: * self.previous = None - */ - __Pyx_TraceLine(97,0,__PYX_ERR(0, 97, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 97, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_setprofile); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 97, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; +*/ + __Pyx_TraceLine(97,27,0,__PYX_ERR(0, 97, __pyx_L1_error)) __pyx_t_3 = NULL; - __pyx_t_6 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_7 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_6); + assert(__pyx_t_3); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_6, __pyx__function); + __pyx_t_7 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_3, ((PyObject *)__pyx_v_self)}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -5574,7 +5554,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) - */ +*/ } /* "hunter/_tracer.pyx":98 @@ -5583,8 +5563,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if state.c_profileobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL - */ - __Pyx_TraceLine(98,0,__PYX_ERR(0, 98, __pyx_L1_error)) +*/ + __Pyx_TraceLine(98,32,0,__PYX_ERR(0, 98, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_profileobj == NULL); if (__pyx_t_1) { @@ -5594,8 +5574,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * else: - */ - __Pyx_TraceLine(99,0,__PYX_ERR(0, 99, __pyx_L1_error)) +*/ + __Pyx_TraceLine(99,34,0,__PYX_ERR(0, 99, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); @@ -5608,8 +5588,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self._previousfunc = NULL # <<<<<<<<<<<<<< * else: * self.previous = (state.c_profileobj) - */ - __Pyx_TraceLine(100,0,__PYX_ERR(0, 100, __pyx_L1_error)) +*/ + __Pyx_TraceLine(100,37,0,__PYX_ERR(0, 100, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; /* "hunter/_tracer.pyx":98 @@ -5618,7 +5598,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if state.c_profileobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL - */ +*/ goto __pyx_L7; } @@ -5628,8 +5608,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self.previous = (state.c_profileobj) # <<<<<<<<<<<<<< * self._previousfunc = state.c_profilefunc * PyEval_SetProfile( trace_func, self) - */ - __Pyx_TraceLine(102,0,__PYX_ERR(0, 102, __pyx_L1_error)) +*/ + __Pyx_TraceLine(102,40,0,__PYX_ERR(0, 102, __pyx_L1_error)) /*else*/ { __pyx_t_4 = ((PyObject *)__pyx_v_state->c_profileobj); __Pyx_INCREF(__pyx_t_4); @@ -5645,10 +5625,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self._previousfunc = state.c_profilefunc # <<<<<<<<<<<<<< * PyEval_SetProfile( trace_func, self) * else: - */ - __Pyx_TraceLine(103,0,__PYX_ERR(0, 103, __pyx_L1_error)) - __pyx_t_7 = __pyx_v_state->c_profilefunc; - __pyx_v_self->_previousfunc = __pyx_t_7; +*/ + __Pyx_TraceLine(103,48,0,__PYX_ERR(0, 103, __pyx_L1_error)) + __pyx_t_8 = __pyx_v_state->c_profilefunc; + __pyx_v_self->_previousfunc = __pyx_t_8; } __pyx_L7:; @@ -5658,8 +5638,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * PyEval_SetProfile( trace_func, self) # <<<<<<<<<<<<<< * else: * if self.threading_support is None or self.threading_support: - */ - __Pyx_TraceLine(104,0,__PYX_ERR(0, 104, __pyx_L1_error)) +*/ + __Pyx_TraceLine(104,50,0,__PYX_ERR(0, 104, __pyx_L1_error)) PyEval_SetProfile(((Py_tracefunc)__pyx_f_6hunter_7_tracer_trace_func), ((PyObject *)__pyx_v_self)); /* "hunter/_tracer.pyx":94 @@ -5668,7 +5648,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) - */ +*/ goto __pyx_L3; } @@ -5678,8 +5658,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) - */ - __Pyx_TraceLine(106,0,__PYX_ERR(0, 106, __pyx_L1_error)) +*/ + __Pyx_TraceLine(106,55,0,__PYX_ERR(0, 106, __pyx_L1_error)) /*else*/ { __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { @@ -5698,18 +5678,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self._threading_previous = getattr(threading, '_trace_hook', None) # <<<<<<<<<<<<<< * threading.settrace(self) * if state.c_traceobj is NULL: - */ - __Pyx_TraceLine(107,0,__PYX_ERR(0, 107, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 107, __pyx_L1_error) +*/ + __Pyx_TraceLine(107,67,0,__PYX_ERR(0, 107, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_GetAttr3(__pyx_t_4, __pyx_n_s_trace_hook, Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 107, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_GetAttr3(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_trace_hook, Py_None); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 107, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_GIVEREF(__pyx_t_5); + __Pyx_GIVEREF(__pyx_t_6); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); - __pyx_v_self->_threading_previous = __pyx_t_5; - __pyx_t_5 = 0; + __pyx_v_self->_threading_previous = __pyx_t_6; + __pyx_t_6 = 0; /* "hunter/_tracer.pyx":108 * if self.threading_support is None or self.threading_support: @@ -5717,36 +5697,35 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * threading.settrace(self) # <<<<<<<<<<<<<< * if state.c_traceobj is NULL: * self.previous = None - */ - __Pyx_TraceLine(108,0,__PYX_ERR(0, 108, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_settrace); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(108,72,0,__PYX_ERR(0, 108, __pyx_L1_error)) __pyx_t_4 = NULL; - __pyx_t_6 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_7 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_5, __pyx__function); + __pyx_t_7 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, ((PyObject *)__pyx_v_self)}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); + __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; /* "hunter/_tracer.pyx":106 * PyEval_SetProfile( trace_func, self) @@ -5754,7 +5733,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) - */ +*/ } /* "hunter/_tracer.pyx":109 @@ -5763,8 +5742,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if state.c_traceobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL - */ - __Pyx_TraceLine(109,0,__PYX_ERR(0, 109, __pyx_L1_error)) +*/ + __Pyx_TraceLine(109,77,0,__PYX_ERR(0, 109, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_traceobj == NULL); if (__pyx_t_1) { @@ -5774,8 +5753,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * else: - */ - __Pyx_TraceLine(110,0,__PYX_ERR(0, 110, __pyx_L1_error)) +*/ + __Pyx_TraceLine(110,79,0,__PYX_ERR(0, 110, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); @@ -5788,8 +5767,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self._previousfunc = NULL # <<<<<<<<<<<<<< * else: * self.previous = (state.c_traceobj) - */ - __Pyx_TraceLine(111,0,__PYX_ERR(0, 111, __pyx_L1_error)) +*/ + __Pyx_TraceLine(111,82,0,__PYX_ERR(0, 111, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; /* "hunter/_tracer.pyx":109 @@ -5798,7 +5777,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * if state.c_traceobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL - */ +*/ goto __pyx_L11; } @@ -5808,16 +5787,16 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self.previous = (state.c_traceobj) # <<<<<<<<<<<<<< * self._previousfunc = state.c_tracefunc * PyEval_SetTrace( trace_func, self) - */ - __Pyx_TraceLine(113,0,__PYX_ERR(0, 113, __pyx_L1_error)) +*/ + __Pyx_TraceLine(113,85,0,__PYX_ERR(0, 113, __pyx_L1_error)) /*else*/ { - __pyx_t_5 = ((PyObject *)__pyx_v_state->c_traceobj); - __Pyx_INCREF(__pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); + __pyx_t_6 = ((PyObject *)__pyx_v_state->c_traceobj); + __Pyx_INCREF(__pyx_t_6); + __Pyx_GIVEREF(__pyx_t_6); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); - __pyx_v_self->previous = __pyx_t_5; - __pyx_t_5 = 0; + __pyx_v_self->previous = __pyx_t_6; + __pyx_t_6 = 0; /* "hunter/_tracer.pyx":114 * else: @@ -5825,10 +5804,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * self._previousfunc = state.c_tracefunc # <<<<<<<<<<<<<< * PyEval_SetTrace( trace_func, self) * return self - */ - __Pyx_TraceLine(114,0,__PYX_ERR(0, 114, __pyx_L1_error)) - __pyx_t_7 = __pyx_v_state->c_tracefunc; - __pyx_v_self->_previousfunc = __pyx_t_7; +*/ + __Pyx_TraceLine(114,93,0,__PYX_ERR(0, 114, __pyx_L1_error)) + __pyx_t_8 = __pyx_v_state->c_tracefunc; + __pyx_v_self->_previousfunc = __pyx_t_8; } __pyx_L11:; @@ -5838,8 +5817,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * PyEval_SetTrace( trace_func, self) # <<<<<<<<<<<<<< * return self * - */ - __Pyx_TraceLine(115,0,__PYX_ERR(0, 115, __pyx_L1_error)) +*/ + __Pyx_TraceLine(115,95,0,__PYX_ERR(0, 115, __pyx_L1_error)) PyEval_SetTrace(((Py_tracefunc)__pyx_f_6hunter_7_tracer_trace_func), ((PyObject *)__pyx_v_self)); } __pyx_L3:; @@ -5850,11 +5829,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * return self # <<<<<<<<<<<<<< * * def stop(self): - */ - __Pyx_TraceLine(116,0,__PYX_ERR(0, 116, __pyx_L1_error)) +*/ + __Pyx_TraceLine(116,100,0,__PYX_ERR(0, 116, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); + __Pyx_TraceReturnValue(__pyx_r, 100, 0, __PYX_ERR(0, 116, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":90 @@ -5863,18 +5843,25 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * def trace(self, predicate): # <<<<<<<<<<<<<< * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.trace", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5885,7 +5872,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt * def stop(self): # <<<<<<<<<<<<<< * if self.handler is not None: * if self.profiling_mode: - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_11stop(PyObject *__pyx_v_self, @@ -5895,7 +5882,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_11stop = {"stop", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_11stop, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_11stop = {"stop", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_11stop, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_11stop(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -5911,16 +5898,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("stop (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("stop", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "stop", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("stop", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("stop", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_10stop(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -5930,20 +5918,21 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_t_1; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; + PyObject *__pyx_t_6 = NULL; + size_t __pyx_t_7; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__3) - __Pyx_RefNannySetupContext("stop", 1); - __Pyx_TraceCall("stop", __pyx_f[0], 118, 0, __PYX_ERR(0, 118, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) + __Pyx_RefNannySetupContext("stop", 0); + __Pyx_TraceStartFunc("stop", __pyx_f[0], 118, 0, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); /* "hunter/_tracer.pyx":119 * @@ -5951,8 +5940,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.handler is not None: # <<<<<<<<<<<<<< * if self.profiling_mode: * if self.previous is None: - */ - __Pyx_TraceLine(119,0,__PYX_ERR(0, 119, __pyx_L1_error)) +*/ + __Pyx_TraceLine(119,5,0,__PYX_ERR(0, 119, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->handler != Py_None); if (__pyx_t_1) { @@ -5962,8 +5951,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.previous is None: * PyEval_SetProfile(NULL, NULL) - */ - __Pyx_TraceLine(120,0,__PYX_ERR(0, 120, __pyx_L1_error)) +*/ + __Pyx_TraceLine(120,7,0,__PYX_ERR(0, 120, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { /* "hunter/_tracer.pyx":121 @@ -5972,8 +5961,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: - */ - __Pyx_TraceLine(121,0,__PYX_ERR(0, 121, __pyx_L1_error)) +*/ + __Pyx_TraceLine(121,13,0,__PYX_ERR(0, 121, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->previous == Py_None); if (__pyx_t_1) { @@ -5983,8 +5972,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * PyEval_SetProfile(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetProfile(self._previousfunc, self.previous) - */ - __Pyx_TraceLine(122,0,__PYX_ERR(0, 122, __pyx_L1_error)) +*/ + __Pyx_TraceLine(122,15,0,__PYX_ERR(0, 122, __pyx_L1_error)) PyEval_SetProfile(NULL, NULL); /* "hunter/_tracer.pyx":121 @@ -5993,7 +5982,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: - */ +*/ goto __pyx_L5; } @@ -6003,8 +5992,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * PyEval_SetProfile(self._previousfunc, self.previous) # <<<<<<<<<<<<<< * self.handler = self.previous = None * self._previousfunc = NULL - */ - __Pyx_TraceLine(124,0,__PYX_ERR(0, 124, __pyx_L1_error)) +*/ + __Pyx_TraceLine(124,19,0,__PYX_ERR(0, 124, __pyx_L1_error)) /*else*/ { PyEval_SetProfile(__pyx_v_self->_previousfunc, ((PyObject *)__pyx_v_self->previous)); } @@ -6016,8 +6005,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * self.handler = self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: - */ - __Pyx_TraceLine(125,0,__PYX_ERR(0, 125, __pyx_L1_error)) +*/ + __Pyx_TraceLine(125,25,0,__PYX_ERR(0, 125, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -6035,8 +6024,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * self._previousfunc = NULL # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) - */ - __Pyx_TraceLine(126,0,__PYX_ERR(0, 126, __pyx_L1_error)) +*/ + __Pyx_TraceLine(126,30,0,__PYX_ERR(0, 126, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; /* "hunter/_tracer.pyx":127 @@ -6045,8 +6034,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.setprofile(self._threading_previous) * self._threading_previous = None - */ - __Pyx_TraceLine(127,0,__PYX_ERR(0, 127, __pyx_L1_error)) +*/ + __Pyx_TraceLine(127,37,0,__PYX_ERR(0, 127, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { @@ -6064,34 +6053,33 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * threading.setprofile(self._threading_previous) # <<<<<<<<<<<<<< * self._threading_previous = None * else: - */ - __Pyx_TraceLine(128,0,__PYX_ERR(0, 128, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 128, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_setprofile); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 128, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; +*/ + __Pyx_TraceLine(128,43,0,__PYX_ERR(0, 128, __pyx_L1_error)) __pyx_t_4 = NULL; - __pyx_t_6 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 128, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 128, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_7 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_6, __pyx__function); + __pyx_t_7 = 0; } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_v_self->_threading_previous}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -6101,8 +6089,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * self._threading_previous = None # <<<<<<<<<<<<<< * else: * if self.previous is None: - */ - __Pyx_TraceLine(129,0,__PYX_ERR(0, 129, __pyx_L1_error)) +*/ + __Pyx_TraceLine(129,46,0,__PYX_ERR(0, 129, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); @@ -6115,7 +6103,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.setprofile(self._threading_previous) * self._threading_previous = None - */ +*/ } /* "hunter/_tracer.pyx":120 @@ -6124,7 +6112,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.previous is None: * PyEval_SetProfile(NULL, NULL) - */ +*/ goto __pyx_L4; } @@ -6134,8 +6122,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetTrace(NULL, NULL) * else: - */ - __Pyx_TraceLine(131,0,__PYX_ERR(0, 131, __pyx_L1_error)) +*/ + __Pyx_TraceLine(131,49,0,__PYX_ERR(0, 131, __pyx_L1_error)) /*else*/ { __pyx_t_1 = (__pyx_v_self->previous == Py_None); if (__pyx_t_1) { @@ -6146,8 +6134,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * PyEval_SetTrace(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetTrace(self._previousfunc, self.previous) - */ - __Pyx_TraceLine(132,0,__PYX_ERR(0, 132, __pyx_L1_error)) +*/ + __Pyx_TraceLine(132,55,0,__PYX_ERR(0, 132, __pyx_L1_error)) PyEval_SetTrace(NULL, NULL); /* "hunter/_tracer.pyx":131 @@ -6156,7 +6144,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetTrace(NULL, NULL) * else: - */ +*/ goto __pyx_L9; } @@ -6166,8 +6154,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * PyEval_SetTrace(self._previousfunc, self.previous) # <<<<<<<<<<<<<< * self.handler = self.previous = None * self._previousfunc = NULL - */ - __Pyx_TraceLine(134,0,__PYX_ERR(0, 134, __pyx_L1_error)) +*/ + __Pyx_TraceLine(134,59,0,__PYX_ERR(0, 134, __pyx_L1_error)) /*else*/ { PyEval_SetTrace(__pyx_v_self->_previousfunc, ((PyObject *)__pyx_v_self->previous)); } @@ -6179,8 +6167,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * self.handler = self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: - */ - __Pyx_TraceLine(135,0,__PYX_ERR(0, 135, __pyx_L1_error)) +*/ + __Pyx_TraceLine(135,65,0,__PYX_ERR(0, 135, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -6198,8 +6186,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * self._previousfunc = NULL # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) - */ - __Pyx_TraceLine(136,0,__PYX_ERR(0, 136, __pyx_L1_error)) +*/ + __Pyx_TraceLine(136,70,0,__PYX_ERR(0, 136, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; /* "hunter/_tracer.pyx":137 @@ -6208,8 +6196,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.settrace(self._threading_previous) * self._threading_previous = None - */ - __Pyx_TraceLine(137,0,__PYX_ERR(0, 137, __pyx_L1_error)) +*/ + __Pyx_TraceLine(137,77,0,__PYX_ERR(0, 137, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { @@ -6227,34 +6215,33 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * threading.settrace(self._threading_previous) # <<<<<<<<<<<<<< * self._threading_previous = None * - */ - __Pyx_TraceLine(138,0,__PYX_ERR(0, 138, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 138, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_settrace); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 138, __pyx_L1_error) +*/ + __Pyx_TraceLine(138,83,0,__PYX_ERR(0, 138, __pyx_L1_error)) + __pyx_t_6 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = NULL; - __pyx_t_6 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 138, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_7 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + assert(__pyx_t_6); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_5, __pyx__function); + __pyx_t_7 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_v_self->_threading_previous}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_v_self->_threading_previous}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -6264,8 +6251,8 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * self._threading_previous = None # <<<<<<<<<<<<<< * * def __enter__(self): - */ - __Pyx_TraceLine(139,0,__PYX_ERR(0, 139, __pyx_L1_error)) +*/ + __Pyx_TraceLine(139,86,0,__PYX_ERR(0, 139, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); @@ -6278,7 +6265,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.settrace(self._threading_previous) * self._threading_previous = None - */ +*/ } } __pyx_L4:; @@ -6289,7 +6276,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * if self.handler is not None: # <<<<<<<<<<<<<< * if self.profiling_mode: * if self.previous is None: - */ +*/ } /* "hunter/_tracer.pyx":118 @@ -6298,20 +6285,28 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * def stop(self): # <<<<<<<<<<<<<< * if self.handler is not None: * if self.profiling_mode: - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.stop", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6322,7 +6317,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt * def __enter__(self): # <<<<<<<<<<<<<< * return self * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_13__enter__(PyObject *__pyx_v_self, @@ -6332,7 +6327,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__ = {"__enter__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__ = {"__enter__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_13__enter__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -6348,16 +6343,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__enter__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__enter__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__enter__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__enter__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__enter__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -6367,14 +6363,14 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__4) - __Pyx_RefNannySetupContext("__enter__", 1); - __Pyx_TraceCall("__enter__", __pyx_f[0], 141, 0, __PYX_ERR(0, 141, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) + __Pyx_RefNannySetupContext("__enter__", 0); + __Pyx_TraceStartFunc("__enter__", __pyx_f[0], 141, 0, 0, 0, __PYX_ERR(0, 141, __pyx_L1_error)); /* "hunter/_tracer.pyx":142 * @@ -6382,11 +6378,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ * return self # <<<<<<<<<<<<<< * * def __exit__(self, exc_type, exc_val, exc_tb): - */ - __Pyx_TraceLine(142,0,__PYX_ERR(0, 142, __pyx_L1_error)) +*/ + __Pyx_TraceLine(142,1,0,__PYX_ERR(0, 142, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 142, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":141 @@ -6395,15 +6392,21 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ * def __enter__(self): # <<<<<<<<<<<<<< * return self * - */ +*/ /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 141, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__enter__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6413,7 +6416,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< * self.stop() - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_15__exit__(PyObject *__pyx_v_self, @@ -6423,7 +6426,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__ = {"__exit__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__ = {"__exit__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_15__exit__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -6446,7 +6449,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__exit__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -6454,59 +6457,40 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_exc_type,&__pyx_n_s_exc_val,&__pyx_n_s_exc_tb,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_exc_type,&__pyx_mstate_global->__pyx_n_u_exc_val,&__pyx_mstate_global->__pyx_n_u_exc_tb,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 144, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 3: values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 144, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 144, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 144, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_type)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 144, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_val)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 144, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, 1); __PYX_ERR(0, 144, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_exc_tb)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 144, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, 2); __PYX_ERR(0, 144, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__exit__") < 0)) __PYX_ERR(0, 144, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__exit__", 0) < 0) __PYX_ERR(0, 144, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, i); __PYX_ERR(0, 144, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); - values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); - values[2] = __Pyx_Arg_FASTCALL(__pyx_args, 2); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 144, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 144, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 144, __pyx_L3_error) } __pyx_v_exc_type = values[0]; __pyx_v_exc_val = values[1]; @@ -6518,11 +6502,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._tracer.Tracer.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -6531,11 +6512,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_exc_type, __pyx_v_exc_val, __pyx_v_exc_tb); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -6543,48 +6521,33 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_exc_type, CYTHON_UNUSED PyObject *__pyx_v_exc_val, CYTHON_UNUSED PyObject *__pyx_v_exc_tb) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; + size_t __pyx_t_3; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__5) - __Pyx_RefNannySetupContext("__exit__", 1); - __Pyx_TraceCall("__exit__", __pyx_f[0], 144, 0, __PYX_ERR(0, 144, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) + __Pyx_RefNannySetupContext("__exit__", 0); + __Pyx_TraceStartFunc("__exit__", __pyx_f[0], 144, 0, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); /* "hunter/_tracer.pyx":145 * * def __exit__(self, exc_type, exc_val, exc_tb): * self.stop() # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(145,0,__PYX_ERR(0, 145, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_stop); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = NULL; - __pyx_t_4 = 0; - #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_2))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_2, function); - __pyx_t_4 = 1; - } - } - #endif +*/ + __Pyx_TraceLine(145,1,0,__PYX_ERR(0, 145, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_v_self); + __Pyx_INCREF(__pyx_t_2); + __pyx_t_3 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 0+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -6593,20 +6556,26 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< * self.stop() - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6617,7 +6586,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 * readonly object handler # <<<<<<<<<<<<<< * readonly object previous * readonly object threading_support - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7handler_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6636,25 +6605,33 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7handler_1__get__(PyObject *_ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 38, 0, __PYX_ERR(3, 38, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 38, 0, 0, 0, __PYX_ERR(3, 38, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->handler); __pyx_r = __pyx_v_self->handler; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 38, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 38, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.handler.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6665,7 +6642,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx * readonly object previous # <<<<<<<<<<<<<< * readonly object threading_support * readonly bint profiling_mode - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_8previous_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6684,25 +6661,33 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_8previous_1__get__(PyObject * static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 39, 0, __PYX_ERR(3, 39, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 39, 0, 0, 0, __PYX_ERR(3, 39, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->previous); __pyx_r = __pyx_v_self->previous; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 39, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 39, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.previous.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6713,7 +6698,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py * readonly object threading_support # <<<<<<<<<<<<<< * readonly bint profiling_mode * readonly int depth - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_17threading_support_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6732,25 +6717,33 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_17threading_support_1__get__( static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 40, 0, __PYX_ERR(3, 40, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 40, 0, 0, 0, __PYX_ERR(3, 40, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->threading_support); __pyx_r = __pyx_v_self->threading_support; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 40, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 40, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.threading_support.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6761,7 +6754,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s * readonly bint profiling_mode # <<<<<<<<<<<<<< * readonly int depth * readonly int calls - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_14profiling_mode_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6780,29 +6773,37 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_14profiling_mode_1__get__(PyO static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 41, 0, __PYX_ERR(3, 41, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 41, 0, 0, 0, __PYX_ERR(3, 41, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 41, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 41, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.profiling_mode.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6813,7 +6814,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru * readonly int depth # <<<<<<<<<<<<<< * readonly int calls * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5depth_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6832,29 +6833,37 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5depth_1__get__(PyObject *__p static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 42, 0, __PYX_ERR(3, 42, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 42, 0, 0, 0, __PYX_ERR(3, 42, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 42, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 42, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 42, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6865,7 +6874,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o * readonly int calls # <<<<<<<<<<<<<< * * object __weakref__ - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5calls_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6884,29 +6893,37 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_5calls_1__get__(PyObject *__p static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 43, 0, __PYX_ERR(3, 43, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 43, 0, 0, 0, __PYX_ERR(3, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 43, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 43, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 43, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 43, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6916,7 +6933,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o * * readonly object _threading_previous # <<<<<<<<<<<<<< * Py_tracefunc _previousfunc - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_19_threading_previous_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -6935,25 +6952,33 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_19_threading_previous_1__get_ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); - __Pyx_TraceCall("__get__", __pyx_f[3], 47, 0, __PYX_ERR(3, 47, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) + __Pyx_RefNannySetupContext("__get__", 0); + __Pyx_TraceStartFunc("__get__", __pyx_f[3], 47, 0, 0, 0, __PYX_ERR(3, 47, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threading_previous); __pyx_r = __pyx_v_self->_threading_previous; + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 47, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 47, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer._threading_previous.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -6962,7 +6987,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_17__reduce_cython__(PyObject *__pyx_v_self, @@ -6972,7 +6997,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_17__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_17__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -6988,16 +7013,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_16__reduce_cython__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self)); /* function exit code */ @@ -7007,37 +7033,43 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_16__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__6) - __Pyx_RefNannySetupContext("__reduce_cython__", 1); - __Pyx_TraceCall("__reduce_cython__", __pyx_f[1], 1, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[1], 1, 0, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); /* "(tree fragment)":2 * def __reduce_cython__(self): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __Pyx_TraceLine(2,0,__PYX_ERR(1, 2, __pyx_L1_error)) - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_no_default___reduce___due_to_non, 0, 0); +*/ + __Pyx_TraceLine(2,2,0,__PYX_ERR(1, 2, __pyx_L1_error)) + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); __PYX_ERR(1, 2, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 1, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -7047,7 +7079,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_16__reduce_cython__(CYTHON_UN * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_19__setstate_cython__(PyObject *__pyx_v_self, @@ -7057,7 +7089,7 @@ PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyMethodDef __pyx_mdef_6hunter_7_tracer_6Tracer_19__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_19__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -7078,7 +7110,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -7086,33 +7118,28 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 3, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(1, 3, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } @@ -7122,11 +7149,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter._tracer.Tracer.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -7135,11 +7159,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_18__setstate_cython__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -7147,22 +7168,22 @@ PyObject *__pyx_args, PyObject *__pyx_kwds static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_18__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarations + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(__pyx_codeobj__7) - __Pyx_RefNannySetupContext("__setstate_cython__", 1); - __Pyx_TraceCall("__setstate_cython__", __pyx_f[1], 3, 0, __PYX_ERR(1, 3, __pyx_L1_error)); + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[1], 3, 0, 0, 0, __PYX_ERR(1, 3, __pyx_L1_error)); /* "(tree fragment)":4 * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< - */ - __Pyx_TraceLine(4,0,__PYX_ERR(1, 4, __pyx_L1_error)) - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_no_default___reduce___due_to_non, 0, 0); +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(1, 4, __pyx_L1_error)) + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); __PYX_ERR(1, 4, __pyx_L1_error) /* "(tree fragment)":3 @@ -7170,17 +7191,24 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_18__setstate_cython__(CYTHON_ * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ +*/ /* function exit code */ __pyx_L1_error:; + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 3, __pyx_L1_error)); + #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); - __Pyx_TraceReturn(__pyx_r, 0); + __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } +/* #### Code section: module_exttypes ### */ static PyObject *__pyx_tp_new_6hunter_7_tracer_Tracer(PyTypeObject *t, PyObject *a, PyObject *k) { struct __pyx_obj_6hunter_7_tracer_Tracer *p; @@ -7220,7 +7248,7 @@ static void __pyx_tp_dealloc_6hunter_7_tracer_Tracer(PyObject *o) { Py_CLEAR(p->previous); Py_CLEAR(p->threading_support); Py_CLEAR(p->_threading_previous); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -7233,6 +7261,10 @@ static void __pyx_tp_dealloc_6hunter_7_tracer_Tracer(PyObject *o) { static int __pyx_tp_traverse_6hunter_7_tracer_Tracer(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_7_tracer_Tracer *p = (struct __pyx_obj_6hunter_7_tracer_Tracer *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->handler) { e = (*v)(p->handler, a); if (e) return e; } @@ -7294,32 +7326,40 @@ static PyObject *__pyx_getprop_6hunter_7_tracer_6Tracer__threading_previous(PyOb return __pyx_pw_6hunter_7_tracer_6Tracer_19_threading_previous_1__get__(o); } -static PyObject *__pyx_specialmethod___pyx_pw_6hunter_7_tracer_6Tracer_5__repr__(PyObject *self, CYTHON_UNUSED PyObject *arg) { - return __pyx_pw_6hunter_7_tracer_6Tracer_5__repr__(self); -} - static PyMethodDef __pyx_methods_6hunter_7_tracer_Tracer[] = { - {"__repr__", (PyCFunction)__pyx_specialmethod___pyx_pw_6hunter_7_tracer_6Tracer_5__repr__, METH_NOARGS|METH_COEXIST, 0}, - {"trace", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_9trace, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"stop", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_11stop, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__enter__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__exit__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"trace", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_9trace, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"stop", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_11stop, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__enter__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__exit__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_7_tracer_6Tracer_19__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_7_tracer_Tracer[] = { - {(char *)"handler", __pyx_getprop_6hunter_7_tracer_6Tracer_handler, 0, (char *)0, 0}, - {(char *)"previous", __pyx_getprop_6hunter_7_tracer_6Tracer_previous, 0, (char *)0, 0}, - {(char *)"threading_support", __pyx_getprop_6hunter_7_tracer_6Tracer_threading_support, 0, (char *)0, 0}, - {(char *)"profiling_mode", __pyx_getprop_6hunter_7_tracer_6Tracer_profiling_mode, 0, (char *)0, 0}, - {(char *)"depth", __pyx_getprop_6hunter_7_tracer_6Tracer_depth, 0, (char *)0, 0}, - {(char *)"calls", __pyx_getprop_6hunter_7_tracer_6Tracer_calls, 0, (char *)0, 0}, - {(char *)"_threading_previous", __pyx_getprop_6hunter_7_tracer_6Tracer__threading_previous, 0, (char *)0, 0}, + {"handler", __pyx_getprop_6hunter_7_tracer_6Tracer_handler, 0, 0, 0}, + {"previous", __pyx_getprop_6hunter_7_tracer_6Tracer_previous, 0, 0, 0}, + {"threading_support", __pyx_getprop_6hunter_7_tracer_6Tracer_threading_support, 0, 0, 0}, + {"profiling_mode", __pyx_getprop_6hunter_7_tracer_6Tracer_profiling_mode, 0, 0, 0}, + {"depth", __pyx_getprop_6hunter_7_tracer_6Tracer_depth, 0, 0, 0}, + {"calls", __pyx_getprop_6hunter_7_tracer_6Tracer_calls, 0, 0, 0}, + {"_threading_previous", __pyx_getprop_6hunter_7_tracer_6Tracer__threading_previous, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS +static PyMemberDef __pyx_type_6hunter_7_tracer_Tracer_members[] = { + #if !CYTHON_USE_TYPE_SLOTS + {"__weaklistoffset__", T_PYSSIZET, offsetof(struct __pyx_obj_6hunter_7_tracer_Tracer, __weakref__), READONLY, 0}, + #endif + {0, 0, 0, 0, 0} +}; +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 +#if defined(__GNUC__) || defined(__clang__) +#warning "src/hunter/_tracer.pxd:45:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9." +#elif defined(_MSC_VER) +#pragma message("src/hunter/_tracer.pxd:45:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9.") +#endif +#endif static PyType_Slot __pyx_type_6hunter_7_tracer_Tracer_slots[] = { {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_7_tracer_Tracer}, {Py_tp_repr, (void *)__pyx_pw_6hunter_7_tracer_6Tracer_5__repr__}, @@ -7329,6 +7369,7 @@ static PyType_Slot __pyx_type_6hunter_7_tracer_Tracer_slots[] = { {Py_tp_methods, (void *)__pyx_methods_6hunter_7_tracer_Tracer}, {Py_tp_getset, (void *)__pyx_getsets_6hunter_7_tracer_Tracer}, {Py_tp_new, (void *)__pyx_tp_new_6hunter_7_tracer_Tracer}, + {Py_tp_members, (void*)__pyx_type_6hunter_7_tracer_Tracer_members}, {0, 0}, }; static PyType_Spec __pyx_type_6hunter_7_tracer_Tracer_spec = { @@ -7354,12 +7395,7 @@ static PyTypeObject __pyx_type_6hunter_7_tracer_Tracer = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif __pyx_pw_6hunter_7_tracer_6Tracer_5__repr__, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -7400,13 +7436,11 @@ static PyTypeObject __pyx_type_6hunter_7_tracer_Tracer = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -7416,6 +7450,9 @@ static PyTypeObject __pyx_type_6hunter_7_tracer_Tracer = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -7425,294 +7462,102 @@ static PyTypeObject __pyx_type_6hunter_7_tracer_Tracer = { static PyMethodDef __pyx_methods[] = { {0, 0, 0, 0} }; -#ifndef CYTHON_SMALL_CODE -#if defined(__clang__) - #define CYTHON_SMALL_CODE -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - #define CYTHON_SMALL_CODE __attribute__((cold)) -#else - #define CYTHON_SMALL_CODE -#endif -#endif -/* #### Code section: pystring_table ### */ +/* #### Code section: initfunc_declarations ### */ +static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate); /*proto*/ +/* #### Code section: init_module ### */ -static int __Pyx_CreateStringTabAndInitStrings(void) { - __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_, __pyx_k_, sizeof(__pyx_k_), 0, 0, 1, 0}, - {&__pyx_kp_s_Disabling_tracer_because_handler, __pyx_k_Disabling_tracer_because_handler, sizeof(__pyx_k_Disabling_tracer_because_handler), 0, 0, 1, 0}, - {&__pyx_n_s_Tracer, __pyx_k_Tracer, sizeof(__pyx_k_Tracer), 0, 0, 1, 1}, - {&__pyx_n_s_Tracer___enter, __pyx_k_Tracer___enter, sizeof(__pyx_k_Tracer___enter), 0, 0, 1, 1}, - {&__pyx_n_s_Tracer___exit, __pyx_k_Tracer___exit, sizeof(__pyx_k_Tracer___exit), 0, 0, 1, 1}, - {&__pyx_n_s_Tracer___reduce_cython, __pyx_k_Tracer___reduce_cython, sizeof(__pyx_k_Tracer___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Tracer___setstate_cython, __pyx_k_Tracer___setstate_cython, sizeof(__pyx_k_Tracer___setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Tracer_stop, __pyx_k_Tracer_stop, sizeof(__pyx_k_Tracer_stop), 0, 0, 1, 1}, - {&__pyx_n_s_Tracer_trace, __pyx_k_Tracer_trace, sizeof(__pyx_k_Tracer_trace), 0, 0, 1, 1}, - {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, - {&__pyx_n_s__14, __pyx_k__14, sizeof(__pyx_k__14), 0, 0, 1, 1}, - {&__pyx_n_s__8, __pyx_k__8, sizeof(__pyx_k__8), 0, 0, 1, 1}, - {&__pyx_n_s_all, __pyx_k_all, sizeof(__pyx_k_all), 0, 0, 1, 1}, - {&__pyx_n_s_arg, __pyx_k_arg, sizeof(__pyx_k_arg), 0, 0, 1, 1}, - {&__pyx_n_s_asyncio_coroutines, __pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 0, 1, 1}, - {&__pyx_n_s_c_call, __pyx_k_c_call, sizeof(__pyx_k_c_call), 0, 0, 1, 1}, - {&__pyx_n_s_c_exception, __pyx_k_c_exception, sizeof(__pyx_k_c_exception), 0, 0, 1, 1}, - {&__pyx_n_s_c_return, __pyx_k_c_return, sizeof(__pyx_k_c_return), 0, 0, 1, 1}, - {&__pyx_n_s_call, __pyx_k_call, sizeof(__pyx_k_call), 0, 0, 1, 1}, - {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, - {&__pyx_n_s_default_stream, __pyx_k_default_stream, sizeof(__pyx_k_default_stream), 0, 0, 1, 1}, - {&__pyx_kp_u_disable, __pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0, 0}, - {&__pyx_kp_u_enable, __pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0, 0}, - {&__pyx_n_s_enter, __pyx_k_enter, sizeof(__pyx_k_enter), 0, 0, 1, 1}, - {&__pyx_n_s_exc_tb, __pyx_k_exc_tb, sizeof(__pyx_k_exc_tb), 0, 0, 1, 1}, - {&__pyx_n_s_exc_type, __pyx_k_exc_type, sizeof(__pyx_k_exc_type), 0, 0, 1, 1}, - {&__pyx_n_s_exc_val, __pyx_k_exc_val, sizeof(__pyx_k_exc_val), 0, 0, 1, 1}, - {&__pyx_n_s_exception, __pyx_k_exception, sizeof(__pyx_k_exception), 0, 0, 1, 1}, - {&__pyx_n_s_exit, __pyx_k_exit, sizeof(__pyx_k_exit), 0, 0, 1, 1}, - {&__pyx_n_s_f_trace, __pyx_k_f_trace, sizeof(__pyx_k_f_trace), 0, 0, 1, 1}, - {&__pyx_n_s_file, __pyx_k_file, sizeof(__pyx_k_file), 0, 0, 1, 1}, - {&__pyx_n_s_frame, __pyx_k_frame, sizeof(__pyx_k_frame), 0, 0, 1, 1}, - {&__pyx_kp_u_gc, __pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0, 0}, - {&__pyx_n_s_getstate, __pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 0, 1, 1}, - {&__pyx_kp_s_handler, __pyx_k_handler, sizeof(__pyx_k_handler), 0, 0, 1, 0}, - {&__pyx_n_s_hunter, __pyx_k_hunter, sizeof(__pyx_k_hunter), 0, 0, 1, 1}, - {&__pyx_n_s_hunter__tracer, __pyx_k_hunter__tracer, sizeof(__pyx_k_hunter__tracer), 0, 0, 1, 1}, - {&__pyx_kp_s_hunter__tracer_Tracer_at_0x_x_t, __pyx_k_hunter__tracer_Tracer_at_0x_x_t, sizeof(__pyx_k_hunter__tracer_Tracer_at_0x_x_t), 0, 0, 1, 0}, - {&__pyx_n_s_id, __pyx_k_id, sizeof(__pyx_k_id), 0, 0, 1, 1}, - {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, - {&__pyx_n_s_initializing, __pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 0, 1, 1}, - {&__pyx_n_s_is_coroutine, __pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 0, 1, 1}, - {&__pyx_kp_u_isenabled, __pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0, 0}, - {&__pyx_n_s_kind, __pyx_k_kind, sizeof(__pyx_k_kind), 0, 0, 1, 1}, - {&__pyx_n_s_line, __pyx_k_line, sizeof(__pyx_k_line), 0, 0, 1, 1}, - {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, - {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, - {&__pyx_kp_s_no_default___reduce___due_to_non, __pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 0, 1, 0}, - {&__pyx_n_s_predicate, __pyx_k_predicate, sizeof(__pyx_k_predicate), 0, 0, 1, 1}, - {&__pyx_kp_s_previous, __pyx_k_previous, sizeof(__pyx_k_previous), 0, 0, 1, 0}, - {&__pyx_n_s_print_exc, __pyx_k_print_exc, sizeof(__pyx_k_print_exc), 0, 0, 1, 1}, - {&__pyx_n_s_profile_hook, __pyx_k_profile_hook, sizeof(__pyx_k_profile_hook), 0, 0, 1, 1}, - {&__pyx_n_s_profiling_mode, __pyx_k_profiling_mode, sizeof(__pyx_k_profiling_mode), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_state, __pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1}, - {&__pyx_n_s_reduce, __pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_cython, __pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_ex, __pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 0, 1, 1}, - {&__pyx_n_s_return, __pyx_k_return, sizeof(__pyx_k_return), 0, 0, 1, 1}, - {&__pyx_n_s_self, __pyx_k_self, sizeof(__pyx_k_self), 0, 0, 1, 1}, - {&__pyx_n_s_setprofile, __pyx_k_setprofile, sizeof(__pyx_k_setprofile), 0, 0, 1, 1}, - {&__pyx_n_s_setstate, __pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 0, 1, 1}, - {&__pyx_n_s_setstate_cython, __pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_settrace, __pyx_k_settrace, sizeof(__pyx_k_settrace), 0, 0, 1, 1}, - {&__pyx_n_s_spec, __pyx_k_spec, sizeof(__pyx_k_spec), 0, 0, 1, 1}, - {&__pyx_kp_s_src_hunter__tracer_pyx, __pyx_k_src_hunter__tracer_pyx, sizeof(__pyx_k_src_hunter__tracer_pyx), 0, 0, 1, 0}, - {&__pyx_n_s_state, __pyx_k_state, sizeof(__pyx_k_state), 0, 0, 1, 1}, - {&__pyx_n_s_stop, __pyx_k_stop, sizeof(__pyx_k_stop), 0, 0, 1, 1}, - {&__pyx_kp_s_stopped, __pyx_k_stopped, sizeof(__pyx_k_stopped), 0, 0, 1, 0}, - {&__pyx_kp_s_stringsource, __pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 0, 1, 0}, - {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, - {&__pyx_n_s_threading, __pyx_k_threading, sizeof(__pyx_k_threading), 0, 0, 1, 1}, - {&__pyx_n_s_threading_support, __pyx_k_threading_support, sizeof(__pyx_k_threading_support), 0, 0, 1, 1}, - {&__pyx_n_s_trace, __pyx_k_trace, sizeof(__pyx_k_trace), 0, 0, 1, 1}, - {&__pyx_n_s_trace_hook, __pyx_k_trace_hook, sizeof(__pyx_k_trace_hook), 0, 0, 1, 1}, - {&__pyx_n_s_traceback, __pyx_k_traceback, sizeof(__pyx_k_traceback), 0, 0, 1, 1}, - {&__pyx_n_s_write, __pyx_k_write, sizeof(__pyx_k_write), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} - }; - return __Pyx_InitStrings(__pyx_string_tab); +static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); + /*--- Global init code ---*/ + __pyx_v_6hunter_7_tracer_KIND_INTS = ((PyObject*)Py_None); Py_INCREF(Py_None); + __Pyx_RefNannyFinishContext(); + return 0; } -/* #### Code section: cached_builtins ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_n_s_id); if (!__pyx_builtin_id) __PYX_ERR(0, 76, __pyx_L1_error) - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) + +static int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); + /*--- Variable export code ---*/ + __Pyx_RefNannyFinishContext(); return 0; - __pyx_L1_error:; - return -1; } -/* #### Code section: cached_constants ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { +static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); + /*--- Function export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} - /* "hunter/_tracer.pyx":13 - * import hunter - * - * __all__ = 'Tracer', # <<<<<<<<<<<<<< - * - * cdef dict KIND_INTS = { - */ - __pyx_tuple__9 = PyTuple_Pack(1, __pyx_n_s_Tracer); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(0, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__9); - __Pyx_GIVEREF(__pyx_tuple__9); +static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); + /*--- Type init code ---*/ + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 22, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #else + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #endif + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) + #if CYTHON_USE_TYPE_SPECS + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 58, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + #else + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = &__pyx_type_6hunter_7_tracer_Tracer; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro = PyObject_GenericGetAttr; + } + #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Tracer, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + #if CYTHON_USE_TYPE_SLOTS + if (__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset == 0) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset = offsetof(struct __pyx_obj_6hunter_7_tracer_Tracer, __weakref__); + #endif + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_RefNannyFinishContext(); + return -1; +} - /* "hunter/_tracer.pyx":90 - * return self - * - * def trace(self, predicate): # <<<<<<<<<<<<<< - * self.handler = predicate - * cdef PyThreadState *state = PyThreadState_Get() - */ - __pyx_tuple__10 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_predicate, __pyx_n_s_state); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 90, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__10); - __Pyx_GIVEREF(__pyx_tuple__10); - __pyx_codeobj__2 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__10, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__tracer_pyx, __pyx_n_s_trace, 90, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__2)) __PYX_ERR(0, 90, __pyx_L1_error) - - /* "hunter/_tracer.pyx":118 - * return self - * - * def stop(self): # <<<<<<<<<<<<<< - * if self.handler is not None: - * if self.profiling_mode: - */ - __pyx_tuple__11 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(0, 118, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__11); - __Pyx_GIVEREF(__pyx_tuple__11); - __pyx_codeobj__3 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__tracer_pyx, __pyx_n_s_stop, 118, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__3)) __PYX_ERR(0, 118, __pyx_L1_error) - - /* "hunter/_tracer.pyx":141 - * self._threading_previous = None - * - * def __enter__(self): # <<<<<<<<<<<<<< - * return self - * - */ - __pyx_codeobj__4 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__tracer_pyx, __pyx_n_s_enter, 141, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__4)) __PYX_ERR(0, 141, __pyx_L1_error) - - /* "hunter/_tracer.pyx":144 - * return self - * - * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< - * self.stop() - */ - __pyx_tuple__12 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_exc_type, __pyx_n_s_exc_val, __pyx_n_s_exc_tb); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 144, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__12); - __Pyx_GIVEREF(__pyx_tuple__12); - __pyx_codeobj__5 = (PyObject*)__Pyx_PyCode_New(4, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__12, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter__tracer_pyx, __pyx_n_s_exit, 144, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__5)) __PYX_ERR(0, 144, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): - */ - __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(1, 1, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __pyx_tuple__13 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_pyx_state); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__13); - __Pyx_GIVEREF(__pyx_tuple__13); - __pyx_codeobj__7 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__13, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 3, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__7)) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} -/* #### Code section: init_constants ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitConstants(void) { - if (__Pyx_CreateStringTabAndInitStrings() < 0) __PYX_ERR(0, 1, __pyx_L1_error); - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_2 = PyInt_FromLong(2); if (unlikely(!__pyx_int_2)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_3 = PyInt_FromLong(3); if (unlikely(!__pyx_int_3)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_4 = PyInt_FromLong(4); if (unlikely(!__pyx_int_4)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_5 = PyInt_FromLong(5); if (unlikely(!__pyx_int_5)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_6 = PyInt_FromLong(6); if (unlikely(!__pyx_int_6)) __PYX_ERR(0, 1, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: init_globals ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { - return 0; -} -/* #### Code section: init_module ### */ - -static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ - -static int __Pyx_modinit_global_init_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); - /*--- Global init code ---*/ - __pyx_v_6hunter_7_tracer_KIND_INTS = ((PyObject*)Py_None); Py_INCREF(Py_None); - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_variable_export_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); - /*--- Variable export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_export_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); - /*--- Function export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_type_init_code(void) { - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); - /*--- Type init code ---*/ - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 19, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_7_tracer_FrameType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "FrameType", sizeof(PyFrameObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyFrameObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_FrameType) __PYX_ERR(3, 19, __pyx_L1_error) - __pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_0_10(__pyx_t_1, "types", "CodeType", sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyCodeObject),__Pyx_ImportType_CheckSize_Ignore_3_0_10); if (!__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) - #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 58, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) - #else - __pyx_ptype_6hunter_7_tracer_Tracer = &__pyx_type_6hunter_7_tracer_Tracer; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_7_tracer_Tracer->tp_print = 0; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_7_tracer_Tracer->tp_dictoffset && __pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; - } - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Tracer, (PyObject *) __pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) - if (__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset == 0) __pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset = offsetof(struct __pyx_obj_6hunter_7_tracer_Tracer, __weakref__); - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) - #endif - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_type_import_code(void) { +static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; @@ -7721,38 +7566,118 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", sizeof(PyBoolObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyBoolObject),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyLongObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyLongObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + 0, 0, + #else + sizeof(PyLongObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyLongObject), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 15, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyComplexObject),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 15, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyComplexObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + 0, 0, + #else + sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyComplexObject), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 13, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._event", "Event", sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_6_event_Event),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(7, 13, __pyx_L1_error) - __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(7, 13, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._event", "Event", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #else + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(7, 11, __pyx_L1_error) + __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(7, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 8, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Query", sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Query),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(8, 8, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "And", sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_And),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(8, 23, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Or", sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Or),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(8, 29, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Not", sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Not),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(8, 35, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "When", sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_When),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(8, 41, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "From", sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_From),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(8, 48, __pyx_L1_error) - __pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_0_10(__pyx_t_1, "hunter._predicates", "Backlog", sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(struct __pyx_obj_6hunter_11_predicates_Backlog),__Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(8, 58, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Query", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(8, 7, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "And", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(8, 22, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Or", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(8, 28, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Not", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(8, 34, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "When", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(8, 40, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "From", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(8, 47, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Backlog", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), + #else + sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(8, 57, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7762,16 +7687,18 @@ static int __Pyx_modinit_type_import_code(void) { return -1; } -static int __Pyx_modinit_variable_import_code(void) { +static int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); /*--- Variable import code ---*/ __Pyx_RefNannyFinishContext(); return 0; } -static int __Pyx_modinit_function_import_code(void) { +static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; @@ -7780,7 +7707,7 @@ static int __Pyx_modinit_function_import_code(void) { /*--- Function import code ---*/ __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_ImportFunction_3_0_10(__pyx_t_1, "fast_call", (void (**)(void))&__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_1_2(__pyx_t_1, "fast_call", (void (**)(void))&__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7790,14 +7717,18 @@ static int __Pyx_modinit_function_import_code(void) { return -1; } - -#if PY_MAJOR_VERSION >= 3 #if CYTHON_PEP489_MULTI_PHASE_INIT static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ static int __pyx_pymod_exec__tracer(PyObject* module); /*proto*/ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec__tracer}, + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + {Py_mod_gil, Py_MOD_GIL_USED}, + #endif + #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE + {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, + #endif {0, NULL} }; #endif @@ -7812,12 +7743,10 @@ namespace { PyModuleDef_HEAD_INIT, "_tracer", 0, /* m_doc */ - #if CYTHON_PEP489_MULTI_PHASE_INIT - 0, /* m_size */ - #elif CYTHON_USE_MODULE_STATE - sizeof(__pyx_mstate), /* m_size */ + #if CYTHON_USE_MODULE_STATE + sizeof(__pyx_mstatetype), /* m_size */ #else - -1, /* m_size */ + (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1, /* m_size */ #endif __pyx_methods /* m_methods */, #if CYTHON_PEP489_MULTI_PHASE_INIT @@ -7838,51 +7767,71 @@ namespace { #ifdef __cplusplus } /* anonymous namespace */ #endif -#endif +/* PyModInitFuncType */ #ifndef CYTHON_NO_PYINIT_EXPORT -#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC -#elif PY_MAJOR_VERSION < 3 -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" void + #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC #else -#define __Pyx_PyMODINIT_FUNC void -#endif -#else -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * -#else -#define __Pyx_PyMODINIT_FUNC PyObject * -#endif + #ifdef __cplusplus + #define __Pyx_PyMODINIT_FUNC extern "C" PyObject * + #else + #define __Pyx_PyMODINIT_FUNC PyObject * + #endif #endif - -#if PY_MAJOR_VERSION < 3 -__Pyx_PyMODINIT_FUNC init_tracer(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC init_tracer(void) -#else __Pyx_PyMODINIT_FUNC PyInit__tracer(void) CYTHON_SMALL_CODE; /*proto*/ __Pyx_PyMODINIT_FUNC PyInit__tracer(void) #if CYTHON_PEP489_MULTI_PHASE_INIT { return PyModuleDef_Init(&__pyx_moduledef); } +/* ModuleCreationPEP489 */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 +static PY_INT64_T __Pyx_GetCurrentInterpreterId(void) { + { + PyObject *module = PyImport_ImportModule("_interpreters"); // 3.13+ I think + if (!module) { + PyErr_Clear(); // just try the 3.8-3.12 version + module = PyImport_ImportModule("_xxsubinterpreters"); + if (!module) goto bad; + } + PyObject *current = PyObject_CallMethod(module, "get_current", NULL); + Py_DECREF(module); + if (!current) goto bad; + if (PyTuple_Check(current)) { + PyObject *new_current = PySequence_GetItem(current, 0); + Py_DECREF(current); + current = new_current; + if (!new_current) goto bad; + } + long long as_c_int = PyLong_AsLongLong(current); + Py_DECREF(current); + return as_c_int; + } + bad: + PySys_WriteStderr("__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n"); + return -1; +} +#endif +#if !CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { - #if PY_VERSION_HEX >= 0x030700A1 static PY_INT64_T main_interpreter_id = -1; +#if CYTHON_COMPILING_IN_GRAAL + PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x03090000 + PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API + PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId(); +#else PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); +#endif + if (unlikely(current_id == -1)) { + return -1; + } if (main_interpreter_id == -1) { main_interpreter_id = current_id; - return (unlikely(current_id == -1)) ? -1 : 0; - } else if (unlikely(main_interpreter_id != current_id)) - #else - static PyInterpreterState *main_interpreter = NULL; - PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; - if (!main_interpreter) { - main_interpreter = current_interpreter; - } else if (unlikely(main_interpreter != current_interpreter)) - #endif - { + return 0; + } else if (unlikely(main_interpreter_id != current_id)) { PyErr_SetString( PyExc_ImportError, "Interpreter change detected - this module can only be loaded into one interpreter per process."); @@ -7890,21 +7839,14 @@ static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { } return 0; } -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *module, const char* from_name, const char* to_name, int allow_none) -#else -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) #endif +static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { PyObject *value = PyObject_GetAttrString(spec, from_name); int result = 0; if (likely(value)) { if (allow_none || value != Py_None) { -#if CYTHON_COMPILING_IN_LIMITED_API - result = PyModule_AddObject(module, to_name, value); -#else result = PyDict_SetItemString(moddict, to_name, value); -#endif } Py_DECREF(value); } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { @@ -7917,8 +7859,10 @@ static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) { PyObject *module = NULL, *moddict, *modname; CYTHON_UNUSED_VAR(def); + #if !CYTHON_USE_MODULE_STATE if (__Pyx_check_single_interpreter()) return NULL; + #endif if (__pyx_m) return __Pyx_NewRef(__pyx_m); modname = PyObject_GetAttrString(spec, "name"); @@ -7926,12 +7870,8 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe module = PyModule_NewObject(modname); Py_DECREF(modname); if (unlikely(!module)) goto bad; -#if CYTHON_COMPILING_IN_LIMITED_API - moddict = module; -#else moddict = PyModule_GetDict(module); if (unlikely(!moddict)) goto bad; -#endif if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; @@ -7945,13 +7885,13 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe static CYTHON_SMALL_CODE int __pyx_pymod_exec__tracer(PyObject *__pyx_pyinit_module) #endif -#endif { int stringtab_initialized = 0; #if CYTHON_USE_MODULE_STATE int pystate_addmodule_run = 0; #endif - __Pyx_TraceDeclarations + __pyx_mstatetype *__pyx_mstate = NULL; + __Pyx_TraceDeclarationsFunc PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; @@ -7964,36 +7904,37 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__tracer(PyObject *__pyx_pyinit_mod PyErr_SetString(PyExc_RuntimeError, "Module '_tracer' has already been imported. Re-initialisation is not supported."); return -1; } - #elif PY_MAJOR_VERSION >= 3 + #else if (__pyx_m) return __Pyx_NewRef(__pyx_m); #endif /*--- Module creation code ---*/ #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_m = __pyx_pyinit_module; - Py_INCREF(__pyx_m); + __pyx_t_1 = __pyx_pyinit_module; + Py_INCREF(__pyx_t_1); #else - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4("_tracer", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); - if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) - #elif CYTHON_USE_MODULE_STATE __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #if CYTHON_USE_MODULE_STATE { - int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); + int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef); __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "_tracer" pseudovariable */ if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) pystate_addmodule_run = 1; } #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_m = __pyx_t_1; #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); #endif + __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); - __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_d); - __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) + Py_INCREF(__pyx_mstate->__pyx_d); + __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef("cython_runtime"); if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /* ImportRefnannyAPI */ #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); if (!__Pyx_RefNanny) { @@ -8003,14 +7944,22 @@ if (!__Pyx_RefNanny) { Py_FatalError("failed to import 'refnanny' module"); } #endif - __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit__tracer(void)", 0); + +__Pyx_RefNannySetupContext("PyInit__tracer", 0); if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Initialize various global constants etc. ---*/ + if (__Pyx_InitConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + stringtab_initialized = 1; + if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #if 0 || defined(__Pyx_CyFunction_USED) || defined(__Pyx_FusedFunction_USED) || defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED) || defined(__Pyx_AsyncGen_USED) + if (__pyx_CommonTypesMetaclass_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif #ifdef __Pyx_CyFunction_USED if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif @@ -8026,60 +7975,42 @@ if (!__Pyx_RefNanny) { #ifdef __Pyx_AsyncGen_USED if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - #ifdef __Pyx_StopAsyncIteration_USED - if (__pyx_StopAsyncIteration_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - PyEval_InitThreads(); - #endif - /*--- Initialize various global constants etc. ---*/ - if (__Pyx_InitConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - stringtab_initialized = 1; - if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) - if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif if (__pyx_module_is_main_hunter___tracer) { - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name, __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name, __pyx_mstate_global->__pyx_n_u_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) } - #if PY_MAJOR_VERSION >= 3 { PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) if (!PyDict_GetItemString(modules, "hunter._tracer")) { if (unlikely((PyDict_SetItemString(modules, "hunter._tracer", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) } } - #endif /*--- Builtin init code ---*/ - if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_InitCachedBuiltins(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Constants init code ---*/ - if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_InitCachedConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_CreateCodeObjects(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Global type/function init code ---*/ - (void)__Pyx_modinit_global_init_code(); - (void)__Pyx_modinit_variable_export_code(); - (void)__Pyx_modinit_function_export_code(); - if (unlikely((__Pyx_modinit_type_init_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_import_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - (void)__Pyx_modinit_variable_import_code(); - if (unlikely((__Pyx_modinit_function_import_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + (void)__Pyx_modinit_global_init_code(__pyx_mstate); + (void)__Pyx_modinit_variable_export_code(__pyx_mstate); + (void)__Pyx_modinit_function_export_code(__pyx_mstate); + if (unlikely((__Pyx_modinit_type_init_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + (void)__Pyx_modinit_variable_import_code(__pyx_mstate); + if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - __Pyx_TraceCall("__Pyx_PyMODINIT_FUNC PyInit__tracer(void)", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__tracer", __pyx_f[0], 1, 1, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "hunter/_tracer.pyx":2 * # cython: linetrace=True, language_level=3str * import threading # <<<<<<<<<<<<<< * import traceback * - */ - __Pyx_TraceLine(2,0,__PYX_ERR(0, 2, __pyx_L1_error)) - __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_threading, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_TraceLine(2,2,0,__PYX_ERR(0, 2, __pyx_L1_error)) + __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_threading, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_threading, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_threading, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_tracer.pyx":3 @@ -8088,11 +8019,11 @@ if (!__Pyx_RefNanny) { * import traceback # <<<<<<<<<<<<<< * * from cpython cimport pystate - */ - __Pyx_TraceLine(3,0,__PYX_ERR(0, 3, __pyx_L1_error)) - __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_traceback, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __Pyx_TraceLine(3,4,0,__PYX_ERR(0, 3, __pyx_L1_error)) + __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_traceback, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_traceback, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_traceback, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_tracer.pyx":11 @@ -8101,11 +8032,11 @@ if (!__Pyx_RefNanny) { * import hunter # <<<<<<<<<<<<<< * * __all__ = 'Tracer', - */ - __Pyx_TraceLine(11,0,__PYX_ERR(0, 11, __pyx_L1_error)) - __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_hunter, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 11, __pyx_L1_error) +*/ + __Pyx_TraceLine(11,9,0,__PYX_ERR(0, 11, __pyx_L1_error)) + __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_hunter, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_hunter, __pyx_t_2) < 0) __PYX_ERR(0, 11, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_hunter, __pyx_t_2) < 0) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_tracer.pyx":13 @@ -8114,9 +8045,9 @@ if (!__Pyx_RefNanny) { * __all__ = 'Tracer', # <<<<<<<<<<<<<< * * cdef dict KIND_INTS = { - */ - __Pyx_TraceLine(13,0,__PYX_ERR(0, 13, __pyx_L1_error)) - if (PyDict_SetItem(__pyx_d, __pyx_n_s_all, __pyx_tuple__9) < 0) __PYX_ERR(0, 13, __pyx_L1_error) +*/ + __Pyx_TraceLine(13,11,0,__PYX_ERR(0, 13, __pyx_L1_error)) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[0]) < 0) __PYX_ERR(0, 13, __pyx_L1_error) /* "hunter/_tracer.pyx":16 * @@ -8124,17 +8055,17 @@ if (!__Pyx_RefNanny) { * 'call': 0, # <<<<<<<<<<<<<< * 'exception': 1, * 'line': 2, - */ - __Pyx_TraceLine(16,0,__PYX_ERR(0, 16, __pyx_L1_error)) +*/ + __Pyx_TraceLine(16,13,0,__PYX_ERR(0, 16, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_call, __pyx_int_0) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_exception, __pyx_int_1) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_line, __pyx_int_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_return, __pyx_int_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_c_call, __pyx_int_4) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_c_exception, __pyx_int_5) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_c_return, __pyx_int_6) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_int_0) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_int_1) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_line, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_int_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_call, __pyx_mstate_global->__pyx_int_4) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_exception, __pyx_mstate_global->__pyx_int_5) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_return, __pyx_mstate_global->__pyx_int_6) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_XGOTREF(__pyx_v_6hunter_7_tracer_KIND_INTS); __Pyx_DECREF_SET(__pyx_v_6hunter_7_tracer_KIND_INTS, ((PyObject*)__pyx_t_2)); __Pyx_GIVEREF(__pyx_t_2); @@ -8146,8 +8077,8 @@ if (!__Pyx_RefNanny) { * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: # <<<<<<<<<<<<<< * if frame.f_trace is not self: * frame.f_trace = self - */ - __Pyx_TraceLine(25,0,__PYX_ERR(0, 25, __pyx_L1_error)) +*/ + __Pyx_TraceLine(25,27,0,__PYX_ERR(0, 25, __pyx_L1_error)) /* "hunter/_tracer.pyx":90 @@ -8156,13 +8087,12 @@ if (!__Pyx_RefNanny) { * def trace(self, predicate): # <<<<<<<<<<<<<< * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() - */ - __Pyx_TraceLine(90,0,__PYX_ERR(0, 90, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer_trace, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__2)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) +*/ + __Pyx_TraceLine(90,40,0,__PYX_ERR(0, 90, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_trace, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_trace, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_trace, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); /* "hunter/_tracer.pyx":118 * return self @@ -8170,13 +8100,12 @@ if (!__Pyx_RefNanny) { * def stop(self): # <<<<<<<<<<<<<< * if self.handler is not None: * if self.profiling_mode: - */ - __Pyx_TraceLine(118,0,__PYX_ERR(0, 118, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer_stop, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) +*/ + __Pyx_TraceLine(118,41,0,__PYX_ERR(0, 118, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_stop, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_stop, __pyx_t_2) < 0) __PYX_ERR(0, 118, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_stop, __pyx_t_2) < 0) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); /* "hunter/_tracer.pyx":141 * self._threading_previous = None @@ -8184,36 +8113,34 @@ if (!__Pyx_RefNanny) { * def __enter__(self): # <<<<<<<<<<<<<< * return self * - */ - __Pyx_TraceLine(141,0,__PYX_ERR(0, 141, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer___enter, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__4)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) +*/ + __Pyx_TraceLine(141,42,0,__PYX_ERR(0, 141, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___enter, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_enter, __pyx_t_2) < 0) __PYX_ERR(0, 141, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_enter, __pyx_t_2) < 0) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); /* "hunter/_tracer.pyx":144 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< * self.stop() - */ - __Pyx_TraceLine(144,0,__PYX_ERR(0, 144, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer___exit, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__5)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) +*/ + __Pyx_TraceLine(144,43,0,__PYX_ERR(0, 144, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___exit, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_n_s_exit, __pyx_t_2) < 0) __PYX_ERR(0, 144, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_exit, __pyx_t_2) < 0) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_6hunter_7_tracer_Tracer); /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ - __Pyx_TraceLine(1,0,__PYX_ERR(1, 1, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer___reduce_cython, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__6)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) +*/ + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":3 @@ -8221,32 +8148,35 @@ if (!__Pyx_RefNanny) { * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __Pyx_TraceLine(3,0,__PYX_ERR(1, 3, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Tracer___setstate_cython, NULL, __pyx_n_s_hunter__tracer, __pyx_d, ((PyObject *)__pyx_codeobj__7)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) +*/ + __Pyx_TraceLine(3,3,0,__PYX_ERR(1, 3, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_tracer.pyx":1 * # cython: linetrace=True, language_level=3str # <<<<<<<<<<<<<< * import threading * import traceback - */ - __Pyx_TraceLine(1,0,__PYX_ERR(0, 1, __pyx_L1_error)) +*/ + __Pyx_TraceLine(1,1,0,__PYX_ERR(0, 1, __pyx_L1_error)) __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_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + 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; - __Pyx_TraceReturn(Py_None, 0); + __Pyx_TraceReturnValue(Py_None, 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_TraceException(__pyx_lineno, 0, 0); + __Pyx_TraceExceptionUnwind(1, 0); if (__pyx_m) { - if (__pyx_d && stringtab_initialized) { + if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._tracer", __pyx_clineno, __pyx_lineno, __pyx_filename); } #if !CYTHON_USE_MODULE_STATE @@ -8267,31 +8197,357 @@ if (!__Pyx_RefNanny) { __Pyx_RefNannyFinishContext(); #if CYTHON_PEP489_MULTI_PHASE_INIT return (__pyx_m != NULL) ? 0 : -1; - #elif PY_MAJOR_VERSION >= 3 - return __pyx_m; #else - return; + return __pyx_m; #endif } -/* #### Code section: cleanup_globals ### */ -/* #### Code section: cleanup_module ### */ -/* #### Code section: main_method ### */ -/* #### Code section: utility_code_pragmas ### */ -#ifdef _MSC_VER -#pragma warning( push ) -/* Warning 4127: conditional expression is constant - * Cython uses constant conditional expressions to allow in inline functions to be optimized at - * compile-time, so this warning is not useful - */ -#pragma warning( disable : 4127 ) -#endif - +/* #### Code section: pystring_table ### */ +typedef struct { + const char *s; +#if 179 <= 65535 + const unsigned short n; +#elif 179 / 2 < INT_MAX + const unsigned int n; +#elif 179 / 2 < LONG_MAX + const unsigned long n; +#else + const Py_ssize_t n; +#endif +#if 1 <= 31 + const unsigned int encoding : 5; +#elif 1 <= 255 + const unsigned char encoding; +#elif 1 <= 65535 + const unsigned short encoding; +#else + const Py_ssize_t encoding; +#endif + const unsigned int is_unicode : 1; + const unsigned int intern : 1; +} __Pyx_StringTabEntry; +static const char * const __pyx_string_tab_encodings[] = { 0 }; +static const __Pyx_StringTabEntry __pyx_string_tab[] = { + {__pyx_k_, sizeof(__pyx_k_), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ */ + {__pyx_k_Disabling_tracer_because_handler, sizeof(__pyx_k_Disabling_tracer_because_handler), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Disabling_tracer_because_handler */ + {__pyx_k_KIND_INTS, sizeof(__pyx_k_KIND_INTS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KIND_INTS */ + {__pyx_k_None, sizeof(__pyx_k_None), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_None */ + {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ + {__pyx_k_Tracer, sizeof(__pyx_k_Tracer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer */ + {__pyx_k_Tracer___enter, sizeof(__pyx_k_Tracer___enter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer___enter */ + {__pyx_k_Tracer___exit, sizeof(__pyx_k_Tracer___exit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer___exit */ + {__pyx_k_Tracer___reduce_cython, sizeof(__pyx_k_Tracer___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer___reduce_cython */ + {__pyx_k_Tracer___setstate_cython, sizeof(__pyx_k_Tracer___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer___setstate_cython */ + {__pyx_k_Tracer_stop, sizeof(__pyx_k_Tracer_stop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer_stop */ + {__pyx_k_Tracer_trace, sizeof(__pyx_k_Tracer_trace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Tracer_trace */ + {__pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TypeError */ + {__pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__2 */ + {__pyx_k__3, sizeof(__pyx_k__3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__3 */ + {__pyx_k__4, sizeof(__pyx_k__4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__4 */ + {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__5 */ + {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */ + {__pyx_k_all, sizeof(__pyx_k_all), 0, 1, 1}, /* PyObject cname: __pyx_n_u_all */ + {__pyx_k_arg, sizeof(__pyx_k_arg), 0, 1, 1}, /* PyObject cname: __pyx_n_u_arg */ + {__pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asyncio_coroutines */ + {__pyx_k_at, sizeof(__pyx_k_at), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_at */ + {__pyx_k_c_call, sizeof(__pyx_k_c_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_c_call */ + {__pyx_k_c_exception, sizeof(__pyx_k_c_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_c_exception */ + {__pyx_k_c_return, sizeof(__pyx_k_c_return), 0, 1, 1}, /* PyObject cname: __pyx_n_u_c_return */ + {__pyx_k_call, sizeof(__pyx_k_call), 0, 1, 1}, /* PyObject cname: __pyx_n_u_call */ + {__pyx_k_call_2, sizeof(__pyx_k_call_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_call_2 */ + {__pyx_k_cinit, sizeof(__pyx_k_cinit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cinit */ + {__pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cline_in_traceback */ + {__pyx_k_dealloc, sizeof(__pyx_k_dealloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dealloc */ + {__pyx_k_default_stream, sizeof(__pyx_k_default_stream), 0, 1, 1}, /* PyObject cname: __pyx_n_u_default_stream */ + {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ + {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ + {__pyx_k_enter, sizeof(__pyx_k_enter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enter */ + {__pyx_k_exc_tb, sizeof(__pyx_k_exc_tb), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_tb */ + {__pyx_k_exc_type, sizeof(__pyx_k_exc_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_type */ + {__pyx_k_exc_val, sizeof(__pyx_k_exc_val), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_val */ + {__pyx_k_exception, sizeof(__pyx_k_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exception */ + {__pyx_k_exit, sizeof(__pyx_k_exit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exit */ + {__pyx_k_f_trace, sizeof(__pyx_k_f_trace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f_trace */ + {__pyx_k_failed, sizeof(__pyx_k_failed), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_failed */ + {__pyx_k_file, sizeof(__pyx_k_file), 0, 1, 1}, /* PyObject cname: __pyx_n_u_file */ + {__pyx_k_frame, sizeof(__pyx_k_frame), 0, 1, 1}, /* PyObject cname: __pyx_n_u_frame */ + {__pyx_k_func, sizeof(__pyx_k_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func */ + {__pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_gc */ + {__pyx_k_get, sizeof(__pyx_k_get), 0, 1, 1}, /* PyObject cname: __pyx_n_u_get */ + {__pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getstate */ + {__pyx_k_handler, sizeof(__pyx_k_handler), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_handler */ + {__pyx_k_hunter, sizeof(__pyx_k_hunter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter */ + {__pyx_k_hunter__tracer, sizeof(__pyx_k_hunter__tracer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter__tracer */ + {__pyx_k_hunter__tracer_Tracer_at_0x, sizeof(__pyx_k_hunter__tracer_Tracer_at_0x), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_hunter__tracer_Tracer_at_0x */ + {__pyx_k_id, sizeof(__pyx_k_id), 0, 1, 1}, /* PyObject cname: __pyx_n_u_id */ + {__pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 1, 1}, /* PyObject cname: __pyx_n_u_initializing */ + {__pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_coroutine */ + {__pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_isenabled */ + {__pyx_k_kind, sizeof(__pyx_k_kind), 0, 1, 1}, /* PyObject cname: __pyx_n_u_kind */ + {__pyx_k_line, sizeof(__pyx_k_line), 0, 1, 1}, /* PyObject cname: __pyx_n_u_line */ + {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */ + {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module */ + {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ + {__pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_no_default___reduce___due_to_non */ + {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ + {__pyx_k_predicate, sizeof(__pyx_k_predicate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_predicate */ + {__pyx_k_previous, sizeof(__pyx_k_previous), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_previous */ + {__pyx_k_print_exc, sizeof(__pyx_k_print_exc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_print_exc */ + {__pyx_k_profile_hook, sizeof(__pyx_k_profile_hook), 0, 1, 1}, /* PyObject cname: __pyx_n_u_profile_hook */ + {__pyx_k_profiling_mode, sizeof(__pyx_k_profiling_mode), 0, 1, 1}, /* PyObject cname: __pyx_n_u_profiling_mode */ + {__pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_state */ + {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ + {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ + {__pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce */ + {__pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_cython */ + {__pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_ex */ + {__pyx_k_repr, sizeof(__pyx_k_repr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_repr */ + {__pyx_k_return, sizeof(__pyx_k_return), 0, 1, 1}, /* PyObject cname: __pyx_n_u_return */ + {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ + {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ + {__pyx_k_setprofile, sizeof(__pyx_k_setprofile), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setprofile */ + {__pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate */ + {__pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate_cython */ + {__pyx_k_settrace, sizeof(__pyx_k_settrace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_settrace */ + {__pyx_k_spec, sizeof(__pyx_k_spec), 0, 1, 1}, /* PyObject cname: __pyx_n_u_spec */ + {__pyx_k_src_hunter__tracer_pxd, sizeof(__pyx_k_src_hunter__tracer_pxd), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__tracer_pxd */ + {__pyx_k_src_hunter__tracer_pyx, sizeof(__pyx_k_src_hunter__tracer_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__tracer_pyx */ + {__pyx_k_state, sizeof(__pyx_k_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_state */ + {__pyx_k_stop, sizeof(__pyx_k_stop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stop */ + {__pyx_k_stopped, sizeof(__pyx_k_stopped), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stopped */ + {__pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stringsource */ + {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ + {__pyx_k_threading, sizeof(__pyx_k_threading), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threading */ + {__pyx_k_threading_support, sizeof(__pyx_k_threading_support), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threading_support */ + {__pyx_k_threading_support_2, sizeof(__pyx_k_threading_support_2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_threading_support_2 */ + {__pyx_k_trace, sizeof(__pyx_k_trace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_trace */ + {__pyx_k_trace_func, sizeof(__pyx_k_trace_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_trace_func */ + {__pyx_k_trace_hook, sizeof(__pyx_k_trace_hook), 0, 1, 1}, /* PyObject cname: __pyx_n_u_trace_hook */ + {__pyx_k_traceback, sizeof(__pyx_k_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_traceback */ + {__pyx_k_write, sizeof(__pyx_k_write), 0, 1, 1}, /* PyObject cname: __pyx_n_u_write */ + {__pyx_k_x, sizeof(__pyx_k_x), 0, 1, 1}, /* PyObject cname: __pyx_n_u_x */ + {0, 0, 0, 0, 0} +}; +/* InitStrings.proto */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names); -/* #### Code section: utility_code_def ### */ +/* #### Code section: cached_builtins ### */ -/* --- Runtime support code --- */ -/* Refnanny */ +static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_id); if (!__pyx_builtin_id) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: cached_constants ### */ + +static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + + /* "hunter/_tracer.pyx":13 + * import hunter + * + * __all__ = 'Tracer', # <<<<<<<<<<<<<< + * + * cdef dict KIND_INTS = { +*/ + __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Tracer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} +/* #### Code section: init_constants ### */ + +static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type; + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop; + if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + __pyx_mstate->__pyx_int_0 = PyLong_FromLong(0); if (unlikely(!__pyx_mstate->__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_1 = PyLong_FromLong(1); if (unlikely(!__pyx_mstate->__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_2 = PyLong_FromLong(2); if (unlikely(!__pyx_mstate->__pyx_int_2)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_3 = PyLong_FromLong(3); if (unlikely(!__pyx_mstate->__pyx_int_3)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_4 = PyLong_FromLong(4); if (unlikely(!__pyx_mstate->__pyx_int_4)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_5 = PyLong_FromLong(5); if (unlikely(!__pyx_mstate->__pyx_int_5)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_6 = PyLong_FromLong(6); if (unlikely(!__pyx_mstate->__pyx_int_6)) __PYX_ERR(0, 1, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: init_codeobjects ### */ +\ + typedef struct { + unsigned int argcount : 3; + unsigned int num_posonly_args : 1; + unsigned int num_kwonly_args : 1; + unsigned int nlocals : 3; + unsigned int flags : 10; + unsigned int first_line : 8; + unsigned int line_table_length : 13; + } __Pyx_PyCode_New_function_description; +/* NewCodeObj.proto */ +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +); + + +static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { + PyObject* tuple_dedup_map = PyDict_New(); + if (unlikely(!tuple_dedup_map)) return -1; + { + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 25, 208}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_KIND_INTS}; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace_func, __pyx_k_ZZ_uIWA_d_xs_4q_QfA_1F_q_uCr_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 59, 68}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_profiling_mode}; + __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_cinit, __pyx_k_q_Kq_L_Q_1_a_IQ_IQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 69, 30}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state}; + __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_dealloc, __pyx_k_A_5Q_5_C_1_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 74, 83}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_aq_4y_Q_is_D_Q_j_Q_j_T_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 84, 49}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg}; + __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_6_Q_5_1_1_3_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 90, 238}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicate, __pyx_mstate->__pyx_n_u_state}; + __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace, __pyx_k_A_Kq_5Q_4q_t_c_c_Q_7_Oq_AQ_uN_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 118, 204}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_stop, __pyx_k_A_4y_q_t1_4z_A_QfA_Qd_d_Kt_q_Q_4, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 141, 7}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_enter, __pyx_k_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 144, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_exc_type, __pyx_mstate->__pyx_n_u_exc_val, __pyx_mstate->__pyx_n_u_exc_tb}; + __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_exit, __pyx_k_A_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 38, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 39, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 40, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 41, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 42, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 47, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; + } + Py_DECREF(tuple_dedup_map); + return 0; + bad: + Py_DECREF(tuple_dedup_map); + return -1; +} +/* #### Code section: init_globals ### */ + +static int __Pyx_InitGlobals(void) { + /* PythonCompatibility.init */ + if (likely(__Pyx_init_co_variables() == 0)); else + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + /* CachedMethodType.init */ + #if CYTHON_COMPILING_IN_LIMITED_API +{ + PyObject *typesModule=NULL; + typesModule = PyImport_ImportModule("types"); + if (typesModule) { + __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + } +} // error handling follows +#endif + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: cleanup_globals ### */ +/* #### Code section: cleanup_module ### */ +/* #### Code section: main_method ### */ +/* #### Code section: utility_code_pragmas ### */ +#ifdef _MSC_VER +#pragma warning( push ) +/* Warning 4127: conditional expression is constant + * Cython uses constant conditional expressions to allow in inline functions to be optimized at + * compile-time, so this warning is not useful + */ +#pragma warning( disable : 4127 ) +#endif + + + +/* #### Code section: utility_code_def ### */ + +/* --- Runtime support code --- */ +/* Refnanny */ #if CYTHON_REFNANNY static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { PyObject *m = NULL, *p = NULL; @@ -8313,11 +8569,9 @@ static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; itp_getattro)) return tp->tp_getattro(obj, attr_name); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_getattr)) - return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); -#endif return PyObject_GetAttr(obj, attr_name); } #endif /* PyObjectGetAttrStrNoError */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8435,11 +8685,11 @@ static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { #endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 (void) PyObject_GetOptionalAttr(obj, attr_name, &result); return result; #else -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); @@ -8455,106 +8705,130 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P /* GetBuiltinName */ static PyObject *__Pyx_GetBuiltinName(PyObject *name) { - PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_b, name); + PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_b, name); if (unlikely(!result) && !PyErr_Occurred()) { PyErr_Format(PyExc_NameError, -#if PY_MAJOR_VERSION >= 3 "name '%U' is not defined", name); -#else - "name '%.200s' is not defined", PyString_AS_STRING(name)); -#endif } return result; } /* Profile */ -#if CYTHON_PROFILE +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_TRACE && !CYTHON_USE_SYS_MONITORING +static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line) { + int ret; + PyObject *type, *value, *traceback; + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + __Pyx_PyFrame_SetLineNumber(frame, line); + __Pyx_EnterTracing(tstate); + ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); + __Pyx_LeaveTracing(tstate); + if (likely(!ret)) { + __Pyx_ErrRestoreInState(tstate, type, value, traceback); + } else { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + } + return ret; +} +#endif +CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { + PyCodeObject *py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); + if (likely(py_code)) { + py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; + } + return py_code; +} +#if CYTHON_USE_SYS_MONITORING +CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event) { + int ret; + __pyx_monitoring_version_type version = 0; + ret = PyMonitoring_EnterScope(state_array, &version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyFunc_count); + if (unlikely(ret == -1)) return -1; + return skip_event ? 0 : PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyResumeEvent(&state_array[__Pyx_Monitoring_PY_RESUME], code_obj, offset); +} +CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised) { + if (reraised) { + (void) PyMonitoring_FireReraiseEvent(monitoring_state, code_obj, offset); + } else { + (void) PyMonitoring_FireRaiseEvent(monitoring_state, code_obj, offset); + } +} +#if CYTHON_TRACE +CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset) { + int ret; + PyObject *exc = PyErr_GetRaisedException(); + ret = PyMonitoring_FireLineEvent(monitoring_state, code_obj, offset, line); + if (exc) PyErr_SetRaisedException(exc); + return ret; +} +#endif +#else static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, - int firstlineno) { - PyObject *type, *value, *traceback; - int retval; + int firstlineno, + int skip_event) { if (*frame == NULL || !CYTHON_PROFILE_REUSE_FRAME) { - if (*code == NULL) { + int needs_new_code_obj = (*code == NULL); + if (needs_new_code_obj) { *code = __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno); if (*code == NULL) return 0; } *frame = PyFrame_New( tstate, /*PyThreadState *tstate*/ *code, /*PyCodeObject *code*/ - __pyx_d, /*PyObject *globals*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals*/ 0 /*PyObject *locals*/ ); + if (needs_new_code_obj && !CYTHON_PROFILE_REUSE_CODEOBJ) + Py_CLEAR(*code); // otherwise the reference is owned externally if (*frame == NULL) return 0; if (CYTHON_TRACE && (*frame)->f_trace == NULL) { Py_INCREF(Py_None); (*frame)->f_trace = Py_None; } -#if PY_VERSION_HEX < 0x030400B1 - } else { - (*frame)->f_tstate = tstate; -#endif } - __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); - retval = 1; - __Pyx_EnterTracing(tstate); - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - #if CYTHON_TRACE - if (tstate->c_tracefunc) - retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; - if (retval && tstate->c_profilefunc) - #endif - retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; - __Pyx_LeaveTracing(tstate); - if (retval) { + if (!skip_event) { + PyObject *type, *value, *traceback; + int retval = 1; + __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); + __Pyx_EnterTracing(tstate); + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + #if CYTHON_TRACE + if (tstate->c_tracefunc) + retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; + if (retval && tstate->c_profilefunc) + #endif + retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; + __Pyx_LeaveTracing(tstate); + if (unlikely(!retval)) { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + return -1; + } __Pyx_ErrRestoreInState(tstate, type, value, traceback); - return __Pyx_IsTracing(tstate, 0, 0) && retval; - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); - return -1; } + return __Pyx_IsTracing(tstate, 0, 0); } -static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { - PyCodeObject *py_code = 0; -#if PY_MAJOR_VERSION >= 3 - py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); - if (likely(py_code)) { - py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; - } -#else - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - py_funcname = PyString_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - py_srcfile = PyString_FromString(srcfile); - if (unlikely(!py_srcfile)) goto bad; - py_code = PyCode_New( - 0, - 0, - 0, - CO_OPTIMIZED | CO_NEWLOCALS, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - firstlineno, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); #endif - return py_code; -} #endif /* PyObjectSetAttrStr */ @@ -8563,77 +8837,291 @@ static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_setattro)) return tp->tp_setattro(obj, attr_name, value); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_setattr)) - return tp->tp_setattr(obj, PyString_AS_STRING(attr_name), value); -#endif return PyObject_SetAttr(obj, attr_name, value); } #endif -/* PyObjectCall */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { +/* PyFunctionFastCall */ +#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na, + PyObject *globals) { + PyFrameObject *f; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject **fastlocals; + Py_ssize_t i; PyObject *result; - ternaryfunc call = Py_TYPE(func)->tp_call; - if (unlikely(!call)) - return PyObject_Call(func, arg, kw); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + assert(globals != NULL); + /* XXX Perhaps we should create a specialized + PyFrame_New() that doesn't take locals, but does + take builtins without sanity checking them. + */ + assert(tstate != NULL); + f = PyFrame_New(tstate, co, globals, NULL); + if (f == NULL) { return NULL; - #endif - result = (*call)(func, arg, kw); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); } - return result; -} -#endif - -/* GetTopmostException */ -#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE -static _PyErr_StackItem * -__Pyx_PyErr_GetTopmostException(PyThreadState *tstate) -{ - _PyErr_StackItem *exc_info = tstate->exc_info; - while ((exc_info->exc_value == NULL || exc_info->exc_value == Py_None) && - exc_info->previous_item != NULL) - { - exc_info = exc_info->previous_item; + fastlocals = __Pyx_PyFrame_GetLocalsplus(f); + for (i = 0; i < na; i++) { + Py_INCREF(*args); + fastlocals[i] = *args++; } - return exc_info; + result = PyEval_EvalFrameEx(f,0); + ++tstate->recursion_depth; + Py_DECREF(f); + --tstate->recursion_depth; + return result; } -#endif - -/* SaveResetException */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { - #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4 - _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate); - PyObject *exc_value = exc_info->exc_value; - if (exc_value == NULL || exc_value == Py_None) { - *value = NULL; - *type = NULL; - *tb = NULL; - } else { - *value = exc_value; - Py_INCREF(*value); - *type = (PyObject*) Py_TYPE(exc_value); - Py_INCREF(*type); - *tb = PyException_GetTraceback(exc_value); +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs) { + PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); + PyObject *globals = PyFunction_GET_GLOBALS(func); + PyObject *argdefs = PyFunction_GET_DEFAULTS(func); + PyObject *closure; + PyObject *kwdefs; + PyObject *kwtuple, **k; + PyObject **d; + Py_ssize_t nd; + Py_ssize_t nk; + PyObject *result; + assert(kwargs == NULL || PyDict_Check(kwargs)); + nk = kwargs ? PyDict_Size(kwargs) : 0; + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { + return NULL; } - #elif CYTHON_USE_EXC_INFO_STACK - _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate); - *type = exc_info->exc_type; - *value = exc_info->exc_value; - *tb = exc_info->exc_traceback; - Py_XINCREF(*type); + if ( + co->co_kwonlyargcount == 0 && + likely(kwargs == NULL || nk == 0) && + co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { + if (argdefs == NULL && co->co_argcount == nargs) { + result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); + goto done; + } + else if (nargs == 0 && argdefs != NULL + && co->co_argcount == Py_SIZE(argdefs)) { + /* function called with no arguments, but all parameters have + a default value: use default values as arguments .*/ + args = &PyTuple_GET_ITEM(argdefs, 0); + result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); + goto done; + } + } + if (kwargs != NULL) { + Py_ssize_t pos, i; + kwtuple = PyTuple_New(2 * nk); + if (kwtuple == NULL) { + result = NULL; + goto done; + } + k = &PyTuple_GET_ITEM(kwtuple, 0); + pos = i = 0; + while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { + Py_INCREF(k[i]); + Py_INCREF(k[i+1]); + i += 2; + } + nk = i / 2; + } + else { + kwtuple = NULL; + k = NULL; + } + closure = PyFunction_GET_CLOSURE(func); + kwdefs = PyFunction_GET_KW_DEFAULTS(func); + if (argdefs != NULL) { + d = &PyTuple_GET_ITEM(argdefs, 0); + nd = Py_SIZE(argdefs); + } + else { + d = NULL; + nd = 0; + } + result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, kwdefs, closure); + Py_XDECREF(kwtuple); +done: + Py_LeaveRecursiveCall(); + return result; +} +#endif + +/* PyObjectCall */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { + PyObject *result; + ternaryfunc call = Py_TYPE(func)->tp_call; + if (unlikely(!call)) + return PyObject_Call(func, arg, kw); + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + result = (*call)(func, arg, kw); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* PyObjectCallMethO */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { + PyObject *self, *result; + PyCFunction cfunc; + cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); + self = __Pyx_CyOrPyCFunction_GET_SELF(func); + if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) + return NULL; + result = cfunc(self, arg); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* PyObjectFastCall */ +#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API +static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs) { + PyObject *argstuple; + PyObject *result = 0; + size_t i; + argstuple = PyTuple_New((Py_ssize_t)nargs); + if (unlikely(!argstuple)) return NULL; + for (i = 0; i < nargs; i++) { + Py_INCREF(args[i]); + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0)) goto bad; + } + result = __Pyx_PyObject_Call(func, argstuple, kwargs); + bad: + Py_DECREF(argstuple); + return result; +} +#endif +#if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + #if PY_VERSION_HEX < 0x03090000 + #define __Pyx_PyVectorcall_Function(callable) _PyVectorcall_Function(callable) + #elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) { + PyTypeObject *tp = Py_TYPE(callable); + #if defined(__Pyx_CyFunction_USED) + if (__Pyx_CyFunction_CheckExact(callable)) { + return __Pyx_CyFunction_func_vectorcall(callable); + } + #endif + if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { + return NULL; + } + assert(PyCallable_Check(callable)); + Py_ssize_t offset = tp->tp_vectorcall_offset; + assert(offset > 0); + vectorcallfunc ptr; + memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); + return ptr; +} + #else + #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable) + #endif +#endif +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *const *args, size_t _nargs, PyObject *kwargs) { + Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); +#if CYTHON_COMPILING_IN_CPYTHON + if (nargs == 0 && kwargs == NULL) { + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) + return __Pyx_PyObject_CallMethO(func, NULL); + } + else if (nargs == 1 && kwargs == NULL) { + if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) + return __Pyx_PyObject_CallMethO(func, args[0]); + } +#endif + #if PY_VERSION_HEX < 0x030800B1 + #if CYTHON_FAST_PYCCALL + if (PyCFunction_Check(func)) { + if (kwargs) { + return _PyCFunction_FastCallDict(func, args, nargs, kwargs); + } else { + return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); + } + } + if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { + return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); + } + #endif + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); + } + #endif + #endif + if (kwargs == NULL) { + #if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + vectorcallfunc f = __Pyx_PyVectorcall_Function(func); + if (f) { + return f(func, args, _nargs, NULL); + } + #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL + if (__Pyx_CyFunction_CheckExact(func)) { + __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); + if (f) return f(func, args, _nargs, NULL); + } + #elif CYTHON_COMPILING_IN_LIMITED_API && CYTHON_VECTORCALL + return PyObject_Vectorcall(func, args, _nargs, NULL); + #endif + } + if (nargs == 0) { + return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs); + } + #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API + return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); + #else + return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); + #endif +} + +/* GetTopmostException */ +#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE +static _PyErr_StackItem * +__Pyx_PyErr_GetTopmostException(PyThreadState *tstate) +{ + _PyErr_StackItem *exc_info = tstate->exc_info; + while ((exc_info->exc_value == NULL || exc_info->exc_value == Py_None) && + exc_info->previous_item != NULL) + { + exc_info = exc_info->previous_item; + } + return exc_info; +} +#endif + +/* SaveResetException */ +#if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { + #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4 + _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate); + PyObject *exc_value = exc_info->exc_value; + if (exc_value == NULL || exc_value == Py_None) { + *value = NULL; + *type = NULL; + *tb = NULL; + } else { + *value = exc_value; + Py_INCREF(*value); + *type = (PyObject*) Py_TYPE(exc_value); + Py_INCREF(*type); + *tb = PyException_GetTraceback(exc_value); + } + #elif CYTHON_USE_EXC_INFO_STACK + _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate); + *type = exc_info->exc_type; + *value = exc_info->exc_value; + *tb = exc_info->exc_traceback; + Py_XINCREF(*type); Py_XINCREF(*value); Py_XINCREF(*tb); #else @@ -8688,14 +9176,9 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) PyObject *local_type = NULL, *local_value, *local_tb = NULL; #if CYTHON_FAST_THREAD_STATE PyObject *tmp_type, *tmp_value, *tmp_tb; - #if PY_VERSION_HEX >= 0x030C00A6 + #if PY_VERSION_HEX >= 0x030C0000 local_value = tstate->current_exception; tstate->current_exception = 0; - if (likely(local_value)) { - local_type = (PyObject*) Py_TYPE(local_value); - Py_INCREF(local_type); - local_tb = PyException_GetTraceback(local_value); - } #else local_type = tstate->curexc_type; local_value = tstate->curexc_value; @@ -8704,24 +9187,30 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) tstate->curexc_value = 0; tstate->curexc_traceback = 0; #endif +#elif __PYX_LIMITED_VERSION_HEX > 0x030C0000 + local_value = PyErr_GetRaisedException(); #else PyErr_Fetch(&local_type, &local_value, &local_tb); #endif +#if __PYX_LIMITED_VERSION_HEX > 0x030C0000 + if (likely(local_value)) { + local_type = (PyObject*) Py_TYPE(local_value); + Py_INCREF(local_type); + local_tb = PyException_GetTraceback(local_value); + } +#else PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE && PY_VERSION_HEX >= 0x030C00A6 - if (unlikely(tstate->current_exception)) -#elif CYTHON_FAST_THREAD_STATE +#if CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) #endif goto bad; - #if PY_MAJOR_VERSION >= 3 if (local_tb) { if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) goto bad; } - #endif +#endif // __PYX_LIMITED_VERSION_HEX > 0x030C0000 Py_XINCREF(local_tb); Py_XINCREF(local_type); Py_XINCREF(local_value); @@ -8759,10 +9248,16 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); +#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + PyErr_SetHandledException(local_value); + Py_XDECREF(local_value); + Py_XDECREF(local_type); + Py_XDECREF(local_tb); #else PyErr_SetExcInfo(local_type, local_value, local_tb); #endif return 0; +#if __PYX_LIMITED_VERSION_HEX <= 0x030C0000 bad: *type = 0; *value = 0; @@ -8771,6 +9266,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) Py_XDECREF(local_value); Py_XDECREF(local_tb); return -1; +#endif } /* PyDictVersioning */ @@ -8807,33 +9303,26 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) #endif { PyObject *result; -#if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 - result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } else if (unlikely(PyErr_Occurred())) { - return NULL; - } -#elif CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API if (unlikely(!__pyx_m)) { + if (!PyErr_Occurred()) + PyErr_SetNone(PyExc_NameError); return NULL; } result = PyObject_GetAttr(__pyx_m, name); if (likely(result)) { return result; } -#else - result = PyDict_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + PyErr_Clear(); +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { - return __Pyx_NewRef(result); + return result; } -#endif #else - result = PyObject_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { return __Pyx_NewRef(result); } @@ -8842,231 +9331,142 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) return __Pyx_GetBuiltinName(name); } -/* PyFunctionFastCall */ -#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL -static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, - PyObject *globals) { - PyFrameObject *f; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject **fastlocals; - Py_ssize_t i; - PyObject *result; - assert(globals != NULL); - /* XXX Perhaps we should create a specialized - PyFrame_New() that doesn't take locals, but does - take builtins without sanity checking them. - */ - assert(tstate != NULL); - f = PyFrame_New(tstate, co, globals, NULL); - if (f == NULL) { - return NULL; +/* PyObjectVectorCallKwBuilder */ +#if CYTHON_VECTORCALL +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_PyObject_FastCallDict; + if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; + Py_INCREF(key); + args[n] = value; + return 0; +} +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_VectorcallBuilder_AddArgStr; + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; } - fastlocals = __Pyx_PyFrame_GetLocalsplus(f); - for (i = 0; i < na; i++) { - Py_INCREF(*args); - fastlocals[i] = *args++; + return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); +} +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + PyObject *pyKey = PyUnicode_FromString(key); + if (!pyKey) return -1; + return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); +} +#else // CYTHON_VECTORCALL +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; } - result = PyEval_EvalFrameEx(f,0); - ++tstate->recursion_depth; - Py_DECREF(f); - --tstate->recursion_depth; - return result; + return PyDict_SetItem(builder, key, value); } -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { - PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); - PyObject *globals = PyFunction_GET_GLOBALS(func); - PyObject *argdefs = PyFunction_GET_DEFAULTS(func); - PyObject *closure; -#if PY_MAJOR_VERSION >= 3 - PyObject *kwdefs; #endif - PyObject *kwtuple, **k; - PyObject **d; - Py_ssize_t nd; - Py_ssize_t nk; + +/* PyObjectFormatAndDecref */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { + if (unlikely(!s)) return NULL; + if (likely(PyUnicode_CheckExact(s))) return s; + return __Pyx_PyObject_FormatAndDecref(s, f); +} +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { PyObject *result; - assert(kwargs == NULL || PyDict_Check(kwargs)); - nk = kwargs ? PyDict_Size(kwargs) : 0; - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { - return NULL; - } - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { - return NULL; - } - #endif - if ( -#if PY_MAJOR_VERSION >= 3 - co->co_kwonlyargcount == 0 && -#endif - likely(kwargs == NULL || nk == 0) && - co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { - if (argdefs == NULL && co->co_argcount == nargs) { - result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); - goto done; - } - else if (nargs == 0 && argdefs != NULL - && co->co_argcount == Py_SIZE(argdefs)) { - /* function called with no arguments, but all parameters have - a default value: use default values as arguments .*/ - args = &PyTuple_GET_ITEM(argdefs, 0); - result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); - goto done; - } - } - if (kwargs != NULL) { - Py_ssize_t pos, i; - kwtuple = PyTuple_New(2 * nk); - if (kwtuple == NULL) { - result = NULL; - goto done; - } - k = &PyTuple_GET_ITEM(kwtuple, 0); - pos = i = 0; - while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { - Py_INCREF(k[i]); - Py_INCREF(k[i+1]); - i += 2; - } - nk = i / 2; - } - else { - kwtuple = NULL; - k = NULL; - } - closure = PyFunction_GET_CLOSURE(func); -#if PY_MAJOR_VERSION >= 3 - kwdefs = PyFunction_GET_KW_DEFAULTS(func); -#endif - if (argdefs != NULL) { - d = &PyTuple_GET_ITEM(argdefs, 0); - nd = Py_SIZE(argdefs); - } - else { - d = NULL; - nd = 0; - } -#if PY_MAJOR_VERSION >= 3 - result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, kwdefs, closure); -#else - result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, closure); -#endif - Py_XDECREF(kwtuple); -done: - Py_LeaveRecursiveCall(); + if (unlikely(!s)) return NULL; + result = PyObject_Format(s, f); + Py_DECREF(s); return result; } -#endif -/* PyObjectCallMethO */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { - PyObject *self, *result; - PyCFunction cfunc; - cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); - self = __Pyx_CyOrPyCFunction_GET_SELF(func); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) - return NULL; - #endif - result = cfunc(self, arg); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); +/* JoinPyUnicode */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char) { +#if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + PyObject *result_uval; + int result_ukind, kind_shift; + Py_ssize_t i, char_pos; + void *result_udata; + if (max_char > 1114111) max_char = 1114111; + result_uval = PyUnicode_New(result_ulength, max_char); + if (unlikely(!result_uval)) return NULL; + result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND; + kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1; + result_udata = PyUnicode_DATA(result_uval); + assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0); + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - result_ulength < 0)) + goto overflow; + char_pos = 0; + for (i=0; i < value_count; i++) { + int ukind; + Py_ssize_t ulength; + void *udata; + PyObject *uval = values[i]; + #if !CYTHON_COMPILING_IN_LIMITED_API + if (__Pyx_PyUnicode_READY(uval) == (-1)) + goto bad; + #endif + ulength = __Pyx_PyUnicode_GET_LENGTH(uval); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(ulength < 0)) goto bad; + #endif + if (unlikely(!ulength)) + continue; + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos)) + goto overflow; + ukind = __Pyx_PyUnicode_KIND(uval); + udata = __Pyx_PyUnicode_DATA(uval); + if (ukind == result_ukind) { + memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); + } else { + #if PY_VERSION_HEX >= 0x030d0000 + if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; + #elif CYTHON_COMPILING_IN_CPYTHON || defined(_PyUnicode_FastCopyCharacters) + _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); + #else + Py_ssize_t j; + for (j=0; j < ulength; j++) { + Py_UCS4 uchar = __Pyx_PyUnicode_READ(ukind, udata, j); + __Pyx_PyUnicode_WRITE(result_ukind, result_udata, char_pos+j, uchar); + } + #endif + } + char_pos += ulength; } + return result_uval; +overflow: + PyErr_SetString(PyExc_OverflowError, "join() result is too long for a Python string"); +bad: + Py_DECREF(result_uval); + return NULL; +#else + Py_ssize_t i; + PyObject *result = NULL; + PyObject *value_tuple = PyTuple_New(value_count); + if (unlikely(!value_tuple)) return NULL; + CYTHON_UNUSED_VAR(max_char); + CYTHON_UNUSED_VAR(result_ulength); + for (i=0; i__pyx_empty_unicode, value_tuple); +bad: + Py_DECREF(value_tuple); return result; -} #endif +} -/* PyObjectFastCall */ -#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API -static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { - PyObject *argstuple; - PyObject *result = 0; - size_t i; - argstuple = PyTuple_New((Py_ssize_t)nargs); - if (unlikely(!argstuple)) return NULL; - for (i = 0; i < nargs; i++) { - Py_INCREF(args[i]); - if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; - } - result = __Pyx_PyObject_Call(func, argstuple, kwargs); - bad: - Py_DECREF(argstuple); +/* PyObjectFastCallMethod */ +#if !CYTHON_VECTORCALL || PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf) { + PyObject *result; + PyObject *attr = PyObject_GetAttr(args[0], name); + if (unlikely(!attr)) + return NULL; + result = __Pyx_PyObject_FastCall(attr, args+1, nargsf - 1); + Py_DECREF(attr); return result; } #endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { - Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); -#if CYTHON_COMPILING_IN_CPYTHON - if (nargs == 0 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) - return __Pyx_PyObject_CallMethO(func, NULL); - } - else if (nargs == 1 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) - return __Pyx_PyObject_CallMethO(func, args[0]); - } -#endif - #if PY_VERSION_HEX < 0x030800B1 - #if CYTHON_FAST_PYCCALL - if (PyCFunction_Check(func)) { - if (kwargs) { - return _PyCFunction_FastCallDict(func, args, nargs, kwargs); - } else { - return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); - } - } - #if PY_VERSION_HEX >= 0x030700A1 - if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { - return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); - } - #endif - #endif - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(func)) { - return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); - } - #endif - #endif - if (kwargs == NULL) { - #if CYTHON_VECTORCALL - #if PY_VERSION_HEX < 0x03090000 - vectorcallfunc f = _PyVectorcall_Function(func); - #else - vectorcallfunc f = PyVectorcall_Function(func); - #endif - if (f) { - return f(func, args, (size_t)nargs, NULL); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, NULL); - } - #endif - } - if (nargs == 0) { - return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); - } - #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API - return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); - #else - return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); - #endif -} /* SwapException */ #if CYTHON_FAST_THREAD_STATE @@ -9123,7 +9523,27 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, #endif /* TupleAndListFromArray */ -#if CYTHON_COMPILING_IN_CPYTHON +#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + Py_ssize_t i; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); + } + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + for (i = 0; i < n; i++) { + if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { + Py_DECREF(res); + return NULL; + } + Py_INCREF(src[i]); + } + return res; +} +#elif CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { PyObject *v; Py_ssize_t i; @@ -9137,8 +9557,7 @@ __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) { PyObject *res; if (n <= 0) { - Py_INCREF(__pyx_empty_tuple); - return __pyx_empty_tuple; + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); } res = PyTuple_New(n); if (unlikely(res == NULL)) return NULL; @@ -9161,7 +9580,8 @@ __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) /* BytesEquals */ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ + !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) return PyObject_RichCompareBool(s1, s2, equals); #else if (s1 == s2) { @@ -9208,55 +9628,39 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq /* UnicodeEquals */ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL return PyObject_RichCompareBool(s1, s2, equals); #else -#if PY_MAJOR_VERSION < 3 - PyObject* owned_ref = NULL; -#endif int s1_is_unicode, s2_is_unicode; if (s1 == s2) { goto return_eq; } s1_is_unicode = PyUnicode_CheckExact(s1); s2_is_unicode = PyUnicode_CheckExact(s2); -#if PY_MAJOR_VERSION < 3 - if ((s1_is_unicode & (!s2_is_unicode)) && PyString_CheckExact(s2)) { - owned_ref = PyUnicode_FromObject(s2); - if (unlikely(!owned_ref)) - return -1; - s2 = owned_ref; - s2_is_unicode = 1; - } else if ((s2_is_unicode & (!s1_is_unicode)) && PyString_CheckExact(s1)) { - owned_ref = PyUnicode_FromObject(s1); - if (unlikely(!owned_ref)) - return -1; - s1 = owned_ref; - s1_is_unicode = 1; - } else if (((!s2_is_unicode) & (!s1_is_unicode))) { - return __Pyx_PyBytes_Equals(s1, s2, equals); - } -#endif if (s1_is_unicode & s2_is_unicode) { - Py_ssize_t length; + Py_ssize_t length, length2; int kind; void *data1, *data2; + #if !CYTHON_COMPILING_IN_LIMITED_API if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) return -1; + #endif length = __Pyx_PyUnicode_GET_LENGTH(s1); - if (length != __Pyx_PyUnicode_GET_LENGTH(s2)) { + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length < 0)) return -1; + #endif + length2 = __Pyx_PyUnicode_GET_LENGTH(s2); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length2 < 0)) return -1; + #endif + if (length != length2) { goto return_ne; } #if CYTHON_USE_UNICODE_INTERNALS { Py_hash_t hash1, hash2; - #if CYTHON_PEP393_ENABLED hash1 = ((PyASCIIObject*)s1)->hash; hash2 = ((PyASCIIObject*)s2)->hash; - #else - hash1 = ((PyUnicodeObject*)s1)->hash; - hash2 = ((PyUnicodeObject*)s2)->hash; - #endif if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { goto return_ne; } @@ -9274,9 +9678,6 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int goto return_eq; } else { int result = memcmp(data1, data2, (size_t)(length * kind)); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_EQ) ? (result == 0) : (result != 0); } } else if ((s1 == Py_None) & s2_is_unicode) { @@ -9286,9 +9687,6 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int } else { int result; PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif if (!py_result) return -1; result = __Pyx_PyObject_IsTrue(py_result); @@ -9296,14 +9694,8 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int return result; } return_eq: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_EQ); return_ne: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_NE); #endif } @@ -9312,14 +9704,25 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #if CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s) { - Py_ssize_t i, n = PyTuple_GET_SIZE(kwnames); + Py_ssize_t i, n = __Pyx_PyTuple_GET_SIZE(kwnames); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(n == -1)) return NULL; + #endif for (i = 0; i < n; i++) { - if (s == PyTuple_GET_ITEM(kwnames, i)) return kwvalues[i]; + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + if (s == namei) return kwvalues[i]; } for (i = 0; i < n; i++) { - int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + int eq = __Pyx_PyUnicode_Equals(s, namei, Py_EQ); if (unlikely(eq != 0)) { if (unlikely(eq < 0)) return NULL; return kwvalues[i]; @@ -9327,15 +9730,26 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO } return NULL; } -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { - Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + Py_ssize_t i, nkwargs; PyObject *dict; +#if !CYTHON_ASSUME_SAFE_SIZE + nkwargs = PyTuple_Size(kwnames); + if (unlikely(nkwargs < 0)) return NULL; +#else + nkwargs = PyTuple_GET_SIZE(kwnames); +#endif dict = PyDict_New(); if (unlikely(!dict)) return NULL; for (i=0; i= 3 "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AsString(kw_name)); - #endif } -/* ParseKeywords */ -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - int kwds_is_tuple = CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds)); - while (1) { - Py_XDECREF(key); key = NULL; - Py_XDECREF(value); value = NULL; - if (kwds_is_tuple) { - Py_ssize_t size; -#if CYTHON_ASSUME_SAFE_MACROS - size = PyTuple_GET_SIZE(kwds); +/* UnpackUnboundCMethod */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { + PyObject *result; + PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); + if (unlikely(!selfless_args)) return NULL; + result = PyObject_Call(method, selfless_args, kwargs); + Py_DECREF(selfless_args); + return result; +} +#elif CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) { + return _PyObject_Vectorcall + (method, args ? args+1 : NULL, nargs ? nargs-1 : 0, kwnames); +} #else - size = PyTuple_Size(kwds); - if (size < 0) goto bad; +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { + return +#if PY_VERSION_HEX < 0x03090000 + _PyObject_Vectorcall +#else + PyObject_Vectorcall #endif - if (pos >= size) break; -#if CYTHON_AVOID_BORROWED_REFS - key = __Pyx_PySequence_ITEM(kwds, pos); - if (!key) goto bad; -#elif CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kwds, pos); + (method, args ? args+1 : NULL, nargs ? (size_t) nargs-1 : 0, kwnames); +} +#endif +static PyMethodDef __Pyx_UnboundCMethod_Def = { + "CythonUnboundCMethod", + __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 + METH_VARARGS | METH_KEYWORDS, #else - key = PyTuple_GetItem(kwds, pos); - if (!key) goto bad; + METH_FASTCALL | METH_KEYWORDS, #endif - value = kwvalues[pos]; - pos++; + NULL +}; +static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { + PyObject *method, *result=NULL; + method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); + if (unlikely(!method)) + return -1; + result = method; +#if CYTHON_COMPILING_IN_CPYTHON + if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) + { + PyMethodDescrObject *descr = (PyMethodDescrObject*) method; + target->func = descr->d_method->ml_meth; + target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); + } else +#endif +#if CYTHON_COMPILING_IN_PYPY +#else + if (PyCFunction_Check(method)) +#endif + { + PyObject *self; + int self_found; +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + self = PyObject_GetAttrString(method, "__self__"); + if (!self) { + PyErr_Clear(); } - else - { - if (!PyDict_Next(kwds, &pos, &key, &value)) break; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); +#else + self = PyCFunction_GET_SELF(method); +#endif + self_found = (self && self != Py_None); +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + Py_XDECREF(self); #endif + if (self_found) { + PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); + if (unlikely(!unbound_method)) return -1; + Py_DECREF(method); + result = unbound_method; } - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(value); - Py_DECREF(key); + } +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + if (unlikely(target->method)) { + Py_DECREF(result); + } else #endif - key = NULL; - value = NULL; - continue; + target->method = result; + return 0; +} + +/* CallUnboundCMethod2 */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { + PyObject *args[2] = {arg1, arg2}; + if (cfunc->flag == METH_FASTCALL) { + return __Pyx_CallCFunctionFast(cfunc, self, args, 2); } -#if !CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); + if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL); + } +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 #endif - Py_INCREF(value); - name = first_kw_arg; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_Check(key))) { - while (*name) { - if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) - && _PyString_Eq(**name, key)) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2); + } #endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - if ((**argname == key) || ( - (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) - && _PyString_Eq(**argname, key))) { - goto arg_passed_twice; - } - argname++; - } - } - } else - #endif - if (likely(PyUnicode_Check(key))) { - while (*name) { - int cmp = ( - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**name, key) - ); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; + PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; +} #endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - int cmp = (**argname == key) ? 0 : - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**argname, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) goto arg_passed_twice; - argname++; - } +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ + if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; +#if CYTHON_COMPILING_IN_CPYTHON + if (cfunc->func && (cfunc->flag & METH_VARARGS)) { + PyObject *result = NULL; + PyObject *args = PyTuple_New(2); + if (unlikely(!args)) return NULL; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + if (cfunc->flag & METH_KEYWORDS) + result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); + else + result = __Pyx_CallCFunction(cfunc, self, args); + Py_DECREF(args); + return result; + } +#endif + { + PyObject *args[4] = {NULL, self, arg1, arg2}; + return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + } +} + +/* ParseKeywords */ +static int __Pyx_ValidateDuplicatePosArgs( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char* function_name) +{ + PyObject ** const *name = argnames; + while (name != first_kw_arg) { + PyObject *key = **name; + int found = PyDict_Contains(kwds, key); + if (unlikely(found)) { + if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; + } + name++; + } + return 0; +bad: + return -1; +} +#if CYTHON_USE_UNICODE_INTERNALS +static CYTHON_INLINE int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) { + int kind; + Py_ssize_t len = PyUnicode_GET_LENGTH(s1); + if (len != PyUnicode_GET_LENGTH(s2)) return 0; + kind = PyUnicode_KIND(s1); + if (kind != PyUnicode_KIND(s2)) return 0; + const void *data1 = PyUnicode_DATA(s1); + const void *data2 = PyUnicode_DATA(s2); + return (memcmp(data1, data2, (size_t) len * (size_t) kind) == 0); +} +#endif +static int __Pyx_MatchKeywordArg_str( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + #if CYTHON_USE_UNICODE_INTERNALS + Py_hash_t key_hash = ((PyASCIIObject*)key)->hash; + if (unlikely(key_hash == -1)) { + key_hash = PyObject_Hash(key); + if (unlikely(key_hash == -1)) + goto bad; + } + #endif + name = first_kw_arg; + while (*name) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) { + *index_found = (size_t) (name - argnames); + return 1; + } + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) { + *index_found = (size_t) (name - argnames); + return 1; } - } else - goto invalid_keyword_type; - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; } + #endif + name++; + } + name = argnames; + while (name != first_kw_arg) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) { + if (__Pyx_UnicodeKeywordsEqual(name_str, key)) + goto arg_passed_twice; + } + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + if (unlikely(name_str == key)) goto arg_passed_twice; + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) goto arg_passed_twice; + } + #endif + name++; + } + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +bad: + return -1; +} +static int __Pyx_MatchKeywordArg_nostr( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; + name = first_kw_arg; + while (*name) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (cmp == 1) { + *index_found = (size_t) (name - argnames); + return 1; + } + if (unlikely(cmp == -1)) goto bad; + name++; + } + name = argnames; + while (name != first_kw_arg) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (unlikely(cmp != 0)) { + if (cmp == 1) goto arg_passed_twice; + else goto bad; + } + name++; } - Py_XDECREF(key); - Py_XDECREF(value); return 0; arg_passed_twice: __Pyx_RaiseDoubleKeywordsError(function_name, key); @@ -9501,21 +10045,244 @@ static int __Pyx_ParseOptionalKeywords( PyErr_Format(PyExc_TypeError, "%.200s() keywords must be strings", function_name); goto bad; -invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); +bad: + return -1; +} +static CYTHON_INLINE int __Pyx_MatchKeywordArg( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + return likely(PyUnicode_CheckExact(key)) ? + __Pyx_MatchKeywordArg_str(key, argnames, first_kw_arg, index_found, function_name) : + __Pyx_MatchKeywordArg_nostr(key, argnames, first_kw_arg, index_found, function_name); +} +static void __Pyx_RejectUnknownKeyword( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char *function_name) +{ + Py_ssize_t pos = 0; + PyObject *key = NULL; + __Pyx_BEGIN_CRITICAL_SECTION(kwds); + while (PyDict_Next(kwds, &pos, &key, NULL)) { + PyObject** const *name = first_kw_arg; + while (*name && (**name != key)) name++; + if (!*name) { + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); + #endif + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp != 1) { + if (cmp == 0) { + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + #endif + break; + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + #endif + } + } + __Pyx_END_CRITICAL_SECTION(); + assert(PyErr_Occurred()); +} +static int __Pyx_ParseKeywordDict( + PyObject *kwds, + PyObject ** const argnames[], + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t extracted = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + name = first_kw_arg; + while (*name && num_kwargs > extracted) { + PyObject * key = **name; + PyObject *value; + int found = 0; + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + found = PyDict_GetItemRef(kwds, key, &value); + #else + value = PyDict_GetItemWithError(kwds, key); + if (value) { + Py_INCREF(value); + found = 1; + } else { + if (unlikely(PyErr_Occurred())) goto bad; + } + #endif + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + extracted++; + } + name++; + } + if (num_kwargs > extracted) { + if (ignore_unknown_kwargs) { + if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1)) + goto bad; + } else { + __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name); + goto bad; + } + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordDictToDict( + PyObject *kwds, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + const char* function_name) +{ + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t len; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + if (PyDict_Update(kwds2, kwds) < 0) goto bad; + name = first_kw_arg; + while (*name) { + PyObject *key = **name; + PyObject *value; +#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop)) + int found = PyDict_Pop(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + } +#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + int found = PyDict_GetItemRef(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + if (unlikely(PyDict_DelItem(kwds2, key) < 0)) goto bad; + } +#else + #if CYTHON_COMPILING_IN_CPYTHON + value = _PyDict_Pop(kwds2, key, kwds2); #else + value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2); + #endif + if (value == kwds2) { + Py_DECREF(value); + } else { + if (unlikely(!value)) goto bad; + values[name-argnames] = value; + } +#endif + name++; + } + len = PyDict_Size(kwds2); + if (len > 0) { + return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name); + } else if (unlikely(len == -1)) { + goto bad; + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordsTuple( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject *key = NULL; + PyObject** const * name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) { +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); +#else + key = __Pyx_PyTuple_GET_ITEM(kwds, pos); +#endif +#if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!key)) goto bad; +#endif + name = first_kw_arg; + while (*name && (**name != key)) name++; + if (*name) { + PyObject *value = kwvalues[pos]; + values[name-argnames] = __Pyx_NewRef(value); + } else { + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp == 1) { + PyObject *value = kwvalues[pos]; + values[index_found] = __Pyx_NewRef(value); + } else { + if (unlikely(cmp == -1)) goto bad; + if (kwds2) { + PyObject *value = kwvalues[pos]; + if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; + } else if (!ignore_unknown_kwargs) { + goto invalid_keyword; + } + } + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + key = NULL; + #endif + } + return 0; +invalid_keyword: PyErr_Format(PyExc_TypeError, "%s() got an unexpected keyword argument '%U'", function_name, key); - #endif + goto bad; bad: + #if CYTHON_AVOID_BORROWED_REFS Py_XDECREF(key); - Py_XDECREF(value); + #endif return -1; } +static int __Pyx_ParseKeywords( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) + return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); + else if (kwds2) + return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name); + else + return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); +} /* RaiseArgTupleInvalid */ static void __Pyx_RaiseArgtupleInvalid( @@ -9550,12 +10317,10 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, PyObject *old_exc, *old_val, *old_tb; PyObject *ctx; __Pyx_PyThreadState_declare -#ifdef WITH_THREAD PyGILState_STATE state; if (nogil) state = PyGILState_Ensure(); else state = (PyGILState_STATE)0; -#endif CYTHON_UNUSED_VAR(clineno); CYTHON_UNUSED_VAR(lineno); CYTHON_UNUSED_VAR(filename); @@ -9567,13 +10332,9 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, Py_XINCREF(old_val); Py_XINCREF(old_tb); __Pyx_ErrRestore(old_exc, old_val, old_tb); - PyErr_PrintEx(1); + PyErr_PrintEx(0); } - #if PY_MAJOR_VERSION < 3 - ctx = PyString_FromString(name); - #else ctx = PyUnicode_FromString(name); - #endif __Pyx_ErrRestore(old_exc, old_val, old_tb); if (!ctx) { PyErr_WriteUnraisable(Py_None); @@ -9581,16 +10342,49 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, PyErr_WriteUnraisable(ctx); Py_DECREF(ctx); } -#ifdef WITH_THREAD - if (nogil) - PyGILState_Release(state); -#endif + if (nogil) + PyGILState_Release(state); +} + +/* PyObjectCallOneArg */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { + PyObject *args[2] = {NULL, arg}; + return __Pyx_PyObject_FastCall(func, args+1, 1 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +} + +/* PyObjectFormat */ +#if CYTHON_USE_UNICODE_WRITER +static PyObject* __Pyx_PyObject_Format(PyObject* obj, PyObject* format_spec) { + int ret; + _PyUnicodeWriter writer; + if (likely(PyFloat_CheckExact(obj))) { + _PyUnicodeWriter_Init(&writer); + ret = _PyFloat_FormatAdvancedWriter( + &writer, + obj, + format_spec, 0, PyUnicode_GET_LENGTH(format_spec)); + } else if (likely(PyLong_CheckExact(obj))) { + _PyUnicodeWriter_Init(&writer); + ret = _PyLong_FormatAdvancedWriter( + &writer, + obj, + format_spec, 0, PyUnicode_GET_LENGTH(format_spec)); + } else { + return PyObject_Format(obj, format_spec); + } + if (unlikely(ret == -1)) { + _PyUnicodeWriter_Dealloc(&writer); + return NULL; + } + return _PyUnicodeWriter_Finish(&writer); } +#endif -/* PyObjectCallOneArg */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { - PyObject *args[2] = {NULL, arg}; - return __Pyx_PyObject_FastCall(func, args+1, 1 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +/* PyUnicode_Unicode */ +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_Unicode(PyObject *obj) { + if (unlikely(obj == Py_None)) + obj = __pyx_mstate_global->__pyx_kp_u_None; + return __Pyx_NewRef(obj); } /* ArgTypeTest */ @@ -9598,74 +10392,70 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam { __Pyx_TypeName type_name; __Pyx_TypeName obj_type_name; + PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; + int from_annotation_subclass = 0; if (unlikely(!type)) { PyErr_SetString(PyExc_SystemError, "Missing type object"); return 0; } - else if (exact) { - #if PY_MAJOR_VERSION == 2 - if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; - #endif - } - else { + else if (!exact) { if (likely(__Pyx_TypeCheck(obj, type))) return 1; + } else if (exact == 2) { + if (__Pyx_TypeCheck(obj, type)) { + from_annotation_subclass = 1; + extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; + } } - type_name = __Pyx_PyType_GetName(type); - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); + type_name = __Pyx_PyType_GetFullyQualifiedName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); PyErr_Format(PyExc_TypeError, "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME - ", got " __Pyx_FMT_TYPENAME ")", name, type_name, obj_type_name); - __Pyx_DECREF_TypeName(type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; -} - -/* ExtTypeTest */ -static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { - __Pyx_TypeName obj_type_name; - __Pyx_TypeName type_name; - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; + ", got " __Pyx_FMT_TYPENAME ")" +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + "%s%U" +#endif + , name, type_name, obj_type_name +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + , (from_annotation_subclass ? ". " : ""), extra_info +#endif + ); +#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + if (exact == 2 && from_annotation_subclass) { + PyObject *res; + PyObject *vargs[2]; + vargs[0] = PyErr_GetRaisedException(); + vargs[1] = extra_info; + res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); + Py_XDECREF(res); + PyErr_SetRaisedException(vargs[0]); } - if (likely(__Pyx_TypeCheck(obj, type))) - return 1; - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); - type_name = __Pyx_PyType_GetName(type); - PyErr_Format(PyExc_TypeError, - "Cannot convert " __Pyx_FMT_TYPENAME " to " __Pyx_FMT_TYPENAME, - obj_type_name, type_name); - __Pyx_DECREF_TypeName(obj_type_name); +#endif __Pyx_DECREF_TypeName(type_name); + __Pyx_DECREF_TypeName(obj_type_name); return 0; } /* DictGetItem */ -#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +#if !CYTHON_COMPILING_IN_PYPY static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { PyObject *value; - value = PyDict_GetItemWithError(d, key); - if (unlikely(!value)) { - if (!PyErr_Occurred()) { - if (unlikely(PyTuple_Check(key))) { - PyObject* args = PyTuple_Pack(1, key); - if (likely(args)) { - PyErr_SetObject(PyExc_KeyError, args); - Py_DECREF(args); - } - } else { - PyErr_SetObject(PyExc_KeyError, key); + if (unlikely(__Pyx_PyDict_GetItemRef(d, key, &value) == 0)) { // no value, no error + if (unlikely(PyTuple_Check(key))) { + PyObject* args = PyTuple_Pack(1, key); + if (likely(args)) { + PyErr_SetObject(PyExc_KeyError, args); + Py_DECREF(args); } + } else { + PyErr_SetObject(PyExc_KeyError, key); } - return NULL; } - Py_INCREF(value); return value; } #endif /* GetAttr3 */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 static PyObject *__Pyx_GetAttr3Default(PyObject *d) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -9678,12 +10468,12 @@ static PyObject *__Pyx_GetAttr3Default(PyObject *d) { #endif static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { PyObject *r; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 int res = PyObject_GetOptionalAttr(o, n, &r); return (res != 0) ? r : __Pyx_NewRef(d); #else #if CYTHON_USE_TYPE_SLOTS - if (likely(PyString_Check(n))) { + if (likely(PyUnicode_Check(n))) { r = __Pyx_PyObject_GetAttrStrNoError(o, n); if (unlikely(!r) && likely(!PyErr_Occurred())) { r = __Pyx_NewRef(d); @@ -9696,133 +10486,28 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject #endif } -/* KeywordStringCheck */ -static int __Pyx_CheckKeywordStrings( - PyObject *kw, - const char* function_name, - int kw_allowed) -{ - PyObject* key = 0; - Py_ssize_t pos = 0; -#if CYTHON_COMPILING_IN_PYPY - if (!kw_allowed && PyDict_Next(kw, &pos, &key, 0)) - goto invalid_keyword; - return 1; -#else - if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kw))) { - Py_ssize_t kwsize; -#if CYTHON_ASSUME_SAFE_MACROS - kwsize = PyTuple_GET_SIZE(kw); -#else - kwsize = PyTuple_Size(kw); - if (kwsize < 0) return 0; -#endif - if (unlikely(kwsize == 0)) - return 1; - if (!kw_allowed) { -#if CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kw, 0); -#else - key = PyTuple_GetItem(kw, pos); - if (!key) return 0; -#endif - goto invalid_keyword; - } -#if PY_VERSION_HEX < 0x03090000 - for (pos = 0; pos < kwsize; pos++) { -#if CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kw, pos); -#else - key = PyTuple_GetItem(kw, pos); - if (!key) return 0; -#endif - if (unlikely(!PyUnicode_Check(key))) - goto invalid_keyword_type; - } +/* RejectKeywords */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds) { + PyObject *key = NULL; + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) { + key = __Pyx_PySequence_ITEM(kwds, 0); + } else { + Py_ssize_t pos = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return; #endif - return 1; + PyDict_Next(kwds, &pos, &key, NULL); + Py_INCREF(key); } - while (PyDict_Next(kw, &pos, &key, 0)) { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_Check(key))) - #endif - if (unlikely(!PyUnicode_Check(key))) - goto invalid_keyword_type; + if (likely(key)) { + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + Py_DECREF(key); } - if (!kw_allowed && unlikely(key)) - goto invalid_keyword; - return 1; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - return 0; -#endif -invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif - return 0; } /* RaiseException */ -#if PY_MAJOR_VERSION < 3 -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - __Pyx_PyThreadState_declare - CYTHON_UNUSED_VAR(cause); - Py_XINCREF(type); - if (!value || value == Py_None) - value = NULL; - else - Py_INCREF(value); - if (!tb || tb == Py_None) - tb = NULL; - else { - Py_INCREF(tb); - if (!PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto raise_error; - } - } - if (PyType_Check(type)) { -#if CYTHON_COMPILING_IN_PYPY - if (!value) { - Py_INCREF(Py_None); - value = Py_None; - } -#endif - PyErr_NormalizeException(&type, &value, &tb); - } else { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto raise_error; - } - value = type; - type = (PyObject*) Py_TYPE(type); - Py_INCREF(type); - if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto raise_error; - } - } - __Pyx_PyThreadState_assign - __Pyx_ErrRestore(type, value, tb); - return; -raise_error: - Py_XDECREF(value); - Py_XDECREF(type); - Py_XDECREF(tb); - return; -} -#else static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { PyObject* owned_instance = NULL; if (tb == Py_None) { @@ -9907,9 +10592,9 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } PyErr_SetObject(type, value); if (tb) { - #if PY_VERSION_HEX >= 0x030C00A6 +#if PY_VERSION_HEX >= 0x030C00A6 PyException_SetTraceback(value, tb); - #elif CYTHON_FAST_THREAD_STATE +#elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -9929,16 +10614,33 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject Py_XDECREF(owned_instance); return; } + +/* CallTypeTraverse */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg) { + #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 + if (__Pyx_get_runtime_version() < 0x03090000) return 0; + #endif + if (!always_call) { + PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*); + unsigned long flags = PyType_GetFlags(base); + if (flags & Py_TPFLAGS_HEAPTYPE) { + return 0; + } + } + Py_VISIT((PyObject*)Py_TYPE(o)); + return 0; +} #endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_0_10 -#define __PYX_HAVE_RT_ImportType_3_0_10 -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_2 +#define __PYX_HAVE_RT_ImportType_3_1_2 +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) { PyObject *result = 0; - char warning[200]; Py_ssize_t basicsize; Py_ssize_t itemsize; #if CYTHON_COMPILING_IN_LIMITED_API @@ -9958,6 +10660,9 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul basicsize = ((PyTypeObject *)result)->tp_basicsize; itemsize = ((PyTypeObject *)result)->tp_itemsize; #else + if (size == 0) { + return (PyTypeObject *)result; + } py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); if (!py_basicsize) goto bad; @@ -9989,7 +10694,7 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -9997,12 +10702,13 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { - PyOS_snprintf(warning, sizeof(warning), - "%s.%s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + if (PyErr_WarnFormat(NULL, 0, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize) < 0) { + goto bad; + } } return (PyTypeObject *)result; bad: @@ -10011,25 +10717,83 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul } #endif +/* LimitedApiGetTypeDict */ +#if CYTHON_COMPILING_IN_LIMITED_API +static Py_ssize_t __Pyx_GetTypeDictOffset(void) { + PyObject *tp_dictoffset_o; + Py_ssize_t tp_dictoffset; + tp_dictoffset_o = PyObject_GetAttrString((PyObject*)(&PyType_Type), "__dictoffset__"); + if (unlikely(!tp_dictoffset_o)) return -1; + tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o); + Py_DECREF(tp_dictoffset_o); + if (unlikely(tp_dictoffset == 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' doesn't have a dictoffset"); + return -1; + } else if (unlikely(tp_dictoffset < 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' has an unexpected negative dictoffset. " + "Please report this as Cython bug"); + return -1; + } + return tp_dictoffset; +} +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp) { + static Py_ssize_t tp_dictoffset = 0; + if (unlikely(tp_dictoffset == 0)) { + tp_dictoffset = __Pyx_GetTypeDictOffset(); + if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) { + tp_dictoffset = 0; // try again next time? + return NULL; + } + } + return *(PyObject**)((char*)tp + tp_dictoffset); +} +#endif + +/* SetItemOnTypeDict */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; +#else + tp_dict = tp->tp_dict; +#endif + result = PyDict_SetItem(tp_dict, k, v); + if (likely(!result)) { + PyType_Modified(tp); + if (unlikely(PyObject_HasAttr(v, __pyx_mstate_global->__pyx_n_u_set_name))) { + PyObject *setNameResult = PyObject_CallMethodObjArgs(v, __pyx_mstate_global->__pyx_n_u_set_name, (PyObject *) tp, k, NULL); + if (!setNameResult) return -1; + Py_DECREF(setNameResult); + } + } + return result; +} + /* FixUpExtensionType */ -#if CYTHON_USE_TYPE_SPECS static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { -#if PY_VERSION_HEX > 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API +#if __PYX_LIMITED_VERSION_HEX > 0x030900B1 CYTHON_UNUSED_VAR(spec); CYTHON_UNUSED_VAR(type); + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); #else const PyType_Slot *slot = spec->slots; + int changed = 0; +#if !CYTHON_COMPILING_IN_LIMITED_API while (slot && slot->slot && slot->slot != Py_tp_members) slot++; if (slot && slot->slot == Py_tp_members) { - int changed = 0; -#if !(PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON) +#if !CYTHON_COMPILING_IN_CPYTHON const -#endif +#endif // !CYTHON_COMPILING_IN_CPYTHON) PyMemberDef *memb = (PyMemberDef*) slot->pfunc; while (memb && memb->name) { if (memb->name[0] == '_' && memb->name[1] == '_') { -#if PY_VERSION_HEX < 0x030900b1 if (strcmp(memb->name, "__weaklistoffset__") == 0) { assert(memb->type == T_PYSSIZET); assert(memb->flags == READONLY); @@ -10053,11 +10817,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject #endif changed = 1; } -#endif -#else - if ((0)); -#endif -#if PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON +#endif // CYTHON_METH_FASTCALL else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -10065,24 +10825,54 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject descr = PyDescr_NewMember(type, memb); if (unlikely(!descr)) return -1; - if (unlikely(PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr) < 0)) { - Py_DECREF(descr); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { return -1; } - Py_DECREF(descr); changed = 1; } -#endif } memb++; } - if (changed) - PyType_Modified(type); } -#endif +#endif // !CYTHON_COMPILING_IN_LIMITED_API + slot = spec->slots; + while (slot && slot->slot && slot->slot != Py_tp_getset) + slot++; + if (slot && slot->slot == Py_tp_getset) { + PyGetSetDef *getset = (PyGetSetDef*) slot->pfunc; + while (getset && getset->name) { + if (getset->name[0] == '_' && getset->name[1] == '_' && strcmp(getset->name, "__module__") == 0) { + PyObject *descr = PyDescr_NewGetSet(type, getset); + if (unlikely(!descr)) + return -1; + #if CYTHON_COMPILING_IN_LIMITED_API + PyObject *pyname = PyUnicode_FromString(getset->name); + if (unlikely(!pyname)) { + Py_DECREF(descr); + return -1; + } + int set_item_result = __Pyx_SetItemOnTypeDict(type, pyname, descr); + Py_DECREF(pyname); + #else + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + #endif + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { + return -1; + } + changed = 1; + } + ++getset; + } + } + if (changed) + PyType_Modified(type); +#endif // PY_VERSION_HEX > 0x030900B1 return 0; } -#endif /* PyObjectCallNoArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { @@ -10113,18 +10903,12 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me Py_INCREF(descr); #if defined(Py_TPFLAGS_METHOD_DESCRIPTOR) && Py_TPFLAGS_METHOD_DESCRIPTOR if (__Pyx_PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_METHOD_DESCRIPTOR)) -#elif PY_MAJOR_VERSION >= 3 +#else #ifdef __Pyx_CyFunction_USED if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr))) #else if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type))) #endif -#else - #ifdef __Pyx_CyFunction_USED - if (likely(PyFunction_Check(descr) || __Pyx_CyFunction_Check(descr))) - #else - if (likely(PyFunction_Check(descr))) - #endif #endif { meth_found = 1; @@ -10162,15 +10946,10 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me *method = descr; return 0; } - type_name = __Pyx_PyType_GetName(tp); + type_name = __Pyx_PyType_GetFullyQualifiedName(tp); PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", type_name, name); -#else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(name)); -#endif __Pyx_DECREF_TypeName(type_name); return 0; #else @@ -10211,14 +10990,15 @@ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { Py_ssize_t i, n; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE n = PyTuple_GET_SIZE(bases); #else n = PyTuple_Size(bases); - if (n < 0) return -1; + if (unlikely(n < 0)) return -1; #endif for (i = 1; i < n; i++) { + PyTypeObject *b; #if CYTHON_AVOID_BORROWED_REFS PyObject *b0 = PySequence_GetItem(bases, i); if (!b0) return -1; @@ -10227,23 +11007,11 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #else PyObject *b0 = PyTuple_GetItem(bases, i); if (!b0) return -1; -#endif - PyTypeObject *b; -#if PY_MAJOR_VERSION < 3 - if (PyClass_Check(b0)) - { - PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", - PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - return -1; - } #endif b = (PyTypeObject*) b0; if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE)) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); @@ -10255,7 +11023,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs if (dictoffset == 0) { Py_ssize_t b_dictoffset = 0; -#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY +#if CYTHON_USE_TYPE_SLOTS b_dictoffset = b->tp_dictoffset; #else PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); @@ -10266,7 +11034,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif if (b_dictoffset) { { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "extension type '%.200s' has no __dict__ slot, " "but base type '" __Pyx_FMT_TYPENAME "' has: " @@ -10275,7 +11043,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs type_name, b_name); __Pyx_DECREF_TypeName(b_name); } -#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) +#if !CYTHON_USE_TYPE_SLOTS dictoffset_return: #endif #if CYTHON_AVOID_BORROWED_REFS @@ -10293,8 +11061,18 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif /* PyType_Ready */ +CYTHON_UNUSED static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) { + while (t) { + PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); + if (bases) { + return 1; + } + t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*); + } + return 0; +} static int __Pyx_PyType_Ready(PyTypeObject *t) { -#if CYTHON_USE_TYPE_SPECS || !(CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API) || defined(PYSTON_MAJOR_VERSION) +#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON || defined(PYSTON_MAJOR_VERSION) (void)__Pyx_PyObject_CallMethod0; #if CYTHON_USE_TYPE_SPECS (void)__Pyx_validate_bases_tuple; @@ -10302,10 +11080,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { return PyType_Ready(t); #else int r; + if (!__Pyx_PyType_HasMultipleInheritance(t)) { + return PyType_Ready(t); + } PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset, bases) == -1)) return -1; -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) { int gc_was_enabled; #if PY_VERSION_HEX >= 0x030A00b1 @@ -10314,12 +11095,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #else PyObject *ret, *py_status; PyObject *gc = NULL; - #if PY_VERSION_HEX >= 0x030700a1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) - gc = PyImport_GetModule(__pyx_kp_u_gc); + #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\ + !CYTHON_COMPILING_IN_GRAAL + gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc); #endif - if (unlikely(!gc)) gc = PyImport_Import(__pyx_kp_u_gc); + if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc); if (unlikely(!gc)) return -1; - py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_isenabled); + py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled); if (unlikely(!py_status)) { Py_DECREF(gc); return -1; @@ -10327,7 +11109,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { gc_was_enabled = __Pyx_PyObject_IsTrue(py_status); Py_DECREF(py_status); if (gc_was_enabled > 0) { - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_disable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable); if (unlikely(!ret)) { Py_DECREF(gc); return -1; @@ -10346,7 +11128,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { (void)__Pyx_PyObject_CallMethod0; #endif r = PyType_Ready(t); -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE; #if PY_VERSION_HEX >= 0x030A00b1 if (gc_was_enabled) @@ -10355,7 +11137,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { if (gc_was_enabled) { PyObject *tp, *v, *tb; PyErr_Fetch(&tp, &v, &tb); - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_enable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable); if (likely(ret || r == -1)) { Py_XDECREF(ret); PyErr_Restore(tp, v, tb); @@ -10374,54 +11156,26 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #endif } -/* PyObject_GenericGetAttrNoDict */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject *__Pyx_RaiseGenericGetAttributeError(PyTypeObject *tp, PyObject *attr_name) { - __Pyx_TypeName type_name = __Pyx_PyType_GetName(tp); - PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", - type_name, attr_name); +/* DelItemOnTypeDict */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; #else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(attr_name)); + tp_dict = tp->tp_dict; #endif - __Pyx_DECREF_TypeName(type_name); - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name) { - PyObject *descr; - PyTypeObject *tp = Py_TYPE(obj); - if (unlikely(!PyString_Check(attr_name))) { - return PyObject_GenericGetAttr(obj, attr_name); - } - assert(!tp->tp_dictoffset); - descr = _PyType_Lookup(tp, attr_name); - if (unlikely(!descr)) { - return __Pyx_RaiseGenericGetAttributeError(tp, attr_name); - } - Py_INCREF(descr); - #if PY_MAJOR_VERSION < 3 - if (likely(PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_HAVE_CLASS))) - #endif - { - descrgetfunc f = Py_TYPE(descr)->tp_descr_get; - if (unlikely(f)) { - PyObject *res = f(descr, obj, (PyObject *)tp); - Py_DECREF(descr); - return res; - } - } - return descr; + result = PyDict_DelItem(tp_dict, k); + if (likely(!result)) PyType_Modified(tp); + return result; } -#endif /* SetupReduce */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { int ret; PyObject *name_attr; - name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_n_s_name); + name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name); if (likely(name_attr)) { ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); } else { @@ -10446,18 +11200,18 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { PyObject *setstate_cython = NULL; PyObject *getstate = NULL; #if CYTHON_USE_PYTYPE_LOOKUP - getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_n_s_getstate); + getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_getstate); #else - getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_getstate); + getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_getstate); if (!getstate && PyErr_Occurred()) { goto __PYX_BAD; } #endif if (getstate) { #if CYTHON_USE_PYTYPE_LOOKUP - object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_getstate); + object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); #else - object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_n_s_getstate); + object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); if (!object_getstate && PyErr_Occurred()) { goto __PYX_BAD; } @@ -10467,33 +11221,33 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { } } #if CYTHON_USE_PYTYPE_LOOKUP - object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; + object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; #else - object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; + object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; #endif - reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; + reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; if (reduce_ex == object_reduce_ex) { #if CYTHON_USE_PYTYPE_LOOKUP - object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; + object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; #else - object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; + object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; #endif - reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce); if (unlikely(!reduce)) goto __PYX_BAD; - if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_n_s_reduce_cython)) { - reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_reduce_cython); + reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce); if (unlikely(!reduce)) goto __PYX_BAD; + if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython)) { + reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (likely(reduce_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (reduce == object_reduce || PyErr_Occurred()) { goto __PYX_BAD; } - setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate); + setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate); if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); + if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython)) { + setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (likely(setstate_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (!setstate || PyErr_Occurred()) { goto __PYX_BAD; } @@ -10505,7 +11259,7 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { __PYX_BAD: if (!PyErr_Occurred()) { __Pyx_TypeName type_obj_name = - __Pyx_PyType_GetName((PyTypeObject*)type_obj); + __Pyx_PyType_GetFullyQualifiedName((PyTypeObject*)type_obj); PyErr_Format(PyExc_RuntimeError, "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); __Pyx_DECREF_TypeName(type_obj_name); @@ -10525,15 +11279,14 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { Py_XDECREF(setstate_cython); return ret; } -#endif /* GetVTable */ static void* __Pyx_GetVtable(PyTypeObject *type) { void* ptr; #if CYTHON_COMPILING_IN_LIMITED_API - PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #else - PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #endif if (!ob) goto bad; @@ -10552,67 +11305,46 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { PyObject *module = 0; PyObject *empty_dict = 0; PyObject *empty_list = 0; - #if PY_MAJOR_VERSION < 3 - PyObject *py_import; - py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); - if (unlikely(!py_import)) - goto bad; - if (!from_list) { - empty_list = PyList_New(0); - if (unlikely(!empty_list)) - goto bad; - from_list = empty_list; - } - #endif empty_dict = PyDict_New(); if (unlikely(!empty_dict)) goto bad; - { - #if PY_MAJOR_VERSION >= 3 - if (level == -1) { - if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - #endif - if (!module) { - #if PY_MAJOR_VERSION < 3 - PyObject *py_level = PyInt_FromLong(level); - if (unlikely(!py_level)) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); - Py_DECREF(py_level); - #else + if (level == -1) { + const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); + if (package_sep != (0)) { module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, level); - #endif + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); + if (unlikely(!module)) { + if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) + goto bad; + PyErr_Clear(); + } } + level = 0; + } + if (!module) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); } bad: Py_XDECREF(empty_dict); Py_XDECREF(empty_list); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_import); - #endif return module; } /* ImportDottedModule */ -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts_tuple, Py_ssize_t count) { PyObject *partial_name = NULL, *slice = NULL, *sep = NULL; + Py_ssize_t size; if (unlikely(PyErr_Occurred())) { PyErr_Clear(); } - if (likely(PyTuple_GET_SIZE(parts_tuple) == count)) { +#if CYTHON_ASSUME_SAFE_SIZE + size = PyTuple_GET_SIZE(parts_tuple); +#else + size = PyTuple_Size(parts_tuple); + if (size < 0) goto bad; +#endif + if (likely(size == count)) { partial_name = name; } else { slice = PySequence_GetSlice(parts_tuple, 0, count); @@ -10624,28 +11356,18 @@ static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts partial_name = PyUnicode_Join(sep, slice); } PyErr_Format( -#if PY_MAJOR_VERSION < 3 - PyExc_ImportError, - "No module named '%s'", PyString_AS_STRING(partial_name)); -#else -#if PY_VERSION_HEX >= 0x030600B1 PyExc_ModuleNotFoundError, -#else - PyExc_ImportError, -#endif "No module named '%U'", partial_name); -#endif bad: Py_XDECREF(sep); Py_XDECREF(slice); Py_XDECREF(partial_name); return NULL; } -#endif -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) { PyObject *imported_module; -#if PY_VERSION_HEX < 0x030700A1 || (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) +#if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ + CYTHON_COMPILING_IN_GRAAL PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) return NULL; @@ -10656,17 +11378,21 @@ static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) { #endif return imported_module; } -#endif -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple) { Py_ssize_t i, nparts; +#if CYTHON_ASSUME_SAFE_SIZE nparts = PyTuple_GET_SIZE(parts_tuple); +#else + nparts = PyTuple_Size(parts_tuple); + if (nparts < 0) return NULL; +#endif for (i=1; i < nparts && module; i++) { PyObject *part, *submodule; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS part = PyTuple_GET_ITEM(parts_tuple, i); #else - part = PySequence_ITEM(parts_tuple, i); + part = __Pyx_PySequence_ITEM(parts_tuple, i); + if (!part) return NULL; #endif submodule = __Pyx_PyObject_GetAttrStrNoError(module, part); #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) @@ -10680,20 +11406,7 @@ static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject * } return module; } -#endif static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple) { -#if PY_MAJOR_VERSION < 3 - PyObject *module, *from_list, *star = __pyx_n_s__8; - CYTHON_UNUSED_VAR(parts_tuple); - from_list = PyList_New(1); - if (unlikely(!from_list)) - return NULL; - Py_INCREF(star); - PyList_SET_ITEM(from_list, 0, star); - module = __Pyx_Import(name, from_list, 0); - Py_DECREF(from_list); - return module; -#else PyObject *imported_module; PyObject *module = __Pyx_Import(name, NULL, 0); if (!parts_tuple || unlikely(!module)) @@ -10705,15 +11418,14 @@ static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple } PyErr_Clear(); return __Pyx_ImportDottedModule_WalkParts(module, name, parts_tuple); -#endif } static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030400B1 +#if CYTHON_COMPILING_IN_CPYTHON PyObject *module = __Pyx__ImportDottedModule_Lookup(name); if (likely(module)) { - PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_n_s_spec); + PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_mstate_global->__pyx_n_u_spec); if (likely(spec)) { - PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_n_s_initializing); + PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_mstate_global->__pyx_n_u_initializing); if (likely(!unsafe || !__Pyx_PyObject_IsTrue(unsafe))) { Py_DECREF(spec); spec = NULL; @@ -10735,19 +11447,68 @@ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); + return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); +} + +/* dict_setdefault */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, + int is_safe_type) { + PyObject* value; + CYTHON_MAYBE_UNUSED_VAR(is_safe_type); +#if CYTHON_COMPILING_IN_LIMITED_API + value = PyObject_CallMethod(d, "setdefault", "OO", key, default_value); +#elif PY_VERSION_HEX >= 0x030d0000 + PyDict_SetDefaultRef(d, key, default_value, &value); +#else + value = PyDict_SetDefault(d, key, default_value); + if (unlikely(!value)) return NULL; + Py_INCREF(value); +#endif + return value; } /* FetchCommonType */ +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases); + if (result && metaclass) { + PyObject *old_tp = (PyObject*)Py_TYPE(result); + Py_INCREF((PyObject*)metaclass); +#if __PYX_LIMITED_VERSION_HEX >= 0x03090000 + Py_SET_TYPE(result, metaclass); +#else + result->ob_type = metaclass; +#endif + Py_DECREF(old_tp); + } + return result; +} +#else +#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b) +#endif static int __Pyx_VerifyCachedType(PyObject *cached_type, const char *name, - Py_ssize_t basicsize, Py_ssize_t expected_basicsize) { + Py_ssize_t basicsize; if (!PyType_Check(cached_type)) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s is not a type object", name); return -1; } + if (expected_basicsize == 0) { + return 0; // size is inherited, nothing useful to check + } +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_basicsize; + py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); + if (unlikely(!py_basicsize)) return -1; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = NULL; + if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) return -1; +#else + basicsize = ((PyTypeObject*) cached_type)->tp_basicsize; +#endif if (basicsize != expected_basicsize) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s has the wrong size, try recompiling", @@ -10756,80 +11517,51 @@ static int __Pyx_VerifyCachedType(PyObject *cached_type, } return 0; } -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) { - PyObject* abi_module; - const char* object_name; - PyTypeObject *cached_type = NULL; - abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - object_name = strrchr(type->tp_name, '.'); - object_name = object_name ? object_name+1 : type->tp_name; - cached_type = (PyTypeObject*) PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - if (__Pyx_VerifyCachedType( - (PyObject *)cached_type, - object_name, - cached_type->tp_basicsize, - type->tp_basicsize) < 0) { - goto bad; - } - goto done; - } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); - if (PyType_Ready(type) < 0) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, (PyObject *)type) < 0) - goto bad; - Py_INCREF(type); - cached_type = type; -done: - Py_DECREF(abi_module); - return cached_type; -bad: - Py_XDECREF(cached_type); - cached_type = NULL; - goto done; -} -#else -static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases) { - PyObject *abi_module, *cached_type = NULL; +static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name; + int get_item_ref_result; const char* object_name = strrchr(spec->name, '.'); object_name = object_name ? object_name+1 : spec->name; + py_object_name = PyUnicode_FromString(object_name); + if (!py_object_name) return NULL; abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - cached_type = PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - Py_ssize_t basicsize; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); - if (unlikely(!py_basicsize)) goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad; -#else - basicsize = likely(PyType_Check(cached_type)) ? ((PyTypeObject*) cached_type)->tp_basicsize : -1; -#endif + if (!abi_module) goto done; + abi_module_dict = PyModule_GetDict(abi_module); + if (!abi_module_dict) goto done; + get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type); + if (get_item_ref_result == 1) { if (__Pyx_VerifyCachedType( cached_type, object_name, - basicsize, spec->basicsize) < 0) { goto bad; } goto done; + } else if (unlikely(get_item_ref_result == -1)) { + goto bad; } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); CYTHON_UNUSED_VAR(module); - cached_type = __Pyx_PyType_FromModuleAndSpec(abi_module, spec, bases); + cached_type = __Pyx_PyType_FromMetaclass(metaclass, abi_module, spec, bases); if (unlikely(!cached_type)) goto bad; if (unlikely(__Pyx_fix_up_extension_type_from_spec(spec, (PyTypeObject *) cached_type) < 0)) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, cached_type) < 0) goto bad; + new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type, 1); + if (unlikely(new_cached_type != cached_type)) { + if (unlikely(!new_cached_type)) goto bad; + Py_DECREF(cached_type); + cached_type = new_cached_type; + if (__Pyx_VerifyCachedType( + cached_type, + object_name, + spec->basicsize) < 0) { + goto bad; + } + goto done; + } else { + Py_DECREF(new_cached_type); + } done: - Py_DECREF(abi_module); + Py_XDECREF(abi_module); + Py_DECREF(py_object_name); assert(cached_type == NULL || PyType_Check(cached_type)); return (PyTypeObject *) cached_type; bad: @@ -10837,10 +11569,71 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec cached_type = NULL; goto done; } + +/* CommonTypesMetaclass */ +PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { + return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); +} +static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { + {"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL}, + {0, 0, 0, 0, 0} +}; +static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = { + {Py_tp_getset, (void *)__pyx_CommonTypesMetaclass_getset}, + {0, 0} +}; +static PyType_Spec __pyx_CommonTypesMetaclass_spec = { + __PYX_TYPE_MODULE_PREFIX "_common_types_metatype", + 0, + 0, +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | + Py_TPFLAGS_DISALLOW_INSTANTIATION | +#endif + Py_TPFLAGS_DEFAULT, + __pyx_CommonTypesMetaclass_slots +}; +static int __pyx_CommonTypesMetaclass_init(PyObject *module) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + PyObject *bases = PyTuple_Pack(1, &PyType_Type); + if (unlikely(!bases)) { + return -1; + } + mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases); + if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) { + return -1; + } + return 0; +} + +/* PyMethodNew */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *result; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + { + PyObject *args[] = {func, self}; + result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL); + } + #else + result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL); + #endif + return result; +} +#else +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + return PyMethod_New(func, self); +} #endif /* PyVectorcallFastCallDict */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { PyObject *res = NULL; @@ -10851,7 +11644,12 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector size_t j; PyObject *key, *value; unsigned long keys_are_strings; + #if !CYTHON_ASSUME_SAFE_SIZE + Py_ssize_t nkw = PyDict_Size(kw); + if (unlikely(nkw == -1)) return NULL; + #else Py_ssize_t nkw = PyDict_GET_SIZE(kw); + #endif newargs = (PyObject **)PyMem_Malloc((nargs + (size_t)nkw) * sizeof(args[0])); if (unlikely(newargs == NULL)) { PyErr_NoMemory(); @@ -10867,10 +11665,19 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector pos = i = 0; keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS; while (PyDict_Next(kw, &pos, &key, &value)) { - keys_are_strings &= Py_TYPE(key)->tp_flags; + keys_are_strings &= + #if CYTHON_COMPILING_IN_LIMITED_API + PyType_GetFlags(Py_TYPE(key)); + #else + Py_TYPE(key)->tp_flags; + #endif Py_INCREF(key); Py_INCREF(value); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0)) goto cleanup; + #else PyTuple_SET_ITEM(kwnames, i, key); + #endif kwvalues[i] = value; i++; } @@ -10888,16 +11695,29 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector } static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { - if (likely(kw == NULL) || PyDict_GET_SIZE(kw) == 0) { + Py_ssize_t kw_size = + likely(kw == NULL) ? + 0 : +#if !CYTHON_ASSUME_SAFE_SIZE + PyDict_Size(kw); +#else + PyDict_GET_SIZE(kw); +#endif + if (kw_size == 0) { return vc(func, args, nargs, NULL); } +#if !CYTHON_ASSUME_SAFE_SIZE + else if (unlikely(kw_size == -1)) { + return NULL; + } +#endif return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw); } #endif /* CythonFunctionShared */ #if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func, void (*cfunc)(void)) { if (__Pyx_CyFunction_Check(func)) { return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; } else if (PyCFunction_Check(func)) { @@ -10905,8 +11725,25 @@ static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) } return 0; } +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) { + int result; + PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func); + if (unlikely(!newFunc)) { + PyErr_Clear(); // It's only an optimization, so don't throw an error + return 0; + } + result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc); + Py_DECREF(newFunc); + return result; + } + return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc); +} #else -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if (PyMethod_Check(func)) { + func = PyMethod_GET_FUNCTION(func); + } return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; } #endif @@ -10922,20 +11759,15 @@ static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* #endif } static PyObject * -__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) +__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); if (unlikely(!op->func_doc)) return NULL; #else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { -#if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#else - op->func_doc = PyString_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#endif if (unlikely(op->func_doc == NULL)) return NULL; } else { @@ -10947,6 +11779,15 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(op->func_doc); return op->func_doc; } +static PyObject * +__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { + PyObject *result; + CYTHON_UNUSED_VAR(closure); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_doc_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -10955,20 +11796,19 @@ __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *cont value = Py_None; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_doc, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_name = PyObject_GetAttrString(op->func, "__name__"); -#elif PY_MAJOR_VERSION >= 3 - op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else - op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); + op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #endif if (unlikely(op->func_name == NULL)) return NULL; @@ -10976,53 +11816,60 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_name); return op->func_name; } +static PyObject * +__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +{ + PyObject *result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_name_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__name__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_name, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * __Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); Py_INCREF(op->func_qualname); - return op->func_qualname; + result = op->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static int __Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__qualname__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_qualname, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_dict_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_dict == NULL)) { op->func_dict = PyDict_New(); if (unlikely(op->func_dict == NULL)) @@ -11031,6 +11878,16 @@ __Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_dict); return op->func_dict; } +static PyObject * +__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +{ + CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_dict_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -11046,7 +11903,9 @@ __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *con return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_dict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * @@ -11107,13 +11966,14 @@ __Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value, void PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__defaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_tuple, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_defaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_tuple; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -11125,6 +11985,15 @@ __Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_defaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -11138,13 +12007,14 @@ __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, voi PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__kwdefaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_kwdefaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_kwdict; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -11156,6 +12026,15 @@ __Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_kwdefaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -11167,13 +12046,14 @@ __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, vo return -1; } Py_XINCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_annotations, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->func_annotations; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { result = PyDict_New(); if (unlikely(!result)) return NULL; @@ -11183,16 +12063,19 @@ __Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { return result; } static PyObject * -__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { - int is_coroutine; +__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; CYTHON_UNUSED_VAR(context); - if (op->func_is_coroutine) { - return __Pyx_NewRef(op->func_is_coroutine); - } - is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; -#if PY_VERSION_HEX >= 0x03050000 + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_annotations_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) { + int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; if (is_coroutine) { - PyObject *module, *fromlist, *marker = __pyx_n_s_is_coroutine; + PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine; fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); @@ -11205,20 +12088,68 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { return NULL; } #endif - module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); + module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; - op->func_is_coroutine = __Pyx_PyObject_GetAttrStr(module, marker); + is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker); Py_DECREF(module); - if (likely(op->func_is_coroutine)) { - return __Pyx_NewRef(op->func_is_coroutine); + if (likely(is_coroutine_value)) { + return is_coroutine_value; } ignore: PyErr_Clear(); } + return __Pyx_PyBool_FromLong(is_coroutine); +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; + CYTHON_UNUSED_VAR(context); + if (op->func_is_coroutine) { + return __Pyx_NewRef(op->func_is_coroutine); + } + result = __Pyx_CyFunction_get_is_coroutine_value(op); + if (unlikely(!result)) + return NULL; + __Pyx_BEGIN_CRITICAL_SECTION(op); + if (op->func_is_coroutine) { + Py_DECREF(result); + result = __Pyx_NewRef(op->func_is_coroutine); + } else { + op->func_is_coroutine = __Pyx_NewRef(result); + } + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static void __Pyx_CyFunction_raise_argument_count_error(__pyx_CyFunctionObject *func, const char* message, Py_ssize_t size) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, message, size); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + name, message, size); +#endif +} +static void __Pyx_CyFunction_raise_type_error(__pyx_CyFunctionObject *func, const char* message) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s", + py_name, message); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s", + name, message); #endif - op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); - return __Pyx_NewRef(op->func_is_coroutine); } #if CYTHON_COMPILING_IN_LIMITED_API static PyObject * @@ -11233,24 +12164,24 @@ __Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *c } #endif static PyGetSetDef __pyx_CyFunction_getsets[] = { - {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, - {(char *) "func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, - {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, - {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, + {"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, + {"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, + {"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, + {"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, #if CYTHON_COMPILING_IN_LIMITED_API {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, #endif @@ -11258,23 +12189,19 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { }; static PyMemberDef __pyx_CyFunction_members[] = { #if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, + {"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, #endif -#if CYTHON_USE_TYPE_SPECS - {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, + {"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL -#if CYTHON_BACKPORT_VECTORCALL - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API + {"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else -#if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, -#endif + {"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif -#endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, + {"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, #endif #endif {0, 0, 0, 0, 0} @@ -11282,19 +12209,19 @@ static PyMemberDef __pyx_CyFunction_members[] = { static PyObject * __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, PyObject *args) { + PyObject *result = NULL; CYTHON_UNUSED_VAR(args); -#if PY_MAJOR_VERSION >= 3 + __Pyx_BEGIN_CRITICAL_SECTION(m); Py_INCREF(m->func_qualname); - return m->func_qualname; -#else - return PyString_FromString(((PyCFunctionObject*)m)->m_ml->ml_name); -#endif + result = m->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) @@ -11336,8 +12263,6 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef * Py_INCREF(op->func_globals); Py_XINCREF(code); op->func_code = code; - op->defaults_pyobjects = 0; - op->defaults_size = 0; op->defaults = NULL; op->defaults_tuple = NULL; op->defaults_kwdict = NULL; @@ -11399,14 +12324,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) Py_CLEAR(m->defaults_kwdict); Py_CLEAR(m->func_annotations); Py_CLEAR(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_XDECREF(pydefaults[i]); - PyObject_Free(m->defaults); - m->defaults = NULL; - } + Py_CLEAR(m->defaults); return 0; } static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m) @@ -11423,6 +12341,10 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) } static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { + { + int e = __Pyx_call_type_traverse((PyObject*)m, 1, visit, arg); + if (e) return e; + } Py_VISIT(m->func_closure); #if CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(m->func); @@ -11430,40 +12352,33 @@ static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, Py_VISIT(((PyCFunctionObject*)m)->m_module); #endif Py_VISIT(m->func_dict); - Py_VISIT(m->func_name); - Py_VISIT(m->func_qualname); + __Pyx_VISIT_CONST(m->func_name); + __Pyx_VISIT_CONST(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); - Py_VISIT(m->func_code); + __Pyx_VISIT_CONST(m->func_code); #if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); #endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_VISIT(pydefaults[i]); - } + Py_VISIT(m->defaults); return 0; } static PyObject* __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) { -#if PY_MAJOR_VERSION >= 3 - return PyUnicode_FromFormat("", + PyObject *repr; + __Pyx_BEGIN_CRITICAL_SECTION(op); + repr = PyUnicode_FromFormat("", op->func_qualname, (void *)op); -#else - return PyString_FromFormat("", - PyString_AsString(op->func_qualname), (void *)op); -#endif + __Pyx_END_CRITICAL_SECTION(); + return repr; } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { #if CYTHON_COMPILING_IN_LIMITED_API PyObject *f = ((__pyx_CyFunctionObject*)func)->func; - PyObject *py_name = NULL; PyCFunction meth; int flags; meth = PyCFunction_GetFunction(f); @@ -11482,10 +12397,10 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*meth)(self, arg); break; case METH_VARARGS | METH_KEYWORDS: - return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); + return (*(PyCFunctionWithKeywords)(void(*)(void))meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -11493,24 +12408,15 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif if (likely(size == 0)) return (*meth)(self, NULL); -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes no arguments", size); return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -11529,18 +12435,9 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes exactly one argument", size); return NULL; } break; @@ -11548,16 +12445,8 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", - py_name); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", - f->m_ml->ml_name); -#endif + __Pyx_CyFunction_raise_type_error( + (__pyx_CyFunctionObject*)func, "takes no keyword arguments"); return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { @@ -11574,10 +12463,10 @@ static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *a static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func; -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc); if (vc) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw); #else (void) &__Pyx_PyVectorcall_FastCallDict; @@ -11589,11 +12478,11 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE argc = PyTuple_GET_SIZE(args); #else argc = PyTuple_Size(args); - if (unlikely(!argc) < 0) return NULL; + if (unlikely(argc < 0)) return NULL; #endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) @@ -11601,14 +12490,9 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P self = PyTuple_GetItem(args, 0); if (unlikely(!self)) { Py_DECREF(new_args); -#if PY_MAJOR_VERSION > 2 PyErr_Format(PyExc_TypeError, "unbound method %.200S() needs an argument", cyfunc->func_qualname); -#else - PyErr_SetString(PyExc_TypeError, - "unbound method needs an argument"); -#endif return NULL; } result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw); @@ -11618,21 +12502,21 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P } return result; } -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames) { int ret = 0; if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) { if (unlikely(nargs < 1)) { - PyErr_Format(PyExc_TypeError, "%.200s() needs an argument", - ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + __Pyx_CyFunction_raise_type_error( + cyfunc, "needs an argument"); return -1; } ret = 1; } - if (unlikely(kwnames) && unlikely(PyTuple_GET_SIZE(kwnames))) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no keyword arguments", ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) { + __Pyx_CyFunction_raise_type_error( + cyfunc, "takes no keyword arguments"); return -1; } return ret; @@ -11640,13 +12524,18 @@ static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionO static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -11654,29 +12543,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 0)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes no arguments", nargs); return NULL; } - return def->ml_meth(self, NULL); + return meth(self, NULL); } static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -11684,29 +12582,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 1)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes exactly one argument", nargs); return NULL; } - return def->ml_meth(self, args[0]); + return meth(self, args[0]); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -11714,17 +12621,21 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; PyTypeObject *cls = (PyTypeObject *) __Pyx_CyFunction_GetClassObj(cyfunc); #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; @@ -11732,6 +12643,12 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -11739,146 +12656,65 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCMethod)(void(*)(void))def->ml_meth)(self, cls, args, (size_t)nargs, kwnames); + return ((__Pyx_PyCMethod)(void(*)(void))meth)(self, cls, args, (size_t)nargs, kwnames); } #endif -#if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_CyFunctionType_slots[] = { {Py_tp_dealloc, (void *)__Pyx_CyFunction_dealloc}, {Py_tp_repr, (void *)__Pyx_CyFunction_repr}, {Py_tp_call, (void *)__Pyx_CyFunction_CallAsMethod}, {Py_tp_traverse, (void *)__Pyx_CyFunction_traverse}, {Py_tp_clear, (void *)__Pyx_CyFunction_clear}, - {Py_tp_methods, (void *)__pyx_CyFunction_methods}, - {Py_tp_members, (void *)__pyx_CyFunction_members}, - {Py_tp_getset, (void *)__pyx_CyFunction_getsets}, - {Py_tp_descr_get, (void *)__Pyx_PyMethod_New}, - {0, 0}, -}; -static PyType_Spec __pyx_CyFunctionType_spec = { - __PYX_TYPE_MODULE_PREFIX "cython_function_or_method", - sizeof(__pyx_CyFunctionObject), - 0, -#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR - Py_TPFLAGS_METHOD_DESCRIPTOR | -#endif -#if (defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL) - _Py_TPFLAGS_HAVE_VECTORCALL | -#endif - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - __pyx_CyFunctionType_slots + {Py_tp_methods, (void *)__pyx_CyFunction_methods}, + {Py_tp_members, (void *)__pyx_CyFunction_members}, + {Py_tp_getset, (void *)__pyx_CyFunction_getsets}, + {Py_tp_descr_get, (void *)__Pyx_PyMethod_New}, + {0, 0}, }; -#else -static PyTypeObject __pyx_CyFunctionType_type = { - PyVarObject_HEAD_INIT(0, 0) +static PyType_Spec __pyx_CyFunctionType_spec = { __PYX_TYPE_MODULE_PREFIX "cython_function_or_method", sizeof(__pyx_CyFunctionObject), 0, - (destructor) __Pyx_CyFunction_dealloc, -#if !CYTHON_METH_FASTCALL - 0, -#elif CYTHON_BACKPORT_VECTORCALL - (printfunc)offsetof(__pyx_CyFunctionObject, func_vectorcall), -#else - offsetof(PyCFunctionObject, vectorcall), -#endif - 0, - 0, -#if PY_MAJOR_VERSION < 3 - 0, -#else - 0, -#endif - (reprfunc) __Pyx_CyFunction_repr, - 0, - 0, - 0, - 0, - __Pyx_CyFunction_CallAsMethod, - 0, - 0, - 0, - 0, #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL +#if defined(Py_TPFLAGS_HAVE_VECTORCALL) + Py_TPFLAGS_HAVE_VECTORCALL | +#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL) _Py_TPFLAGS_HAVE_VECTORCALL | #endif - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - 0, - (traverseproc) __Pyx_CyFunction_traverse, - (inquiry) __Pyx_CyFunction_clear, - 0, -#if PY_VERSION_HEX < 0x030500A0 - offsetof(__pyx_CyFunctionObject, func_weakreflist), -#else - offsetof(PyCFunctionObject, m_weakreflist), -#endif - 0, - 0, - __pyx_CyFunction_methods, - __pyx_CyFunction_members, - __pyx_CyFunction_getsets, - 0, - 0, - __Pyx_PyMethod_New, - 0, - offsetof(__pyx_CyFunctionObject, func_dict), - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, -#if PY_VERSION_HEX >= 0x030400a1 - 0, -#endif -#if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, -#endif -#if __PYX_NEED_TP_PRINT_SLOT - 0, -#endif -#if PY_VERSION_HEX >= 0x030C0000 - 0, -#endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, +#endif // CYTHON_METH_FASTCALL +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | #endif + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, + __pyx_CyFunctionType_slots }; -#endif static int __pyx_CyFunction_init(PyObject *module) { -#if CYTHON_USE_TYPE_SPECS - __pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec(module, &__pyx_CyFunctionType_spec, NULL); -#else - CYTHON_UNUSED_VAR(module); - __pyx_CyFunctionType = __Pyx_FetchCommonType(&__pyx_CyFunctionType_type); -#endif - if (unlikely(__pyx_CyFunctionType == NULL)) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec( + mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL); + if (unlikely(mstate->__pyx_CyFunctionType == NULL)) { return -1; } return 0; } -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *func, size_t size, int pyobjects) { +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) { __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults = PyObject_Malloc(size); + m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL); // _PyObject_New(defaults_type); if (unlikely(!m->defaults)) - return PyErr_NoMemory(); - memset(m->defaults, 0, size); - m->defaults_pyobjects = pyobjects; - m->defaults_size = size; + return NULL; return m->defaults; } static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) { @@ -11901,7 +12737,7 @@ static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, Py static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { PyObject *op = __Pyx_CyFunction_Init( - PyObject_GC_New(__pyx_CyFunctionObject, __pyx_CyFunctionType), + PyObject_GC_New(__pyx_CyFunctionObject, __pyx_mstate_global->__pyx_CyFunctionType), ml, flags, qualname, closure, module, globals, code ); if (likely(op)) { @@ -11911,7 +12747,7 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qual } /* CLineInTraceback */ -#ifndef CYTHON_CLINE_IN_TRACEBACK +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { PyObject *use_cline; PyObject *ptype, *pvalue, *ptraceback; @@ -11919,22 +12755,26 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { PyObject **cython_runtime_dict; #endif CYTHON_MAYBE_UNUSED_VAR(tstate); - if (unlikely(!__pyx_cython_runtime)) { + if (unlikely(!__pyx_mstate_global->__pyx_cython_runtime)) { return c_line; } __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); #if CYTHON_COMPILING_IN_CPYTHON - cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_mstate_global->__pyx_cython_runtime); if (likely(cython_runtime_dict)) { + __Pyx_BEGIN_CRITICAL_SECTION(*cython_runtime_dict); __PYX_PY_DICT_LOOKUP_IF_MODIFIED( use_cline, *cython_runtime_dict, - __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) + __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback)) + Py_XINCREF(use_cline); + __Pyx_END_CRITICAL_SECTION(); } else #endif { - PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback); if (use_cline_obj) { use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_INCREF(use_cline); Py_DECREF(use_cline_obj); } else { PyErr_Clear(); @@ -11943,18 +12783,18 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { } if (!use_cline) { c_line = 0; - (void) PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + (void) PyObject_SetAttr(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False); } else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { c_line = 0; } + Py_XDECREF(use_cline); __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); return c_line; } #endif /* CodeObjectCache */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { int start = 0, mid = 0, end = count - 1; if (end >= 0 && code_line > entries[end].code_line) { @@ -11976,70 +12816,109 @@ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int co return mid + 1; } } -static PyCodeObject *__pyx_find_code_object(int code_line) { - PyCodeObject* code_object; +static __Pyx_CachedCodeObjectType *__pyx__find_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line) { + __Pyx_CachedCodeObjectType* code_object; int pos; - if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { + if (unlikely(!code_line) || unlikely(!code_cache->entries)) { return NULL; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) { return NULL; } - code_object = __pyx_code_cache.entries[pos].code_object; + code_object = code_cache->entries[pos].code_object; Py_INCREF(code_object); return code_object; } -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__find_code_object; + return NULL; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just miss. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count); + if (old_count < 0) { + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); + return NULL; + } +#endif + __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); +#endif + return result; +#endif +} +static void __pyx__insert_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line, __Pyx_CachedCodeObjectType* code_object) +{ int pos, i; - __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; + __Pyx_CodeObjectCacheEntry* entries = code_cache->entries; if (unlikely(!code_line)) { return; } if (unlikely(!entries)) { entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); if (likely(entries)) { - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = 64; - __pyx_code_cache.count = 1; + code_cache->entries = entries; + code_cache->max_count = 64; + code_cache->count = 1; entries[0].code_line = code_line; entries[0].code_object = code_object; Py_INCREF(code_object); } return; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { - PyCodeObject* tmp = entries[pos].code_object; + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) { + __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object; entries[pos].code_object = code_object; + Py_INCREF(code_object); Py_DECREF(tmp); return; } - if (__pyx_code_cache.count == __pyx_code_cache.max_count) { - int new_max = __pyx_code_cache.max_count + 64; + if (code_cache->count == code_cache->max_count) { + int new_max = code_cache->max_count + 64; entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); + code_cache->entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); if (unlikely(!entries)) { return; } - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = new_max; + code_cache->entries = entries; + code_cache->max_count = new_max; } - for (i=__pyx_code_cache.count; i>pos; i--) { + for (i=code_cache->count; i>pos; i--) { entries[i] = entries[i-1]; } entries[pos].code_line = code_line; entries[pos].code_object = code_object; - __pyx_code_cache.count++; + code_cache->count++; Py_INCREF(code_object); } +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__insert_code_object; + return; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just fail. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type expected = 0; + if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) { + return; + } #endif + __pyx__insert_code_object(code_cache, code_line, code_object); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN); +#endif +#endif +} /* AddTraceback */ #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -12053,35 +12932,12 @@ static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; replace = PyObject_GetAttrString(code, "replace"); if (likely(replace)) { - PyObject *result; - result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict); Py_DECREF(replace); return result; } PyErr_Clear(); - #if __PYX_LIMITED_VERSION_HEX < 0x030780000 - { - PyObject *compiled = NULL, *result = NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; - compiled = Py_CompileString( - "out = type(code)(\n" - " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" - " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" - " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" - " code.co_lnotab)\n", "", Py_file_input); - if (!compiled) return NULL; - result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); - Py_DECREF(compiled); - if (!result) PyErr_Print(); - Py_DECREF(result); - result = PyDict_GetItemString(scratch_dict, "out"); - if (result) Py_INCREF(result); - return result; - } - #else return NULL; - #endif } static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { @@ -12094,20 +12950,26 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); - code_object = Py_CompileString("_getframe()", filename, Py_eval_input); - if (unlikely(!code_object)) goto bad; - py_py_line = PyLong_FromLong(py_line); - if (unlikely(!py_py_line)) goto bad; - py_funcname = PyUnicode_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - dict = PyDict_New(); - if (unlikely(!dict)) goto bad; - { - PyObject *old_code_object = code_object; - code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); - Py_DECREF(old_code_object); + code_object = __pyx_find_code_object(c_line ? -c_line : py_line); + if (!code_object) { + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + __pyx_insert_code_object(c_line ? -c_line : py_line, code_object); + } else { + dict = PyDict_New(); } - if (unlikely(!code_object)) goto bad; getframe = PySys_GetObject("_getframe"); if (unlikely(!getframe)) goto bad; if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; @@ -12133,58 +12995,17 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( int py_line, const char *filename) { PyCodeObject *py_code = NULL; PyObject *py_funcname = NULL; - #if PY_MAJOR_VERSION < 3 - PyObject *py_srcfile = NULL; - py_srcfile = PyString_FromString(filename); - if (!py_srcfile) goto bad; - #endif if (c_line) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - #else py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); if (!py_funcname) goto bad; funcname = PyUnicode_AsUTF8(py_funcname); if (!funcname) goto bad; - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - if (!py_funcname) goto bad; - #endif } - #if PY_MAJOR_VERSION < 3 - py_code = __Pyx_PyCode_New( - 0, - 0, - 0, - 0, - 0, - 0, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - py_line, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - Py_DECREF(py_srcfile); - #else py_code = PyCode_NewEmpty(filename, funcname, py_line); - #endif Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_srcfile); - #endif return NULL; } static void __Pyx_AddTraceback(const char *funcname, int c_line, @@ -12215,7 +13036,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, py_frame = PyFrame_New( tstate, /*PyThreadState *tstate,*/ py_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); if (!py_frame) goto bad; @@ -12250,7 +13071,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, } /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12262,17 +13083,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(int) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(int) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(int) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -12280,31 +13101,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(int), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -12314,7 +13142,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { } /* CIntFromPy */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12324,256 +13152,237 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(int) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (int) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + int val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (int) -1; + val = __Pyx_PyLong_As_int(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(int) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(int) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(int) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) + if ((sizeof(int) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + int val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (int) -1; + assert(PyLong_CheckExact(v)); } { - int val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (int) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (int) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (int) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (int) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (int) -1; } - return (int) -1; + is_negative = result == 1; } - } else { - int val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (int) -1; - val = __Pyx_PyInt_As_int(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = v; + } + v = NULL; + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((int) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (int) -1; return val; } raise_overflow: @@ -12587,23 +13396,46 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } /* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 static __Pyx_TypeName -__Pyx_PyType_GetName(PyTypeObject* tp) +__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) { - PyObject *name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_n_s_name); - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { - PyErr_Clear(); - Py_XDECREF(name); - name = __Pyx_NewRef(__pyx_n_s__14); + PyObject *module = NULL, *name = NULL, *result = NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_qualname); + #else + name = PyType_GetQualName(tp); + #endif + if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; + module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_module); + if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; + if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { + result = name; + name = NULL; + goto done; + } + result = PyUnicode_FromFormat("%U.%U", module, name); + if (unlikely(result == NULL)) goto bad; + done: + Py_XDECREF(name); + Py_XDECREF(module); + return result; + bad: + PyErr_Clear(); + if (name) { + result = name; + name = NULL; + } else { + result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__5); } - return name; + goto done; } #endif /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12615,17 +13447,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(long) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(long) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(long) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -12633,31 +13465,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -12667,7 +13506,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } /* CIntFromPy */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12677,256 +13516,237 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(long) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (long) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + long val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (long) -1; + val = __Pyx_PyLong_As_long(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(long) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(long) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(long) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) + if ((sizeof(long) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + long val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (long) -1; + assert(PyLong_CheckExact(v)); } { - long val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (long) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (long) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (long) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (long) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (long) -1; } - return (long) -1; + is_negative = result == 1; } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (long) -1; - val = __Pyx_PyInt_As_long(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = v; + } + v = NULL; + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((long) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (long) -1; return val; } raise_overflow: @@ -12980,29 +13800,6 @@ static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, } return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b); } -#if PY_MAJOR_VERSION == 2 -static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { - PyObject *exception, *value, *tb; - int res; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&exception, &value, &tb); - res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - if (!res) { - res = PyObject_IsSubclass(err, exc_type2); - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - } - __Pyx_ErrRestore(exception, value, tb); - return res; -} -#else static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { if (exc_type1) { return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2); @@ -13010,21 +13807,15 @@ static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); } } -#endif static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; assert(PyExceptionClass_Check(exc_type)); n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; i= 0x030B00A4 +#if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 return Py_Version & ~0xFFUL; #else - const char* rt_version = Py_GetVersion(); - unsigned long version = 0; - unsigned long factor = 0x01000000UL; - unsigned int digit = 0; - int i = 0; - while (factor) { - while ('0' <= rt_version[i] && rt_version[i] <= '9') { - digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + static unsigned long __Pyx_cached_runtime_version = 0; + if (__Pyx_cached_runtime_version == 0) { + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; + } + version += factor * digit; + if (rt_version[i] != '.') + break; + digit = 0; + factor >>= 8; ++i; } - version += factor * digit; - if (rt_version[i] != '.') - break; - digit = 0; - factor >>= 8; - ++i; + __Pyx_cached_runtime_version = version; } - return version; + return __Pyx_cached_runtime_version; #endif } + +/* CheckBinaryVersion */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { const unsigned long MAJOR_MINOR = 0xFFFF0000UL; if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) @@ -13103,19 +13900,24 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt } /* FunctionImport */ -#ifndef __PYX_HAVE_RT_ImportFunction_3_0_10 -#define __PYX_HAVE_RT_ImportFunction_3_0_10 -static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { +#ifndef __PYX_HAVE_RT_ImportFunction_3_1_2 +#define __PYX_HAVE_RT_ImportFunction_3_1_2 +static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { PyObject *d = 0; PyObject *cobj = 0; union { void (*fp)(void); void *p; } tmp; - d = PyObject_GetAttrString(module, (char *)"__pyx_capi__"); + d = PyObject_GetAttrString(module, "__pyx_capi__"); if (!d) goto bad; +#if (defined(Py_LIMITED_API) && Py_LIMITED_API >= 0x030d0000) || (!defined(Py_LIMITED_API) && PY_VERSION_HEX >= 0x030d0000) + PyDict_GetItemStringRef(d, funcname, &cobj); +#else cobj = PyDict_GetItemString(d, funcname); + Py_XINCREF(cobj); +#endif if (!cobj) { PyErr_Format(PyExc_ImportError, "%.200s does not export expected C function %.200s", @@ -13133,52 +13935,174 @@ static int __Pyx_ImportFunction_3_0_10(PyObject *module, const char *funcname, v if (!(*f)) goto bad; Py_DECREF(d); + Py_DECREF(cobj); return 0; bad: Py_XDECREF(d); + Py_XDECREF(cobj); return -1; } #endif -/* InitStrings */ -#if PY_MAJOR_VERSION >= 3 -static int __Pyx_InitString(__Pyx_StringTabEntry t, PyObject **str) { - if (t.is_unicode | t.is_str) { - if (t.intern) { - *str = PyUnicode_InternFromString(t.s); - } else if (t.encoding) { - *str = PyUnicode_Decode(t.s, t.n - 1, t.encoding, NULL); +/* NewCodeObj */ +#if CYTHON_COMPILING_IN_LIMITED_API + static PyObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; + PyObject *type, *value, *traceback; + PyErr_Fetch(&type, &value, &traceback); + #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); } else { - *str = PyUnicode_FromStringAndSize(t.s, t.n - 1); + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - } else { - *str = PyBytes_FromStringAndSize(t.s, t.n - 1); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); + if (type) { + PyErr_Restore(type, value, traceback); + } + return result; } - if (!*str) - return -1; - if (PyObject_Hash(*str) == -1) - return -1; - return 0; -} +#elif PY_VERSION_HEX >= 0x030B0000 + static PyCodeObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes); + return result; + } +#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#else + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #endif -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION >= 3 - __Pyx_InitString(*t, t->p); - #else +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +) { + PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL, *line_table_bytes = NULL; + Py_ssize_t var_count = (Py_ssize_t) descr.nlocals; + PyObject *varnames_tuple = PyTuple_New(var_count); + if (unlikely(!varnames_tuple)) return NULL; + for (Py_ssize_t i=0; i < var_count; i++) { + Py_INCREF(varnames[i]); + if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0)) goto done; + } + #if CYTHON_COMPILING_IN_LIMITED_API + varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple); + if (!varnames_tuple_dedup) { + if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0)) goto done; + varnames_tuple_dedup = varnames_tuple; + } + #else + varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple); + if (unlikely(!varnames_tuple_dedup)) goto done; + #endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(varnames_tuple_dedup); + #endif + if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL + && !CYTHON_COMPILING_IN_GRAAL) { + line_table_bytes = PyBytes_FromStringAndSize(line_table, descr.line_table_length); + if (unlikely(!line_table_bytes)) goto done; + Py_ssize_t code_len = (descr.line_table_length * 2 + 4) & ~3; + code_bytes = PyBytes_FromStringAndSize(NULL, code_len); + if (unlikely(!code_bytes)) goto done; + char* c_code_bytes = PyBytes_AsString(code_bytes); + if (unlikely(!c_code_bytes)) goto done; + memset(c_code_bytes, 0, (size_t) code_len); + } + code_obj = (PyObject*) __Pyx__PyCode_New( + (int) descr.argcount, + (int) descr.num_posonly_args, + (int) descr.num_kwonly_args, + (int) descr.nlocals, + 0, + (int) descr.flags, + code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + varnames_tuple_dedup, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + filename, + funcname, + (int) descr.first_line, + (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table_bytes) ? line_table_bytes : __pyx_mstate_global->__pyx_empty_bytes + ); +done: + Py_XDECREF(code_bytes); + Py_XDECREF(line_table_bytes); + #if CYTHON_AVOID_BORROWED_REFS + Py_XDECREF(varnames_tuple_dedup); + #endif + Py_DECREF(varnames_tuple); + return code_obj; +} + +/* InitStrings */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names) { + while (t->s) { + PyObject *str; if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); + if (t->intern) { + str = PyUnicode_InternFromString(t->s); + } else if (t->encoding) { + str = PyUnicode_Decode(t->s, t->n - 1, encoding_names[t->encoding], NULL); + } else { + str = PyUnicode_FromStringAndSize(t->s, t->n - 1); + } } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); + str = PyBytes_FromStringAndSize(t->s, t->n - 1); } - if (!*t->p) + if (!str) return -1; - if (PyObject_Hash(*t->p) == -1) + *target = str; + if (PyObject_Hash(str) == -1) return -1; - #endif ++t; + ++target; } return 0; } @@ -13206,31 +14130,30 @@ static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; return __Pyx_PyObject_AsStringAndSize(o, &ignore); } -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#if !CYTHON_PEP393_ENABLED -static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - char* defenc_c; - PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); - if (!defenc) return NULL; - defenc_c = PyBytes_AS_STRING(defenc); -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API { - char* end = defenc_c + PyBytes_GET_SIZE(defenc); - char* c; - for (c = defenc_c; c < end; c++) { - if ((unsigned char) (*c) >= 128) { - PyUnicode_AsASCIIString(o); - return NULL; - } + const char* result; + Py_ssize_t unicode_length; + CYTHON_MAYBE_UNUSED_VAR(unicode_length); // only for __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #if __PYX_LIMITED_VERSION_HEX < 0x030A0000 + if (unlikely(PyArg_Parse(o, "s#", &result, length) < 0)) return NULL; + #else + result = PyUnicode_AsUTF8AndSize(o, length); + #endif + #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + unicode_length = PyUnicode_GetLength(o); + if (unlikely(unicode_length < 0)) return NULL; + if (unlikely(unicode_length != *length)) { + PyUnicode_AsASCIIString(o); + return NULL; } + #endif + return result; } -#endif - *length = PyBytes_GET_SIZE(defenc); - return defenc_c; -} #else -static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII if (likely(PyUnicode_IS_ASCII(o))) { *length = PyUnicode_GET_LENGTH(o); @@ -13242,25 +14165,25 @@ static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py #else return PyUnicode_AsUTF8AndSize(o, length); #endif -} #endif +} #endif static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT - if ( -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - __Pyx_sys_getdefaultencoding_not_ascii && -#endif - PyUnicode_Check(o)) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + if (PyUnicode_Check(o)) { return __Pyx_PyUnicode_AsStringAndSize(o, length); } else #endif -#if (!CYTHON_COMPILING_IN_PYPY && !CYTHON_COMPILING_IN_LIMITED_API) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) if (PyByteArray_Check(o)) { +#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))) *length = PyByteArray_GET_SIZE(o); return PyByteArray_AS_STRING(o); - } else +#else + *length = PyByteArray_Size(o); + if (*length == -1) return NULL; + return PyByteArray_AsString(o); #endif + } else { char* result; int r = PyBytes_AsStringAndSize(o, &result, length); @@ -13283,9 +14206,8 @@ static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { Py_DECREF(x); return retval; } -static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { - __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); -#if PY_MAJOR_VERSION >= 3 +static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) { + __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result)); if (PyLong_Check(result)) { if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, "__int__ returned non-int (type " __Pyx_FMT_TYPENAME "). " @@ -13299,74 +14221,44 @@ static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const __Pyx_DECREF_TypeName(result_type_name); return result; } -#endif PyErr_Format(PyExc_TypeError, - "__%.4s__ returned non-%.4s (type " __Pyx_FMT_TYPENAME ")", - type_name, type_name, result_type_name); + "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ")", + result_type_name); __Pyx_DECREF_TypeName(result_type_name); Py_DECREF(result); return NULL; } -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) { #if CYTHON_USE_TYPE_SLOTS PyNumberMethods *m; #endif - const char *name = NULL; PyObject *res = NULL; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x) || PyLong_Check(x))) -#else if (likely(PyLong_Check(x))) -#endif - return __Pyx_NewRef(x); + return __Pyx_NewRef(x); #if CYTHON_USE_TYPE_SLOTS m = Py_TYPE(x)->tp_as_number; - #if PY_MAJOR_VERSION < 3 - if (m && m->nb_int) { - name = "int"; - res = m->nb_int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = m->nb_long(x); - } - #else if (likely(m && m->nb_int)) { - name = "int"; - res = m->nb_int(x); + res = m->nb_int(x); } - #endif #else if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { - res = PyNumber_Int(x); + res = PyNumber_Long(x); } #endif if (likely(res)) { -#if PY_MAJOR_VERSION < 3 - if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { -#else - if (unlikely(!PyLong_CheckExact(res))) { -#endif - return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); - } + if (unlikely(!PyLong_CheckExact(res))) { + return __Pyx_PyNumber_LongWrongResultType(res); + } } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); + PyErr_SetString(PyExc_TypeError, + "an integer is required"); } return res; } static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; PyObject *x; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(b))) { - if (sizeof(Py_ssize_t) >= sizeof(long)) - return PyInt_AS_LONG(b); - else - return PyInt_AsSsize_t(b); - } -#endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS if (likely(__Pyx_PyLong_IsCompact(b))) { @@ -13412,34 +14304,349 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { } x = PyNumber_Index(b); if (!x) return -1; - ival = PyInt_AsSsize_t(x); + ival = PyLong_AsSsize_t(x); Py_DECREF(x); return ival; } static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) { if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) { return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o); -#if PY_MAJOR_VERSION < 3 - } else if (likely(PyInt_CheckExact(o))) { - return PyInt_AS_LONG(o); -#endif } else { Py_ssize_t ival; PyObject *x; x = PyNumber_Index(o); if (!x) return -1; - ival = PyInt_AsLong(x); + ival = PyLong_AsLong(x); Py_DECREF(x); return ival; } } +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b) { + CYTHON_UNUSED_VAR(b); + return __Pyx_NewRef(Py_None); +} static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); } -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { - return PyInt_FromSize_t(ival); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t ival) { + return PyLong_FromSize_t(ival); +} + + +/* MultiPhaseInitModuleState */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000) + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1 +#else + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0 +#endif +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS +#error "Module state with PEP489 requires atomics. Currently that's one of\ + C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics" +#endif +#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#define __Pyx_ModuleStateLookup_Lock() +#define __Pyx_ModuleStateLookup_Unlock() +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000 +static PyMutex __Pyx_ModuleStateLookup_mutex = {0}; +#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(__cplusplus) && __cplusplus >= 201103L +#include +static std::mutex __Pyx_ModuleStateLookup_mutex; +#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock() +#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock() +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__) +#include +static mtx_t __Pyx_ModuleStateLookup_mutex; +static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT; +static void __Pyx_ModuleStateLookup_initialize_mutex(void) { + mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain); +} +#define __Pyx_ModuleStateLookup_Lock()\ + call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\ + mtx_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(HAVE_PTHREAD_H) +#include +static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER; +#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(_WIN32) +#include // synchapi.h on its own doesn't work +static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT; +#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#else +#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\ + Requires C standard >= C11, or C++ standard >= C++11,\ + or pthreads, or the Windows 32 API, or Python >= 3.13." +#endif +typedef struct { + int64_t id; + PyObject *module; +} __Pyx_InterpreterIdAndModule; +typedef struct { + char interpreter_id_as_index; + Py_ssize_t count; + Py_ssize_t allocated; + __Pyx_InterpreterIdAndModule table[1]; +} __Pyx_ModuleStateLookupData; +#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32 +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0; +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0; +#else +static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL; +#endif +static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound( + __Pyx_InterpreterIdAndModule* table, + Py_ssize_t count, + int64_t interpreterId) { + __Pyx_InterpreterIdAndModule* begin = table; + __Pyx_InterpreterIdAndModule* end = begin + count; + if (begin->id == interpreterId) { + return begin; + } + while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2; + if (halfway->id == interpreterId) { + return halfway; + } + if (halfway->id < interpreterId) { + begin = halfway; + } else { + end = halfway; + } + } + for (; begin < end; ++begin) { + if (begin->id >= interpreterId) return begin; + } + return begin; +} +static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return NULL; +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + { + __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + if (likely(data)) { + __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data); + if (likely(data == new_data)) { + goto read_finished; + } + } + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + __Pyx_ModuleStateLookup_Lock(); + __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter); + data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + __Pyx_ModuleStateLookup_Unlock(); + } + read_finished:; +#else + __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_InterpreterIdAndModule* found = NULL; + if (unlikely(!data)) goto end; + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + found = data->table+interpreter_id; + } + } else { + found = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + } + end: + { + PyObject *result=NULL; + if (found && found->id == interpreter_id) { + result = found->module; + } +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); +#endif + return result; + } +} +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static void __Pyx_ModuleStateLookup_wait_until_no_readers(void) { + while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0); } - +#else +#define __Pyx_ModuleStateLookup_wait_until_no_readers() +#endif +static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) { + Py_ssize_t to_allocate = (*old_data)->allocated; + while (to_allocate <= interpreter_id) { + if (to_allocate == 0) to_allocate = 1; + else to_allocate *= 2; + } + __Pyx_ModuleStateLookupData *new_data = *old_data; + if (to_allocate != (*old_data)->allocated) { + new_data = (__Pyx_ModuleStateLookupData *)realloc( + *old_data, + sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + PyErr_NoMemory(); + return -1; + } + for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) { + new_data->table[i].id = i; + new_data->table[i].module = NULL; + } + new_data->allocated = to_allocate; + } + new_data->table[interpreter_id].module = module; + if (new_data->count < interpreter_id+1) { + new_data->count = interpreter_id+1; + } + *old_data = new_data; + return 0; +} +static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) { + __Pyx_InterpreterIdAndModule *read = data->table; + __Pyx_InterpreterIdAndModule *write = data->table; + __Pyx_InterpreterIdAndModule *end = read + data->count; + for (; readmodule) { + write->id = read->id; + write->module = read->module; + ++write; + } + } + data->count = write - data->table; + for (; writeid = 0; + write->module = NULL; + } + data->interpreter_id_as_index = 0; +} +static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + int result = 0; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_ModuleStateLookupData *new_data = old_data; + if (!new_data) { + new_data = (__Pyx_ModuleStateLookupData *)calloc(1, sizeof(__Pyx_ModuleStateLookupData)); + if (!new_data) { + result = -1; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = 1; + new_data->interpreter_id_as_index = 1; + } + __Pyx_ModuleStateLookup_wait_until_no_readers(); + if (new_data->interpreter_id_as_index) { + if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id); + goto end; + } + __Pyx_State_ConvertFromInterpIdAsIndex(new_data); + } + { + Py_ssize_t insert_at = 0; + { + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + new_data->table, new_data->count, interpreter_id); + assert(lower_bound); + insert_at = lower_bound - new_data->table; + if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) { + lower_bound->module = module; + goto end; // already in table, nothing more to do + } + } + if (new_data->count+1 >= new_data->allocated) { + Py_ssize_t to_allocate = (new_data->count+1)*2; + new_data = + (__Pyx_ModuleStateLookupData*)realloc( + new_data, + sizeof(__Pyx_ModuleStateLookupData) + + (to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + result = -1; + new_data = old_data; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = to_allocate; + } + ++new_data->count; + int64_t last_id = interpreter_id; + PyObject *last_module = module; + for (Py_ssize_t i=insert_at; icount; ++i) { + int64_t current_id = new_data->table[i].id; + new_data->table[i].id = last_id; + last_id = current_id; + PyObject *current_module = new_data->table[i].module; + new_data->table[i].module = last_module; + last_module = current_module; + } + } + end: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data); +#else + __Pyx_ModuleStateLookup_data = new_data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return result; +} +static int __Pyx_State_RemoveModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data; +#endif + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + data->table[interpreter_id].module = NULL; + } + goto done; + } + { + __Pyx_ModuleStateLookup_wait_until_no_readers(); + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + if (!lower_bound) goto done; + if (lower_bound->id != interpreter_id) goto done; + __Pyx_InterpreterIdAndModule *end = data->table+data->count; + for (;lower_boundid = (lower_bound+1)->id; + lower_bound->module = (lower_bound+1)->module; + } + } + --data->count; + if (data->count == 0) { + free(data); + data = NULL; + } + done: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data); +#else + __Pyx_ModuleStateLookup_data = data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return 0; +} +#endif /* #### Code section: utility_code_pragmas_end ### */ #ifdef _MSC_VER diff --git a/src/hunter/_tracer.pxd b/src/hunter/_tracer.pxd index 91a16b5..df5ea60 100644 --- a/src/hunter/_tracer.pxd +++ b/src/hunter/_tracer.pxd @@ -1,24 +1,23 @@ # cython: language_level=3str cimport cython from cpython.pystate cimport Py_tracefunc +from cpython.pystate cimport PyFrameObject from cpython.ref cimport PyObject +ctypedef extern FrameType cdef extern from "vendor/_compat.h": - CodeType PyFrame_GetCode(FrameType) - int PyFrame_GetLasti(FrameType) + CodeType PyFrame_GetCode(PyFrameObject *frame) + int PyFrame_GetLasti(PyFrameObject *frame) object PyCode_GetCode(CodeType) object PyCode_GetVarnames(CodeType) - object PyFrame_GetGlobals(FrameType) - object PyFrame_GetLocals(FrameType) + object PyFrame_GetGlobals(PyFrameObject *frame) + object PyFrame_GetLocals(PyFrameObject *frame) cdef extern from *: void PyEval_SetTrace(Py_tracefunc, PyObject*) void PyEval_SetProfile(Py_tracefunc, PyObject*) - ctypedef extern class types.FrameType[object PyFrameObject, check_size ignore]: - pass - ctypedef extern class types.CodeType[object PyCodeObject, check_size ignore]: cdef object co_filename cdef object co_name diff --git a/src/hunter/actions.py b/src/hunter/actions.py index 1c339a7..c59c965 100644 --- a/src/hunter/actions.py +++ b/src/hunter/actions.py @@ -28,10 +28,10 @@ __all__ = [ 'Action', + 'CallPrinter', + 'CodePrinter', 'Debugger', 'Manhole', - 'CodePrinter', - 'CallPrinter', 'VarsPrinter', ] @@ -187,8 +187,8 @@ def stream(self, value): else: self._tty = False self._stream = value - self.event_colors = {key: '' for key in self.EVENT_COLORS} - self.other_colors = {key: '' for key in self.OTHER_COLORS} + self.event_colors = dict.fromkeys(self.EVENT_COLORS, '') + self.other_colors = dict.fromkeys(self.OTHER_COLORS, '') @property def repr_func(self): diff --git a/src/hunter/vendor/_compat.h b/src/hunter/vendor/_compat.h index d91a22e..3320f68 100644 --- a/src/hunter/vendor/_compat.h +++ b/src/hunter/vendor/_compat.h @@ -7,7 +7,7 @@ // https://github.com/python/pythoncapi_compat // // Latest version: -// https://raw.githubusercontent.com/python/pythoncapi_compat/master/pythoncapi_compat.h +// https://raw.githubusercontent.com/python/pythoncapi-compat/main/pythoncapi_compat.h // // SPDX-License-Identifier: 0BSD @@ -19,16 +19,14 @@ extern "C" { #endif #include -#include "frameobject.h" // PyFrameObject, PyFrame_GetBack() +#include // offsetof() - -// Compatibility with Visual Studio 2013 and older which don't support -// the inline keyword in C (only in C++): use __inline instead. -#if (defined(_MSC_VER) && _MSC_VER < 1900 \ - && !defined(__cplusplus) && !defined(inline)) -# define PYCAPI_COMPAT_STATIC_INLINE(TYPE) static __inline TYPE -#else -# define PYCAPI_COMPAT_STATIC_INLINE(TYPE) static inline TYPE +// Python 3.11.0b4 added PyFrame_Back() to Python.h +#if PY_VERSION_HEX < 0x030b00B4 && !defined(PYPY_VERSION) +# include "frameobject.h" // PyFrameObject, PyFrame_GetBack() +#endif +#if PY_VERSION_HEX < 0x030C00A3 +# include // T_SHORT, READONLY #endif @@ -36,10 +34,12 @@ extern "C" { # define _Py_CAST(type, expr) ((type)(expr)) #endif -// On C++11 and newer, _Py_NULL is defined as nullptr on C++11, -// otherwise it is defined as NULL. +// Static inline functions should use _Py_NULL rather than using directly NULL +// to prevent C++ compiler warnings. On C23 and newer and on C++11 and newer, +// _Py_NULL is defined as nullptr. #ifndef _Py_NULL -# if defined(__cplusplus) && __cplusplus >= 201103 +# if (defined (__STDC_VERSION__) && __STDC_VERSION__ > 201710L) \ + || (defined(__cplusplus) && __cplusplus >= 201103) # define _Py_NULL nullptr # else # define _Py_NULL NULL @@ -51,11 +51,17 @@ extern "C" { # define _PyObject_CAST(op) _Py_CAST(PyObject*, op) #endif +#ifndef Py_BUILD_ASSERT +# define Py_BUILD_ASSERT(cond) \ + do { \ + (void)sizeof(char [1 - 2 * !(cond)]); \ + } while(0) +#endif + // bpo-42262 added Py_NewRef() to Python 3.10.0a3 #if PY_VERSION_HEX < 0x030A00A3 && !defined(Py_NewRef) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -_Py_NewRef(PyObject *obj) +static inline PyObject* _Py_NewRef(PyObject *obj) { Py_INCREF(obj); return obj; @@ -66,8 +72,7 @@ _Py_NewRef(PyObject *obj) // bpo-42262 added Py_XNewRef() to Python 3.10.0a3 #if PY_VERSION_HEX < 0x030A00A3 && !defined(Py_XNewRef) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -_Py_XNewRef(PyObject *obj) +static inline PyObject* _Py_XNewRef(PyObject *obj) { Py_XINCREF(obj); return obj; @@ -78,8 +83,7 @@ _Py_XNewRef(PyObject *obj) // bpo-39573 added Py_SET_REFCNT() to Python 3.9.0a4 #if PY_VERSION_HEX < 0x030900A4 && !defined(Py_SET_REFCNT) -PYCAPI_COMPAT_STATIC_INLINE(void) -_Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) +static inline void _Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) { ob->ob_refcnt = refcnt; } @@ -116,18 +120,17 @@ _Py_SET_REFCNT(PyObject *ob, Py_ssize_t refcnt) #if PY_VERSION_HEX < 0x030A00B1 && !defined(Py_IsNone) # define Py_IsNone(x) Py_Is(x, Py_None) #endif -#if PY_VERSION_HEX < 0x030A00B1 && !defined(Py_IsTrue) +#if (PY_VERSION_HEX < 0x030A00B1 || defined(PYPY_VERSION)) && !defined(Py_IsTrue) # define Py_IsTrue(x) Py_Is(x, Py_True) #endif -#if PY_VERSION_HEX < 0x030A00B1 && !defined(Py_IsFalse) +#if (PY_VERSION_HEX < 0x030A00B1 || defined(PYPY_VERSION)) && !defined(Py_IsFalse) # define Py_IsFalse(x) Py_Is(x, Py_False) #endif // bpo-39573 added Py_SET_TYPE() to Python 3.9.0a4 #if PY_VERSION_HEX < 0x030900A4 && !defined(Py_SET_TYPE) -PYCAPI_COMPAT_STATIC_INLINE(void) -_Py_SET_TYPE(PyObject *ob, PyTypeObject *type) +static inline void _Py_SET_TYPE(PyObject *ob, PyTypeObject *type) { ob->ob_type = type; } @@ -137,8 +140,7 @@ _Py_SET_TYPE(PyObject *ob, PyTypeObject *type) // bpo-39573 added Py_SET_SIZE() to Python 3.9.0a4 #if PY_VERSION_HEX < 0x030900A4 && !defined(Py_SET_SIZE) -PYCAPI_COMPAT_STATIC_INLINE(void) -_Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) +static inline void _Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) { ob->ob_size = size; } @@ -148,8 +150,7 @@ _Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) // bpo-40421 added PyFrame_GetCode() to Python 3.9.0b1 #if PY_VERSION_HEX < 0x030900B1 || defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyCodeObject*) -PyFrame_GetCode(PyFrameObject *frame) +static inline PyCodeObject* PyFrame_GetCode(PyFrameObject *frame) { assert(frame != _Py_NULL); assert(frame->f_code != _Py_NULL); @@ -157,8 +158,7 @@ PyFrame_GetCode(PyFrameObject *frame) } #endif -PYCAPI_COMPAT_STATIC_INLINE(PyCodeObject*) -_PyFrame_GetCodeBorrow(PyFrameObject *frame) +static inline PyCodeObject* _PyFrame_GetCodeBorrow(PyFrameObject *frame) { PyCodeObject *code = PyFrame_GetCode(frame); Py_DECREF(code); @@ -168,8 +168,7 @@ _PyFrame_GetCodeBorrow(PyFrameObject *frame) // bpo-40421 added PyFrame_GetBack() to Python 3.9.0b1 #if PY_VERSION_HEX < 0x030900B1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyFrameObject*) -PyFrame_GetBack(PyFrameObject *frame) +static inline PyFrameObject* PyFrame_GetBack(PyFrameObject *frame) { assert(frame != _Py_NULL); return _Py_CAST(PyFrameObject*, Py_XNewRef(frame->f_back)); @@ -177,8 +176,7 @@ PyFrame_GetBack(PyFrameObject *frame) #endif #if !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyFrameObject*) -_PyFrame_GetBackBorrow(PyFrameObject *frame) +static inline PyFrameObject* _PyFrame_GetBackBorrow(PyFrameObject *frame) { PyFrameObject *back = PyFrame_GetBack(frame); Py_XDECREF(back); @@ -189,8 +187,7 @@ _PyFrame_GetBackBorrow(PyFrameObject *frame) // bpo-40421 added PyFrame_GetLocals() to Python 3.11.0a7 #if PY_VERSION_HEX < 0x030B00A7 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyFrame_GetLocals(PyFrameObject *frame) +static inline PyObject* PyFrame_GetLocals(PyFrameObject *frame) { #if PY_VERSION_HEX >= 0x030400B1 if (PyFrame_FastToLocalsWithError(frame) < 0) { @@ -206,8 +203,7 @@ PyFrame_GetLocals(PyFrameObject *frame) // bpo-40421 added PyFrame_GetGlobals() to Python 3.11.0a7 #if PY_VERSION_HEX < 0x030B00A7 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyFrame_GetGlobals(PyFrameObject *frame) +static inline PyObject* PyFrame_GetGlobals(PyFrameObject *frame) { return Py_NewRef(frame->f_globals); } @@ -216,8 +212,7 @@ PyFrame_GetGlobals(PyFrameObject *frame) // bpo-40421 added PyFrame_GetBuiltins() to Python 3.11.0a7 #if PY_VERSION_HEX < 0x030B00A7 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyFrame_GetBuiltins(PyFrameObject *frame) +static inline PyObject* PyFrame_GetBuiltins(PyFrameObject *frame) { return Py_NewRef(frame->f_builtins); } @@ -226,8 +221,7 @@ PyFrame_GetBuiltins(PyFrameObject *frame) // bpo-40421 added PyFrame_GetLasti() to Python 3.11.0b1 #if PY_VERSION_HEX < 0x030B00B1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(int) -PyFrame_GetLasti(PyFrameObject *frame) +static inline int PyFrame_GetLasti(PyFrameObject *frame) { #if PY_VERSION_HEX >= 0x030A00A7 // bpo-27129: Since Python 3.10.0a7, f_lasti is an instruction offset, @@ -246,8 +240,7 @@ PyFrame_GetLasti(PyFrameObject *frame) // gh-91248 added PyFrame_GetVar() to Python 3.12.0a2 #if PY_VERSION_HEX < 0x030C00A2 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyFrame_GetVar(PyFrameObject *frame, PyObject *name) +static inline PyObject* PyFrame_GetVar(PyFrameObject *frame, PyObject *name) { PyObject *locals, *value; @@ -258,7 +251,7 @@ PyFrame_GetVar(PyFrameObject *frame, PyObject *name) #if PY_VERSION_HEX >= 0x03000000 value = PyDict_GetItemWithError(locals, name); #else - value = PyDict_GetItem(locals, name); + value = _PyDict_GetItemWithError(locals, name); #endif Py_DECREF(locals); @@ -280,11 +273,15 @@ PyFrame_GetVar(PyFrameObject *frame, PyObject *name) // gh-91248 added PyFrame_GetVarString() to Python 3.12.0a2 #if PY_VERSION_HEX < 0x030C00A2 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) +static inline PyObject* PyFrame_GetVarString(PyFrameObject *frame, const char *name) { PyObject *name_obj, *value; +#if PY_VERSION_HEX >= 0x03000000 name_obj = PyUnicode_FromString(name); +#else + name_obj = PyString_FromString(name); +#endif if (name_obj == NULL) { return NULL; } @@ -296,8 +293,8 @@ PyFrame_GetVarString(PyFrameObject *frame, const char *name) // bpo-39947 added PyThreadState_GetInterpreter() to Python 3.9.0a5 -#if PY_VERSION_HEX < 0x030900A5 || defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyInterpreterState *) +#if PY_VERSION_HEX < 0x030900A5 || (defined(PYPY_VERSION) && PY_VERSION_HEX < 0x030B0000) +static inline PyInterpreterState * PyThreadState_GetInterpreter(PyThreadState *tstate) { assert(tstate != _Py_NULL); @@ -308,8 +305,7 @@ PyThreadState_GetInterpreter(PyThreadState *tstate) // bpo-40429 added PyThreadState_GetFrame() to Python 3.9.0b1 #if PY_VERSION_HEX < 0x030900B1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyFrameObject*) -PyThreadState_GetFrame(PyThreadState *tstate) +static inline PyFrameObject* PyThreadState_GetFrame(PyThreadState *tstate) { assert(tstate != _Py_NULL); return _Py_CAST(PyFrameObject *, Py_XNewRef(tstate->frame)); @@ -317,7 +313,7 @@ PyThreadState_GetFrame(PyThreadState *tstate) #endif #if !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyFrameObject*) +static inline PyFrameObject* _PyThreadState_GetFrameBorrow(PyThreadState *tstate) { PyFrameObject *frame = PyThreadState_GetFrame(tstate); @@ -329,8 +325,7 @@ _PyThreadState_GetFrameBorrow(PyThreadState *tstate) // bpo-39947 added PyInterpreterState_Get() to Python 3.9.0a5 #if PY_VERSION_HEX < 0x030900A5 || defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyInterpreterState*) -PyInterpreterState_Get(void) +static inline PyInterpreterState* PyInterpreterState_Get(void) { PyThreadState *tstate; PyInterpreterState *interp; @@ -350,8 +345,7 @@ PyInterpreterState_Get(void) // bpo-39947 added PyInterpreterState_Get() to Python 3.9.0a6 #if 0x030700A1 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x030900A6 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(uint64_t) -PyThreadState_GetID(PyThreadState *tstate) +static inline uint64_t PyThreadState_GetID(PyThreadState *tstate) { assert(tstate != _Py_NULL); return tstate->id; @@ -360,8 +354,7 @@ PyThreadState_GetID(PyThreadState *tstate) // bpo-43760 added PyThreadState_EnterTracing() to Python 3.11.0a2 #if PY_VERSION_HEX < 0x030B00A2 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(void) -PyThreadState_EnterTracing(PyThreadState *tstate) +static inline void PyThreadState_EnterTracing(PyThreadState *tstate) { tstate->tracing++; #if PY_VERSION_HEX >= 0x030A00A1 @@ -374,8 +367,7 @@ PyThreadState_EnterTracing(PyThreadState *tstate) // bpo-43760 added PyThreadState_LeaveTracing() to Python 3.11.0a2 #if PY_VERSION_HEX < 0x030B00A2 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(void) -PyThreadState_LeaveTracing(PyThreadState *tstate) +static inline void PyThreadState_LeaveTracing(PyThreadState *tstate) { int use_tracing = (tstate->c_tracefunc != _Py_NULL || tstate->c_profilefunc != _Py_NULL); @@ -390,9 +382,9 @@ PyThreadState_LeaveTracing(PyThreadState *tstate) // bpo-37194 added PyObject_CallNoArgs() to Python 3.9.0a1 -#if PY_VERSION_HEX < 0x030900A1 || defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyObject_CallNoArgs(PyObject *func) +// PyObject_CallNoArgs() added to PyPy 3.9.16-v7.3.11 +#if !defined(PyObject_CallNoArgs) && PY_VERSION_HEX < 0x030900A1 +static inline PyObject* PyObject_CallNoArgs(PyObject *func) { return PyObject_CallFunctionObjArgs(func, NULL); } @@ -401,9 +393,9 @@ PyObject_CallNoArgs(PyObject *func) // bpo-39245 made PyObject_CallOneArg() public (previously called // _PyObject_CallOneArg) in Python 3.9.0a4 -#if PY_VERSION_HEX < 0x030900A4 || defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyObject_CallOneArg(PyObject *func, PyObject *arg) +// PyObject_CallOneArg() added to PyPy 3.9.16-v7.3.11 +#if !defined(PyObject_CallOneArg) && PY_VERSION_HEX < 0x030900A4 +static inline PyObject* PyObject_CallOneArg(PyObject *func, PyObject *arg) { return PyObject_CallFunctionObjArgs(func, arg, NULL); } @@ -412,10 +404,19 @@ PyObject_CallOneArg(PyObject *func, PyObject *arg) // bpo-1635741 added PyModule_AddObjectRef() to Python 3.10.0a3 #if PY_VERSION_HEX < 0x030A00A3 -PYCAPI_COMPAT_STATIC_INLINE(int) +static inline int PyModule_AddObjectRef(PyObject *module, const char *name, PyObject *value) { int res; + + if (!value && !PyErr_Occurred()) { + // PyModule_AddObject() raises TypeError in this case + PyErr_SetString(PyExc_SystemError, + "PyModule_AddObjectRef() must be called " + "with an exception raised if value is NULL"); + return -1; + } + Py_XINCREF(value); res = PyModule_AddObject(module, name, value); if (res < 0) { @@ -428,8 +429,7 @@ PyModule_AddObjectRef(PyObject *module, const char *name, PyObject *value) // bpo-40024 added PyModule_AddType() to Python 3.9.0a5 #if PY_VERSION_HEX < 0x030900A5 -PYCAPI_COMPAT_STATIC_INLINE(int) -PyModule_AddType(PyObject *module, PyTypeObject *type) +static inline int PyModule_AddType(PyObject *module, PyTypeObject *type) { const char *name, *dot; @@ -453,8 +453,7 @@ PyModule_AddType(PyObject *module, PyTypeObject *type) // bpo-40241 added PyObject_GC_IsTracked() to Python 3.9.0a6. // bpo-4688 added _PyObject_GC_IS_TRACKED() to Python 2.7.0a2. #if PY_VERSION_HEX < 0x030900A6 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(int) -PyObject_GC_IsTracked(PyObject* obj) +static inline int PyObject_GC_IsTracked(PyObject* obj) { return (PyObject_IS_GC(obj) && _PyObject_GC_IS_TRACKED(obj)); } @@ -463,8 +462,7 @@ PyObject_GC_IsTracked(PyObject* obj) // bpo-40241 added PyObject_GC_IsFinalized() to Python 3.9.0a6. // bpo-18112 added _PyGCHead_FINALIZED() to Python 3.4.0 final. #if PY_VERSION_HEX < 0x030900A6 && PY_VERSION_HEX >= 0x030400F0 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(int) -PyObject_GC_IsFinalized(PyObject *obj) +static inline int PyObject_GC_IsFinalized(PyObject *obj) { PyGC_Head *gc = _Py_CAST(PyGC_Head*, obj) - 1; return (PyObject_IS_GC(obj) && _PyGCHead_FINALIZED(gc)); @@ -474,8 +472,7 @@ PyObject_GC_IsFinalized(PyObject *obj) // bpo-39573 added Py_IS_TYPE() to Python 3.9.0a4 #if PY_VERSION_HEX < 0x030900A4 && !defined(Py_IS_TYPE) -PYCAPI_COMPAT_STATIC_INLINE(int) -_Py_IS_TYPE(PyObject *ob, PyTypeObject *type) { +static inline int _Py_IS_TYPE(PyObject *ob, PyTypeObject *type) { return Py_TYPE(ob) == type; } #define Py_IS_TYPE(ob, type) _Py_IS_TYPE(_PyObject_CAST(ob), type) @@ -487,12 +484,10 @@ _Py_IS_TYPE(PyObject *ob, PyTypeObject *type) { // Python 3.11a2 moved _PyFloat_Pack2() and _PyFloat_Unpack2() to the internal // C API: Python 3.11a2-3.11a6 versions are not supported. #if 0x030600B1 <= PY_VERSION_HEX && PY_VERSION_HEX <= 0x030B00A1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(int) -PyFloat_Pack2(double x, char *p, int le) +static inline int PyFloat_Pack2(double x, char *p, int le) { return _PyFloat_Pack2(x, (unsigned char*)p, le); } -PYCAPI_COMPAT_STATIC_INLINE(double) -PyFloat_Unpack2(const char *p, int le) +static inline double PyFloat_Unpack2(const char *p, int le) { return _PyFloat_Unpack2((const unsigned char *)p, le); } #endif @@ -503,28 +498,23 @@ PyFloat_Unpack2(const char *p, int le) // and _PyFloat_Unpack8() to the internal C API: Python 3.11a2-3.11a6 versions // are not supported. #if PY_VERSION_HEX <= 0x030B00A1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(int) -PyFloat_Pack4(double x, char *p, int le) +static inline int PyFloat_Pack4(double x, char *p, int le) { return _PyFloat_Pack4(x, (unsigned char*)p, le); } -PYCAPI_COMPAT_STATIC_INLINE(int) -PyFloat_Pack8(double x, char *p, int le) +static inline int PyFloat_Pack8(double x, char *p, int le) { return _PyFloat_Pack8(x, (unsigned char*)p, le); } -PYCAPI_COMPAT_STATIC_INLINE(double) -PyFloat_Unpack4(const char *p, int le) +static inline double PyFloat_Unpack4(const char *p, int le) { return _PyFloat_Unpack4((const unsigned char *)p, le); } -PYCAPI_COMPAT_STATIC_INLINE(double) -PyFloat_Unpack8(const char *p, int le) +static inline double PyFloat_Unpack8(const char *p, int le) { return _PyFloat_Unpack8((const unsigned char *)p, le); } #endif // gh-92154 added PyCode_GetCode() to Python 3.11.0b1 #if PY_VERSION_HEX < 0x030B00B1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyCode_GetCode(PyCodeObject *code) +static inline PyObject* PyCode_GetCode(PyCodeObject *code) { return Py_NewRef(code->co_code); } @@ -533,8 +523,7 @@ PyCode_GetCode(PyCodeObject *code) // gh-95008 added PyCode_GetVarnames() to Python 3.11.0rc1 #if PY_VERSION_HEX < 0x030B00C1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyCode_GetVarnames(PyCodeObject *code) +static inline PyObject* PyCode_GetVarnames(PyCodeObject *code) { return Py_NewRef(code->co_varnames); } @@ -542,8 +531,7 @@ PyCode_GetVarnames(PyCodeObject *code) // gh-95008 added PyCode_GetFreevars() to Python 3.11.0rc1 #if PY_VERSION_HEX < 0x030B00C1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyCode_GetFreevars(PyCodeObject *code) +static inline PyObject* PyCode_GetFreevars(PyCodeObject *code) { return Py_NewRef(code->co_freevars); } @@ -551,8 +539,7 @@ PyCode_GetFreevars(PyCodeObject *code) // gh-95008 added PyCode_GetCellvars() to Python 3.11.0rc1 #if PY_VERSION_HEX < 0x030B00C1 && !defined(PYPY_VERSION) -PYCAPI_COMPAT_STATIC_INLINE(PyObject*) -PyCode_GetCellvars(PyCodeObject *code) +static inline PyObject* PyCode_GetCellvars(PyCodeObject *code) { return Py_NewRef(code->co_cellvars); } @@ -569,6 +556,1727 @@ PyCode_GetCellvars(PyCodeObject *code) #endif +// gh-105922 added PyImport_AddModuleRef() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A0 +static inline PyObject* PyImport_AddModuleRef(const char *name) +{ + return Py_XNewRef(PyImport_AddModule(name)); +} +#endif + + +// gh-105927 added PyWeakref_GetRef() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D0000 +static inline int PyWeakref_GetRef(PyObject *ref, PyObject **pobj) +{ + PyObject *obj; + if (ref != NULL && !PyWeakref_Check(ref)) { + *pobj = NULL; + PyErr_SetString(PyExc_TypeError, "expected a weakref"); + return -1; + } + obj = PyWeakref_GetObject(ref); + if (obj == NULL) { + // SystemError if ref is NULL + *pobj = NULL; + return -1; + } + if (obj == Py_None) { + *pobj = NULL; + return 0; + } + *pobj = Py_NewRef(obj); + return 1; +} +#endif + + +// bpo-36974 added PY_VECTORCALL_ARGUMENTS_OFFSET to Python 3.8b1 +#ifndef PY_VECTORCALL_ARGUMENTS_OFFSET +# define PY_VECTORCALL_ARGUMENTS_OFFSET (_Py_CAST(size_t, 1) << (8 * sizeof(size_t) - 1)) +#endif + +// bpo-36974 added PyVectorcall_NARGS() to Python 3.8b1 +#if PY_VERSION_HEX < 0x030800B1 +static inline Py_ssize_t PyVectorcall_NARGS(size_t n) +{ + return n & ~PY_VECTORCALL_ARGUMENTS_OFFSET; +} +#endif + + +// gh-105922 added PyObject_Vectorcall() to Python 3.9.0a4 +#if PY_VERSION_HEX < 0x030900A4 +static inline PyObject* +PyObject_Vectorcall(PyObject *callable, PyObject *const *args, + size_t nargsf, PyObject *kwnames) +{ +#if PY_VERSION_HEX >= 0x030800B1 && !defined(PYPY_VERSION) + // bpo-36974 added _PyObject_Vectorcall() to Python 3.8.0b1 + return _PyObject_Vectorcall(callable, args, nargsf, kwnames); +#else + PyObject *posargs = NULL, *kwargs = NULL; + PyObject *res; + Py_ssize_t nposargs, nkwargs, i; + + if (nargsf != 0 && args == NULL) { + PyErr_BadInternalCall(); + goto error; + } + if (kwnames != NULL && !PyTuple_Check(kwnames)) { + PyErr_BadInternalCall(); + goto error; + } + + nposargs = (Py_ssize_t)PyVectorcall_NARGS(nargsf); + if (kwnames) { + nkwargs = PyTuple_GET_SIZE(kwnames); + } + else { + nkwargs = 0; + } + + posargs = PyTuple_New(nposargs); + if (posargs == NULL) { + goto error; + } + if (nposargs) { + for (i=0; i < nposargs; i++) { + PyTuple_SET_ITEM(posargs, i, Py_NewRef(*args)); + args++; + } + } + + if (nkwargs) { + kwargs = PyDict_New(); + if (kwargs == NULL) { + goto error; + } + + for (i = 0; i < nkwargs; i++) { + PyObject *key = PyTuple_GET_ITEM(kwnames, i); + PyObject *value = *args; + args++; + if (PyDict_SetItem(kwargs, key, value) < 0) { + goto error; + } + } + } + else { + kwargs = NULL; + } + + res = PyObject_Call(callable, posargs, kwargs); + Py_DECREF(posargs); + Py_XDECREF(kwargs); + return res; + +error: + Py_DECREF(posargs); + Py_XDECREF(kwargs); + return NULL; +#endif +} +#endif + + +// gh-106521 added PyObject_GetOptionalAttr() and +// PyObject_GetOptionalAttrString() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyObject_GetOptionalAttr(PyObject *obj, PyObject *attr_name, PyObject **result) +{ + // bpo-32571 added _PyObject_LookupAttr() to Python 3.7.0b1 +#if PY_VERSION_HEX >= 0x030700B1 && !defined(PYPY_VERSION) + return _PyObject_LookupAttr(obj, attr_name, result); +#else + *result = PyObject_GetAttr(obj, attr_name); + if (*result != NULL) { + return 1; + } + if (!PyErr_Occurred()) { + return 0; + } + if (PyErr_ExceptionMatches(PyExc_AttributeError)) { + PyErr_Clear(); + return 0; + } + return -1; +#endif +} + +static inline int +PyObject_GetOptionalAttrString(PyObject *obj, const char *attr_name, PyObject **result) +{ + PyObject *name_obj; + int rc; +#if PY_VERSION_HEX >= 0x03000000 + name_obj = PyUnicode_FromString(attr_name); +#else + name_obj = PyString_FromString(attr_name); +#endif + if (name_obj == NULL) { + *result = NULL; + return -1; + } + rc = PyObject_GetOptionalAttr(obj, name_obj, result); + Py_DECREF(name_obj); + return rc; +} +#endif + + +// gh-106307 added PyObject_GetOptionalAttr() and +// PyMapping_GetOptionalItemString() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyMapping_GetOptionalItem(PyObject *obj, PyObject *key, PyObject **result) +{ + *result = PyObject_GetItem(obj, key); + if (*result) { + return 1; + } + if (!PyErr_ExceptionMatches(PyExc_KeyError)) { + return -1; + } + PyErr_Clear(); + return 0; +} + +static inline int +PyMapping_GetOptionalItemString(PyObject *obj, const char *key, PyObject **result) +{ + PyObject *key_obj; + int rc; +#if PY_VERSION_HEX >= 0x03000000 + key_obj = PyUnicode_FromString(key); +#else + key_obj = PyString_FromString(key); +#endif + if (key_obj == NULL) { + *result = NULL; + return -1; + } + rc = PyMapping_GetOptionalItem(obj, key_obj, result); + Py_DECREF(key_obj); + return rc; +} +#endif + +// gh-108511 added PyMapping_HasKeyWithError() and +// PyMapping_HasKeyStringWithError() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyMapping_HasKeyWithError(PyObject *obj, PyObject *key) +{ + PyObject *res; + int rc = PyMapping_GetOptionalItem(obj, key, &res); + Py_XDECREF(res); + return rc; +} + +static inline int +PyMapping_HasKeyStringWithError(PyObject *obj, const char *key) +{ + PyObject *res; + int rc = PyMapping_GetOptionalItemString(obj, key, &res); + Py_XDECREF(res); + return rc; +} +#endif + + +// gh-108511 added PyObject_HasAttrWithError() and +// PyObject_HasAttrStringWithError() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyObject_HasAttrWithError(PyObject *obj, PyObject *attr) +{ + PyObject *res; + int rc = PyObject_GetOptionalAttr(obj, attr, &res); + Py_XDECREF(res); + return rc; +} + +static inline int +PyObject_HasAttrStringWithError(PyObject *obj, const char *attr) +{ + PyObject *res; + int rc = PyObject_GetOptionalAttrString(obj, attr, &res); + Py_XDECREF(res); + return rc; +} +#endif + + +// gh-106004 added PyDict_GetItemRef() and PyDict_GetItemStringRef() +// to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyDict_GetItemRef(PyObject *mp, PyObject *key, PyObject **result) +{ +#if PY_VERSION_HEX >= 0x03000000 + PyObject *item = PyDict_GetItemWithError(mp, key); +#else + PyObject *item = _PyDict_GetItemWithError(mp, key); +#endif + if (item != NULL) { + *result = Py_NewRef(item); + return 1; // found + } + if (!PyErr_Occurred()) { + *result = NULL; + return 0; // not found + } + *result = NULL; + return -1; +} + +static inline int +PyDict_GetItemStringRef(PyObject *mp, const char *key, PyObject **result) +{ + int res; +#if PY_VERSION_HEX >= 0x03000000 + PyObject *key_obj = PyUnicode_FromString(key); +#else + PyObject *key_obj = PyString_FromString(key); +#endif + if (key_obj == NULL) { + *result = NULL; + return -1; + } + res = PyDict_GetItemRef(mp, key_obj, result); + Py_DECREF(key_obj); + return res; +} +#endif + + +// gh-106307 added PyModule_Add() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyModule_Add(PyObject *mod, const char *name, PyObject *value) +{ + int res = PyModule_AddObjectRef(mod, name, value); + Py_XDECREF(value); + return res; +} +#endif + + +// gh-108014 added Py_IsFinalizing() to Python 3.13.0a1 +// bpo-1856 added _Py_Finalizing to Python 3.2.1b1. +// _Py_IsFinalizing() was added to PyPy 7.3.0. +#if (0x030201B1 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x030D00A1) \ + && (!defined(PYPY_VERSION_NUM) || PYPY_VERSION_NUM >= 0x7030000) +static inline int Py_IsFinalizing(void) +{ +#if PY_VERSION_HEX >= 0x030700A1 + // _Py_IsFinalizing() was added to Python 3.7.0a1. + return _Py_IsFinalizing(); +#else + return (_Py_Finalizing != NULL); +#endif +} +#endif + + +// gh-108323 added PyDict_ContainsString() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int PyDict_ContainsString(PyObject *op, const char *key) +{ + PyObject *key_obj = PyUnicode_FromString(key); + if (key_obj == NULL) { + return -1; + } + int res = PyDict_Contains(op, key_obj); + Py_DECREF(key_obj); + return res; +} +#endif + + +// gh-108445 added PyLong_AsInt() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int PyLong_AsInt(PyObject *obj) +{ +#ifdef PYPY_VERSION + long value = PyLong_AsLong(obj); + if (value == -1 && PyErr_Occurred()) { + return -1; + } + if (value < (long)INT_MIN || (long)INT_MAX < value) { + PyErr_SetString(PyExc_OverflowError, + "Python int too large to convert to C int"); + return -1; + } + return (int)value; +#else + return _PyLong_AsInt(obj); +#endif +} +#endif + + +// gh-107073 added PyObject_VisitManagedDict() to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyObject_VisitManagedDict(PyObject *obj, visitproc visit, void *arg) +{ + PyObject **dict = _PyObject_GetDictPtr(obj); + if (dict == NULL || *dict == NULL) { + return -1; + } + Py_VISIT(*dict); + return 0; +} + +static inline void +PyObject_ClearManagedDict(PyObject *obj) +{ + PyObject **dict = _PyObject_GetDictPtr(obj); + if (dict == NULL || *dict == NULL) { + return; + } + Py_CLEAR(*dict); +} +#endif + +// gh-108867 added PyThreadState_GetUnchecked() to Python 3.13.0a1 +// Python 3.5.2 added _PyThreadState_UncheckedGet(). +#if PY_VERSION_HEX >= 0x03050200 && PY_VERSION_HEX < 0x030D00A1 +static inline PyThreadState* +PyThreadState_GetUnchecked(void) +{ + return _PyThreadState_UncheckedGet(); +} +#endif + +// gh-110289 added PyUnicode_EqualToUTF8() and PyUnicode_EqualToUTF8AndSize() +// to Python 3.13.0a1 +#if PY_VERSION_HEX < 0x030D00A1 +static inline int +PyUnicode_EqualToUTF8AndSize(PyObject *unicode, const char *str, Py_ssize_t str_len) +{ + Py_ssize_t len; + const void *utf8; + PyObject *exc_type, *exc_value, *exc_tb; + int res; + + // API cannot report errors so save/restore the exception + PyErr_Fetch(&exc_type, &exc_value, &exc_tb); + + // Python 3.3.0a1 added PyUnicode_AsUTF8AndSize() +#if PY_VERSION_HEX >= 0x030300A1 + if (PyUnicode_IS_ASCII(unicode)) { + utf8 = PyUnicode_DATA(unicode); + len = PyUnicode_GET_LENGTH(unicode); + } + else { + utf8 = PyUnicode_AsUTF8AndSize(unicode, &len); + if (utf8 == NULL) { + // Memory allocation failure. The API cannot report error, + // so ignore the exception and return 0. + res = 0; + goto done; + } + } + + if (len != str_len) { + res = 0; + goto done; + } + res = (memcmp(utf8, str, (size_t)len) == 0); +#else + PyObject *bytes = PyUnicode_AsUTF8String(unicode); + if (bytes == NULL) { + // Memory allocation failure. The API cannot report error, + // so ignore the exception and return 0. + res = 0; + goto done; + } + +#if PY_VERSION_HEX >= 0x03000000 + len = PyBytes_GET_SIZE(bytes); + utf8 = PyBytes_AS_STRING(bytes); +#else + len = PyString_GET_SIZE(bytes); + utf8 = PyString_AS_STRING(bytes); +#endif + if (len != str_len) { + Py_DECREF(bytes); + res = 0; + goto done; + } + + res = (memcmp(utf8, str, (size_t)len) == 0); + Py_DECREF(bytes); +#endif + +done: + PyErr_Restore(exc_type, exc_value, exc_tb); + return res; +} + +static inline int +PyUnicode_EqualToUTF8(PyObject *unicode, const char *str) +{ + return PyUnicode_EqualToUTF8AndSize(unicode, str, (Py_ssize_t)strlen(str)); +} +#endif + + +// gh-111138 added PyList_Extend() and PyList_Clear() to Python 3.13.0a2 +#if PY_VERSION_HEX < 0x030D00A2 +static inline int +PyList_Extend(PyObject *list, PyObject *iterable) +{ + return PyList_SetSlice(list, PY_SSIZE_T_MAX, PY_SSIZE_T_MAX, iterable); +} + +static inline int +PyList_Clear(PyObject *list) +{ + return PyList_SetSlice(list, 0, PY_SSIZE_T_MAX, NULL); +} +#endif + +// gh-111262 added PyDict_Pop() and PyDict_PopString() to Python 3.13.0a2 +#if PY_VERSION_HEX < 0x030D00A2 +static inline int +PyDict_Pop(PyObject *dict, PyObject *key, PyObject **result) +{ + PyObject *value; + + if (!PyDict_Check(dict)) { + PyErr_BadInternalCall(); + if (result) { + *result = NULL; + } + return -1; + } + + // bpo-16991 added _PyDict_Pop() to Python 3.5.0b2. + // Python 3.6.0b3 changed _PyDict_Pop() first argument type to PyObject*. + // Python 3.13.0a1 removed _PyDict_Pop(). +#if defined(PYPY_VERSION) || PY_VERSION_HEX < 0x030500b2 || PY_VERSION_HEX >= 0x030D0000 + value = PyObject_CallMethod(dict, "pop", "O", key); +#elif PY_VERSION_HEX < 0x030600b3 + value = _PyDict_Pop(_Py_CAST(PyDictObject*, dict), key, NULL); +#else + value = _PyDict_Pop(dict, key, NULL); +#endif + if (value == NULL) { + if (result) { + *result = NULL; + } + if (PyErr_Occurred() && !PyErr_ExceptionMatches(PyExc_KeyError)) { + return -1; + } + PyErr_Clear(); + return 0; + } + if (result) { + *result = value; + } + else { + Py_DECREF(value); + } + return 1; +} + +static inline int +PyDict_PopString(PyObject *dict, const char *key, PyObject **result) +{ + PyObject *key_obj = PyUnicode_FromString(key); + if (key_obj == NULL) { + if (result != NULL) { + *result = NULL; + } + return -1; + } + + int res = PyDict_Pop(dict, key_obj, result); + Py_DECREF(key_obj); + return res; +} +#endif + + +#if PY_VERSION_HEX < 0x030200A4 +// Python 3.2.0a4 added Py_hash_t type +typedef Py_ssize_t Py_hash_t; +#endif + + +// gh-111545 added Py_HashPointer() to Python 3.13.0a3 +#if PY_VERSION_HEX < 0x030D00A3 +static inline Py_hash_t Py_HashPointer(const void *ptr) +{ +#if PY_VERSION_HEX >= 0x030900A4 && !defined(PYPY_VERSION) + return _Py_HashPointer(ptr); +#else + return _Py_HashPointer(_Py_CAST(void*, ptr)); +#endif +} +#endif + + +// Python 3.13a4 added a PyTime API. +// Use the private API added to Python 3.5. +#if PY_VERSION_HEX < 0x030D00A4 && PY_VERSION_HEX >= 0x03050000 +typedef _PyTime_t PyTime_t; +#define PyTime_MIN _PyTime_MIN +#define PyTime_MAX _PyTime_MAX + +static inline double PyTime_AsSecondsDouble(PyTime_t t) +{ return _PyTime_AsSecondsDouble(t); } + +static inline int PyTime_Monotonic(PyTime_t *result) +{ return _PyTime_GetMonotonicClockWithInfo(result, NULL); } + +static inline int PyTime_Time(PyTime_t *result) +{ return _PyTime_GetSystemClockWithInfo(result, NULL); } + +static inline int PyTime_PerfCounter(PyTime_t *result) +{ +#if PY_VERSION_HEX >= 0x03070000 && !defined(PYPY_VERSION) + return _PyTime_GetPerfCounterWithInfo(result, NULL); +#elif PY_VERSION_HEX >= 0x03070000 + // Call time.perf_counter_ns() and convert Python int object to PyTime_t. + // Cache time.perf_counter_ns() function for best performance. + static PyObject *func = NULL; + if (func == NULL) { + PyObject *mod = PyImport_ImportModule("time"); + if (mod == NULL) { + return -1; + } + + func = PyObject_GetAttrString(mod, "perf_counter_ns"); + Py_DECREF(mod); + if (func == NULL) { + return -1; + } + } + + PyObject *res = PyObject_CallNoArgs(func); + if (res == NULL) { + return -1; + } + long long value = PyLong_AsLongLong(res); + Py_DECREF(res); + + if (value == -1 && PyErr_Occurred()) { + return -1; + } + + Py_BUILD_ASSERT(sizeof(value) >= sizeof(PyTime_t)); + *result = (PyTime_t)value; + return 0; +#else + // Call time.perf_counter() and convert C double to PyTime_t. + // Cache time.perf_counter() function for best performance. + static PyObject *func = NULL; + if (func == NULL) { + PyObject *mod = PyImport_ImportModule("time"); + if (mod == NULL) { + return -1; + } + + func = PyObject_GetAttrString(mod, "perf_counter"); + Py_DECREF(mod); + if (func == NULL) { + return -1; + } + } + + PyObject *res = PyObject_CallNoArgs(func); + if (res == NULL) { + return -1; + } + double d = PyFloat_AsDouble(res); + Py_DECREF(res); + + if (d == -1.0 && PyErr_Occurred()) { + return -1; + } + + // Avoid floor() to avoid having to link to libm + *result = (PyTime_t)(d * 1e9); + return 0; +#endif +} + +#endif + +// gh-111389 added hash constants to Python 3.13.0a5. These constants were +// added first as private macros to Python 3.4.0b1 and PyPy 7.3.8. +#if (!defined(PyHASH_BITS) \ + && ((!defined(PYPY_VERSION) && PY_VERSION_HEX >= 0x030400B1) \ + || (defined(PYPY_VERSION) && PY_VERSION_HEX >= 0x03070000 \ + && PYPY_VERSION_NUM >= 0x07030800))) +# define PyHASH_BITS _PyHASH_BITS +# define PyHASH_MODULUS _PyHASH_MODULUS +# define PyHASH_INF _PyHASH_INF +# define PyHASH_IMAG _PyHASH_IMAG +#endif + + +// gh-111545 added Py_GetConstant() and Py_GetConstantBorrowed() +// to Python 3.13.0a6 +#if PY_VERSION_HEX < 0x030D00A6 && !defined(Py_CONSTANT_NONE) + +#define Py_CONSTANT_NONE 0 +#define Py_CONSTANT_FALSE 1 +#define Py_CONSTANT_TRUE 2 +#define Py_CONSTANT_ELLIPSIS 3 +#define Py_CONSTANT_NOT_IMPLEMENTED 4 +#define Py_CONSTANT_ZERO 5 +#define Py_CONSTANT_ONE 6 +#define Py_CONSTANT_EMPTY_STR 7 +#define Py_CONSTANT_EMPTY_BYTES 8 +#define Py_CONSTANT_EMPTY_TUPLE 9 + +static inline PyObject* Py_GetConstant(unsigned int constant_id) +{ + static PyObject* constants[Py_CONSTANT_EMPTY_TUPLE + 1] = {NULL}; + + if (constants[Py_CONSTANT_NONE] == NULL) { + constants[Py_CONSTANT_NONE] = Py_None; + constants[Py_CONSTANT_FALSE] = Py_False; + constants[Py_CONSTANT_TRUE] = Py_True; + constants[Py_CONSTANT_ELLIPSIS] = Py_Ellipsis; + constants[Py_CONSTANT_NOT_IMPLEMENTED] = Py_NotImplemented; + + constants[Py_CONSTANT_ZERO] = PyLong_FromLong(0); + if (constants[Py_CONSTANT_ZERO] == NULL) { + goto fatal_error; + } + + constants[Py_CONSTANT_ONE] = PyLong_FromLong(1); + if (constants[Py_CONSTANT_ONE] == NULL) { + goto fatal_error; + } + + constants[Py_CONSTANT_EMPTY_STR] = PyUnicode_FromStringAndSize("", 0); + if (constants[Py_CONSTANT_EMPTY_STR] == NULL) { + goto fatal_error; + } + + constants[Py_CONSTANT_EMPTY_BYTES] = PyBytes_FromStringAndSize("", 0); + if (constants[Py_CONSTANT_EMPTY_BYTES] == NULL) { + goto fatal_error; + } + + constants[Py_CONSTANT_EMPTY_TUPLE] = PyTuple_New(0); + if (constants[Py_CONSTANT_EMPTY_TUPLE] == NULL) { + goto fatal_error; + } + // goto dance to avoid compiler warnings about Py_FatalError() + goto init_done; + +fatal_error: + // This case should never happen + Py_FatalError("Py_GetConstant() failed to get constants"); + } + +init_done: + if (constant_id <= Py_CONSTANT_EMPTY_TUPLE) { + return Py_NewRef(constants[constant_id]); + } + else { + PyErr_BadInternalCall(); + return NULL; + } +} + +static inline PyObject* Py_GetConstantBorrowed(unsigned int constant_id) +{ + PyObject *obj = Py_GetConstant(constant_id); + Py_XDECREF(obj); + return obj; +} +#endif + + +// gh-114329 added PyList_GetItemRef() to Python 3.13.0a4 +#if PY_VERSION_HEX < 0x030D00A4 +static inline PyObject * +PyList_GetItemRef(PyObject *op, Py_ssize_t index) +{ + PyObject *item = PyList_GetItem(op, index); + Py_XINCREF(item); + return item; +} +#endif + + +// gh-114329 added PyList_GetItemRef() to Python 3.13.0a4 +#if PY_VERSION_HEX < 0x030D00A4 +static inline int +PyDict_SetDefaultRef(PyObject *d, PyObject *key, PyObject *default_value, + PyObject **result) +{ + PyObject *value; + if (PyDict_GetItemRef(d, key, &value) < 0) { + // get error + if (result) { + *result = NULL; + } + return -1; + } + if (value != NULL) { + // present + if (result) { + *result = value; + } + else { + Py_DECREF(value); + } + return 1; + } + + // missing: set the item + if (PyDict_SetItem(d, key, default_value) < 0) { + // set error + if (result) { + *result = NULL; + } + return -1; + } + if (result) { + *result = Py_NewRef(default_value); + } + return 0; +} +#endif + +#if PY_VERSION_HEX < 0x030D00B3 +# define Py_BEGIN_CRITICAL_SECTION(op) { +# define Py_END_CRITICAL_SECTION() } +# define Py_BEGIN_CRITICAL_SECTION2(a, b) { +# define Py_END_CRITICAL_SECTION2() } +#endif + +#if PY_VERSION_HEX < 0x030E0000 && PY_VERSION_HEX >= 0x03060000 && !defined(PYPY_VERSION) +typedef struct PyUnicodeWriter PyUnicodeWriter; + +static inline void PyUnicodeWriter_Discard(PyUnicodeWriter *writer) +{ + _PyUnicodeWriter_Dealloc((_PyUnicodeWriter*)writer); + PyMem_Free(writer); +} + +static inline PyUnicodeWriter* PyUnicodeWriter_Create(Py_ssize_t length) +{ + if (length < 0) { + PyErr_SetString(PyExc_ValueError, + "length must be positive"); + return NULL; + } + + const size_t size = sizeof(_PyUnicodeWriter); + PyUnicodeWriter *pub_writer = (PyUnicodeWriter *)PyMem_Malloc(size); + if (pub_writer == _Py_NULL) { + PyErr_NoMemory(); + return _Py_NULL; + } + _PyUnicodeWriter *writer = (_PyUnicodeWriter *)pub_writer; + + _PyUnicodeWriter_Init(writer); + if (_PyUnicodeWriter_Prepare(writer, length, 127) < 0) { + PyUnicodeWriter_Discard(pub_writer); + return NULL; + } + writer->overallocate = 1; + return pub_writer; +} + +static inline PyObject* PyUnicodeWriter_Finish(PyUnicodeWriter *writer) +{ + PyObject *str = _PyUnicodeWriter_Finish((_PyUnicodeWriter*)writer); + assert(((_PyUnicodeWriter*)writer)->buffer == NULL); + PyMem_Free(writer); + return str; +} + +static inline int +PyUnicodeWriter_WriteChar(PyUnicodeWriter *writer, Py_UCS4 ch) +{ + if (ch > 0x10ffff) { + PyErr_SetString(PyExc_ValueError, + "character must be in range(0x110000)"); + return -1; + } + + return _PyUnicodeWriter_WriteChar((_PyUnicodeWriter*)writer, ch); +} + +static inline int +PyUnicodeWriter_WriteStr(PyUnicodeWriter *writer, PyObject *obj) +{ + PyObject *str = PyObject_Str(obj); + if (str == NULL) { + return -1; + } + + int res = _PyUnicodeWriter_WriteStr((_PyUnicodeWriter*)writer, str); + Py_DECREF(str); + return res; +} + +static inline int +PyUnicodeWriter_WriteRepr(PyUnicodeWriter *writer, PyObject *obj) +{ + PyObject *str = PyObject_Repr(obj); + if (str == NULL) { + return -1; + } + + int res = _PyUnicodeWriter_WriteStr((_PyUnicodeWriter*)writer, str); + Py_DECREF(str); + return res; +} + +static inline int +PyUnicodeWriter_WriteUTF8(PyUnicodeWriter *writer, + const char *str, Py_ssize_t size) +{ + if (size < 0) { + size = (Py_ssize_t)strlen(str); + } + + PyObject *str_obj = PyUnicode_FromStringAndSize(str, size); + if (str_obj == _Py_NULL) { + return -1; + } + + int res = _PyUnicodeWriter_WriteStr((_PyUnicodeWriter*)writer, str_obj); + Py_DECREF(str_obj); + return res; +} + +static inline int +PyUnicodeWriter_WriteASCII(PyUnicodeWriter *writer, + const char *str, Py_ssize_t size) +{ + if (size < 0) { + size = (Py_ssize_t)strlen(str); + } + + return _PyUnicodeWriter_WriteASCIIString((_PyUnicodeWriter*)writer, + str, size); +} + +static inline int +PyUnicodeWriter_WriteWideChar(PyUnicodeWriter *writer, + const wchar_t *str, Py_ssize_t size) +{ + if (size < 0) { + size = (Py_ssize_t)wcslen(str); + } + + PyObject *str_obj = PyUnicode_FromWideChar(str, size); + if (str_obj == _Py_NULL) { + return -1; + } + + int res = _PyUnicodeWriter_WriteStr((_PyUnicodeWriter*)writer, str_obj); + Py_DECREF(str_obj); + return res; +} + +static inline int +PyUnicodeWriter_WriteSubstring(PyUnicodeWriter *writer, PyObject *str, + Py_ssize_t start, Py_ssize_t end) +{ + if (!PyUnicode_Check(str)) { + PyErr_Format(PyExc_TypeError, "expect str, not %s", + Py_TYPE(str)->tp_name); + return -1; + } + if (start < 0 || start > end) { + PyErr_Format(PyExc_ValueError, "invalid start argument"); + return -1; + } + if (end > PyUnicode_GET_LENGTH(str)) { + PyErr_Format(PyExc_ValueError, "invalid end argument"); + return -1; + } + + return _PyUnicodeWriter_WriteSubstring((_PyUnicodeWriter*)writer, str, + start, end); +} + +static inline int +PyUnicodeWriter_Format(PyUnicodeWriter *writer, const char *format, ...) +{ + va_list vargs; + va_start(vargs, format); + PyObject *str = PyUnicode_FromFormatV(format, vargs); + va_end(vargs); + if (str == _Py_NULL) { + return -1; + } + + int res = _PyUnicodeWriter_WriteStr((_PyUnicodeWriter*)writer, str); + Py_DECREF(str); + return res; +} +#endif // PY_VERSION_HEX < 0x030E0000 + +// gh-116560 added PyLong_GetSign() to Python 3.14.0a0 +#if PY_VERSION_HEX < 0x030E00A0 +static inline int PyLong_GetSign(PyObject *obj, int *sign) +{ + if (!PyLong_Check(obj)) { + PyErr_Format(PyExc_TypeError, "expect int, got %s", Py_TYPE(obj)->tp_name); + return -1; + } + + *sign = _PyLong_Sign(obj); + return 0; +} +#endif + +// gh-126061 added PyLong_IsPositive/Negative/Zero() to Python in 3.14.0a2 +#if PY_VERSION_HEX < 0x030E00A2 +static inline int PyLong_IsPositive(PyObject *obj) +{ + if (!PyLong_Check(obj)) { + PyErr_Format(PyExc_TypeError, "expected int, got %s", Py_TYPE(obj)->tp_name); + return -1; + } + return _PyLong_Sign(obj) == 1; +} + +static inline int PyLong_IsNegative(PyObject *obj) +{ + if (!PyLong_Check(obj)) { + PyErr_Format(PyExc_TypeError, "expected int, got %s", Py_TYPE(obj)->tp_name); + return -1; + } + return _PyLong_Sign(obj) == -1; +} + +static inline int PyLong_IsZero(PyObject *obj) +{ + if (!PyLong_Check(obj)) { + PyErr_Format(PyExc_TypeError, "expected int, got %s", Py_TYPE(obj)->tp_name); + return -1; + } + return _PyLong_Sign(obj) == 0; +} +#endif + + +// gh-124502 added PyUnicode_Equal() to Python 3.14.0a0 +#if PY_VERSION_HEX < 0x030E00A0 +static inline int PyUnicode_Equal(PyObject *str1, PyObject *str2) +{ + if (!PyUnicode_Check(str1)) { + PyErr_Format(PyExc_TypeError, "first argument must be str, not %s", + Py_TYPE(str1)->tp_name); + return -1; + } + if (!PyUnicode_Check(str2)) { + PyErr_Format(PyExc_TypeError, "second argument must be str, not %s", + Py_TYPE(str2)->tp_name); + return -1; + } + +#if PY_VERSION_HEX >= 0x030d0000 && !defined(PYPY_VERSION) + PyAPI_FUNC(int) _PyUnicode_Equal(PyObject *str1, PyObject *str2); + + return _PyUnicode_Equal(str1, str2); +#elif PY_VERSION_HEX >= 0x03060000 && !defined(PYPY_VERSION) + return _PyUnicode_EQ(str1, str2); +#elif PY_VERSION_HEX >= 0x03090000 && defined(PYPY_VERSION) + return _PyUnicode_EQ(str1, str2); +#else + return (PyUnicode_Compare(str1, str2) == 0); +#endif +} +#endif + + +// gh-121645 added PyBytes_Join() to Python 3.14.0a0 +#if PY_VERSION_HEX < 0x030E00A0 +static inline PyObject* PyBytes_Join(PyObject *sep, PyObject *iterable) +{ + return _PyBytes_Join(sep, iterable); +} +#endif + + +#if PY_VERSION_HEX < 0x030E00A0 +static inline Py_hash_t Py_HashBuffer(const void *ptr, Py_ssize_t len) +{ +#if PY_VERSION_HEX >= 0x03000000 && !defined(PYPY_VERSION) + PyAPI_FUNC(Py_hash_t) _Py_HashBytes(const void *src, Py_ssize_t len); + + return _Py_HashBytes(ptr, len); +#else + Py_hash_t hash; + PyObject *bytes = PyBytes_FromStringAndSize((const char*)ptr, len); + if (bytes == NULL) { + return -1; + } + hash = PyObject_Hash(bytes); + Py_DECREF(bytes); + return hash; +#endif +} +#endif + + +#if PY_VERSION_HEX < 0x030E00A0 +static inline int PyIter_NextItem(PyObject *iter, PyObject **item) +{ + iternextfunc tp_iternext; + + assert(iter != NULL); + assert(item != NULL); + + tp_iternext = Py_TYPE(iter)->tp_iternext; + if (tp_iternext == NULL) { + *item = NULL; + PyErr_Format(PyExc_TypeError, "expected an iterator, got '%s'", + Py_TYPE(iter)->tp_name); + return -1; + } + + if ((*item = tp_iternext(iter))) { + return 1; + } + if (!PyErr_Occurred()) { + return 0; + } + if (PyErr_ExceptionMatches(PyExc_StopIteration)) { + PyErr_Clear(); + return 0; + } + return -1; +} +#endif + + +#if PY_VERSION_HEX < 0x030E00A0 +static inline PyObject* PyLong_FromInt32(int32_t value) +{ + Py_BUILD_ASSERT(sizeof(long) >= 4); + return PyLong_FromLong(value); +} + +static inline PyObject* PyLong_FromInt64(int64_t value) +{ + Py_BUILD_ASSERT(sizeof(long long) >= 8); + return PyLong_FromLongLong(value); +} + +static inline PyObject* PyLong_FromUInt32(uint32_t value) +{ + Py_BUILD_ASSERT(sizeof(unsigned long) >= 4); + return PyLong_FromUnsignedLong(value); +} + +static inline PyObject* PyLong_FromUInt64(uint64_t value) +{ + Py_BUILD_ASSERT(sizeof(unsigned long long) >= 8); + return PyLong_FromUnsignedLongLong(value); +} + +static inline int PyLong_AsInt32(PyObject *obj, int32_t *pvalue) +{ + Py_BUILD_ASSERT(sizeof(int) == 4); + int value = PyLong_AsInt(obj); + if (value == -1 && PyErr_Occurred()) { + return -1; + } + *pvalue = (int32_t)value; + return 0; +} + +static inline int PyLong_AsInt64(PyObject *obj, int64_t *pvalue) +{ + Py_BUILD_ASSERT(sizeof(long long) == 8); + long long value = PyLong_AsLongLong(obj); + if (value == -1 && PyErr_Occurred()) { + return -1; + } + *pvalue = (int64_t)value; + return 0; +} + +static inline int PyLong_AsUInt32(PyObject *obj, uint32_t *pvalue) +{ + Py_BUILD_ASSERT(sizeof(long) >= 4); + unsigned long value = PyLong_AsUnsignedLong(obj); + if (value == (unsigned long)-1 && PyErr_Occurred()) { + return -1; + } +#if SIZEOF_LONG > 4 + if ((unsigned long)UINT32_MAX < value) { + PyErr_SetString(PyExc_OverflowError, + "Python int too large to convert to C uint32_t"); + return -1; + } +#endif + *pvalue = (uint32_t)value; + return 0; +} + +static inline int PyLong_AsUInt64(PyObject *obj, uint64_t *pvalue) +{ + Py_BUILD_ASSERT(sizeof(long long) == 8); + unsigned long long value = PyLong_AsUnsignedLongLong(obj); + if (value == (unsigned long long)-1 && PyErr_Occurred()) { + return -1; + } + *pvalue = (uint64_t)value; + return 0; +} +#endif + + +// gh-102471 added import and export API for integers to 3.14.0a2. +#if PY_VERSION_HEX < 0x030E00A2 && PY_VERSION_HEX >= 0x03000000 && !defined(PYPY_VERSION) +// Helpers to access PyLongObject internals. +static inline void +_PyLong_SetSignAndDigitCount(PyLongObject *op, int sign, Py_ssize_t size) +{ +#if PY_VERSION_HEX >= 0x030C0000 + op->long_value.lv_tag = (uintptr_t)(1 - sign) | ((uintptr_t)(size) << 3); +#elif PY_VERSION_HEX >= 0x030900A4 + Py_SET_SIZE(op, sign * size); +#else + Py_SIZE(op) = sign * size; +#endif +} + +static inline Py_ssize_t +_PyLong_DigitCount(const PyLongObject *op) +{ +#if PY_VERSION_HEX >= 0x030C0000 + return (Py_ssize_t)(op->long_value.lv_tag >> 3); +#else + return _PyLong_Sign((PyObject*)op) < 0 ? -Py_SIZE(op) : Py_SIZE(op); +#endif +} + +static inline digit* +_PyLong_GetDigits(const PyLongObject *op) +{ +#if PY_VERSION_HEX >= 0x030C0000 + return (digit*)(op->long_value.ob_digit); +#else + return (digit*)(op->ob_digit); +#endif +} + +typedef struct PyLongLayout { + uint8_t bits_per_digit; + uint8_t digit_size; + int8_t digits_order; + int8_t digit_endianness; +} PyLongLayout; + +typedef struct PyLongExport { + int64_t value; + uint8_t negative; + Py_ssize_t ndigits; + const void *digits; + Py_uintptr_t _reserved; +} PyLongExport; + +typedef struct PyLongWriter PyLongWriter; + +static inline const PyLongLayout* +PyLong_GetNativeLayout(void) +{ + static const PyLongLayout PyLong_LAYOUT = { + PyLong_SHIFT, + sizeof(digit), + -1, // least significant first + PY_LITTLE_ENDIAN ? -1 : 1, + }; + + return &PyLong_LAYOUT; +} + +static inline int +PyLong_Export(PyObject *obj, PyLongExport *export_long) +{ + if (!PyLong_Check(obj)) { + memset(export_long, 0, sizeof(*export_long)); + PyErr_Format(PyExc_TypeError, "expected int, got %s", + Py_TYPE(obj)->tp_name); + return -1; + } + + // Fast-path: try to convert to a int64_t + PyLongObject *self = (PyLongObject*)obj; + int overflow; +#if SIZEOF_LONG == 8 + long value = PyLong_AsLongAndOverflow(obj, &overflow); +#else + // Windows has 32-bit long, so use 64-bit long long instead + long long value = PyLong_AsLongLongAndOverflow(obj, &overflow); +#endif + Py_BUILD_ASSERT(sizeof(value) == sizeof(int64_t)); + // the function cannot fail since obj is a PyLongObject + assert(!(value == -1 && PyErr_Occurred())); + + if (!overflow) { + export_long->value = value; + export_long->negative = 0; + export_long->ndigits = 0; + export_long->digits = 0; + export_long->_reserved = 0; + } + else { + export_long->value = 0; + export_long->negative = _PyLong_Sign(obj) < 0; + export_long->ndigits = _PyLong_DigitCount(self); + if (export_long->ndigits == 0) { + export_long->ndigits = 1; + } + export_long->digits = _PyLong_GetDigits(self); + export_long->_reserved = (Py_uintptr_t)Py_NewRef(obj); + } + return 0; +} + +static inline void +PyLong_FreeExport(PyLongExport *export_long) +{ + PyObject *obj = (PyObject*)export_long->_reserved; + + if (obj) { + export_long->_reserved = 0; + Py_DECREF(obj); + } +} + +static inline PyLongWriter* +PyLongWriter_Create(int negative, Py_ssize_t ndigits, void **digits) +{ + if (ndigits <= 0) { + PyErr_SetString(PyExc_ValueError, "ndigits must be positive"); + return NULL; + } + assert(digits != NULL); + + PyLongObject *obj = _PyLong_New(ndigits); + if (obj == NULL) { + return NULL; + } + _PyLong_SetSignAndDigitCount(obj, negative?-1:1, ndigits); + + *digits = _PyLong_GetDigits(obj); + return (PyLongWriter*)obj; +} + +static inline void +PyLongWriter_Discard(PyLongWriter *writer) +{ + PyLongObject *obj = (PyLongObject *)writer; + + assert(Py_REFCNT(obj) == 1); + Py_DECREF(obj); +} + +static inline PyObject* +PyLongWriter_Finish(PyLongWriter *writer) +{ + PyObject *obj = (PyObject *)writer; + PyLongObject *self = (PyLongObject*)obj; + Py_ssize_t j = _PyLong_DigitCount(self); + Py_ssize_t i = j; + int sign = _PyLong_Sign(obj); + + assert(Py_REFCNT(obj) == 1); + + // Normalize and get singleton if possible + while (i > 0 && _PyLong_GetDigits(self)[i-1] == 0) { + --i; + } + if (i != j) { + if (i == 0) { + sign = 0; + } + _PyLong_SetSignAndDigitCount(self, sign, i); + } + if (i <= 1) { + long val = sign * (long)(_PyLong_GetDigits(self)[0]); + Py_DECREF(obj); + return PyLong_FromLong(val); + } + + return obj; +} +#endif + + +#if PY_VERSION_HEX < 0x030C00A3 +# define Py_T_SHORT T_SHORT +# define Py_T_INT T_INT +# define Py_T_LONG T_LONG +# define Py_T_FLOAT T_FLOAT +# define Py_T_DOUBLE T_DOUBLE +# define Py_T_STRING T_STRING +# define _Py_T_OBJECT T_OBJECT +# define Py_T_CHAR T_CHAR +# define Py_T_BYTE T_BYTE +# define Py_T_UBYTE T_UBYTE +# define Py_T_USHORT T_USHORT +# define Py_T_UINT T_UINT +# define Py_T_ULONG T_ULONG +# define Py_T_STRING_INPLACE T_STRING_INPLACE +# define Py_T_BOOL T_BOOL +# define Py_T_OBJECT_EX T_OBJECT_EX +# define Py_T_LONGLONG T_LONGLONG +# define Py_T_ULONGLONG T_ULONGLONG +# define Py_T_PYSSIZET T_PYSSIZET + +# if PY_VERSION_HEX >= 0x03000000 && !defined(PYPY_VERSION) +# define _Py_T_NONE T_NONE +# endif + +# define Py_READONLY READONLY +# define Py_AUDIT_READ READ_RESTRICTED +# define _Py_WRITE_RESTRICTED PY_WRITE_RESTRICTED +#endif + + +// gh-127350 added Py_fopen() and Py_fclose() to Python 3.14a4 +#if PY_VERSION_HEX < 0x030E00A4 +static inline FILE* Py_fopen(PyObject *path, const char *mode) +{ +#if 0x030400A2 <= PY_VERSION_HEX && !defined(PYPY_VERSION) + PyAPI_FUNC(FILE*) _Py_fopen_obj(PyObject *path, const char *mode); + + return _Py_fopen_obj(path, mode); +#else + FILE *f; + PyObject *bytes; +#if PY_VERSION_HEX >= 0x03000000 + if (!PyUnicode_FSConverter(path, &bytes)) { + return NULL; + } +#else + if (!PyString_Check(path)) { + PyErr_SetString(PyExc_TypeError, "except str"); + return NULL; + } + bytes = Py_NewRef(path); +#endif + const char *path_bytes = PyBytes_AS_STRING(bytes); + + f = fopen(path_bytes, mode); + Py_DECREF(bytes); + + if (f == NULL) { + PyErr_SetFromErrnoWithFilenameObject(PyExc_OSError, path); + return NULL; + } + return f; +#endif +} + +static inline int Py_fclose(FILE *file) +{ + return fclose(file); +} +#endif + + +#if 0x03090000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x030E0000 && !defined(PYPY_VERSION) +static inline PyObject* +PyConfig_Get(const char *name) +{ + typedef enum { + _PyConfig_MEMBER_INT, + _PyConfig_MEMBER_UINT, + _PyConfig_MEMBER_ULONG, + _PyConfig_MEMBER_BOOL, + _PyConfig_MEMBER_WSTR, + _PyConfig_MEMBER_WSTR_OPT, + _PyConfig_MEMBER_WSTR_LIST, + } PyConfigMemberType; + + typedef struct { + const char *name; + size_t offset; + PyConfigMemberType type; + const char *sys_attr; + } PyConfigSpec; + +#define PYTHONCAPI_COMPAT_SPEC(MEMBER, TYPE, sys_attr) \ + {#MEMBER, offsetof(PyConfig, MEMBER), \ + _PyConfig_MEMBER_##TYPE, sys_attr} + + static const PyConfigSpec config_spec[] = { + PYTHONCAPI_COMPAT_SPEC(argv, WSTR_LIST, "argv"), + PYTHONCAPI_COMPAT_SPEC(base_exec_prefix, WSTR_OPT, "base_exec_prefix"), + PYTHONCAPI_COMPAT_SPEC(base_executable, WSTR_OPT, "_base_executable"), + PYTHONCAPI_COMPAT_SPEC(base_prefix, WSTR_OPT, "base_prefix"), + PYTHONCAPI_COMPAT_SPEC(bytes_warning, UINT, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(exec_prefix, WSTR_OPT, "exec_prefix"), + PYTHONCAPI_COMPAT_SPEC(executable, WSTR_OPT, "executable"), + PYTHONCAPI_COMPAT_SPEC(inspect, BOOL, _Py_NULL), +#if 0x030C0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(int_max_str_digits, UINT, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(interactive, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(module_search_paths, WSTR_LIST, "path"), + PYTHONCAPI_COMPAT_SPEC(optimization_level, UINT, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(parser_debug, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(platlibdir, WSTR, "platlibdir"), + PYTHONCAPI_COMPAT_SPEC(prefix, WSTR_OPT, "prefix"), + PYTHONCAPI_COMPAT_SPEC(pycache_prefix, WSTR_OPT, "pycache_prefix"), + PYTHONCAPI_COMPAT_SPEC(quiet, BOOL, _Py_NULL), +#if 0x030B0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(stdlib_dir, WSTR_OPT, "_stdlib_dir"), +#endif + PYTHONCAPI_COMPAT_SPEC(use_environment, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(verbose, UINT, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(warnoptions, WSTR_LIST, "warnoptions"), + PYTHONCAPI_COMPAT_SPEC(write_bytecode, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(xoptions, WSTR_LIST, "_xoptions"), + PYTHONCAPI_COMPAT_SPEC(buffered_stdio, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(check_hash_pycs_mode, WSTR, _Py_NULL), +#if 0x030B0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(code_debug_ranges, BOOL, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(configure_c_stdio, BOOL, _Py_NULL), +#if 0x030D0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(cpu_count, INT, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(dev_mode, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(dump_refs, BOOL, _Py_NULL), +#if 0x030B0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(dump_refs_file, WSTR_OPT, _Py_NULL), +#endif +#ifdef Py_GIL_DISABLED + PYTHONCAPI_COMPAT_SPEC(enable_gil, INT, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(faulthandler, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(filesystem_encoding, WSTR, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(filesystem_errors, WSTR, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(hash_seed, ULONG, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(home, WSTR_OPT, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(import_time, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(install_signal_handlers, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(isolated, BOOL, _Py_NULL), +#ifdef MS_WINDOWS + PYTHONCAPI_COMPAT_SPEC(legacy_windows_stdio, BOOL, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(malloc_stats, BOOL, _Py_NULL), +#if 0x030A0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(orig_argv, WSTR_LIST, "orig_argv"), +#endif + PYTHONCAPI_COMPAT_SPEC(parse_argv, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(pathconfig_warnings, BOOL, _Py_NULL), +#if 0x030C0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(perf_profiling, UINT, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(program_name, WSTR, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(run_command, WSTR_OPT, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(run_filename, WSTR_OPT, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(run_module, WSTR_OPT, _Py_NULL), +#if 0x030B0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(safe_path, BOOL, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(show_ref_count, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(site_import, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(skip_source_first_line, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(stdio_encoding, WSTR, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(stdio_errors, WSTR, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(tracemalloc, UINT, _Py_NULL), +#if 0x030B0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(use_frozen_modules, BOOL, _Py_NULL), +#endif + PYTHONCAPI_COMPAT_SPEC(use_hash_seed, BOOL, _Py_NULL), + PYTHONCAPI_COMPAT_SPEC(user_site_directory, BOOL, _Py_NULL), +#if 0x030A0000 <= PY_VERSION_HEX + PYTHONCAPI_COMPAT_SPEC(warn_default_encoding, BOOL, _Py_NULL), +#endif + }; + +#undef PYTHONCAPI_COMPAT_SPEC + + const PyConfigSpec *spec; + int found = 0; + for (size_t i=0; i < sizeof(config_spec) / sizeof(config_spec[0]); i++) { + spec = &config_spec[i]; + if (strcmp(spec->name, name) == 0) { + found = 1; + break; + } + } + if (found) { + if (spec->sys_attr != NULL) { + PyObject *value = PySys_GetObject(spec->sys_attr); + if (value == NULL) { + PyErr_Format(PyExc_RuntimeError, "lost sys.%s", spec->sys_attr); + return NULL; + } + return Py_NewRef(value); + } + + PyAPI_FUNC(const PyConfig*) _Py_GetConfig(void); + + const PyConfig *config = _Py_GetConfig(); + void *member = (char *)config + spec->offset; + switch (spec->type) { + case _PyConfig_MEMBER_INT: + case _PyConfig_MEMBER_UINT: + { + int value = *(int *)member; + return PyLong_FromLong(value); + } + case _PyConfig_MEMBER_BOOL: + { + int value = *(int *)member; + return PyBool_FromLong(value != 0); + } + case _PyConfig_MEMBER_ULONG: + { + unsigned long value = *(unsigned long *)member; + return PyLong_FromUnsignedLong(value); + } + case _PyConfig_MEMBER_WSTR: + case _PyConfig_MEMBER_WSTR_OPT: + { + wchar_t *wstr = *(wchar_t **)member; + if (wstr != NULL) { + return PyUnicode_FromWideChar(wstr, -1); + } + else { + return Py_NewRef(Py_None); + } + } + case _PyConfig_MEMBER_WSTR_LIST: + { + const PyWideStringList *list = (const PyWideStringList *)member; + PyObject *tuple = PyTuple_New(list->length); + if (tuple == NULL) { + return NULL; + } + + for (Py_ssize_t i = 0; i < list->length; i++) { + PyObject *item = PyUnicode_FromWideChar(list->items[i], -1); + if (item == NULL) { + Py_DECREF(tuple); + return NULL; + } + PyTuple_SET_ITEM(tuple, i, item); + } + return tuple; + } + default: + Py_UNREACHABLE(); + } + } + + PyErr_Format(PyExc_ValueError, "unknown config option name: %s", name); + return NULL; +} + +static inline int +PyConfig_GetInt(const char *name, int *value) +{ + PyObject *obj = PyConfig_Get(name); + if (obj == NULL) { + return -1; + } + + if (!PyLong_Check(obj)) { + Py_DECREF(obj); + PyErr_Format(PyExc_TypeError, "config option %s is not an int", name); + return -1; + } + + int as_int = PyLong_AsInt(obj); + Py_DECREF(obj); + if (as_int == -1 && PyErr_Occurred()) { + PyErr_Format(PyExc_OverflowError, + "config option %s value does not fit into a C int", name); + return -1; + } + + *value = as_int; + return 0; +} +#endif // PY_VERSION_HEX > 0x03090000 && !defined(PYPY_VERSION) + + +#if PY_VERSION_HEX < 0x030F0000 +static inline PyObject* +PySys_GetAttrString(const char *name) +{ +#if PY_VERSION_HEX >= 0x03000000 + PyObject *value = Py_XNewRef(PySys_GetObject(name)); +#else + PyObject *value = Py_XNewRef(PySys_GetObject((char*)name)); +#endif + if (value != NULL) { + return value; + } + if (!PyErr_Occurred()) { + PyErr_Format(PyExc_RuntimeError, "lost sys.%s", name); + } + return NULL; +} + +static inline PyObject* +PySys_GetAttr(PyObject *name) +{ +#if PY_VERSION_HEX >= 0x03000000 + const char *name_str = PyUnicode_AsUTF8(name); +#else + const char *name_str = PyString_AsString(name); +#endif + if (name_str == NULL) { + return NULL; + } + + return PySys_GetAttrString(name_str); +} + +static inline int +PySys_GetOptionalAttrString(const char *name, PyObject **value) +{ +#if PY_VERSION_HEX >= 0x03000000 + *value = Py_XNewRef(PySys_GetObject(name)); +#else + *value = Py_XNewRef(PySys_GetObject((char*)name)); +#endif + if (*value != NULL) { + return 1; + } + return 0; +} + +static inline int +PySys_GetOptionalAttr(PyObject *name, PyObject **value) +{ +#if PY_VERSION_HEX >= 0x03000000 + const char *name_str = PyUnicode_AsUTF8(name); +#else + const char *name_str = PyString_AsString(name); +#endif + if (name_str == NULL) { + *value = NULL; + return -1; + } + + return PySys_GetOptionalAttrString(name_str, value); +} +#endif // PY_VERSION_HEX < 0x030F00A1 + + #ifdef __cplusplus } #endif diff --git a/src/hunter/vendor/_cymem/cymem.c b/src/hunter/vendor/_cymem/cymem.c index 0bfd6d2..6571284 100644 --- a/src/hunter/vendor/_cymem/cymem.c +++ b/src/hunter/vendor/_cymem/cymem.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.0.10 */ +/* Generated by Cython 3.1.2 */ /* BEGIN: Cython Metadata { @@ -19,32 +19,21 @@ END: Cython Metadata */ #ifndef PY_SSIZE_T_CLEAN #define PY_SSIZE_T_CLEAN #endif /* PY_SSIZE_T_CLEAN */ -#if defined(CYTHON_LIMITED_API) && 0 - #ifndef Py_LIMITED_API - #if CYTHON_LIMITED_API+0 > 0x03030000 - #define Py_LIMITED_API CYTHON_LIMITED_API - #else - #define Py_LIMITED_API 0x03030000 - #endif - #endif +/* InitLimitedAPI */ +#if defined(Py_LIMITED_API) && !defined(CYTHON_LIMITED_API) + #define CYTHON_LIMITED_API 1 #endif #include "Python.h" #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) - #error Cython requires Python 2.7+ or Python 3.3+. -#else -#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API -#define __PYX_EXTRA_ABI_MODULE_NAME "limited" +#elif PY_VERSION_HEX < 0x03080000 + #error Cython requires Python 3.8+. #else -#define __PYX_EXTRA_ABI_MODULE_NAME "" -#endif -#define CYTHON_ABI "3_0_10" __PYX_EXTRA_ABI_MODULE_NAME -#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI -#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#define CYTHON_HEX_VERSION 0x03000AF0 +#define __PYX_ABI_VERSION "3_1_2" +#define CYTHON_HEX_VERSION 0x030102F0 #define CYTHON_FUTURE_DIVISION 1 +/* CModulePreamble */ #include #ifndef offsetof #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) @@ -84,19 +73,13 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 1 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS #define CYTHON_USE_TYPE_SLOTS 0 #undef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -107,8 +90,12 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -120,18 +107,22 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #undef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #undef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 + #define CYTHON_USE_EXC_INFO_STACK 1 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif @@ -142,20 +133,14 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 + #define CYTHON_USE_TYPE_SLOTS 1 #ifndef CYTHON_USE_TYPE_SPECS #define CYTHON_USE_TYPE_SPECS 0 #endif #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -166,8 +151,13 @@ END: Cython Metadata */ #define CYTHON_USE_PYLONG_INTERNALS 0 #undef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -179,7 +169,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3) + #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif #if PY_VERSION_HEX < 0x03090000 #undef CYTHON_PEP489_MULTI_PHASE_INIT @@ -189,14 +179,19 @@ END: Cython Metadata */ #endif #undef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00) + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00) + #endif + #undef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 0 #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100) #endif #undef CYTHON_USE_FREELISTS #define CYTHON_USE_FREELISTS 0 @@ -209,7 +204,7 @@ END: Cython Metadata */ #define CYTHON_COMPILING_IN_CPYTHON 0 #define CYTHON_COMPILING_IN_LIMITED_API 1 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 #undef CYTHON_CLINE_IN_TRACEBACK #define CYTHON_CLINE_IN_TRACEBACK 0 #undef CYTHON_USE_TYPE_SLOTS @@ -218,8 +213,6 @@ END: Cython Metadata */ #define CYTHON_USE_TYPE_SPECS 1 #undef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 #undef CYTHON_USE_PYLIST_INTERNALS #define CYTHON_USE_PYLIST_INTERNALS 0 #undef CYTHON_USE_UNICODE_INTERNALS @@ -232,8 +225,13 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #undef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 0 #undef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 0 #undef CYTHON_FAST_THREAD_STATE @@ -241,71 +239,7 @@ END: Cython Metadata */ #undef CYTHON_FAST_GIL #define CYTHON_FAST_GIL 0 #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #undef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 1 - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #endif - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL) - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 1 - #ifndef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #ifndef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #endif - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #ifndef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif - #ifndef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #endif - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 1 - #endif + #define CYTHON_METH_FASTCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) #undef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 0 #ifndef CYTHON_PEP487_INIT_SUBCLASS @@ -317,26 +251,37 @@ END: Cython Metadata */ #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif + #undef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING 0 #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 + #define CYTHON_USE_TP_FINALIZE 0 + #endif + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000) #endif #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #undef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 0 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 - #endif - #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 + #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 #endif + #undef CYTHON_USE_FREELISTS + #define CYTHON_USE_FREELISTS 0 #else #define CYTHON_COMPILING_IN_PYPY 0 #define CYTHON_COMPILING_IN_CPYTHON 1 #define CYTHON_COMPILING_IN_LIMITED_API 0 #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_NOGIL 0 - #ifndef CYTHON_USE_TYPE_SLOTS + #ifdef Py_GIL_DISABLED + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1 + #else + #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 + #endif + #if PY_VERSION_HEX < 0x030A0000 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #elif !defined(CYTHON_USE_TYPE_SLOTS) #define CYTHON_USE_TYPE_SLOTS 1 #endif #ifndef CYTHON_USE_TYPE_SPECS @@ -345,22 +290,19 @@ END: Cython Metadata */ #ifndef CYTHON_USE_PYTYPE_LOOKUP #define CYTHON_USE_PYTYPE_LOOKUP 1 #endif - #if PY_MAJOR_VERSION < 3 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif #ifndef CYTHON_USE_PYLONG_INTERNALS #define CYTHON_USE_PYLONG_INTERNALS 1 #endif - #ifndef CYTHON_USE_PYLIST_INTERNALS + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLIST_INTERNALS) #define CYTHON_USE_PYLIST_INTERNALS 1 #endif #ifndef CYTHON_USE_UNICODE_INTERNALS #define CYTHON_USE_UNICODE_INTERNALS 1 #endif - #if PY_VERSION_HEX < 0x030300F0 || PY_VERSION_HEX >= 0x030B00A2 + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2 #undef CYTHON_USE_UNICODE_WRITER #define CYTHON_USE_UNICODE_WRITER 0 #elif !defined(CYTHON_USE_UNICODE_WRITER) @@ -369,20 +311,32 @@ END: Cython Metadata */ #ifndef CYTHON_AVOID_BORROWED_REFS #define CYTHON_AVOID_BORROWED_REFS 0 #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 + #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS) + #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 + #endif #ifndef CYTHON_ASSUME_SAFE_MACROS #define CYTHON_ASSUME_SAFE_MACROS 1 #endif + #ifndef CYTHON_ASSUME_SAFE_SIZE + #define CYTHON_ASSUME_SAFE_SIZE 1 + #endif #ifndef CYTHON_UNPACK_METHODS #define CYTHON_UNPACK_METHODS 1 #endif #ifndef CYTHON_FAST_THREAD_STATE #define CYTHON_FAST_THREAD_STATE 1 #endif - #ifndef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6) + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + #undef CYTHON_FAST_GIL + #define CYTHON_FAST_GIL 0 + #elif !defined(CYTHON_FAST_GIL) + #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6) #endif #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1) + #define CYTHON_METH_FASTCALL 1 #endif #ifndef CYTHON_FAST_PYCALL #define CYTHON_FAST_PYCALL 1 @@ -390,51 +344,49 @@ END: Cython Metadata */ #ifndef CYTHON_PEP487_INIT_SUBCLASS #define CYTHON_PEP487_INIT_SUBCLASS 1 #endif - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT #define CYTHON_PEP489_MULTI_PHASE_INIT 1 #endif #ifndef CYTHON_USE_MODULE_STATE #define CYTHON_USE_MODULE_STATE 0 #endif - #if PY_VERSION_HEX < 0x030400a1 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #elif !defined(CYTHON_USE_TP_FINALIZE) + #ifndef CYTHON_USE_SYS_MONITORING + #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1) + #endif + #ifndef CYTHON_USE_TP_FINALIZE #define CYTHON_USE_TP_FINALIZE 1 #endif - #if PY_VERSION_HEX < 0x030600B1 + #ifndef CYTHON_USE_AM_SEND + #define CYTHON_USE_AM_SEND 1 + #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING #undef CYTHON_USE_DICT_VERSIONS #define CYTHON_USE_DICT_VERSIONS 0 #elif !defined(CYTHON_USE_DICT_VERSIONS) - #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5) + #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE) #endif - #if PY_VERSION_HEX < 0x030700A3 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #elif !defined(CYTHON_USE_EXC_INFO_STACK) + #ifndef CYTHON_USE_EXC_INFO_STACK #define CYTHON_USE_EXC_INFO_STACK 1 #endif #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 #endif #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 1 + #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING) #endif #endif -#if !defined(CYTHON_FAST_PYCCALL) -#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#ifndef CYTHON_FAST_PYCCALL +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCALL #endif -#if !defined(CYTHON_VECTORCALL) +#ifndef CYTHON_VECTORCALL +#if CYTHON_COMPILING_IN_LIMITED_API +#define CYTHON_VECTORCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) +#else #define CYTHON_VECTORCALL (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1) #endif +#endif #define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1) #if CYTHON_USE_PYLONG_INTERNALS - #if PY_MAJOR_VERSION < 3 - #include "longintrepr.h" - #endif #undef SHIFT #undef BASE #undef MASK @@ -494,7 +446,7 @@ END: Cython Metadata */ #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x) #endif #ifndef CYTHON_NCP_UNUSED -# if CYTHON_COMPILING_IN_CPYTHON +# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING # define CYTHON_NCP_UNUSED # else # define CYTHON_NCP_UNUSED CYTHON_UNUSED @@ -569,6 +521,9 @@ END: Cython Metadata */ #endif #endif #endif +#ifndef Py_UNREACHABLE + #define Py_UNREACHABLE() assert(0); abort() +#endif #ifdef __cplusplus template struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; @@ -583,6 +538,7 @@ END: Cython Metadata */ #endif #define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) +/* CInitCode */ #ifndef CYTHON_INLINE #if defined(__clang__) #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) @@ -597,109 +553,42 @@ END: Cython Metadata */ #endif #endif +/* PythonCompatibility */ #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" - #define __Pyx_DefaultClassType PyClass_Type - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" - #define __Pyx_DefaultClassType PyType_Type +#define __Pyx_BUILTIN_MODULE_NAME "builtins" +#define __Pyx_DefaultClassType PyType_Type #if CYTHON_COMPILING_IN_LIMITED_API - static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyObject *exception_table = NULL; - PyObject *types_module=NULL, *code_type=NULL, *result=NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030B0000 - PyObject *version_info; - PyObject *py_minor_version = NULL; - #endif - long minor_version = 0; - PyObject *type, *value, *traceback; - PyErr_Fetch(&type, &value, &traceback); - #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000 - minor_version = 11; - #else - if (!(version_info = PySys_GetObject("version_info"))) goto end; - if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; - minor_version = PyLong_AsLong(py_minor_version); - Py_DECREF(py_minor_version); - if (minor_version == -1 && PyErr_Occurred()) goto end; - #endif - if (!(types_module = PyImport_ImportModule("types"))) goto end; - if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; - if (minor_version <= 7) { - (void)p; - result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else if (minor_version <= 10) { - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else { - if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code, - c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); - } - end: - Py_XDECREF(code_type); - Py_XDECREF(exception_table); - Py_XDECREF(types_module); - if (type) { - PyErr_Restore(type, value, traceback); - } - return result; - } #ifndef CO_OPTIMIZED - #define CO_OPTIMIZED 0x0001 + static int CO_OPTIMIZED; #endif #ifndef CO_NEWLOCALS - #define CO_NEWLOCALS 0x0002 + static int CO_NEWLOCALS; #endif #ifndef CO_VARARGS - #define CO_VARARGS 0x0004 + static int CO_VARARGS; #endif #ifndef CO_VARKEYWORDS - #define CO_VARKEYWORDS 0x0008 + static int CO_VARKEYWORDS; #endif #ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x0200 + static int CO_ASYNC_GENERATOR; #endif #ifndef CO_GENERATOR - #define CO_GENERATOR 0x0020 + static int CO_GENERATOR; #endif #ifndef CO_COROUTINE - #define CO_COROUTINE 0x0080 + static int CO_COROUTINE; #endif -#elif PY_VERSION_HEX >= 0x030B0000 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyCodeObject *result; - PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); - if (!empty_bytes) return NULL; - result = - #if PY_VERSION_HEX >= 0x030C0000 - PyUnstable_Code_NewWithPosOnlyArgs - #else - PyCode_NewWithPosOnlyArgs - #endif - (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes); - Py_DECREF(empty_bytes); - return result; - } -#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #else - #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#endif + #ifndef CO_COROUTINE + #define CO_COROUTINE 0x80 + #endif + #ifndef CO_ASYNC_GENERATOR + #define CO_ASYNC_GENERATOR 0x200 + #endif #endif +static int __Pyx_init_co_variables(void); #if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE) #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type) #else @@ -731,12 +620,6 @@ END: Cython Metadata */ #else #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) #endif -#ifndef CO_COROUTINE - #define CO_COROUTINE 0x80 -#endif -#ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x200 -#endif #ifndef Py_TPFLAGS_CHECKTYPES #define Py_TPFLAGS_CHECKTYPES 0 #endif @@ -758,7 +641,7 @@ END: Cython Metadata */ #ifndef METH_STACKLESS #define METH_STACKLESS 0 #endif -#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) +#ifndef METH_FASTCALL #ifndef METH_FASTCALL #define METH_FASTCALL 0x80 #endif @@ -796,7 +679,7 @@ END: Cython Metadata */ #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) #endif -#if PY_MAJOR_VERSION >= 0x030900B1 +#if PY_VERSION_HEX >= 0x030900B1 #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) #else #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) @@ -813,7 +696,7 @@ static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; } #endif -static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void (*cfunc)(void)) { #if CYTHON_COMPILING_IN_LIMITED_API return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; #else @@ -821,7 +704,7 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #endif } #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) -#if __PYX_LIMITED_VERSION_HEX < 0x030900B1 +#if __PYX_LIMITED_VERSION_HEX < 0x03090000 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); #else @@ -837,8 +720,10 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define PyObject_Realloc(p) PyMem_Realloc(p) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) +#elif CYTHON_COMPILING_IN_GRAAL + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno)) #else #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) @@ -849,15 +734,11 @@ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) { #define __Pyx_PyThreadState_Current PyThreadState_GET() #elif PY_VERSION_HEX >= 0x030d00A1 #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() -#elif PY_VERSION_HEX >= 0x03060000 - #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() -#elif PY_VERSION_HEX >= 0x03000000 - #define __Pyx_PyThreadState_Current PyThreadState_GET() #else - #define __Pyx_PyThreadState_Current _PyThreadState_Current + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() #endif -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) +#if CYTHON_USE_MODULE_STATE +static CYTHON_INLINE void *__Pyx__PyModule_GetState(PyObject *op) { void *result; result = PyModule_GetState(op); @@ -865,85 +746,43 @@ static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op) Py_FatalError("Couldn't find the module state"); return result; } -#endif -#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE(obj), name, func_ctype) -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) +#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o) #else - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) -#endif -#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) -#include "pythread.h" -#define Py_tss_NEEDS_INIT 0 -typedef int Py_tss_t; -static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { - *key = PyThread_create_key(); - return 0; -} -static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { - Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); - *key = Py_tss_NEEDS_INIT; - return key; -} -static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { - PyObject_Free(key); -} -static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { - return *key != Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { - PyThread_delete_key(*key); - *key = Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { - return PyThread_set_key_value(*key, value); -} -static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { - return PyThread_get_key_value(*key); -} -#endif -#if PY_MAJOR_VERSION < 3 - #if CYTHON_COMPILING_IN_PYPY - #if PYPY_VERSION_NUM < 0x07030600 - #if defined(__cplusplus) && __cplusplus >= 201402L - [[deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")]] - #elif defined(__GNUC__) || defined(__clang__) - __attribute__ ((__deprecated__("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6"))) - #elif defined(_MSC_VER) - __declspec(deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")) - #endif - static CYTHON_INLINE int PyGILState_Check(void) { - return 0; - } - #else // PYPY_VERSION_NUM < 0x07030600 - #endif // PYPY_VERSION_NUM < 0x07030600 - #else - static CYTHON_INLINE int PyGILState_Check(void) { - PyThreadState * tstate = _PyThreadState_Current; - return tstate && (tstate == PyGILState_GetThisThreadState()); - } - #endif +#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global) #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized) +#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype) +#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype) +#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype) +#if CYTHON_USE_TYPE_SLOTS + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype) + #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL) + #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) +#else + #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) + #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\ + ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\ + (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\ + __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL) + #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype) + #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype) +#endif +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) #else #define __Pyx_PyDict_NewPresized(n) PyDict_New() #endif -#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) +#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); if (res == NULL) PyErr_Clear(); return res; } -#elif PY_MAJOR_VERSION >= 3 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000) +#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000 #define __Pyx_PyDict_GetItemStrWithError PyDict_GetItemWithError #define __Pyx_PyDict_GetItemStr PyDict_GetItem #else @@ -967,17 +806,11 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if CYTHON_USE_TYPE_SLOTS #define __Pyx_PyType_GetFlags(tp) (((PyTypeObject *)tp)->tp_flags) #define __Pyx_PyType_HasFeature(type, feature) ((__Pyx_PyType_GetFlags(type) & (feature)) != 0) - #define __Pyx_PyObject_GetIterNextFunc(obj) (Py_TYPE(obj)->tp_iternext) #else #define __Pyx_PyType_GetFlags(tp) (PyType_GetFlags((PyTypeObject *)tp)) #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) - #define __Pyx_PyObject_GetIterNextFunc(obj) PyIter_Next -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v) -#else - #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v) #endif +#define __Pyx_PyObject_GetIterNextFunc(iterator) __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc) #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ PyTypeObject *type = Py_TYPE((PyObject*)obj);\ @@ -989,24 +822,20 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyHeapTypeObject_GC_Del(obj) PyObject_GC_Del(obj) #endif #if CYTHON_COMPILING_IN_LIMITED_API - #define CYTHON_PEP393_ENABLED 1 #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GetLength(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) #define __Pyx_PyUnicode_DATA(u) ((void*)u) #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GetLength(u)) -#elif PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) - #define CYTHON_PEP393_ENABLED 1 +#else #if PY_VERSION_HEX >= 0x030C0000 #define __Pyx_PyUnicode_READY(op) (0) #else #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ 0 : _PyUnicode_Ready((PyObject *)(op))) #endif - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) @@ -1022,20 +851,6 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) #endif #endif -#else - #define CYTHON_PEP393_ENABLED 0 - #define PyUnicode_1BYTE_KIND 1 - #define PyUnicode_2BYTE_KIND 2 - #define PyUnicode_4BYTE_KIND 4 - #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) - #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U) - #define __Pyx_PyUnicode_KIND(u) ((int)sizeof(Py_UNICODE)) - #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) - #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch) - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) @@ -1049,8 +864,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #if !defined(PyUnicode_DecodeUnicodeEscape) #define PyUnicode_DecodeUnicodeEscape(s, size, errors) PyUnicode_Decode(s, size, "unicode_escape", errors) #endif - #if !defined(PyUnicode_Contains) || (PY_MAJOR_VERSION == 2 && PYPY_VERSION_NUM < 0x07030500) - #undef PyUnicode_Contains + #if !defined(PyUnicode_Contains) #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) #endif #if !defined(PyByteArray_Check) @@ -1060,33 +874,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) #endif #endif -#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) #define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) -#else - #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) -#endif -#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) - #define PyObject_ASCII(o) PyObject_Repr(o) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#ifndef PyObject_Unicode - #define PyObject_Unicode PyObject_Str -#endif -#endif -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) - #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) -#else - #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) - #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) -#endif #if CYTHON_COMPILING_IN_CPYTHON #define __Pyx_PySequence_ListKeepNew(obj)\ (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj)) @@ -1103,28 +891,83 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) #endif +#if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) + #else + #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i) + #endif +#elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) + #else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i)) + #endif +#else + #define __Pyx_PyList_GetItemRef(o, i) __Pyx_NewRef(PyList_GET_ITEM(o, i)) +#endif +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result) +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyObject_GetItem(dict, key); + if (*result == NULL) { + if (PyErr_ExceptionMatches(PyExc_KeyError)) { + PyErr_Clear(); + return 0; + } + return -1; + } + return 1; +} +#else +static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { + *result = PyDict_GetItemWithError(dict, key); + if (*result == NULL) { + return PyErr_Occurred() ? -1 : 0; + } + Py_INCREF(*result); + return 1; +} +#endif +#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST + #define __Pyx_VISIT_CONST(obj) Py_VISIT(obj) +#else + #define __Pyx_VISIT_CONST(obj) +#endif #if CYTHON_ASSUME_SAFE_MACROS #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i) #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i) +#else + #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) + #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) + #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i) + #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) + #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i) +#endif +#if CYTHON_ASSUME_SAFE_SIZE #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o) #else - #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) - #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) - #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) - #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) + #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o) #endif -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) #else static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { @@ -1133,76 +976,120 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, return module; } #endif -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define __Pyx_Py3Int_Check(op) PyLong_Check(op) - #define __Pyx_Py3Int_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask - #define PyNumber_Int PyNumber_Long -#else - #define __Pyx_Py3Int_Check(op) (PyLong_Check(op) || PyInt_Check(op)) - #define __Pyx_Py3Int_CheckExact(op) (PyLong_CheckExact(op) || PyInt_CheckExact(op)) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif -#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY - #ifndef PyUnicode_InternFromString - #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) - #endif -#endif -#if PY_VERSION_HEX < 0x030200A4 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsHash_t -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsSsize_t -#endif -#if CYTHON_USE_ASYNC_SLOTS - #if PY_VERSION_HEX >= 0x030500B1 - #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods - #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) - #else - #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) - #endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString) + #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) +#endif +#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t +#define __Pyx_PyLong_AsHash_t __Pyx_PyIndex_AsSsize_t +#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000 + #define __Pyx_PySendResult PySendResult +#else + typedef enum { + PYGEN_RETURN = 0, + PYGEN_ERROR = -1, + PYGEN_NEXT = 1, + } __Pyx_PySendResult; +#endif +#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3 + typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result); +#else + #define __Pyx_pyiter_sendfunc sendfunc +#endif +#if !CYTHON_USE_AM_SEND +#define __PYX_HAS_PY_AM_SEND 0 +#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000 +#define __PYX_HAS_PY_AM_SEND 1 #else - #define __Pyx_PyType_AsAsync(obj) NULL +#define __PYX_HAS_PY_AM_SEND 2 // our own backported implementation #endif -#ifndef __Pyx_PyAsyncMethodsStruct +#if __PYX_HAS_PY_AM_SEND < 2 + #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods +#else typedef struct { unaryfunc am_await; unaryfunc am_aiter; unaryfunc am_anext; + __Pyx_pyiter_sendfunc am_send; } __Pyx_PyAsyncMethodsStruct; + #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s)) #endif - -#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) - #if !defined(_USE_MATH_DEFINES) - #define _USE_MATH_DEFINES - #endif +#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0 + #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21) +#else + #define __Pyx_TPFLAGS_HAVE_AM_SEND (0) #endif -#include -#ifdef NAN -#define __PYX_NAN() ((float) NAN) +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_PyInterpreterState_Get() PyInterpreterState_Get() #else -static CYTHON_INLINE float __PYX_NAN() { - float value; - memset(&value, 0xFF, sizeof(value)); - return value; -} +#define __Pyx_PyInterpreterState_Get() PyThreadState_Get()->interp +#endif +#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000 +#ifdef __cplusplus +extern "C" +#endif +PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); +#endif +#if CYTHON_COMPILING_IN_LIMITED_API +static int __Pyx_init_co_variable(PyObject *inspect, const char* name, int *write_to) { + int value; + PyObject *py_value = PyObject_GetAttrString(inspect, name); + if (!py_value) return 0; + value = (int) PyLong_AsLong(py_value); + Py_DECREF(py_value); + *write_to = value; + return value != -1 || !PyErr_Occurred(); +} +static int __Pyx_init_co_variables(void) { + PyObject *inspect; + int result; + inspect = PyImport_ImportModule("inspect"); + result = +#if !defined(CO_OPTIMIZED) + __Pyx_init_co_variable(inspect, "CO_OPTIMIZED", &CO_OPTIMIZED) && +#endif +#if !defined(CO_NEWLOCALS) + __Pyx_init_co_variable(inspect, "CO_NEWLOCALS", &CO_NEWLOCALS) && +#endif +#if !defined(CO_VARARGS) + __Pyx_init_co_variable(inspect, "CO_VARARGS", &CO_VARARGS) && +#endif +#if !defined(CO_VARKEYWORDS) + __Pyx_init_co_variable(inspect, "CO_VARKEYWORDS", &CO_VARKEYWORDS) && +#endif +#if !defined(CO_ASYNC_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) && +#endif +#if !defined(CO_GENERATOR) + __Pyx_init_co_variable(inspect, "CO_GENERATOR", &CO_GENERATOR) && +#endif +#if !defined(CO_COROUTINE) + __Pyx_init_co_variable(inspect, "CO_COROUTINE", &CO_COROUTINE) && +#endif + 1; + Py_DECREF(inspect); + return result ? 0 : -1; +} +#else +static int __Pyx_init_co_variables(void) { + return 0; // It's a limited API-only feature +} +#endif + +/* MathInitCode */ +#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) + #ifndef _USE_MATH_DEFINES + #define _USE_MATH_DEFINES + #endif +#endif +#include +#ifdef NAN +#define __PYX_NAN() ((float) NAN) +#else +static CYTHON_INLINE float __PYX_NAN() { + float value; + memset(&value, 0xFF, sizeof(value)); + return value; +} #endif #if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) #define __Pyx_truncl trunc @@ -1210,8 +1097,17 @@ static CYTHON_INLINE float __PYX_NAN() { #define __Pyx_truncl truncl #endif -#define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } +#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 0 +#endif +#ifndef CYTHON_CLINE_IN_TRACEBACK +#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME +#endif +#if CYTHON_CLINE_IN_TRACEBACK +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; } +#else +#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; } +#endif #define __PYX_ERR(f_index, lineno, Ln_error) \ { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } @@ -1245,12 +1141,8 @@ static CYTHON_INLINE float __PYX_NAN() { #define CYTHON_WITHOUT_ASSERTIONS #endif -typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; - const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; - #define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 #define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) #define __PYX_DEFAULT_STRING_ENCODING "" #define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString #define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize @@ -1293,19 +1185,23 @@ static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); #define __Pyx_PyBytes_FromString PyBytes_FromString #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); -#if PY_MAJOR_VERSION < 3 - #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#else - #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize -#endif -#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s) +#else + #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AsString(s)) + #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AsString(s)) + #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s) +#endif #define __Pyx_PyObject_AsWritableString(s) ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableSString(s) ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) #define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) @@ -1314,32 +1210,44 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) #define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) #define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) -#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef) + return Py_NewRef(obj); +#else + Py_INCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) { +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef) + return Py_XNewRef(obj); +#else + Py_XINCREF(obj); + return obj; +#endif +} +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b); static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x); #define __Pyx_PySequence_Tuple(obj)\ (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t); static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #if CYTHON_ASSUME_SAFE_MACROS -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x) #else -#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x) #endif -#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) -#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x)) #define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) -#else -#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) -#endif #if CYTHON_USE_PYLONG_INTERNALS #if PY_VERSION_HEX >= 0x030C00A7 #ifndef _PyLong_SIGN_MASK @@ -1386,81 +1294,12 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) #endif #endif -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII -#include -static int __Pyx_sys_getdefaultencoding_not_ascii; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - PyObject* ascii_chars_u = NULL; - PyObject* ascii_chars_b = NULL; - const char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - if (strcmp(default_encoding_c, "ascii") == 0) { - __Pyx_sys_getdefaultencoding_not_ascii = 0; - } else { - char ascii_chars[128]; - int c; - for (c = 0; c < 128; c++) { - ascii_chars[c] = (char) c; - } - __Pyx_sys_getdefaultencoding_not_ascii = 1; - ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); - if (!ascii_chars_u) goto bad; - ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); - if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { - PyErr_Format( - PyExc_ValueError, - "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", - default_encoding_c); - goto bad; - } - Py_DECREF(ascii_chars_u); - Py_DECREF(ascii_chars_b); - } - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - Py_XDECREF(ascii_chars_u); - Py_XDECREF(ascii_chars_b); - return -1; -} -#endif -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL) #else -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#include -static char* __PYX_DEFAULT_STRING_ENCODING; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); - if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; - strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - return -1; -} -#endif + #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) #endif @@ -1472,28 +1311,198 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ */ +/* PretendToInitialize */ +#ifdef __cplusplus +#if __cplusplus > 201103L +#include +#endif +template +static void __Pyx_pretend_to_initialize(T* ptr) { +#if __cplusplus > 201103L + if ((std::is_trivially_default_constructible::value)) +#endif + *ptr = T(); + (void)ptr; +} +#else static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } +#endif + #if !CYTHON_USE_MODULE_STATE static PyObject *__pyx_m = NULL; #endif static int __pyx_lineno; static int __pyx_clineno = 0; -static const char * __pyx_cfilenm = __FILE__; +static const char * const __pyx_cfilenm = __FILE__; static const char *__pyx_filename; /* #### Code section: filename_table ### */ -static const char *__pyx_f[] = { - "", +static const char* const __pyx_f[] = { "src/hunter/vendor/_cymem/cymem.pyx", + "", "src/hunter/vendor/_cymem/cymem.pxd", - ".tox/cythonize/lib64/python3.11/site-packages/Cython/Includes/cpython/type.pxd", + ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ -/* ForceInitThreads.proto */ -#ifndef __PYX_FORCE_INIT_THREADS - #define __PYX_FORCE_INIT_THREADS 0 +/* Atomics.proto */ +#include +#ifndef CYTHON_ATOMICS + #define CYTHON_ATOMICS 1 +#endif +#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS +#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __pyx_atomic_int_type int +#define __pyx_nonatomic_int_type int +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__)) + #include +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ + (defined(_MSC_VER) && _MSC_VER >= 1700))) + #include +#endif +#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ + (__STDC_VERSION__ >= 201112L) &&\ + !defined(__STDC_NO_ATOMICS__) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type atomic_int + #define __pyx_atomic_ptr_type atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) atomic_load(value) + #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C atomics" + #endif +#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ + (__cplusplus >= 201103L) ||\ +\ + (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\ + ATOMIC_INT_LOCK_FREE == 2) + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type std::atomic_int + #define __pyx_atomic_ptr_type std::atomic_uintptr_t + #define __pyx_nonatomic_ptr_type uintptr_t + #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed) + #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel) + #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg) + #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired) + #define __pyx_atomic_load(value) std::atomic_load(value) + #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed) + #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire) + #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) + #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) + #pragma message ("Using standard C++ atomics") + #elif defined(__PYX_DEBUG_ATOMICS) + #warning "Using standard C++ atomics" + #endif +#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\ + (__GNUC_MINOR__ > 1 ||\ + (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2)))) + #define __pyx_atomic_ptr_type void* + #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1) + #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1) + #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #warning "Using GNU atomics" + #endif +#elif CYTHON_ATOMICS && defined(_MSC_VER) + #include + #undef __pyx_atomic_int_type + #define __pyx_atomic_int_type long + #define __pyx_atomic_ptr_type void* + #undef __pyx_nonatomic_int_type + #define __pyx_nonatomic_int_type long + #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer) + #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1) + #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1) + #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg) + static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { + __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected); + int result = old == *expected; + *expected = old; + return result; + } + #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0) + #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value) + #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value + #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0) + #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value) + #ifdef __PYX_DEBUG_ATOMICS + #pragma message ("Using MSVC atomics") + #endif +#else + #undef CYTHON_ATOMICS + #define CYTHON_ATOMICS 0 + #ifdef __PYX_DEBUG_ATOMICS + #warning "Not using atomics" + #endif +#endif +#if CYTHON_ATOMICS + #define __pyx_add_acquisition_count(memview)\ + __pyx_atomic_incr_relaxed(__pyx_get_slice_count_pointer(memview)) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_atomic_decr_acq_rel(__pyx_get_slice_count_pointer(memview)) +#else + #define __pyx_add_acquisition_count(memview)\ + __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) + #define __pyx_sub_acquisition_count(memview)\ + __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) +#endif + +/* IncludeStructmemberH.proto */ +#include + +/* CriticalSections.proto */ +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +#define __Pyx_PyCriticalSection void* +#define __Pyx_PyCriticalSection2 void* +#define __Pyx_PyCriticalSection_Begin1(cs, arg) (void)cs +#define __Pyx_PyCriticalSection_Begin2(cs, arg1, arg2) (void)cs +#define __Pyx_PyCriticalSection_End1(cs) +#define __Pyx_PyCriticalSection_End2(cs) +#else +#define __Pyx_PyCriticalSection PyCriticalSection +#define __Pyx_PyCriticalSection2 PyCriticalSection2 +#define __Pyx_PyCriticalSection_Begin1 PyCriticalSection_Begin +#define __Pyx_PyCriticalSection_Begin2 PyCriticalSection2_Begin +#define __Pyx_PyCriticalSection_End1 PyCriticalSection_End +#define __Pyx_PyCriticalSection_End2 PyCriticalSection2_End +#endif +#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API +#define __Pyx_BEGIN_CRITICAL_SECTION(o) { +#define __Pyx_END_CRITICAL_SECTION() } +#else +#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION +#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION #endif /* #### Code section: numeric_typedefs ### */ @@ -1511,7 +1520,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; * ctypedef void* (*malloc_t)(size_t n) # <<<<<<<<<<<<<< * ctypedef void (*free_t)(void *p) * - */ +*/ typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); /* "hunter/vendor/_cymem/cymem.pxd":3 @@ -1520,7 +1529,7 @@ typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); * ctypedef void (*free_t)(void *p) # <<<<<<<<<<<<<< * * cdef class PyMalloc: - */ +*/ typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); /* "hunter/vendor/_cymem/cymem.pxd":5 @@ -1529,7 +1538,7 @@ typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); * cdef class PyMalloc: # <<<<<<<<<<<<<< * cdef malloc_t malloc * cdef void _set(self, malloc_t malloc) - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; @@ -1543,7 +1552,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { * cdef class PyFree: # <<<<<<<<<<<<<< * cdef free_t free * cdef void _set(self, free_t free) - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; @@ -1557,7 +1566,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { * cdef class Pool: # <<<<<<<<<<<<<< * cdef readonly size_t size * cdef readonly dict addresses - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { PyObject_HEAD struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtab; @@ -1575,7 +1584,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { * cdef class Address: # <<<<<<<<<<<<<< * cdef void* ptr * cdef readonly PyMalloc pymalloc - */ +*/ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { PyObject_HEAD void *ptr; @@ -1591,7 +1600,7 @@ struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { * cdef class PyMalloc: # <<<<<<<<<<<<<< * cdef void _set(self, malloc_t malloc): * self.malloc = malloc - */ +*/ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc { void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); @@ -1605,7 +1614,7 @@ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vt * cdef class PyFree: # <<<<<<<<<<<<<< * cdef void _set(self, free_t free): * self.free = free - */ +*/ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree { void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); @@ -1619,7 +1628,7 @@ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab * cdef class Pool: # <<<<<<<<<<<<<< * """Track allocated memory addresses, and free them all when the Pool is * garbage collected. This provides an easy way to avoid memory leaks, and - */ +*/ struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { void *(*alloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t); @@ -1646,7 +1655,6 @@ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabpt static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; -#ifdef WITH_THREAD #define __Pyx_RefNannySetupContext(name, acquire_gil)\ if (acquire_gil) {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ @@ -1660,11 +1668,6 @@ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabpt __Pyx_RefNannyFinishContext();\ PyGILState_Release(__pyx_gilstate_save);\ } -#else - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__)) - #define __Pyx_RefNannyFinishContextNogil() __Pyx_RefNannyFinishContext() -#endif #define __Pyx_RefNannyFinishContextNogil() {\ PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ __Pyx_RefNannyFinishContext();\ @@ -1776,6 +1779,8 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); /* TupleAndListFromArray.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); +#endif +#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); #endif @@ -1790,50 +1795,37 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int /* fastcall.proto */ #if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_VARARGS(args, i) PySequence_GetItem(args, i) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) #elif CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GET_ITEM(args, i) -#else - #define __Pyx_Arg_VARARGS(args, i) PyTuple_GetItem(args, i) -#endif -#if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg) - #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) #else - #define __Pyx_Arg_NewRef_VARARGS(arg) arg - #define __Pyx_Arg_XDECREF_VARARGS(arg) + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) #endif #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) #define __Pyx_KwValues_VARARGS(args, nargs) NULL #define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) #define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) #if CYTHON_METH_FASTCALL - #define __Pyx_Arg_FASTCALL(args, i) args[i] - #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds) + #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) + #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); #else #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) #endif - #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs - to have the same reference counting */ - #define __Pyx_Arg_XDECREF_FASTCALL(arg) #else - #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS + #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS - #define __Pyx_Arg_NewRef_FASTCALL(arg) __Pyx_Arg_NewRef_VARARGS(arg) - #define __Pyx_Arg_XDECREF_FASTCALL(arg) __Pyx_Arg_XDECREF_VARARGS(arg) #endif -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS -#define __Pyx_ArgsSlice_VARARGS(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_VARARGS(args, start), stop - start) -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(&__Pyx_Arg_FASTCALL(args, start), stop - start) -#else #define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) +#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) +#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) +#else #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) #endif @@ -1841,8 +1833,8 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); -/* KeywordStringCheck.proto */ -static int __Pyx_CheckKeywordStrings(PyObject *kw, const char* function_name, int kw_allowed); +/* RejectKeywords.proto */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); /* RaiseException.proto */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); @@ -1851,17 +1843,30 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); /* ParseKeywords.proto */ -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, - const char* function_name); +static CYTHON_INLINE int __Pyx_ParseKeywords( + PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], + PyObject *kwds2, PyObject *values[], + Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs +); + +/* CallCFunction.proto */ +#define __Pyx_CallCFunction(cfunc, self, args)\ + ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) +#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ + ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) +#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ + ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) +#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ + ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) /* PyFunctionFastCall.proto */ #if CYTHON_FAST_PYCALL #if !CYTHON_VECTORCALL #define __Pyx_PyFunction_FastCall(func, args, nargs)\ __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); #endif #define __Pyx_BUILD_ASSERT_EXPR(cond)\ (sizeof(char [1 - 2*!(cond)]) - 1) @@ -1871,12 +1876,6 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, #if !CYTHON_VECTORCALL #if PY_VERSION_HEX >= 0x03080000 #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif #define __Pxy_PyFrame_Initialize_Offsets() #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) #else @@ -1905,10 +1904,49 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject /* PyObjectFastCall.proto */ #define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs); +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); -/* PyObjectCallNoArg.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); +/* UnpackUnboundCMethod.proto */ +typedef struct { + PyObject *type; + PyObject **method_name; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS + __pyx_atomic_int_type initialized; +#endif + PyCFunction func; + PyObject *method; + int flag; +} __Pyx_CachedCFunction; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { +#if !CYTHON_ATOMICS + return 1; +#else + __pyx_nonatomic_int_type expected = 0; + if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { + return 0; + } + return expected; +#endif +} +static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { +#if CYTHON_ATOMICS + __pyx_atomic_store(&cfunc->initialized, 2); +#endif +} +#else +#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 +#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) +#endif + +/* CallUnboundCMethod2.proto */ +CYTHON_UNUSED +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); +#else +#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) +#endif /* ArgTypeTest.proto */ #define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ @@ -1919,6 +1957,9 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam /* IterFinish.proto */ static CYTHON_INLINE int __Pyx_IterFinish(void); +/* PyObjectCallNoArg.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); + /* PyObjectCallOneArg.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); @@ -1944,12 +1985,8 @@ static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); /* UnpackTuple2.proto */ -#define __Pyx_unpack_tuple2(tuple, value1, value2, is_tuple, has_known_size, decref_tuple)\ - (likely(is_tuple || PyTuple_Check(tuple)) ?\ - (likely(has_known_size || PyTuple_GET_SIZE(tuple) == 2) ?\ - __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple) :\ - (__Pyx_UnpackTupleError(tuple, 2), -1)) :\ - __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple)) +static CYTHON_INLINE int __Pyx_unpack_tuple2( + PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple); static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple); static int __Pyx_unpack_tuple2_generic( @@ -1997,7 +2034,7 @@ static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UIN #define __Pyx_GetModuleGlobalName(var, name) do {\ static PY_UINT64_T __pyx_dict_version = 0;\ static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ } while(0) @@ -2019,11 +2056,35 @@ static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); } +/* BuildPyUnicode.proto */ +static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, const char* chars, int clength, + int prepend_sign, char padding_char); + +/* COrdinalToPyUnicode.proto */ +static CYTHON_INLINE int __Pyx_CheckUnicodeValue(int value); +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromOrdinal_Padded(int value, Py_ssize_t width, char padding_char); + +/* GCCDiagnostics.proto */ +#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) +#define __Pyx_HAS_GCC_DIAGNOSTIC +#endif + +/* IncludeStdlibH.proto */ +#include + +/* CIntToPyUnicode.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_size_t(size_t value, Py_ssize_t width, char padding_char, char format_char); + +/* PyObjectFormatAndDecref.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); + +/* JoinPyUnicode.proto */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char); + /* AssertionsEnabled.proto */ -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) - #define __Pyx_init_assertions_enabled() (0) - #define __pyx_assertions_enabled() (1) -#elif CYTHON_COMPILING_IN_LIMITED_API || (CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030C0000) +#if CYTHON_COMPILING_IN_LIMITED_API || (CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030C0000) static int __pyx_assertions_enabled_flag; #define __pyx_assertions_enabled() (__pyx_assertions_enabled_flag) static int __Pyx_init_assertions_enabled(void) { @@ -2051,7 +2112,7 @@ static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, #endif /* DictGetItem.proto */ -#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +#if !CYTHON_COMPILING_IN_PYPY static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); #define __Pyx_PyObject_Dict_GetItem(obj, name)\ (likely(PyDict_CheckExact(obj)) ?\ @@ -2064,24 +2125,11 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); /* py_dict_pop.proto */ static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyObject *default_value); -/* UnpackUnboundCMethod.proto */ -typedef struct { - PyObject *type; - PyObject **method_name; - PyCFunction func; - PyObject *method; - int flag; -} __Pyx_CachedCFunction; - -/* CallUnboundCMethod2.proto */ -static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030600B1 -static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); -#else -#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) -#endif +/* PyObjectCall2Args.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); /* CallUnboundCMethod1.proto */ +CYTHON_UNUSED static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); @@ -2114,14 +2162,25 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { #define __Pyx_PySequence_Multiply_Left(mul, seq) __Pyx_PySequence_Multiply(seq, mul) static CYTHON_INLINE PyObject* __Pyx_PySequence_Multiply(PyObject *seq, Py_ssize_t mul); -/* IncludeStructmemberH.proto */ -#include +/* CallTypeTraverse.proto */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg); +#endif -/* FixUpExtensionType.proto */ -#if CYTHON_USE_TYPE_SPECS -static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); +/* LimitedApiGetTypeDict.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp); #endif +/* SetItemOnTypeDict.proto */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v); +#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v) + +/* FixUpExtensionType.proto */ +static CYTHON_INLINE int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); + /* ValidateBasesTuple.proto */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases); @@ -2130,20 +2189,6 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs /* PyType_Ready.proto */ CYTHON_UNUSED static int __Pyx_PyType_Ready(PyTypeObject *t); -/* PyObject_GenericGetAttrNoDict.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr -#endif - -/* PyObject_GenericGetAttr.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttr PyObject_GenericGetAttr -#endif - /* SetVTable.proto */ static int __Pyx_SetVtable(PyTypeObject* typeptr , void* vtable); @@ -2151,32 +2196,32 @@ static int __Pyx_SetVtable(PyTypeObject* typeptr , void* vtable); static void* __Pyx_GetVtable(PyTypeObject *type); /* MergeVTables.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_MergeVtables(PyTypeObject *type); -#endif + +/* DelItemOnTypeDict.proto */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); +#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k) /* SetupReduce.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce(PyObject* type_obj); -#endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_10 -#define __PYX_HAVE_RT_ImportType_proto_3_0_10 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 +#define __PYX_HAVE_RT_ImportType_proto_3_1_2 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_0_10(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_0_10 { - __Pyx_ImportType_CheckSize_Error_3_0_10 = 0, - __Pyx_ImportType_CheckSize_Warn_3_0_10 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_0_10 = 2 +enum __Pyx_ImportType_CheckSize_3_1_2 { + __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); #endif /* Import.proto */ @@ -2184,49 +2229,26 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); /* ImportDottedModule.proto */ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple); -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple); -#endif /* FetchSharedCythonModule.proto */ static PyObject *__Pyx_FetchSharedCythonABIModule(void); +/* dict_setdefault.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, int is_safe_type); + /* FetchCommonType.proto */ -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type); -#else -static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases); -#endif +static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases); + +/* CommonTypesMetaclass.proto */ +static int __pyx_CommonTypesMetaclass_init(PyObject *module); +#define __Pyx_CommonTypesMetaclass_USED /* PyMethodNew.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - PyObject *typesModule=NULL, *methodType=NULL, *result=NULL; - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - typesModule = PyImport_ImportModule("types"); - if (!typesModule) return NULL; - methodType = PyObject_GetAttrString(typesModule, "MethodType"); - Py_DECREF(typesModule); - if (!methodType) return NULL; - result = PyObject_CallFunctionObjArgs(methodType, func, self, NULL); - Py_DECREF(methodType); - return result; -} -#elif PY_MAJOR_VERSION >= 3 -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - return PyMethod_New(func, self); -} -#else - #define __Pyx_PyMethod_New PyMethod_New -#endif +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ); /* PyVectorcallFastCallDict.proto */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw); #endif @@ -2260,10 +2282,11 @@ typedef struct { #else PyCMethodObject func; #endif -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL ||\ + (CYTHON_COMPILING_IN_LIMITED_API && CYTHON_METH_FASTCALL) __pyx_vectorcallfunc func_vectorcall; #endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API PyObject *func_weakreflist; #endif PyObject *func_dict; @@ -2276,9 +2299,7 @@ typedef struct { #if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API PyObject *func_classobj; #endif - void *defaults; - int defaults_pyobjects; - size_t defaults_size; + PyObject *defaults; int flags; PyObject *defaults_tuple; PyObject *defaults_kwdict; @@ -2287,10 +2308,10 @@ typedef struct { PyObject *func_is_coroutine; } __pyx_CyFunctionObject; #undef __Pyx_CyOrPyCFunction_Check -#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType) -#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type) -#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType) -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc); +#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType) +#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type) +#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType) +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)); #undef __Pyx_IsSameCFunction #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, @@ -2299,9 +2320,8 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef * PyObject *module, PyObject *globals, PyObject* code); static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj); -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *m, - size_t size, - int pyobjects); +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, + PyTypeObject *defaults_type); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m, PyObject *tuple); static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m, @@ -2314,7 +2334,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -#if CYTHON_BACKPORT_VECTORCALL +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_func_vectorcall(f) (((__pyx_CyFunctionObject*)f)->func_vectorcall) #else #define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall) @@ -2332,62 +2352,84 @@ static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); /* CLineInTraceback.proto */ -#ifdef CYTHON_CLINE_IN_TRACEBACK -#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) -#else +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#else +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) #endif /* CodeObjectCache.proto */ -#if !CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API +typedef PyObject __Pyx_CachedCodeObjectType; +#else +typedef PyCodeObject __Pyx_CachedCodeObjectType; +#endif typedef struct { - PyCodeObject* code_object; + __Pyx_CachedCodeObjectType* code_object; int code_line; } __Pyx_CodeObjectCacheEntry; struct __Pyx_CodeObjectCache { int count; int max_count; __Pyx_CodeObjectCacheEntry* entries; + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_int_type accessor_count; + #endif }; -static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); -static PyCodeObject *__pyx_find_code_object(int code_line); -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); -#endif +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line); +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object); /* AddTraceback.proto */ static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename); -/* GCCDiagnostics.proto */ -#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) -#define __Pyx_HAS_GCC_DIAGNOSTIC -#endif - /* CIntFromPy.proto */ -static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *); +static CYTHON_INLINE size_t __Pyx_PyLong_As_size_t(PyObject *); /* FormatTypeName.proto */ #if CYTHON_COMPILING_IN_LIMITED_API typedef PyObject *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%U" -static __Pyx_TypeName __Pyx_PyType_GetName(PyTypeObject* tp); #define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj) +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName #else +static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp); +#endif +#else // !LIMITED_API typedef const char *__Pyx_TypeName; #define __Pyx_FMT_TYPENAME "%.200s" -#define __Pyx_PyType_GetName(tp) ((tp)->tp_name) +#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name) #define __Pyx_DECREF_TypeName(obj) #endif +/* PyObjectVectorCallKwBuilder.proto */ +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#if CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03090000 +#define __Pyx_Object_Vectorcall_CallFromBuilder PyObject_Vectorcall +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder _PyObject_Vectorcall +#endif +#define __Pyx_MakeVectorcallBuilderKwds(n) PyTuple_New(n) +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n); +#else +#define __Pyx_Object_Vectorcall_CallFromBuilder __Pyx_PyObject_FastCallDict +#define __Pyx_MakeVectorcallBuilderKwds(n) __Pyx_PyDict_NewPresized(n) +#define __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n) PyDict_SetItem(builder, key, value) +#define __Pyx_VectorcallBuilder_AddArgStr(key, value, builder, args, n) PyDict_SetItemString(builder, key, value) +#endif + /* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); /* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); /* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); /* FastTypeChecks.proto */ #if CYTHON_COMPILING_IN_CPYTHON @@ -2401,25 +2443,77 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj #define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) #define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2)) #define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) -#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) { + return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2); +} #endif #define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) +#ifdef PyExceptionInstance_Check + #define __Pyx_PyBaseException_Check(obj) PyExceptionInstance_Check(obj) +#else + #define __Pyx_PyBaseException_Check(obj) __Pyx_TypeCheck(obj, PyExc_BaseException) +#endif -/* CheckBinaryVersion.proto */ +/* GetRuntimeVersion.proto */ static unsigned long __Pyx_get_runtime_version(void); + +/* CheckBinaryVersion.proto */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionExport.proto */ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); -/* InitStrings.proto */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); +/* MultiPhaseInitModuleState.proto */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +static PyObject *__Pyx_State_FindModule(void*); +static int __Pyx_State_AddModule(PyObject* module, void*); +static int __Pyx_State_RemoveModule(void*); +#elif CYTHON_USE_MODULE_STATE +#define __Pyx_State_FindModule PyState_FindModule +#define __Pyx_State_AddModule PyState_AddModule +#define __Pyx_State_RemoveModule PyState_RemoveModule +#endif /* #### Code section: module_declarations ### */ -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc); /* proto*/ -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free); /* proto*/ -static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size); /* proto*/ +/* CythonABIVersion.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API + #if CYTHON_METH_FASTCALL + #define __PYX_FASTCALL_ABI_SUFFIX "_fastcall" + #else + #define __PYX_FASTCALL_ABI_SUFFIX + #endif + #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_FASTCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#else + #define __PYX_LIMITED_ABI_SUFFIX +#endif +#if __PYX_HAS_PY_AM_SEND == 1 + #define __PYX_AM_SEND_ABI_SUFFIX +#elif __PYX_HAS_PY_AM_SEND == 2 + #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport" +#else + #define __PYX_AM_SEND_ABI_SUFFIX "noamsend" +#endif +#ifndef __PYX_MONITORING_ABI_SUFFIX + #define __PYX_MONITORING_ABI_SUFFIX +#endif +#if CYTHON_USE_TP_FINALIZE + #define __PYX_TP_FINALIZE_ABI_SUFFIX +#else + #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize" +#endif +#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED) + #define __PYX_FREELISTS_ABI_SUFFIX +#else + #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists" +#endif +#define CYTHON_ABI __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX +#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI +#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." + +static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc); /* proto*/ +static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free); /* proto*/ +static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size); /* proto*/ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p, size_t __pyx_v_new_size); /* proto*/ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p); /* proto*/ @@ -2455,11 +2549,14 @@ static PyObject *__pyx_builtin_MemoryError; static PyObject *__pyx_builtin_ValueError; static PyObject *__pyx_builtin_AssertionError; /* #### Code section: string_decls ### */ -static const char __pyx_k__6[] = "*"; +static const char __pyx_k_Q[] = "\200\001\330\004\n\210+\220Q"; +static const char __pyx_k_d[] = "d"; +static const char __pyx_k__5[] = "?"; static const char __pyx_k_gc[] = "gc"; -static const char __pyx_k__19[] = "?"; +static const char __pyx_k_A_E[] = "\200A\330\010\014\210E\220\027\230\001\230\021"; static const char __pyx_k_pop[] = "pop"; static const char __pyx_k_Pool[] = "Pool"; +static const char __pyx_k_func[] = "__func__"; static const char __pyx_k_main[] = "__main__"; static const char __pyx_k_name[] = "__name__"; static const char __pyx_k_self[] = "self"; @@ -2468,16 +2565,20 @@ static const char __pyx_k_test[] = "__test__"; static const char __pyx_k_warn[] = "warn"; static const char __pyx_k_PyFree[] = "PyFree"; static const char __pyx_k_enable[] = "enable"; -static const char __pyx_k_import[] = "__import__"; +static const char __pyx_k_module[] = "__module__"; static const char __pyx_k_number[] = "number"; static const char __pyx_k_py_ref[] = "py_ref"; static const char __pyx_k_pyfree[] = "pyfree"; static const char __pyx_k_reduce[] = "__reduce__"; static const char __pyx_k_Address[] = "Address"; +static const char __pyx_k_Pointer[] = "Pointer "; static const char __pyx_k_disable[] = "disable"; static const char __pyx_k_PyMalloc[] = "PyMalloc"; +static const char __pyx_k_add_note[] = "add_note"; static const char __pyx_k_getstate[] = "__getstate__"; static const char __pyx_k_pymalloc[] = "pymalloc"; +static const char __pyx_k_qualname[] = "__qualname__"; +static const char __pyx_k_set_name[] = "__set_name__"; static const char __pyx_k_setstate[] = "__setstate__"; static const char __pyx_k_warnings[] = "warnings"; static const char __pyx_k_TypeError[] = "TypeError"; @@ -2499,6 +2600,7 @@ static const char __pyx_k_Default_Malloc[] = "Default_Malloc"; static const char __pyx_k_Pool_own_pyref[] = "Pool.own_pyref"; static const char __pyx_k_WARN_ZERO_ALLOC[] = "WARN_ZERO_ALLOC"; static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; +static const char __pyx_k_not_found_in_Pool[] = " not found in Pool "; static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines"; static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; static const char __pyx_k_Pool___reduce_cython[] = "Pool.__reduce_cython__"; @@ -2514,8 +2616,8 @@ static const char __pyx_k_PyMalloc___setstate_cython[] = "PyMalloc.__setstate_cy static const char __pyx_k_hunter_vendor__cymem_cymem[] = "hunter.vendor._cymem.cymem"; static const char __pyx_k_Realloc_requires_new_size_0[] = "Realloc requires new_size > 0"; static const char __pyx_k_Error_reallocating_to_d_bytes[] = "Error reallocating to %d bytes"; -static const char __pyx_k_Pointer_d_not_found_in_Pool_s[] = "Pointer %d not found in Pool %s"; static const char __pyx_k_self_malloc_cannot_be_converted[] = "self.malloc cannot be converted to a Python object for pickling"; +static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; static const char __pyx_k_no_default___reduce___due_to_non[] = "no default __reduce__ due to non-trivial __cinit__"; static const char __pyx_k_self_free_cannot_be_converted_to[] = "self.free cannot be converted to a Python object for pickling"; static const char __pyx_k_src_hunter_vendor__cymem_cymem_p[] = "src/hunter/vendor/_cymem/cymem.pyx"; @@ -2546,9 +2648,19 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObje static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop = {0, 0, 0, 0, 0}; /* #### Code section: late_includes ### */ /* #### Code section: module_state ### */ +/* SmallCodeConfig */ +#ifndef CYTHON_SMALL_CODE +#if defined(__clang__) + #define CYTHON_SMALL_CODE +#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + #define CYTHON_SMALL_CODE __attribute__((cold)) +#else + #define CYTHON_SMALL_CODE +#endif +#endif + typedef struct { PyObject *__pyx_d; PyObject *__pyx_b; @@ -2574,143 +2686,133 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif PyTypeObject *__pyx_ptype_7cpython_4type_type; - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE - #endif - #if CYTHON_USE_MODULE_STATE PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; - #endif PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool; PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address; - PyObject *__pyx_n_s_Address; - PyObject *__pyx_n_s_Address___reduce_cython; - PyObject *__pyx_n_s_Address___setstate_cython; - PyObject *__pyx_kp_s_Allocating_zero_bytes; - PyObject *__pyx_n_s_AssertionError; - PyObject *__pyx_n_s_Default_Free; - PyObject *__pyx_n_s_Default_Malloc; - PyObject *__pyx_kp_s_Error_assigning_d_bytes; - PyObject *__pyx_kp_s_Error_reallocating_to_d_bytes; - PyObject *__pyx_n_s_MemoryError; - PyObject *__pyx_kp_s_Pointer_d_not_found_in_Pool_s; - PyObject *__pyx_n_s_Pool; - PyObject *__pyx_n_s_Pool___reduce_cython; - PyObject *__pyx_n_s_Pool___setstate_cython; - PyObject *__pyx_n_s_Pool_own_pyref; - PyObject *__pyx_n_s_PyFree; - PyObject *__pyx_n_s_PyFree___reduce_cython; - PyObject *__pyx_n_s_PyFree___setstate_cython; - PyObject *__pyx_n_s_PyMalloc; - PyObject *__pyx_n_s_PyMalloc___reduce_cython; - PyObject *__pyx_n_s_PyMalloc___setstate_cython; - PyObject *__pyx_kp_s_Realloc_requires_new_size_0; - PyObject *__pyx_n_s_TypeError; - PyObject *__pyx_n_s_ValueError; - PyObject *__pyx_n_s_WARN_ZERO_ALLOC; - PyObject *__pyx_n_s__19; - PyObject *__pyx_n_s__6; - PyObject *__pyx_n_s_asyncio_coroutines; - PyObject *__pyx_n_s_cline_in_traceback; - PyObject *__pyx_kp_u_disable; - PyObject *__pyx_n_s_elem_size; - PyObject *__pyx_kp_u_enable; - PyObject *__pyx_kp_u_gc; - PyObject *__pyx_n_s_getstate; - PyObject *__pyx_n_s_hunter_vendor__cymem_cymem; - PyObject *__pyx_n_s_import; - PyObject *__pyx_n_s_initializing; - PyObject *__pyx_n_s_is_coroutine; - PyObject *__pyx_kp_u_isenabled; - PyObject *__pyx_n_s_main; - PyObject *__pyx_n_s_name; - PyObject *__pyx_kp_s_no_default___reduce___due_to_non; - PyObject *__pyx_n_s_number; - PyObject *__pyx_n_s_own_pyref; - PyObject *__pyx_n_s_pop; - PyObject *__pyx_n_s_py_ref; - PyObject *__pyx_n_s_pyfree; - PyObject *__pyx_n_s_pymalloc; - PyObject *__pyx_n_s_pyx_state; - PyObject *__pyx_n_s_pyx_vtable; - PyObject *__pyx_n_s_reduce; - PyObject *__pyx_n_s_reduce_cython; - PyObject *__pyx_n_s_reduce_ex; - PyObject *__pyx_n_s_self; - PyObject *__pyx_kp_s_self_free_cannot_be_converted_to; - PyObject *__pyx_kp_s_self_malloc_cannot_be_converted; - PyObject *__pyx_n_s_setstate; - PyObject *__pyx_n_s_setstate_cython; - PyObject *__pyx_n_s_spec; - PyObject *__pyx_kp_s_src_hunter_vendor__cymem_cymem_p; - PyObject *__pyx_kp_s_stringsource; - PyObject *__pyx_n_s_test; - PyObject *__pyx_n_s_warn; - PyObject *__pyx_n_s_warnings; + __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_k_; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_k__2; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_k__4; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_k__5; - PyObject *__pyx_tuple__3; - PyObject *__pyx_tuple__7; - PyObject *__pyx_tuple__9; - PyObject *__pyx_tuple__13; - PyObject *__pyx_codeobj__8; - PyObject *__pyx_codeobj__10; - PyObject *__pyx_codeobj__11; - PyObject *__pyx_codeobj__12; - PyObject *__pyx_codeobj__14; - PyObject *__pyx_codeobj__15; - PyObject *__pyx_codeobj__16; - PyObject *__pyx_codeobj__17; - PyObject *__pyx_codeobj__18; -} __pyx_mstate; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_k__3; + struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_k__4; + PyObject *__pyx_codeobj_tab[9]; + PyObject *__pyx_string_tab[70]; +/* #### Code section: module_state_contents ### */ +/* CommonTypesMetaclass.module_state_decls */ +PyTypeObject *__pyx_CommonTypesMetaclassType; + +/* CachedMethodType.module_state_decls */ +#if CYTHON_COMPILING_IN_LIMITED_API +PyObject *__Pyx_CachedMethodType; +#endif + +/* CodeObjectCache.module_state_decls */ +struct __Pyx_CodeObjectCache __pyx_code_cache; + +/* #### Code section: module_state_end ### */ +} __pyx_mstatetype; #if CYTHON_USE_MODULE_STATE #ifdef __cplusplus namespace { - extern struct PyModuleDef __pyx_moduledef; +extern struct PyModuleDef __pyx_moduledef; } /* anonymous namespace */ #else static struct PyModuleDef __pyx_moduledef; #endif -#define __pyx_mstate(o) ((__pyx_mstate *)__Pyx_PyModule_GetState(o)) +#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef))) -#define __pyx_mstate_global (__pyx_mstate(PyState_FindModule(&__pyx_moduledef))) - -#define __pyx_m (PyState_FindModule(&__pyx_moduledef)) +#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef)) #else -static __pyx_mstate __pyx_mstate_global_static = +static __pyx_mstatetype __pyx_mstate_global_static = #ifdef __cplusplus {}; #else {0}; #endif -static __pyx_mstate *__pyx_mstate_global = &__pyx_mstate_global_static; -#endif +static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_static; +#endif +/* #### Code section: constant_name_defines ### */ +#define __pyx_n_u_Address __pyx_string_tab[0] +#define __pyx_n_u_Address___reduce_cython __pyx_string_tab[1] +#define __pyx_n_u_Address___setstate_cython __pyx_string_tab[2] +#define __pyx_kp_u_Allocating_zero_bytes __pyx_string_tab[3] +#define __pyx_n_u_AssertionError __pyx_string_tab[4] +#define __pyx_n_u_Default_Free __pyx_string_tab[5] +#define __pyx_n_u_Default_Malloc __pyx_string_tab[6] +#define __pyx_kp_u_Error_assigning_d_bytes __pyx_string_tab[7] +#define __pyx_kp_u_Error_reallocating_to_d_bytes __pyx_string_tab[8] +#define __pyx_n_u_MemoryError __pyx_string_tab[9] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[10] +#define __pyx_kp_u_Pointer __pyx_string_tab[11] +#define __pyx_n_u_Pool __pyx_string_tab[12] +#define __pyx_n_u_Pool___reduce_cython __pyx_string_tab[13] +#define __pyx_n_u_Pool___setstate_cython __pyx_string_tab[14] +#define __pyx_n_u_Pool_own_pyref __pyx_string_tab[15] +#define __pyx_n_u_PyFree __pyx_string_tab[16] +#define __pyx_n_u_PyFree___reduce_cython __pyx_string_tab[17] +#define __pyx_n_u_PyFree___setstate_cython __pyx_string_tab[18] +#define __pyx_n_u_PyMalloc __pyx_string_tab[19] +#define __pyx_n_u_PyMalloc___reduce_cython __pyx_string_tab[20] +#define __pyx_n_u_PyMalloc___setstate_cython __pyx_string_tab[21] +#define __pyx_kp_u_Realloc_requires_new_size_0 __pyx_string_tab[22] +#define __pyx_n_u_TypeError __pyx_string_tab[23] +#define __pyx_n_u_ValueError __pyx_string_tab[24] +#define __pyx_n_u_WARN_ZERO_ALLOC __pyx_string_tab[25] +#define __pyx_kp_u__5 __pyx_string_tab[26] +#define __pyx_kp_u_add_note __pyx_string_tab[27] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[28] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[29] +#define __pyx_n_u_d __pyx_string_tab[30] +#define __pyx_kp_u_disable __pyx_string_tab[31] +#define __pyx_n_u_elem_size __pyx_string_tab[32] +#define __pyx_kp_u_enable __pyx_string_tab[33] +#define __pyx_n_u_func __pyx_string_tab[34] +#define __pyx_kp_u_gc __pyx_string_tab[35] +#define __pyx_n_u_getstate __pyx_string_tab[36] +#define __pyx_n_u_hunter_vendor__cymem_cymem __pyx_string_tab[37] +#define __pyx_n_u_initializing __pyx_string_tab[38] +#define __pyx_n_u_is_coroutine __pyx_string_tab[39] +#define __pyx_kp_u_isenabled __pyx_string_tab[40] +#define __pyx_n_u_main __pyx_string_tab[41] +#define __pyx_n_u_module __pyx_string_tab[42] +#define __pyx_n_u_name __pyx_string_tab[43] +#define __pyx_kp_u_no_default___reduce___due_to_non __pyx_string_tab[44] +#define __pyx_kp_u_not_found_in_Pool __pyx_string_tab[45] +#define __pyx_n_u_number __pyx_string_tab[46] +#define __pyx_n_u_own_pyref __pyx_string_tab[47] +#define __pyx_n_u_pop __pyx_string_tab[48] +#define __pyx_n_u_py_ref __pyx_string_tab[49] +#define __pyx_n_u_pyfree __pyx_string_tab[50] +#define __pyx_n_u_pymalloc __pyx_string_tab[51] +#define __pyx_n_u_pyx_state __pyx_string_tab[52] +#define __pyx_n_u_pyx_vtable __pyx_string_tab[53] +#define __pyx_n_u_qualname __pyx_string_tab[54] +#define __pyx_n_u_reduce __pyx_string_tab[55] +#define __pyx_n_u_reduce_cython __pyx_string_tab[56] +#define __pyx_n_u_reduce_ex __pyx_string_tab[57] +#define __pyx_n_u_self __pyx_string_tab[58] +#define __pyx_kp_u_self_free_cannot_be_converted_to __pyx_string_tab[59] +#define __pyx_kp_u_self_malloc_cannot_be_converted __pyx_string_tab[60] +#define __pyx_n_u_set_name __pyx_string_tab[61] +#define __pyx_n_u_setstate __pyx_string_tab[62] +#define __pyx_n_u_setstate_cython __pyx_string_tab[63] +#define __pyx_n_u_spec __pyx_string_tab[64] +#define __pyx_kp_u_src_hunter_vendor__cymem_cymem_p __pyx_string_tab[65] +#define __pyx_kp_u_stringsource __pyx_string_tab[66] +#define __pyx_n_u_test __pyx_string_tab[67] +#define __pyx_n_u_warn __pyx_string_tab[68] +#define __pyx_n_u_warnings __pyx_string_tab[69] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_clear(PyObject *m) { - __pyx_mstate *clear_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { + __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m); if (!clear_module_state) return 0; Py_CLEAR(clear_module_state->__pyx_d); Py_CLEAR(clear_module_state->__pyx_b); @@ -2724,6 +2826,9 @@ static int __pyx_m_clear(PyObject *m) { #ifdef __Pyx_FusedFunction_USED Py_CLEAR(clear_module_state->__pyx_FusedFunctionType); #endif + #if CYTHON_PEP489_MULTI_PHASE_INIT + __Pyx_State_RemoveModule(NULL); + #endif Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc); @@ -2733,101 +2838,26 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); - Py_CLEAR(clear_module_state->__pyx_n_s_Address); - Py_CLEAR(clear_module_state->__pyx_n_s_Address___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Address___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_Allocating_zero_bytes); - Py_CLEAR(clear_module_state->__pyx_n_s_AssertionError); - Py_CLEAR(clear_module_state->__pyx_n_s_Default_Free); - Py_CLEAR(clear_module_state->__pyx_n_s_Default_Malloc); - Py_CLEAR(clear_module_state->__pyx_kp_s_Error_assigning_d_bytes); - Py_CLEAR(clear_module_state->__pyx_kp_s_Error_reallocating_to_d_bytes); - Py_CLEAR(clear_module_state->__pyx_n_s_MemoryError); - Py_CLEAR(clear_module_state->__pyx_kp_s_Pointer_d_not_found_in_Pool_s); - Py_CLEAR(clear_module_state->__pyx_n_s_Pool); - Py_CLEAR(clear_module_state->__pyx_n_s_Pool___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Pool___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_Pool_own_pyref); - Py_CLEAR(clear_module_state->__pyx_n_s_PyFree); - Py_CLEAR(clear_module_state->__pyx_n_s_PyFree___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_PyFree___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_PyMalloc); - Py_CLEAR(clear_module_state->__pyx_n_s_PyMalloc___reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_PyMalloc___setstate_cython); - Py_CLEAR(clear_module_state->__pyx_kp_s_Realloc_requires_new_size_0); - Py_CLEAR(clear_module_state->__pyx_n_s_TypeError); - Py_CLEAR(clear_module_state->__pyx_n_s_ValueError); - Py_CLEAR(clear_module_state->__pyx_n_s_WARN_ZERO_ALLOC); - Py_CLEAR(clear_module_state->__pyx_n_s__19); - Py_CLEAR(clear_module_state->__pyx_n_s__6); - Py_CLEAR(clear_module_state->__pyx_n_s_asyncio_coroutines); - Py_CLEAR(clear_module_state->__pyx_n_s_cline_in_traceback); - Py_CLEAR(clear_module_state->__pyx_kp_u_disable); - Py_CLEAR(clear_module_state->__pyx_n_s_elem_size); - Py_CLEAR(clear_module_state->__pyx_kp_u_enable); - Py_CLEAR(clear_module_state->__pyx_kp_u_gc); - Py_CLEAR(clear_module_state->__pyx_n_s_getstate); - Py_CLEAR(clear_module_state->__pyx_n_s_hunter_vendor__cymem_cymem); - Py_CLEAR(clear_module_state->__pyx_n_s_import); - Py_CLEAR(clear_module_state->__pyx_n_s_initializing); - Py_CLEAR(clear_module_state->__pyx_n_s_is_coroutine); - Py_CLEAR(clear_module_state->__pyx_kp_u_isenabled); - Py_CLEAR(clear_module_state->__pyx_n_s_main); - Py_CLEAR(clear_module_state->__pyx_n_s_name); - Py_CLEAR(clear_module_state->__pyx_kp_s_no_default___reduce___due_to_non); - Py_CLEAR(clear_module_state->__pyx_n_s_number); - Py_CLEAR(clear_module_state->__pyx_n_s_own_pyref); - Py_CLEAR(clear_module_state->__pyx_n_s_pop); - Py_CLEAR(clear_module_state->__pyx_n_s_py_ref); - Py_CLEAR(clear_module_state->__pyx_n_s_pyfree); - Py_CLEAR(clear_module_state->__pyx_n_s_pymalloc); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_state); - Py_CLEAR(clear_module_state->__pyx_n_s_pyx_vtable); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_reduce_ex); - Py_CLEAR(clear_module_state->__pyx_n_s_self); - Py_CLEAR(clear_module_state->__pyx_kp_s_self_free_cannot_be_converted_to); - Py_CLEAR(clear_module_state->__pyx_kp_s_self_malloc_cannot_be_converted); - Py_CLEAR(clear_module_state->__pyx_n_s_setstate); - Py_CLEAR(clear_module_state->__pyx_n_s_setstate_cython); - Py_CLEAR(clear_module_state->__pyx_n_s_spec); - Py_CLEAR(clear_module_state->__pyx_kp_s_src_hunter_vendor__cymem_cymem_p); - Py_CLEAR(clear_module_state->__pyx_kp_s_stringsource); - Py_CLEAR(clear_module_state->__pyx_n_s_test); - Py_CLEAR(clear_module_state->__pyx_n_s_warn); - Py_CLEAR(clear_module_state->__pyx_n_s_warnings); Py_CLEAR(clear_module_state->__pyx_k_); Py_CLEAR(clear_module_state->__pyx_k__2); + Py_CLEAR(clear_module_state->__pyx_k__3); Py_CLEAR(clear_module_state->__pyx_k__4); - Py_CLEAR(clear_module_state->__pyx_k__5); - Py_CLEAR(clear_module_state->__pyx_tuple__3); - Py_CLEAR(clear_module_state->__pyx_tuple__7); - Py_CLEAR(clear_module_state->__pyx_tuple__9); - Py_CLEAR(clear_module_state->__pyx_tuple__13); - Py_CLEAR(clear_module_state->__pyx_codeobj__8); - Py_CLEAR(clear_module_state->__pyx_codeobj__10); - Py_CLEAR(clear_module_state->__pyx_codeobj__11); - Py_CLEAR(clear_module_state->__pyx_codeobj__12); - Py_CLEAR(clear_module_state->__pyx_codeobj__14); - Py_CLEAR(clear_module_state->__pyx_codeobj__15); - Py_CLEAR(clear_module_state->__pyx_codeobj__16); - Py_CLEAR(clear_module_state->__pyx_codeobj__17); - Py_CLEAR(clear_module_state->__pyx_codeobj__18); + for (int i=0; i<9; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<70; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } return 0; } #endif /* #### Code section: module_state_traverse ### */ #if CYTHON_USE_MODULE_STATE -static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { - __pyx_mstate *traverse_module_state = __pyx_mstate(m); +static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { + __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m); if (!traverse_module_state) return 0; Py_VISIT(traverse_module_state->__pyx_d); Py_VISIT(traverse_module_state->__pyx_b); Py_VISIT(traverse_module_state->__pyx_cython_runtime); - Py_VISIT(traverse_module_state->__pyx_empty_tuple); - Py_VISIT(traverse_module_state->__pyx_empty_bytes); - Py_VISIT(traverse_module_state->__pyx_empty_unicode); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode); #ifdef __Pyx_CyFunction_USED Py_VISIT(traverse_module_state->__pyx_CyFunctionType); #endif @@ -2843,223 +2873,15 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); - Py_VISIT(traverse_module_state->__pyx_n_s_Address); - Py_VISIT(traverse_module_state->__pyx_n_s_Address___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Address___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_Allocating_zero_bytes); - Py_VISIT(traverse_module_state->__pyx_n_s_AssertionError); - Py_VISIT(traverse_module_state->__pyx_n_s_Default_Free); - Py_VISIT(traverse_module_state->__pyx_n_s_Default_Malloc); - Py_VISIT(traverse_module_state->__pyx_kp_s_Error_assigning_d_bytes); - Py_VISIT(traverse_module_state->__pyx_kp_s_Error_reallocating_to_d_bytes); - Py_VISIT(traverse_module_state->__pyx_n_s_MemoryError); - Py_VISIT(traverse_module_state->__pyx_kp_s_Pointer_d_not_found_in_Pool_s); - Py_VISIT(traverse_module_state->__pyx_n_s_Pool); - Py_VISIT(traverse_module_state->__pyx_n_s_Pool___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Pool___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_Pool_own_pyref); - Py_VISIT(traverse_module_state->__pyx_n_s_PyFree); - Py_VISIT(traverse_module_state->__pyx_n_s_PyFree___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_PyFree___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_PyMalloc); - Py_VISIT(traverse_module_state->__pyx_n_s_PyMalloc___reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_PyMalloc___setstate_cython); - Py_VISIT(traverse_module_state->__pyx_kp_s_Realloc_requires_new_size_0); - Py_VISIT(traverse_module_state->__pyx_n_s_TypeError); - Py_VISIT(traverse_module_state->__pyx_n_s_ValueError); - Py_VISIT(traverse_module_state->__pyx_n_s_WARN_ZERO_ALLOC); - Py_VISIT(traverse_module_state->__pyx_n_s__19); - Py_VISIT(traverse_module_state->__pyx_n_s__6); - Py_VISIT(traverse_module_state->__pyx_n_s_asyncio_coroutines); - Py_VISIT(traverse_module_state->__pyx_n_s_cline_in_traceback); - Py_VISIT(traverse_module_state->__pyx_kp_u_disable); - Py_VISIT(traverse_module_state->__pyx_n_s_elem_size); - Py_VISIT(traverse_module_state->__pyx_kp_u_enable); - Py_VISIT(traverse_module_state->__pyx_kp_u_gc); - Py_VISIT(traverse_module_state->__pyx_n_s_getstate); - Py_VISIT(traverse_module_state->__pyx_n_s_hunter_vendor__cymem_cymem); - Py_VISIT(traverse_module_state->__pyx_n_s_import); - Py_VISIT(traverse_module_state->__pyx_n_s_initializing); - Py_VISIT(traverse_module_state->__pyx_n_s_is_coroutine); - Py_VISIT(traverse_module_state->__pyx_kp_u_isenabled); - Py_VISIT(traverse_module_state->__pyx_n_s_main); - Py_VISIT(traverse_module_state->__pyx_n_s_name); - Py_VISIT(traverse_module_state->__pyx_kp_s_no_default___reduce___due_to_non); - Py_VISIT(traverse_module_state->__pyx_n_s_number); - Py_VISIT(traverse_module_state->__pyx_n_s_own_pyref); - Py_VISIT(traverse_module_state->__pyx_n_s_pop); - Py_VISIT(traverse_module_state->__pyx_n_s_py_ref); - Py_VISIT(traverse_module_state->__pyx_n_s_pyfree); - Py_VISIT(traverse_module_state->__pyx_n_s_pymalloc); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_state); - Py_VISIT(traverse_module_state->__pyx_n_s_pyx_vtable); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_reduce_ex); - Py_VISIT(traverse_module_state->__pyx_n_s_self); - Py_VISIT(traverse_module_state->__pyx_kp_s_self_free_cannot_be_converted_to); - Py_VISIT(traverse_module_state->__pyx_kp_s_self_malloc_cannot_be_converted); - Py_VISIT(traverse_module_state->__pyx_n_s_setstate); - Py_VISIT(traverse_module_state->__pyx_n_s_setstate_cython); - Py_VISIT(traverse_module_state->__pyx_n_s_spec); - Py_VISIT(traverse_module_state->__pyx_kp_s_src_hunter_vendor__cymem_cymem_p); - Py_VISIT(traverse_module_state->__pyx_kp_s_stringsource); - Py_VISIT(traverse_module_state->__pyx_n_s_test); - Py_VISIT(traverse_module_state->__pyx_n_s_warn); - Py_VISIT(traverse_module_state->__pyx_n_s_warnings); Py_VISIT(traverse_module_state->__pyx_k_); Py_VISIT(traverse_module_state->__pyx_k__2); + Py_VISIT(traverse_module_state->__pyx_k__3); Py_VISIT(traverse_module_state->__pyx_k__4); - Py_VISIT(traverse_module_state->__pyx_k__5); - Py_VISIT(traverse_module_state->__pyx_tuple__3); - Py_VISIT(traverse_module_state->__pyx_tuple__7); - Py_VISIT(traverse_module_state->__pyx_tuple__9); - Py_VISIT(traverse_module_state->__pyx_tuple__13); - Py_VISIT(traverse_module_state->__pyx_codeobj__8); - Py_VISIT(traverse_module_state->__pyx_codeobj__10); - Py_VISIT(traverse_module_state->__pyx_codeobj__11); - Py_VISIT(traverse_module_state->__pyx_codeobj__12); - Py_VISIT(traverse_module_state->__pyx_codeobj__14); - Py_VISIT(traverse_module_state->__pyx_codeobj__15); - Py_VISIT(traverse_module_state->__pyx_codeobj__16); - Py_VISIT(traverse_module_state->__pyx_codeobj__17); - Py_VISIT(traverse_module_state->__pyx_codeobj__18); + for (int i=0; i<9; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<70; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } return 0; } #endif -/* #### Code section: module_state_defines ### */ -#define __pyx_d __pyx_mstate_global->__pyx_d -#define __pyx_b __pyx_mstate_global->__pyx_b -#define __pyx_cython_runtime __pyx_mstate_global->__pyx_cython_runtime -#define __pyx_empty_tuple __pyx_mstate_global->__pyx_empty_tuple -#define __pyx_empty_bytes __pyx_mstate_global->__pyx_empty_bytes -#define __pyx_empty_unicode __pyx_mstate_global->__pyx_empty_unicode -#ifdef __Pyx_CyFunction_USED -#define __pyx_CyFunctionType __pyx_mstate_global->__pyx_CyFunctionType -#endif -#ifdef __Pyx_FusedFunction_USED -#define __pyx_FusedFunctionType __pyx_mstate_global->__pyx_FusedFunctionType -#endif -#ifdef __Pyx_Generator_USED -#define __pyx_GeneratorType __pyx_mstate_global->__pyx_GeneratorType -#endif -#ifdef __Pyx_IterableCoroutine_USED -#define __pyx_IterableCoroutineType __pyx_mstate_global->__pyx_IterableCoroutineType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineAwaitType __pyx_mstate_global->__pyx_CoroutineAwaitType -#endif -#ifdef __Pyx_Coroutine_USED -#define __pyx_CoroutineType __pyx_mstate_global->__pyx_CoroutineType -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#define __pyx_ptype_7cpython_4type_type __pyx_mstate_global->__pyx_ptype_7cpython_4type_type -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#endif -#if CYTHON_USE_MODULE_STATE -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool -#define __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address -#endif -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool -#define __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address -#define __pyx_n_s_Address __pyx_mstate_global->__pyx_n_s_Address -#define __pyx_n_s_Address___reduce_cython __pyx_mstate_global->__pyx_n_s_Address___reduce_cython -#define __pyx_n_s_Address___setstate_cython __pyx_mstate_global->__pyx_n_s_Address___setstate_cython -#define __pyx_kp_s_Allocating_zero_bytes __pyx_mstate_global->__pyx_kp_s_Allocating_zero_bytes -#define __pyx_n_s_AssertionError __pyx_mstate_global->__pyx_n_s_AssertionError -#define __pyx_n_s_Default_Free __pyx_mstate_global->__pyx_n_s_Default_Free -#define __pyx_n_s_Default_Malloc __pyx_mstate_global->__pyx_n_s_Default_Malloc -#define __pyx_kp_s_Error_assigning_d_bytes __pyx_mstate_global->__pyx_kp_s_Error_assigning_d_bytes -#define __pyx_kp_s_Error_reallocating_to_d_bytes __pyx_mstate_global->__pyx_kp_s_Error_reallocating_to_d_bytes -#define __pyx_n_s_MemoryError __pyx_mstate_global->__pyx_n_s_MemoryError -#define __pyx_kp_s_Pointer_d_not_found_in_Pool_s __pyx_mstate_global->__pyx_kp_s_Pointer_d_not_found_in_Pool_s -#define __pyx_n_s_Pool __pyx_mstate_global->__pyx_n_s_Pool -#define __pyx_n_s_Pool___reduce_cython __pyx_mstate_global->__pyx_n_s_Pool___reduce_cython -#define __pyx_n_s_Pool___setstate_cython __pyx_mstate_global->__pyx_n_s_Pool___setstate_cython -#define __pyx_n_s_Pool_own_pyref __pyx_mstate_global->__pyx_n_s_Pool_own_pyref -#define __pyx_n_s_PyFree __pyx_mstate_global->__pyx_n_s_PyFree -#define __pyx_n_s_PyFree___reduce_cython __pyx_mstate_global->__pyx_n_s_PyFree___reduce_cython -#define __pyx_n_s_PyFree___setstate_cython __pyx_mstate_global->__pyx_n_s_PyFree___setstate_cython -#define __pyx_n_s_PyMalloc __pyx_mstate_global->__pyx_n_s_PyMalloc -#define __pyx_n_s_PyMalloc___reduce_cython __pyx_mstate_global->__pyx_n_s_PyMalloc___reduce_cython -#define __pyx_n_s_PyMalloc___setstate_cython __pyx_mstate_global->__pyx_n_s_PyMalloc___setstate_cython -#define __pyx_kp_s_Realloc_requires_new_size_0 __pyx_mstate_global->__pyx_kp_s_Realloc_requires_new_size_0 -#define __pyx_n_s_TypeError __pyx_mstate_global->__pyx_n_s_TypeError -#define __pyx_n_s_ValueError __pyx_mstate_global->__pyx_n_s_ValueError -#define __pyx_n_s_WARN_ZERO_ALLOC __pyx_mstate_global->__pyx_n_s_WARN_ZERO_ALLOC -#define __pyx_n_s__19 __pyx_mstate_global->__pyx_n_s__19 -#define __pyx_n_s__6 __pyx_mstate_global->__pyx_n_s__6 -#define __pyx_n_s_asyncio_coroutines __pyx_mstate_global->__pyx_n_s_asyncio_coroutines -#define __pyx_n_s_cline_in_traceback __pyx_mstate_global->__pyx_n_s_cline_in_traceback -#define __pyx_kp_u_disable __pyx_mstate_global->__pyx_kp_u_disable -#define __pyx_n_s_elem_size __pyx_mstate_global->__pyx_n_s_elem_size -#define __pyx_kp_u_enable __pyx_mstate_global->__pyx_kp_u_enable -#define __pyx_kp_u_gc __pyx_mstate_global->__pyx_kp_u_gc -#define __pyx_n_s_getstate __pyx_mstate_global->__pyx_n_s_getstate -#define __pyx_n_s_hunter_vendor__cymem_cymem __pyx_mstate_global->__pyx_n_s_hunter_vendor__cymem_cymem -#define __pyx_n_s_import __pyx_mstate_global->__pyx_n_s_import -#define __pyx_n_s_initializing __pyx_mstate_global->__pyx_n_s_initializing -#define __pyx_n_s_is_coroutine __pyx_mstate_global->__pyx_n_s_is_coroutine -#define __pyx_kp_u_isenabled __pyx_mstate_global->__pyx_kp_u_isenabled -#define __pyx_n_s_main __pyx_mstate_global->__pyx_n_s_main -#define __pyx_n_s_name __pyx_mstate_global->__pyx_n_s_name -#define __pyx_kp_s_no_default___reduce___due_to_non __pyx_mstate_global->__pyx_kp_s_no_default___reduce___due_to_non -#define __pyx_n_s_number __pyx_mstate_global->__pyx_n_s_number -#define __pyx_n_s_own_pyref __pyx_mstate_global->__pyx_n_s_own_pyref -#define __pyx_n_s_pop __pyx_mstate_global->__pyx_n_s_pop -#define __pyx_n_s_py_ref __pyx_mstate_global->__pyx_n_s_py_ref -#define __pyx_n_s_pyfree __pyx_mstate_global->__pyx_n_s_pyfree -#define __pyx_n_s_pymalloc __pyx_mstate_global->__pyx_n_s_pymalloc -#define __pyx_n_s_pyx_state __pyx_mstate_global->__pyx_n_s_pyx_state -#define __pyx_n_s_pyx_vtable __pyx_mstate_global->__pyx_n_s_pyx_vtable -#define __pyx_n_s_reduce __pyx_mstate_global->__pyx_n_s_reduce -#define __pyx_n_s_reduce_cython __pyx_mstate_global->__pyx_n_s_reduce_cython -#define __pyx_n_s_reduce_ex __pyx_mstate_global->__pyx_n_s_reduce_ex -#define __pyx_n_s_self __pyx_mstate_global->__pyx_n_s_self -#define __pyx_kp_s_self_free_cannot_be_converted_to __pyx_mstate_global->__pyx_kp_s_self_free_cannot_be_converted_to -#define __pyx_kp_s_self_malloc_cannot_be_converted __pyx_mstate_global->__pyx_kp_s_self_malloc_cannot_be_converted -#define __pyx_n_s_setstate __pyx_mstate_global->__pyx_n_s_setstate -#define __pyx_n_s_setstate_cython __pyx_mstate_global->__pyx_n_s_setstate_cython -#define __pyx_n_s_spec __pyx_mstate_global->__pyx_n_s_spec -#define __pyx_kp_s_src_hunter_vendor__cymem_cymem_p __pyx_mstate_global->__pyx_kp_s_src_hunter_vendor__cymem_cymem_p -#define __pyx_kp_s_stringsource __pyx_mstate_global->__pyx_kp_s_stringsource -#define __pyx_n_s_test __pyx_mstate_global->__pyx_n_s_test -#define __pyx_n_s_warn __pyx_mstate_global->__pyx_n_s_warn -#define __pyx_n_s_warnings __pyx_mstate_global->__pyx_n_s_warnings -#define __pyx_k_ __pyx_mstate_global->__pyx_k_ -#define __pyx_k__2 __pyx_mstate_global->__pyx_k__2 -#define __pyx_k__4 __pyx_mstate_global->__pyx_k__4 -#define __pyx_k__5 __pyx_mstate_global->__pyx_k__5 -#define __pyx_tuple__3 __pyx_mstate_global->__pyx_tuple__3 -#define __pyx_tuple__7 __pyx_mstate_global->__pyx_tuple__7 -#define __pyx_tuple__9 __pyx_mstate_global->__pyx_tuple__9 -#define __pyx_tuple__13 __pyx_mstate_global->__pyx_tuple__13 -#define __pyx_codeobj__8 __pyx_mstate_global->__pyx_codeobj__8 -#define __pyx_codeobj__10 __pyx_mstate_global->__pyx_codeobj__10 -#define __pyx_codeobj__11 __pyx_mstate_global->__pyx_codeobj__11 -#define __pyx_codeobj__12 __pyx_mstate_global->__pyx_codeobj__12 -#define __pyx_codeobj__14 __pyx_mstate_global->__pyx_codeobj__14 -#define __pyx_codeobj__15 __pyx_mstate_global->__pyx_codeobj__15 -#define __pyx_codeobj__16 __pyx_mstate_global->__pyx_codeobj__16 -#define __pyx_codeobj__17 __pyx_mstate_global->__pyx_codeobj__17 -#define __pyx_codeobj__18 __pyx_mstate_global->__pyx_codeobj__18 /* #### Code section: module_code ### */ /* "hunter/vendor/_cymem/cymem.pyx":12 @@ -3068,7 +2890,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { * cdef void _set(self, malloc_t malloc): # <<<<<<<<<<<<<< * self.malloc = malloc * - */ +*/ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc) { @@ -3078,7 +2900,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_o * self.malloc = malloc # <<<<<<<<<<<<<< * * cdef PyMalloc WrapMalloc(malloc_t malloc): - */ +*/ __pyx_v_self->malloc = __pyx_v_malloc; /* "hunter/vendor/_cymem/cymem.pyx":12 @@ -3087,7 +2909,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_o * cdef void _set(self, malloc_t malloc): # <<<<<<<<<<<<<< * self.malloc = malloc * - */ +*/ /* function exit code */ } @@ -3096,7 +2918,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_o * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__(PyObject *__pyx_v_self, @@ -3107,7 +2929,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__, "PyMalloc.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -3123,16 +2945,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_self)); /* function exit code */ @@ -3146,22 +2969,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cyth int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 1); + __Pyx_RefNannySetupContext("__reduce_cython__", 0); /* "(tree fragment)":2 * def __reduce_cython__(self): * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_self_malloc_cannot_be_converted, 0, 0); - __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_malloc_cannot_be_converted, 0, 0); + __PYX_ERR(1, 2, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -3177,7 +3000,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cyth * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__(PyObject *__pyx_v_self, @@ -3188,7 +3011,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__, "PyMalloc.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -3209,7 +3032,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -3217,47 +3040,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 3, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyMalloc.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -3266,11 +3081,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -3282,22 +3094,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_c int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 1); + __Pyx_RefNannySetupContext("__setstate_cython__", 0); /* "(tree fragment)":4 * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_self_malloc_cannot_be_converted, 0, 0); - __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_malloc_cannot_be_converted, 0, 0); + __PYX_ERR(1, 4, __pyx_L1_error) /* "(tree fragment)":3 * def __reduce_cython__(self): * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -3314,17 +3126,20 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_c * cdef PyMalloc WrapMalloc(malloc_t malloc): # <<<<<<<<<<<<<< * cdef PyMalloc o = PyMalloc() * o._set(malloc) - */ +*/ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc(__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc) { struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_o = 0; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_r = NULL; __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("WrapMalloc", 1); + __Pyx_RefNannySetupContext("WrapMalloc", 0); /* "hunter/vendor/_cymem/cymem.pyx":16 * @@ -3332,9 +3147,19 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter * cdef PyMalloc o = PyMalloc() # <<<<<<<<<<<<<< * o._set(malloc) * return o - */ - __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 16, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); +*/ + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } __pyx_v_o = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_1); __pyx_t_1 = 0; @@ -3344,8 +3169,8 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter * o._set(malloc) # <<<<<<<<<<<<<< * return o * - */ - ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_o->__pyx_vtab)->_set(__pyx_v_o, __pyx_v_malloc); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 17, __pyx_L1_error) +*/ + ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_o->__pyx_vtab)->_set(__pyx_v_o, __pyx_v_malloc); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 17, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":18 * cdef PyMalloc o = PyMalloc() @@ -3353,7 +3178,7 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter * return o # <<<<<<<<<<<<<< * * cdef class PyFree: - */ +*/ __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_o); __pyx_r = __pyx_v_o; @@ -3365,11 +3190,13 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter * cdef PyMalloc WrapMalloc(malloc_t malloc): # <<<<<<<<<<<<<< * cdef PyMalloc o = PyMalloc() * o._set(malloc) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __Pyx_AddTraceback("hunter.vendor._cymem.cymem.WrapMalloc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; @@ -3385,7 +3212,7 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter * cdef void _set(self, free_t free): # <<<<<<<<<<<<<< * self.free = free * - */ +*/ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free) { @@ -3395,7 +3222,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj * self.free = free # <<<<<<<<<<<<<< * * cdef PyFree WrapFree(free_t free): - */ +*/ __pyx_v_self->free = __pyx_v_free; /* "hunter/vendor/_cymem/cymem.pyx":21 @@ -3404,7 +3231,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj * cdef void _set(self, free_t free): # <<<<<<<<<<<<<< * self.free = free * - */ +*/ /* function exit code */ } @@ -3413,7 +3240,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__(PyObject *__pyx_v_self, @@ -3424,7 +3251,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__, "PyFree.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -3440,16 +3267,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_self)); /* function exit code */ @@ -3463,22 +3291,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 1); + __Pyx_RefNannySetupContext("__reduce_cython__", 0); /* "(tree fragment)":2 * def __reduce_cython__(self): * raise TypeError, "self.free cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * raise TypeError, "self.free cannot be converted to a Python object for pickling" - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_self_free_cannot_be_converted_to, 0, 0); - __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_free_cannot_be_converted_to, 0, 0); + __PYX_ERR(1, 2, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -3494,7 +3322,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.free cannot be converted to a Python object for pickling" - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__(PyObject *__pyx_v_self, @@ -3505,7 +3333,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__, "PyFree.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -3526,7 +3354,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -3534,47 +3362,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 3, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyFree.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -3583,11 +3403,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -3599,22 +3416,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cyt int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 1); + __Pyx_RefNannySetupContext("__setstate_cython__", 0); /* "(tree fragment)":4 * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): * raise TypeError, "self.free cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_self_free_cannot_be_converted_to, 0, 0); - __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_free_cannot_be_converted_to, 0, 0); + __PYX_ERR(1, 4, __pyx_L1_error) /* "(tree fragment)":3 * def __reduce_cython__(self): * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.free cannot be converted to a Python object for pickling" - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -3631,17 +3448,20 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cyt * cdef PyFree WrapFree(free_t free): # <<<<<<<<<<<<<< * cdef PyFree o = PyFree() * o._set(free) - */ +*/ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree(__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free) { struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_o = 0; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_r = NULL; __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("WrapFree", 1); + __Pyx_RefNannySetupContext("WrapFree", 0); /* "hunter/vendor/_cymem/cymem.pyx":25 * @@ -3649,9 +3469,19 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6 * cdef PyFree o = PyFree() # <<<<<<<<<<<<<< * o._set(free) * return o - */ - __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 25, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); +*/ + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); + __pyx_t_4 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 25, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_1); + } __pyx_v_o = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_1); __pyx_t_1 = 0; @@ -3661,8 +3491,8 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6 * o._set(free) # <<<<<<<<<<<<<< * return o * - */ - ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_o->__pyx_vtab)->_set(__pyx_v_o, __pyx_v_free); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 26, __pyx_L1_error) +*/ + ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_o->__pyx_vtab)->_set(__pyx_v_o, __pyx_v_free); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 26, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":27 * cdef PyFree o = PyFree() @@ -3670,7 +3500,7 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6 * return o # <<<<<<<<<<<<<< * * Default_Malloc = WrapMalloc(PyMem_Malloc) - */ +*/ __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_o); __pyx_r = __pyx_v_o; @@ -3682,11 +3512,13 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6 * cdef PyFree WrapFree(free_t free): # <<<<<<<<<<<<<< * cdef PyFree o = PyFree() * o._set(free) - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __Pyx_AddTraceback("hunter.vendor._cymem.cymem.WrapFree", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; @@ -3702,7 +3534,7 @@ static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6 * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, # <<<<<<<<<<<<<< * PyFree pyfree=Default_Free): * self.size = 0 - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -3718,90 +3550,82 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__ int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pymalloc,&__pyx_n_s_pyfree,0}; - values[0] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k_); - values[1] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k__2); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pymalloc,&__pyx_mstate_global->__pyx_n_u_pyfree,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 49, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 49, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 49, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pymalloc); - if (value) { values[0] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 49, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 1: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyfree); - if (value) { values[1] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 49, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__cinit__") < 0)) __PYX_ERR(1, 49, __pyx_L3_error) - } + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 49, __pyx_L3_error) + if (!values[0]) values[0] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k_); + if (!values[1]) values[1] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__2); } else { switch (__pyx_nargs) { - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 49, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 49, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } + if (!values[0]) values[0] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k_); + if (!values[1]) values[1] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__2); } __pyx_v_pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)values[0]); __pyx_v_pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)values[1]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(1, 49, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 49, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pymalloc), __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, 1, "pymalloc", 0))) __PYX_ERR(1, 49, __pyx_L1_error) - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pyfree), __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, 1, "pyfree", 0))) __PYX_ERR(1, 50, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pymalloc), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, 1, "pymalloc", 0))) __PYX_ERR(0, 49, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pyfree), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, 1, "pyfree", 0))) __PYX_ERR(0, 50, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v_pymalloc, __pyx_v_pyfree); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = -1; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -3813,7 +3637,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 1); + __Pyx_RefNannySetupContext("__cinit__", 0); /* "hunter/vendor/_cymem/cymem.pyx":51 * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, @@ -3821,7 +3645,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * self.size = 0 # <<<<<<<<<<<<<< * self.addresses = {} * self.refs = [] - */ +*/ __pyx_v_self->size = 0; /* "hunter/vendor/_cymem/cymem.pyx":52 @@ -3830,8 +3654,8 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * self.addresses = {} # <<<<<<<<<<<<<< * self.refs = [] * self.pymalloc = pymalloc - */ - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 52, __pyx_L1_error) +*/ + __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->addresses); @@ -3845,8 +3669,8 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * self.refs = [] # <<<<<<<<<<<<<< * self.pymalloc = pymalloc * self.pyfree = pyfree - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 53, __pyx_L1_error) +*/ + __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->refs); @@ -3860,7 +3684,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * self.pymalloc = pymalloc # <<<<<<<<<<<<<< * self.pyfree = pyfree * - */ +*/ __Pyx_INCREF((PyObject *)__pyx_v_pymalloc); __Pyx_GIVEREF((PyObject *)__pyx_v_pymalloc); __Pyx_GOTREF((PyObject *)__pyx_v_self->pymalloc); @@ -3873,7 +3697,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * self.pyfree = pyfree # <<<<<<<<<<<<<< * * def __dealloc__(self): - */ +*/ __Pyx_INCREF((PyObject *)__pyx_v_pyfree); __Pyx_GIVEREF((PyObject *)__pyx_v_pyfree); __Pyx_GOTREF((PyObject *)__pyx_v_self->pyfree); @@ -3886,7 +3710,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, # <<<<<<<<<<<<<< * PyFree pyfree=Default_Free): * self.size = 0 - */ +*/ /* function exit code */ __pyx_r = 0; @@ -3906,7 +3730,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_ * def __dealloc__(self): # <<<<<<<<<<<<<< * cdef size_t addr * if self.addresses is not None: - */ +*/ /* Python wrapper */ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_3__dealloc__(PyObject *__pyx_v_self); /*proto*/ @@ -3935,7 +3759,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__dealloc__", 1); + __Pyx_RefNannySetupContext("__dealloc__", 0); /* "hunter/vendor/_cymem/cymem.pyx":59 * def __dealloc__(self): @@ -3943,7 +3767,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * if self.addresses is not None: # <<<<<<<<<<<<<< * for addr in self.addresses: * if addr != 0: - */ +*/ __pyx_t_1 = (__pyx_v_self->addresses != ((PyObject*)Py_None)); if (__pyx_t_1) { @@ -3953,13 +3777,13 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * for addr in self.addresses: # <<<<<<<<<<<<<< * if addr != 0: * self.pyfree.free(addr) - */ +*/ __pyx_t_3 = 0; if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 60, __pyx_L1_error) + __PYX_ERR(0, 60, __pyx_L1_error) } - __pyx_t_6 = __Pyx_dict_iterator(__pyx_v_self->addresses, 1, ((PyObject *)NULL), (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 60, __pyx_L1_error) + __pyx_t_6 = __Pyx_dict_iterator(__pyx_v_self->addresses, 1, ((PyObject *)NULL), (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = __pyx_t_6; @@ -3967,9 +3791,9 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ while (1) { __pyx_t_7 = __Pyx_dict_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_6, NULL, NULL, __pyx_t_5); if (unlikely(__pyx_t_7 == 0)) break; - if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(1, 60, __pyx_L1_error) + if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = __Pyx_PyInt_As_size_t(__pyx_t_6); if (unlikely((__pyx_t_8 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 60, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyLong_As_size_t(__pyx_t_6); if (unlikely((__pyx_t_8 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_addr = __pyx_t_8; @@ -3979,7 +3803,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * if addr != 0: # <<<<<<<<<<<<<< * self.pyfree.free(addr) * - */ +*/ __pyx_t_1 = (__pyx_v_addr != 0); if (__pyx_t_1) { @@ -3989,8 +3813,8 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * self.pyfree.free(addr) # <<<<<<<<<<<<<< * * cdef void* alloc(self, size_t number, size_t elem_size) except NULL: - */ - __pyx_v_self->pyfree->free(((void *)__pyx_v_addr)); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 62, __pyx_L1_error) +*/ + __pyx_v_self->pyfree->free(((void *)__pyx_v_addr)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 62, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":61 * if self.addresses is not None: @@ -3998,7 +3822,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * if addr != 0: # <<<<<<<<<<<<<< * self.pyfree.free(addr) * - */ +*/ } } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -4009,7 +3833,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * if self.addresses is not None: # <<<<<<<<<<<<<< * for addr in self.addresses: * if addr != 0: - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":57 @@ -4018,7 +3842,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * def __dealloc__(self): # <<<<<<<<<<<<<< * cdef size_t addr * if self.addresses is not None: - */ +*/ /* function exit code */ goto __pyx_L0; @@ -4036,7 +3860,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __ * cdef void* alloc(self, size_t number, size_t elem_size) except NULL: # <<<<<<<<<<<<<< * """Allocate a 0-initialized number*elem_size-byte block of memory, and * remember its address. The block will be freed when the Pool is garbage - */ +*/ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size) { void *__pyx_v_p; @@ -4047,12 +3871,14 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj int __pyx_t_3; PyObject *__pyx_t_4 = NULL; PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - void *__pyx_t_7; + PyObject *__pyx_t_6 = NULL; + size_t __pyx_t_7; + void *__pyx_t_8; + PyObject *__pyx_t_9 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("alloc", 1); + __Pyx_RefNannySetupContext("alloc", 0); /* "hunter/vendor/_cymem/cymem.pyx":70 * WARN_ZERO_ALLOC was set to True. @@ -4060,10 +3886,10 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): # <<<<<<<<<<<<<< * warnings.warn("Allocating zero bytes") * cdef void* p = self.pymalloc.malloc(number * elem_size) - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_WARN_ZERO_ALLOC); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 70, __pyx_L1_error) +*/ + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_WARN_ZERO_ALLOC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(1, 70, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_3) { } else { @@ -4087,33 +3913,32 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * warnings.warn("Allocating zero bytes") # <<<<<<<<<<<<<< * cdef void* p = self.pymalloc.malloc(number * elem_size) * if p == NULL: - */ - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_warnings); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 71, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_warn); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 71, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; +*/ __pyx_t_4 = NULL; - __pyx_t_6 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_warnings); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 71, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_warn); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 71, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_7 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_6 = 1; - } + if (unlikely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6); + assert(__pyx_t_4); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6); + __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx__function); + __Pyx_DECREF_SET(__pyx_t_6, __pyx__function); + __pyx_t_7 = 0; } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_kp_s_Allocating_zero_bytes}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_6, 1+__pyx_t_6); + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Allocating_zero_bytes}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 71, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 71, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -4123,7 +3948,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): # <<<<<<<<<<<<<< * warnings.warn("Allocating zero bytes") * cdef void* p = self.pymalloc.malloc(number * elem_size) - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":72 @@ -4132,9 +3957,9 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * cdef void* p = self.pymalloc.malloc(number * elem_size) # <<<<<<<<<<<<<< * if p == NULL: * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) - */ - __pyx_t_7 = __pyx_v_self->pymalloc->malloc((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 72, __pyx_L1_error) - __pyx_v_p = __pyx_t_7; +*/ + __pyx_t_8 = __pyx_v_self->pymalloc->malloc((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 72, __pyx_L1_error) + __pyx_v_p = __pyx_t_8; /* "hunter/vendor/_cymem/cymem.pyx":73 * warnings.warn("Allocating zero bytes") @@ -4142,7 +3967,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * if p == NULL: # <<<<<<<<<<<<<< * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) * memset(p, 0, number * elem_size) - */ +*/ __pyx_t_1 = (__pyx_v_p == NULL); if (unlikely(__pyx_t_1)) { @@ -4152,18 +3977,28 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) # <<<<<<<<<<<<<< * memset(p, 0, number * elem_size) * self.addresses[p] = number * elem_size - */ - __pyx_t_2 = __Pyx_PyInt_FromSize_t((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 74, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_Error_assigning_d_bytes, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 74, __pyx_L1_error) +*/ + __pyx_t_6 = NULL; + __Pyx_INCREF(__pyx_builtin_MemoryError); + __pyx_t_4 = __pyx_builtin_MemoryError; + __pyx_t_5 = __Pyx_PyLong_FromSize_t((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 74, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 74, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_9 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Error_assigning_d_bytes, __pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 74, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_7 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_9}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 74, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + } __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(1, 74, __pyx_L1_error) + __PYX_ERR(0, 74, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":73 * warnings.warn("Allocating zero bytes") @@ -4171,7 +4006,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * if p == NULL: # <<<<<<<<<<<<<< * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) * memset(p, 0, number * elem_size) - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":75 @@ -4180,7 +4015,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * memset(p, 0, number * elem_size) # <<<<<<<<<<<<<< * self.addresses[p] = number * elem_size * self.size += number * elem_size - */ +*/ (void)(memset(__pyx_v_p, 0, (__pyx_v_number * __pyx_v_elem_size))); /* "hunter/vendor/_cymem/cymem.pyx":76 @@ -4189,17 +4024,17 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * self.addresses[p] = number * elem_size # <<<<<<<<<<<<<< * self.size += number * elem_size * return p - */ - __pyx_t_2 = __Pyx_PyInt_FromSize_t((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 76, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_PyLong_FromSize_t((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(1, 76, __pyx_L1_error) + __PYX_ERR(0, 76, __pyx_L1_error) } - __pyx_t_5 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 76, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - if (unlikely((PyDict_SetItem(__pyx_v_self->addresses, __pyx_t_5, __pyx_t_2) < 0))) __PYX_ERR(1, 76, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_4 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 76, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + if (unlikely((PyDict_SetItem(__pyx_v_self->addresses, __pyx_t_4, __pyx_t_2) < 0))) __PYX_ERR(0, 76, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":77 @@ -4208,7 +4043,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * self.size += number * elem_size # <<<<<<<<<<<<<< * return p * - */ +*/ __pyx_v_self->size = (__pyx_v_self->size + (__pyx_v_number * __pyx_v_elem_size)); /* "hunter/vendor/_cymem/cymem.pyx":78 @@ -4217,7 +4052,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * return p # <<<<<<<<<<<<<< * * cdef void* realloc(self, void* p, size_t new_size) except NULL: - */ +*/ __pyx_r = __pyx_v_p; goto __pyx_L0; @@ -4227,15 +4062,17 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * cdef void* alloc(self, size_t number, size_t elem_size) except NULL: # <<<<<<<<<<<<<< * """Allocate a 0-initialized number*elem_size-byte block of memory, and * remember its address. The block will be freed when the Pool is garbage - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_9); __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.alloc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; + __pyx_r = 0; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -4247,7 +4084,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj * cdef void* realloc(self, void* p, size_t new_size) except NULL: # <<<<<<<<<<<<<< * """Resizes the memory block pointed to by p to new_size bytes, returning * a non-NULL pointer to the new block. new_size must be larger than the - */ +*/ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p, size_t __pyx_v_new_size) { void *__pyx_v_new_ptr; @@ -4257,12 +4094,16 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - void *__pyx_t_5; - size_t __pyx_t_6; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7[4]; + PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; + void *__pyx_t_10; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("realloc", 1); + __Pyx_RefNannySetupContext("realloc", 0); /* "hunter/vendor/_cymem/cymem.pyx":87 * If p is not in the Pool or new_size is 0, a MemoryError is raised. @@ -4270,14 +4111,14 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * if p not in self.addresses: # <<<<<<<<<<<<<< * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) * if new_size == 0: - */ - __pyx_t_1 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 87, __pyx_L1_error) +*/ + __pyx_t_1 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(1, 87, __pyx_L1_error) + __PYX_ERR(0, 87, __pyx_L1_error) } - __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_t_1, __pyx_v_self->addresses, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 87, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_t_1, __pyx_v_self->addresses, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (unlikely(__pyx_t_2)) { @@ -4287,26 +4128,36 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) # <<<<<<<<<<<<<< * if new_size == 0: * raise ValueError("Realloc requires new_size > 0") - */ - __pyx_t_1 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1)) __PYX_ERR(1, 88, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->addresses); - __Pyx_GIVEREF(__pyx_v_self->addresses); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self->addresses)) __PYX_ERR(1, 88, __pyx_L1_error); - __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Pointer_d_not_found_in_Pool_s, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); +*/ + __pyx_t_3 = NULL; + __Pyx_INCREF(__pyx_builtin_ValueError); + __pyx_t_4 = __pyx_builtin_ValueError; + __pyx_t_5 = __Pyx_PyUnicode_From_size_t(((size_t)__pyx_v_p), 0, ' ', 'd'); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->addresses), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_Pointer; + __pyx_t_7[1] = __pyx_t_5; + __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_not_found_in_Pool; + __pyx_t_7[3] = __pyx_t_6; + __pyx_t_8 = __Pyx_PyUnicode_Join(__pyx_t_7, 4, 8 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + 19 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_8}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + } + __Pyx_Raise(__pyx_t_1, 0, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(1, 88, __pyx_L1_error) + __PYX_ERR(0, 88, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":87 * If p is not in the Pool or new_size is 0, a MemoryError is raised. @@ -4314,7 +4165,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * if p not in self.addresses: # <<<<<<<<<<<<<< * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) * if new_size == 0: - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":89 @@ -4323,7 +4174,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * if new_size == 0: # <<<<<<<<<<<<<< * raise ValueError("Realloc requires new_size > 0") * assert new_size > self.addresses[p] - */ +*/ __pyx_t_2 = (__pyx_v_new_size == 0); if (unlikely(__pyx_t_2)) { @@ -4333,12 +4184,22 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * raise ValueError("Realloc requires new_size > 0") # <<<<<<<<<<<<<< * assert new_size > self.addresses[p] * cdef void* new_ptr = self.alloc(1, new_size) - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 90, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(1, 90, __pyx_L1_error) +*/ + __pyx_t_4 = NULL; + __Pyx_INCREF(__pyx_builtin_ValueError); + __pyx_t_8 = __pyx_builtin_ValueError; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Realloc_requires_new_size_0}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + } + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(0, 90, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":89 * if p not in self.addresses: @@ -4346,7 +4207,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * if new_size == 0: # <<<<<<<<<<<<<< * raise ValueError("Realloc requires new_size > 0") * assert new_size > self.addresses[p] - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":91 @@ -4355,32 +4216,32 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * assert new_size > self.addresses[p] # <<<<<<<<<<<<<< * cdef void* new_ptr = self.alloc(1, new_size) * if new_ptr == NULL: - */ +*/ #ifndef CYTHON_WITHOUT_ASSERTIONS if (unlikely(__pyx_assertions_enabled())) { - __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(1, 91, __pyx_L1_error) + __PYX_ERR(0, 91, __pyx_L1_error) } - __pyx_t_1 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyDict_GetItem(__pyx_v_self->addresses, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 91, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_4 = __Pyx_PyDict_GetItem(__pyx_v_self->addresses, __pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __pyx_t_8 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_GT); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_4, Py_GT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 91, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(1, 91, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 91, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (unlikely(!__pyx_t_2)) { __Pyx_Raise(__pyx_builtin_AssertionError, 0, 0, 0); - __PYX_ERR(1, 91, __pyx_L1_error) + __PYX_ERR(0, 91, __pyx_L1_error) } } #else - if ((1)); else __PYX_ERR(1, 91, __pyx_L1_error) + if ((1)); else __PYX_ERR(0, 91, __pyx_L1_error) #endif /* "hunter/vendor/_cymem/cymem.pyx":92 @@ -4389,9 +4250,9 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * cdef void* new_ptr = self.alloc(1, new_size) # <<<<<<<<<<<<<< * if new_ptr == NULL: * raise MemoryError("Error reallocating to %d bytes" % new_size) - */ - __pyx_t_5 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self->__pyx_vtab)->alloc(__pyx_v_self, 1, __pyx_v_new_size); if (unlikely(__pyx_t_5 == ((void *)NULL))) __PYX_ERR(1, 92, __pyx_L1_error) - __pyx_v_new_ptr = __pyx_t_5; +*/ + __pyx_t_10 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self->__pyx_vtab)->alloc(__pyx_v_self, 1, __pyx_v_new_size); if (unlikely(__pyx_t_10 == ((void *)0))) __PYX_ERR(0, 92, __pyx_L1_error) + __pyx_v_new_ptr = __pyx_t_10; /* "hunter/vendor/_cymem/cymem.pyx":93 * assert new_size > self.addresses[p] @@ -4399,7 +4260,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * if new_ptr == NULL: # <<<<<<<<<<<<<< * raise MemoryError("Error reallocating to %d bytes" % new_size) * memcpy(new_ptr, p, self.addresses[p]) - */ +*/ __pyx_t_2 = (__pyx_v_new_ptr == NULL); if (unlikely(__pyx_t_2)) { @@ -4409,26 +4270,36 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * raise MemoryError("Error reallocating to %d bytes" % new_size) # <<<<<<<<<<<<<< * memcpy(new_ptr, p, self.addresses[p]) * self.free(p) - */ - __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 94, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Error_reallocating_to_d_bytes, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 94, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 94, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(1, 94, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":93 - * assert new_size > self.addresses[p] - * cdef void* new_ptr = self.alloc(1, new_size) - * if new_ptr == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error reallocating to %d bytes" % new_size) +*/ + __pyx_t_4 = NULL; + __Pyx_INCREF(__pyx_builtin_MemoryError); + __pyx_t_1 = __pyx_builtin_MemoryError; + __pyx_t_3 = __Pyx_PyLong_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Error_reallocating_to_d_bytes, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_9 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_6}; + __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 94, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + } + __Pyx_Raise(__pyx_t_8, 0, 0, 0); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __PYX_ERR(0, 94, __pyx_L1_error) + + /* "hunter/vendor/_cymem/cymem.pyx":93 + * assert new_size > self.addresses[p] + * cdef void* new_ptr = self.alloc(1, new_size) + * if new_ptr == NULL: # <<<<<<<<<<<<<< + * raise MemoryError("Error reallocating to %d bytes" % new_size) * memcpy(new_ptr, p, self.addresses[p]) - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":95 @@ -4437,19 +4308,19 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * memcpy(new_ptr, p, self.addresses[p]) # <<<<<<<<<<<<<< * self.free(p) * self.addresses[new_ptr] = new_size - */ +*/ if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(1, 95, __pyx_L1_error) + __PYX_ERR(0, 95, __pyx_L1_error) } - __pyx_t_1 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 95, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 95, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_self->addresses, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyDict_GetItem(__pyx_v_self->addresses, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 95, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __pyx_t_9 = __Pyx_PyLong_As_size_t(__pyx_t_1); if (unlikely((__pyx_t_9 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyInt_As_size_t(__pyx_t_4); if (unlikely((__pyx_t_6 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 95, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - (void)(memcpy(__pyx_v_new_ptr, __pyx_v_p, __pyx_t_6)); + (void)(memcpy(__pyx_v_new_ptr, __pyx_v_p, __pyx_t_9)); /* "hunter/vendor/_cymem/cymem.pyx":96 * raise MemoryError("Error reallocating to %d bytes" % new_size) @@ -4457,8 +4328,8 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * self.free(p) # <<<<<<<<<<<<<< * self.addresses[new_ptr] = new_size * return new_ptr - */ - ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self->__pyx_vtab)->free(__pyx_v_self, __pyx_v_p); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 96, __pyx_L1_error) +*/ + ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self->__pyx_vtab)->free(__pyx_v_self, __pyx_v_p); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 96, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":97 * memcpy(new_ptr, p, self.addresses[p]) @@ -4466,18 +4337,18 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * self.addresses[new_ptr] = new_size # <<<<<<<<<<<<<< * return new_ptr * - */ - __pyx_t_4 = __Pyx_PyInt_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 97, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); +*/ + __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(1, 97, __pyx_L1_error) + __PYX_ERR(0, 97, __pyx_L1_error) } - __pyx_t_1 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_new_ptr)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 97, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (unlikely((PyDict_SetItem(__pyx_v_self->addresses, __pyx_t_1, __pyx_t_4) < 0))) __PYX_ERR(1, 97, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_new_ptr)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + if (unlikely((PyDict_SetItem(__pyx_v_self->addresses, __pyx_t_8, __pyx_t_1) < 0))) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; /* "hunter/vendor/_cymem/cymem.pyx":98 * self.free(p) @@ -4485,7 +4356,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * return new_ptr # <<<<<<<<<<<<<< * * cdef void free(self, void* p) except *: - */ +*/ __pyx_r = __pyx_v_new_ptr; goto __pyx_L0; @@ -4495,15 +4366,18 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * cdef void* realloc(self, void* p, size_t new_size) except NULL: # <<<<<<<<<<<<<< * """Resizes the memory block pointed to by p to new_size bytes, returning * a non-NULL pointer to the new block. new_size must be larger than the - */ +*/ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_8); __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.realloc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; + __pyx_r = 0; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -4515,7 +4389,7 @@ static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_o * cdef void free(self, void* p) except *: # <<<<<<<<<<<<<< * """Frees the memory block pointed to by p, which must have been returned * by a previous call to Pool.alloc. You don't necessarily need to free - */ +*/ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p) { __Pyx_RefNannyDeclarations @@ -4526,7 +4400,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("free", 1); + __Pyx_RefNannySetupContext("free", 0); /* "hunter/vendor/_cymem/cymem.pyx":108 * If p is not in Pool.addresses, a KeyError is raised. @@ -4534,23 +4408,23 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6 * self.size -= self.addresses.pop(p) # <<<<<<<<<<<<<< * self.pyfree.free(p) * - */ - __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 108, __pyx_L1_error) +*/ + __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (unlikely(__pyx_v_self->addresses == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "pop"); - __PYX_ERR(1, 108, __pyx_L1_error) + __PYX_ERR(0, 108, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 108, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyDict_Pop(__pyx_v_self->addresses, __pyx_t_2, ((PyObject *)NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 108, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_Pop(__pyx_v_self->addresses, __pyx_t_2, ((PyObject *)NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceSubtract(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 108, __pyx_L1_error) + __pyx_t_2 = PyNumber_InPlaceSubtract(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_4 = __Pyx_PyInt_As_size_t(__pyx_t_2); if (unlikely((__pyx_t_4 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 108, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyLong_As_size_t(__pyx_t_2); if (unlikely((__pyx_t_4 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_self->size = __pyx_t_4; @@ -4560,8 +4434,8 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6 * self.pyfree.free(p) # <<<<<<<<<<<<<< * * def own_pyref(self, object py_ref): - */ - __pyx_v_self->pyfree->free(__pyx_v_p); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 109, __pyx_L1_error) +*/ + __pyx_v_self->pyfree->free(__pyx_v_p); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 109, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":100 * return new_ptr @@ -4569,7 +4443,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6 * cdef void free(self, void* p) except *: # <<<<<<<<<<<<<< * """Frees the memory block pointed to by p, which must have been returned * by a previous call to Pool.alloc. You don't necessarily need to free - */ +*/ /* function exit code */ goto __pyx_L0; @@ -4588,7 +4462,7 @@ static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6 * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< * self.refs.append(py_ref) * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref(PyObject *__pyx_v_self, @@ -4599,7 +4473,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref, "Pool.own_pyref(self, py_ref)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref = {"own_pyref", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref = {"own_pyref", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -4620,7 +4494,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("own_pyref (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -4628,47 +4502,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_py_ref,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_py_ref,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 111, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 111, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_py_ref)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 111, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "own_pyref") < 0)) __PYX_ERR(1, 111, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "own_pyref", 0) < 0) __PYX_ERR(0, 111, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("own_pyref", 1, 1, 1, i); __PYX_ERR(0, 111, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 111, __pyx_L3_error) } __pyx_v_py_ref = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("own_pyref", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 111, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("own_pyref", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 111, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.own_pyref", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -4677,11 +4543,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v_py_ref); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -4694,7 +4557,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("own_pyref", 1); + __Pyx_RefNannySetupContext("own_pyref", 0); /* "hunter/vendor/_cymem/cymem.pyx":112 * @@ -4702,12 +4565,12 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct * self.refs.append(py_ref) # <<<<<<<<<<<<<< * * - */ +*/ if (unlikely(__pyx_v_self->refs == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "append"); - __PYX_ERR(1, 112, __pyx_L1_error) + __PYX_ERR(0, 112, __pyx_L1_error) } - __pyx_t_1 = __Pyx_PyList_Append(__pyx_v_self->refs, __pyx_v_py_ref); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(1, 112, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyList_Append(__pyx_v_self->refs, __pyx_v_py_ref); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 112, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":111 * self.pyfree.free(p) @@ -4715,7 +4578,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< * self.refs.append(py_ref) * - */ +*/ /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); @@ -4735,7 +4598,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct * cdef readonly size_t size # <<<<<<<<<<<<<< * cdef readonly dict addresses * cdef readonly list refs - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4size_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -4759,9 +4622,9 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 18, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -4784,7 +4647,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(str * cdef readonly dict addresses # <<<<<<<<<<<<<< * cdef readonly list refs * cdef readonly PyMalloc pymalloc - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -4804,7 +4667,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->addresses); __pyx_r = __pyx_v_self->addresses; @@ -4823,7 +4686,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get_ * cdef readonly list refs # <<<<<<<<<<<<<< * cdef readonly PyMalloc pymalloc * cdef readonly PyFree pyfree - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -4843,7 +4706,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(Py static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->refs); __pyx_r = __pyx_v_self->refs; @@ -4862,7 +4725,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(str * cdef readonly PyMalloc pymalloc # <<<<<<<<<<<<<< * cdef readonly PyFree pyfree * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -4882,7 +4745,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get_ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pymalloc); __pyx_r = ((PyObject *)__pyx_v_self->pymalloc); @@ -4901,7 +4764,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__ * cdef readonly PyFree pyfree # <<<<<<<<<<<<<< * * cdef void* alloc(self, size_t number, size_t size) except NULL - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -4921,7 +4784,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__( static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pyfree); __pyx_r = ((PyObject *)__pyx_v_self->pyfree); @@ -4938,7 +4801,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(s * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__(PyObject *__pyx_v_self, @@ -4949,7 +4812,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__, "Pool.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -4965,16 +4828,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); /* function exit code */ @@ -4988,22 +4852,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 1); + __Pyx_RefNannySetupContext("__reduce_cython__", 0); /* "(tree fragment)":2 * def __reduce_cython__(self): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); + __PYX_ERR(1, 2, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -5019,7 +4883,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython_ * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__(PyObject *__pyx_v_self, @@ -5030,7 +4894,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__, "Pool.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -5051,7 +4915,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -5059,47 +4923,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 3, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -5108,11 +4964,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -5124,22 +4977,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cytho int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 1); + __Pyx_RefNannySetupContext("__setstate_cython__", 0); /* "(tree fragment)":4 * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); + __PYX_ERR(1, 4, __pyx_L1_error) /* "(tree fragment)":3 * def __reduce_cython__(self): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -5156,7 +5009,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cytho * def __cinit__(self, size_t number, size_t elem_size, # <<<<<<<<<<<<<< * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): * self.ptr = NULL - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -5174,116 +5027,100 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_number,&__pyx_n_s_elem_size,&__pyx_n_s_pymalloc,&__pyx_n_s_pyfree,0}; - values[2] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k__4); - values[3] = __Pyx_Arg_NewRef_VARARGS((PyObject *)__pyx_k__5); - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_number,&__pyx_mstate_global->__pyx_n_u_elem_size,&__pyx_mstate_global->__pyx_n_u_pymalloc,&__pyx_mstate_global->__pyx_n_u_pyfree,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 133, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 4: values[3] = __Pyx_Arg_VARARGS(__pyx_args, 3); + case 4: + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 133, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 133, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 133, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 133, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_number)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_elem_size)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, 1); __PYX_ERR(1, 133, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pymalloc); - if (value) { values[2] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 3: - if (kw_args > 0) { - PyObject* value = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyfree); - if (value) { values[3] = __Pyx_Arg_NewRef_VARARGS(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__cinit__") < 0)) __PYX_ERR(1, 133, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 133, __pyx_L3_error) + if (!values[2]) values[2] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__3); + if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__4); + for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, i); __PYX_ERR(0, 133, __pyx_L3_error) } } } else { switch (__pyx_nargs) { - case 4: values[3] = __Pyx_Arg_VARARGS(__pyx_args, 3); + case 4: + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 133, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 3: values[2] = __Pyx_Arg_VARARGS(__pyx_args, 2); + case 3: + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 133, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 133, __pyx_L3_error) + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 133, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } + if (!values[2]) values[2] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__3); + if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__4); } - __pyx_v_number = __Pyx_PyInt_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) - __pyx_v_elem_size = __Pyx_PyInt_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 133, __pyx_L3_error) + __pyx_v_number = __Pyx_PyLong_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 133, __pyx_L3_error) + __pyx_v_elem_size = __Pyx_PyLong_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 133, __pyx_L3_error) __pyx_v_pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)values[2]); __pyx_v_pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)values[3]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, __pyx_nargs); __PYX_ERR(1, 133, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 133, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pymalloc), __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, 1, "pymalloc", 0))) __PYX_ERR(1, 134, __pyx_L1_error) - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pyfree), __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, 1, "pyfree", 0))) __PYX_ERR(1, 134, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pymalloc), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, 1, "pymalloc", 0))) __PYX_ERR(0, 134, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pyfree), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, 1, "pyfree", 0))) __PYX_ERR(0, 134, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v_number, __pyx_v_elem_size, __pyx_v_pymalloc, __pyx_v_pyfree); /* function exit code */ goto __pyx_L0; __pyx_L1_error:; __pyx_r = -1; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; __pyx_L0:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } @@ -5291,7 +5128,7 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED size_t __pyx_v_number, CYTHON_UNUSED size_t __pyx_v_elem_size, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree) { int __pyx_r; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__", 1); + __Pyx_RefNannySetupContext("__cinit__", 0); /* "hunter/vendor/_cymem/cymem.pyx":135 * def __cinit__(self, size_t number, size_t elem_size, @@ -5299,7 +5136,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __p * self.ptr = NULL # <<<<<<<<<<<<<< * self.pymalloc = pymalloc * self.pyfree = pyfree - */ +*/ __pyx_v_self->ptr = NULL; /* "hunter/vendor/_cymem/cymem.pyx":136 @@ -5308,7 +5145,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __p * self.pymalloc = pymalloc # <<<<<<<<<<<<<< * self.pyfree = pyfree * - */ +*/ __Pyx_INCREF((PyObject *)__pyx_v_pymalloc); __Pyx_GIVEREF((PyObject *)__pyx_v_pymalloc); __Pyx_GOTREF((PyObject *)__pyx_v_self->pymalloc); @@ -5321,7 +5158,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __p * self.pyfree = pyfree # <<<<<<<<<<<<<< * * def __init__(self, size_t number, size_t elem_size): - */ +*/ __Pyx_INCREF((PyObject *)__pyx_v_pyfree); __Pyx_GIVEREF((PyObject *)__pyx_v_pyfree); __Pyx_GOTREF((PyObject *)__pyx_v_self->pyfree); @@ -5334,7 +5171,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __p * def __cinit__(self, size_t number, size_t elem_size, # <<<<<<<<<<<<<< * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): * self.ptr = NULL - */ +*/ /* function exit code */ __pyx_r = 0; @@ -5348,7 +5185,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __p * def __init__(self, size_t number, size_t elem_size): # <<<<<<<<<<<<<< * self.ptr = self.pymalloc.malloc(number * elem_size) * if self.ptr == NULL: - */ +*/ /* Python wrapper */ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ @@ -5364,68 +5201,53 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject * int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_number,&__pyx_n_s_elem_size,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_number,&__pyx_mstate_global->__pyx_n_u_elem_size,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 139, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 2: values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + case 2: + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 139, __pyx_L3_error) CYTHON_FALLTHROUGH; - case 1: values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 139, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_VARARGS(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_number)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_GetKwValue_VARARGS(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_elem_size)) != 0)) { - (void)__Pyx_Arg_NewRef_VARARGS(values[1]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); __PYX_ERR(1, 139, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__init__") < 0)) __PYX_ERR(1, 139, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 139, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, i); __PYX_ERR(0, 139, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_VARARGS(__pyx_args, 0); - values[1] = __Pyx_Arg_VARARGS(__pyx_args, 1); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 139, __pyx_L3_error) + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 139, __pyx_L3_error) } - __pyx_v_number = __Pyx_PyInt_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) - __pyx_v_elem_size = __Pyx_PyInt_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 139, __pyx_L3_error) + __pyx_v_number = __Pyx_PyLong_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 139, __pyx_L3_error) + __pyx_v_elem_size = __Pyx_PyLong_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 139, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(1, 139, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 139, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -5434,11 +5256,8 @@ static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject * __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v_number, __pyx_v_elem_size); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_VARARGS(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -5451,10 +5270,14 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + size_t __pyx_t_8; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 1); + __Pyx_RefNannySetupContext("__init__", 0); /* "hunter/vendor/_cymem/cymem.pyx":140 * @@ -5462,8 +5285,8 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * self.ptr = self.pymalloc.malloc(number * elem_size) # <<<<<<<<<<<<<< * if self.ptr == NULL: * raise MemoryError("Error assigning %d bytes" % number * elem_size) - */ - __pyx_t_1 = __pyx_v_self->pymalloc->malloc((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 140, __pyx_L1_error) +*/ + __pyx_t_1 = __pyx_v_self->pymalloc->malloc((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 140, __pyx_L1_error) __pyx_v_self->ptr = __pyx_t_1; /* "hunter/vendor/_cymem/cymem.pyx":141 @@ -5472,7 +5295,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * if self.ptr == NULL: # <<<<<<<<<<<<<< * raise MemoryError("Error assigning %d bytes" % number * elem_size) * memset(self.ptr, 0, number * elem_size) - */ +*/ __pyx_t_2 = (__pyx_v_self->ptr == NULL); if (unlikely(__pyx_t_2)) { @@ -5482,21 +5305,31 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * raise MemoryError("Error assigning %d bytes" % number * elem_size) # <<<<<<<<<<<<<< * memset(self.ptr, 0, number * elem_size) * - */ - __pyx_t_3 = __Pyx_PyInt_FromSize_t(__pyx_v_number); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Error_assigning_d_bytes, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PySequence_Multiply(__pyx_t_4, __pyx_v_elem_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); +*/ + __pyx_t_4 = NULL; + __Pyx_INCREF(__pyx_builtin_MemoryError); + __pyx_t_5 = __pyx_builtin_MemoryError; + __pyx_t_6 = __Pyx_PyLong_FromSize_t(__pyx_v_number); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 142, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Error_assigning_d_bytes, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 142, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = __Pyx_PySequence_Multiply(__pyx_t_7, __pyx_v_elem_size); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 142, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __pyx_t_8 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_6}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 142, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + } + __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_4, 0, 0, 0); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __PYX_ERR(1, 142, __pyx_L1_error) + __PYX_ERR(0, 142, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":141 * def __init__(self, size_t number, size_t elem_size): @@ -5504,7 +5337,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * if self.ptr == NULL: # <<<<<<<<<<<<<< * raise MemoryError("Error assigning %d bytes" % number * elem_size) * memset(self.ptr, 0, number * elem_size) - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":143 @@ -5513,7 +5346,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * memset(self.ptr, 0, number * elem_size) # <<<<<<<<<<<<<< * * property addr: - */ +*/ (void)(memset(__pyx_v_self->ptr, 0, (__pyx_v_number * __pyx_v_elem_size))); /* "hunter/vendor/_cymem/cymem.pyx":139 @@ -5522,7 +5355,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * def __init__(self, size_t number, size_t elem_size): # <<<<<<<<<<<<<< * self.ptr = self.pymalloc.malloc(number * elem_size) * if self.ptr == NULL: - */ +*/ /* function exit code */ __pyx_r = 0; @@ -5530,6 +5363,9 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; @@ -5543,7 +5379,7 @@ static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __p * def __get__(self): # <<<<<<<<<<<<<< * return self.ptr * - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -5567,7 +5403,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__( int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); /* "hunter/vendor/_cymem/cymem.pyx":147 * property addr: @@ -5575,9 +5411,9 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__( * return self.ptr # <<<<<<<<<<<<<< * * def __dealloc__(self): - */ +*/ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_FromSize_t(((size_t)__pyx_v_self->ptr)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 147, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_self->ptr)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; @@ -5589,7 +5425,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__( * def __get__(self): # <<<<<<<<<<<<<< * return self.ptr * - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -5608,7 +5444,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__( * def __dealloc__(self): # <<<<<<<<<<<<<< * if self.ptr != NULL: * self.pyfree.free(self.ptr) - */ +*/ /* Python wrapper */ static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(PyObject *__pyx_v_self); /*proto*/ @@ -5634,7 +5470,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct * def __dealloc__(self): * if self.ptr != NULL: # <<<<<<<<<<<<<< * self.pyfree.free(self.ptr) - */ +*/ __pyx_t_1 = (__pyx_v_self->ptr != NULL); if (__pyx_t_1) { @@ -5642,15 +5478,15 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct * def __dealloc__(self): * if self.ptr != NULL: * self.pyfree.free(self.ptr) # <<<<<<<<<<<<<< - */ - __pyx_v_self->pyfree->free(__pyx_v_self->ptr); if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 151, __pyx_L1_error) +*/ + __pyx_v_self->pyfree->free(__pyx_v_self->ptr); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 151, __pyx_L1_error) /* "hunter/vendor/_cymem/cymem.pyx":150 * * def __dealloc__(self): * if self.ptr != NULL: # <<<<<<<<<<<<<< * self.pyfree.free(self.ptr) - */ +*/ } /* "hunter/vendor/_cymem/cymem.pyx":149 @@ -5659,7 +5495,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct * def __dealloc__(self): # <<<<<<<<<<<<<< * if self.ptr != NULL: * self.pyfree.free(self.ptr) - */ +*/ /* function exit code */ goto __pyx_L0; @@ -5673,7 +5509,7 @@ static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct * cdef void* ptr * cdef readonly PyMalloc pymalloc # <<<<<<<<<<<<<< * cdef readonly PyFree pyfree - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -5693,7 +5529,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__g static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pymalloc); __pyx_r = ((PyObject *)__pyx_v_self->pymalloc); @@ -5710,7 +5546,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___ge * cdef void* ptr * cdef readonly PyMalloc pymalloc * cdef readonly PyFree pyfree # <<<<<<<<<<<<<< - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(PyObject *__pyx_v_self); /*proto*/ @@ -5730,7 +5566,7 @@ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 1); + __Pyx_RefNannySetupContext("__get__", 0); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self->pyfree); __pyx_r = ((PyObject *)__pyx_v_self->pyfree); @@ -5747,7 +5583,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get_ * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__(PyObject *__pyx_v_self, @@ -5758,7 +5594,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__, "Address.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -5774,16 +5610,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { - __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;} - if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL; + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); /* function exit code */ @@ -5797,22 +5634,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cyth int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 1); + __Pyx_RefNannySetupContext("__reduce_cython__", 0); /* "(tree fragment)":2 * def __reduce_cython__(self): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< * def __setstate_cython__(self, __pyx_state): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(0, 2, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); + __PYX_ERR(1, 2, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -5828,7 +5665,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cyth * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ +*/ /* Python wrapper */ static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__(PyObject *__pyx_v_self, @@ -5839,7 +5676,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__, "Address.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}; +static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}; static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds @@ -5860,7 +5697,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_MACROS + #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; @@ -5868,47 +5705,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_state,0}; - if (__pyx_kwds) { - Py_ssize_t kw_args; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } - kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); - switch (__pyx_nargs) { - case 0: - if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_pyx_state)) != 0)) { - (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); - kw_args--; - } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 3, __pyx_L3_error) - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "__setstate_cython__") < 0)) __PYX_ERR(0, 3, __pyx_L3_error) + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { - values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) } __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 3, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); @@ -5917,11 +5746,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - { - Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); - } + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); } __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -5933,22 +5759,22 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cy int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 1); + __Pyx_RefNannySetupContext("__setstate_cython__", 0); /* "(tree fragment)":4 * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< - */ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(0, 4, __pyx_L1_error) +*/ + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); + __PYX_ERR(1, 4, __pyx_L1_error) /* "(tree fragment)":3 * def __reduce_cython__(self): * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ +*/ /* function exit code */ __pyx_L1_error:; @@ -5958,6 +5784,7 @@ static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cy __Pyx_RefNannyFinishContext(); return __pyx_r; } +/* #### Code section: module_exttypes ### */ static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { @@ -5970,7 +5797,7 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObje if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { o = (*t->tp_alloc)(t, 0); } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); } if (unlikely(!o)) return 0; #endif @@ -5987,7 +5814,7 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyObject *o } } #endif - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -5998,8 +5825,8 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyObject *o } static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc[] = { - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}, {0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -6032,12 +5859,7 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -6078,13 +5900,11 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -6094,6 +5914,9 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -6111,7 +5934,7 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { o = (*t->tp_alloc)(t, 0); } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); } if (unlikely(!o)) return 0; #endif @@ -6128,7 +5951,7 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree(PyObject *o) } } #endif - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -6139,8 +5962,8 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree(PyObject *o) } static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree[] = { - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}, {0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -6173,12 +5996,7 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -6219,13 +6037,11 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -6235,6 +6051,9 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -6252,7 +6071,7 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject * if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { o = (*t->tp_alloc)(t, 0); } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); } if (unlikely(!o)) return 0; #endif @@ -6291,7 +6110,7 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o) { Py_CLEAR(p->refs); Py_CLEAR(p->pymalloc); Py_CLEAR(p->pyfree); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -6304,6 +6123,10 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o) { static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->addresses) { e = (*v)(p->addresses, a); if (e) return e; } @@ -6358,18 +6181,18 @@ static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pyfree(PyObj } static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Pool[] = { - {"own_pyref", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref}, - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__}, + {"own_pyref", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Pool[] = { - {(char *)"size", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_size, 0, (char *)0, 0}, - {(char *)"addresses", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_addresses, 0, (char *)0, 0}, - {(char *)"refs", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_refs, 0, (char *)0, 0}, - {(char *)"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pymalloc, 0, (char *)0, 0}, - {(char *)"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pyfree, 0, (char *)0, 0}, + {"size", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_size, 0, 0, 0}, + {"addresses", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_addresses, 0, 0, 0}, + {"refs", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_refs, 0, 0, 0}, + {"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pymalloc, 0, 0, 0}, + {"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pyfree, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS @@ -6406,12 +6229,7 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -6452,13 +6270,11 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -6468,6 +6284,9 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -6484,7 +6303,7 @@ static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObjec if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { o = (*t->tp_alloc)(t, 0); } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); } if (unlikely(!o)) return 0; #endif @@ -6518,7 +6337,7 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) } Py_CLEAR(p->pymalloc); Py_CLEAR(p->pyfree); - #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + #if CYTHON_USE_TYPE_SLOTS (*Py_TYPE(o)->tp_free)(o); #else { @@ -6531,6 +6350,10 @@ static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } if (p->pymalloc) { e = (*v)(((PyObject *)p->pymalloc), a); if (e) return e; } @@ -6565,21 +6388,21 @@ static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree(Py } static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address[] = { - {"__reduce_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address[] = { - {(char *)"addr", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr, 0, (char *)0, 0}, - {(char *)"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc, 0, (char *)0, 0}, - {(char *)"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree, 0, (char *)0, 0}, + {"addr", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr, 0, 0, 0}, + {"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc, 0, 0, 0}, + {"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree, 0, 0, 0}, {0, 0, 0, 0, 0} }; #if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots[] = { {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_doc, (void *)PyDoc_STR("Address(size_t number, size_t elem_size)\nA block of number * size-bytes of 0-initialized memory, tied to a Python\n ref-counted object. When the object is garbage collected, the memory is freed.\n\n >>> from cymem.cymem cimport Address\n >>> cdef Address address = Address(10, sizeof(double))\n >>> d10 = address.ptr\n\n Args:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\n Attributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n ")}, + {Py_tp_doc, (void *)PyDoc_STR("Address(size_t number, size_t elem_size)\n\nA block of number * size-bytes of 0-initialized memory, tied to a Python\nref-counted object. When the object is garbage collected, the memory is freed.\n\n>>> from cymem.cymem cimport Address\n>>> cdef Address address = Address(10, sizeof(double))\n>>> d10 = address.ptr\n\nArgs:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\nAttributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).")}, {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address}, {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address}, {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address}, @@ -6611,12 +6434,7 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 0, /*tp_as_async*/ - #endif 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ @@ -6628,7 +6446,7 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("Address(size_t number, size_t elem_size)\nA block of number * size-bytes of 0-initialized memory, tied to a Python\n ref-counted object. When the object is garbage collected, the memory is freed.\n\n >>> from cymem.cymem cimport Address\n >>> cdef Address address = Address(10, sizeof(double))\n >>> d10 = address.ptr\n\n Args:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\n Attributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n "), /*tp_doc*/ + PyDoc_STR("Address(size_t number, size_t elem_size)\n\nA block of number * size-bytes of 0-initialized memory, tied to a Python\nref-counted object. When the object is garbage collected, the memory is freed.\n\n>>> from cymem.cymem cimport Address\n>>> cdef Address address = Address(10, sizeof(double))\n>>> d10 = address.ptr\n\nArgs:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\nAttributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free)."), /*tp_doc*/ __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_traverse*/ __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_clear*/ 0, /*tp_richcompare*/ @@ -6657,13 +6475,11 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { 0, /*tp_weaklist*/ 0, /*tp_del*/ 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 #if CYTHON_USE_TP_FINALIZE 0, /*tp_finalize*/ #else NULL, /*tp_finalize*/ #endif - #endif #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) 0, /*tp_vectorcall*/ #endif @@ -6673,6 +6489,9 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { #if PY_VERSION_HEX >= 0x030C0000 0, /*tp_watched*/ #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 0, /*tp_pypy_flags*/ #endif @@ -6682,263 +6501,59 @@ static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { static PyMethodDef __pyx_methods[] = { {0, 0, 0, 0} }; -#ifndef CYTHON_SMALL_CODE -#if defined(__clang__) - #define CYTHON_SMALL_CODE -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - #define CYTHON_SMALL_CODE __attribute__((cold)) -#else - #define CYTHON_SMALL_CODE -#endif -#endif -/* #### Code section: pystring_table ### */ +/* #### Code section: initfunc_declarations ### */ +static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate); /*proto*/ +/* #### Code section: init_module ### */ -static int __Pyx_CreateStringTabAndInitStrings(void) { - __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_n_s_Address, __pyx_k_Address, sizeof(__pyx_k_Address), 0, 0, 1, 1}, - {&__pyx_n_s_Address___reduce_cython, __pyx_k_Address___reduce_cython, sizeof(__pyx_k_Address___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Address___setstate_cython, __pyx_k_Address___setstate_cython, sizeof(__pyx_k_Address___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_Allocating_zero_bytes, __pyx_k_Allocating_zero_bytes, sizeof(__pyx_k_Allocating_zero_bytes), 0, 0, 1, 0}, - {&__pyx_n_s_AssertionError, __pyx_k_AssertionError, sizeof(__pyx_k_AssertionError), 0, 0, 1, 1}, - {&__pyx_n_s_Default_Free, __pyx_k_Default_Free, sizeof(__pyx_k_Default_Free), 0, 0, 1, 1}, - {&__pyx_n_s_Default_Malloc, __pyx_k_Default_Malloc, sizeof(__pyx_k_Default_Malloc), 0, 0, 1, 1}, - {&__pyx_kp_s_Error_assigning_d_bytes, __pyx_k_Error_assigning_d_bytes, sizeof(__pyx_k_Error_assigning_d_bytes), 0, 0, 1, 0}, - {&__pyx_kp_s_Error_reallocating_to_d_bytes, __pyx_k_Error_reallocating_to_d_bytes, sizeof(__pyx_k_Error_reallocating_to_d_bytes), 0, 0, 1, 0}, - {&__pyx_n_s_MemoryError, __pyx_k_MemoryError, sizeof(__pyx_k_MemoryError), 0, 0, 1, 1}, - {&__pyx_kp_s_Pointer_d_not_found_in_Pool_s, __pyx_k_Pointer_d_not_found_in_Pool_s, sizeof(__pyx_k_Pointer_d_not_found_in_Pool_s), 0, 0, 1, 0}, - {&__pyx_n_s_Pool, __pyx_k_Pool, sizeof(__pyx_k_Pool), 0, 0, 1, 1}, - {&__pyx_n_s_Pool___reduce_cython, __pyx_k_Pool___reduce_cython, sizeof(__pyx_k_Pool___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Pool___setstate_cython, __pyx_k_Pool___setstate_cython, sizeof(__pyx_k_Pool___setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_Pool_own_pyref, __pyx_k_Pool_own_pyref, sizeof(__pyx_k_Pool_own_pyref), 0, 0, 1, 1}, - {&__pyx_n_s_PyFree, __pyx_k_PyFree, sizeof(__pyx_k_PyFree), 0, 0, 1, 1}, - {&__pyx_n_s_PyFree___reduce_cython, __pyx_k_PyFree___reduce_cython, sizeof(__pyx_k_PyFree___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_PyFree___setstate_cython, __pyx_k_PyFree___setstate_cython, sizeof(__pyx_k_PyFree___setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_PyMalloc, __pyx_k_PyMalloc, sizeof(__pyx_k_PyMalloc), 0, 0, 1, 1}, - {&__pyx_n_s_PyMalloc___reduce_cython, __pyx_k_PyMalloc___reduce_cython, sizeof(__pyx_k_PyMalloc___reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_PyMalloc___setstate_cython, __pyx_k_PyMalloc___setstate_cython, sizeof(__pyx_k_PyMalloc___setstate_cython), 0, 0, 1, 1}, - {&__pyx_kp_s_Realloc_requires_new_size_0, __pyx_k_Realloc_requires_new_size_0, sizeof(__pyx_k_Realloc_requires_new_size_0), 0, 0, 1, 0}, - {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, - {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, - {&__pyx_n_s_WARN_ZERO_ALLOC, __pyx_k_WARN_ZERO_ALLOC, sizeof(__pyx_k_WARN_ZERO_ALLOC), 0, 0, 1, 1}, - {&__pyx_n_s__19, __pyx_k__19, sizeof(__pyx_k__19), 0, 0, 1, 1}, - {&__pyx_n_s__6, __pyx_k__6, sizeof(__pyx_k__6), 0, 0, 1, 1}, - {&__pyx_n_s_asyncio_coroutines, __pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 0, 1, 1}, - {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, - {&__pyx_kp_u_disable, __pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0, 0}, - {&__pyx_n_s_elem_size, __pyx_k_elem_size, sizeof(__pyx_k_elem_size), 0, 0, 1, 1}, - {&__pyx_kp_u_enable, __pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0, 0}, - {&__pyx_kp_u_gc, __pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0, 0}, - {&__pyx_n_s_getstate, __pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 0, 1, 1}, - {&__pyx_n_s_hunter_vendor__cymem_cymem, __pyx_k_hunter_vendor__cymem_cymem, sizeof(__pyx_k_hunter_vendor__cymem_cymem), 0, 0, 1, 1}, - {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, - {&__pyx_n_s_initializing, __pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 0, 1, 1}, - {&__pyx_n_s_is_coroutine, __pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 0, 1, 1}, - {&__pyx_kp_u_isenabled, __pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0, 0}, - {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, - {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, - {&__pyx_kp_s_no_default___reduce___due_to_non, __pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 0, 1, 0}, - {&__pyx_n_s_number, __pyx_k_number, sizeof(__pyx_k_number), 0, 0, 1, 1}, - {&__pyx_n_s_own_pyref, __pyx_k_own_pyref, sizeof(__pyx_k_own_pyref), 0, 0, 1, 1}, - {&__pyx_n_s_pop, __pyx_k_pop, sizeof(__pyx_k_pop), 0, 0, 1, 1}, - {&__pyx_n_s_py_ref, __pyx_k_py_ref, sizeof(__pyx_k_py_ref), 0, 0, 1, 1}, - {&__pyx_n_s_pyfree, __pyx_k_pyfree, sizeof(__pyx_k_pyfree), 0, 0, 1, 1}, - {&__pyx_n_s_pymalloc, __pyx_k_pymalloc, sizeof(__pyx_k_pymalloc), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_state, __pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1}, - {&__pyx_n_s_reduce, __pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_cython, __pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_ex, __pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 0, 1, 1}, - {&__pyx_n_s_self, __pyx_k_self, sizeof(__pyx_k_self), 0, 0, 1, 1}, - {&__pyx_kp_s_self_free_cannot_be_converted_to, __pyx_k_self_free_cannot_be_converted_to, sizeof(__pyx_k_self_free_cannot_be_converted_to), 0, 0, 1, 0}, - {&__pyx_kp_s_self_malloc_cannot_be_converted, __pyx_k_self_malloc_cannot_be_converted, sizeof(__pyx_k_self_malloc_cannot_be_converted), 0, 0, 1, 0}, - {&__pyx_n_s_setstate, __pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 0, 1, 1}, - {&__pyx_n_s_setstate_cython, __pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_spec, __pyx_k_spec, sizeof(__pyx_k_spec), 0, 0, 1, 1}, - {&__pyx_kp_s_src_hunter_vendor__cymem_cymem_p, __pyx_k_src_hunter_vendor__cymem_cymem_p, sizeof(__pyx_k_src_hunter_vendor__cymem_cymem_p), 0, 0, 1, 0}, - {&__pyx_kp_s_stringsource, __pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 0, 1, 0}, - {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, - {&__pyx_n_s_warn, __pyx_k_warn, sizeof(__pyx_k_warn), 0, 0, 1, 1}, - {&__pyx_n_s_warnings, __pyx_k_warnings, sizeof(__pyx_k_warnings), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} - }; - return __Pyx_InitStrings(__pyx_string_tab); +static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); + /*--- Global init code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; } -/* #### Code section: cached_builtins ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 2, __pyx_L1_error) - __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_n_s_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(1, 74, __pyx_L1_error) - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(1, 88, __pyx_L1_error) - __pyx_builtin_AssertionError = __Pyx_GetBuiltinName(__pyx_n_s_AssertionError); if (!__pyx_builtin_AssertionError) __PYX_ERR(1, 91, __pyx_L1_error) + +static int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); + /*--- Variable export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); + /*--- Function export code ---*/ + if (__Pyx_ExportFunction("WrapMalloc", (void (*)(void))__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc, "struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *(__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ExportFunction("WrapFree", (void (*)(void))__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree, "struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *(__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); return -1; } -/* #### Code section: cached_constants ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":90 - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - * if new_size == 0: - * raise ValueError("Realloc requires new_size > 0") # <<<<<<<<<<<<<< - * assert new_size > self.addresses[p] - * cdef void* new_ptr = self.alloc(1, new_size) - */ - __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_s_Realloc_requires_new_size_0); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(1, 90, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__3); - __Pyx_GIVEREF(__pyx_tuple__3); - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): - */ - __pyx_tuple__7 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__7); - __Pyx_GIVEREF(__pyx_tuple__7); - __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - */ - __pyx_tuple__9 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_pyx_state); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(0, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__9); - __Pyx_GIVEREF(__pyx_tuple__9); - __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 3, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 3, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): - */ - __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - */ - __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 3, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 3, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":111 - * self.pyfree.free(p) - * - * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< - * self.refs.append(py_ref) - * - */ - __pyx_tuple__13 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_py_ref); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 111, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__13); - __Pyx_GIVEREF(__pyx_tuple__13); - __pyx_codeobj__14 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__13, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_hunter_vendor__cymem_cymem_p, __pyx_n_s_own_pyref, 111, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__14)) __PYX_ERR(1, 111, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): - */ - __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __pyx_codeobj__16 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 3, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__16)) __PYX_ERR(0, 3, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): - */ - __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_reduce_cython, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 1, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __pyx_codeobj__18 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_setstate_cython, 3, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__18)) __PYX_ERR(0, 3, __pyx_L1_error) - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} -/* #### Code section: init_constants ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitConstants(void) { - __pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type; - __pyx_umethod_PyDict_Type_pop.method_name = &__pyx_n_s_pop; - if (__Pyx_CreateStringTabAndInitStrings() < 0) __PYX_ERR(1, 1, __pyx_L1_error); - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: init_globals ### */ - -static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { - /* AssertionsEnabled.init */ - if (likely(__Pyx_init_assertions_enabled() == 0)); else - -if (unlikely(PyErr_Occurred())) __PYX_ERR(1, 1, __pyx_L1_error) - - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: init_module ### */ - -static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ - -static int __Pyx_modinit_global_init_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); - /*--- Global init code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_variable_export_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); - /*--- Variable export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_export_code(void) { - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); - /*--- Function export code ---*/ - if (__Pyx_ExportFunction("WrapMalloc", (void (*)(void))__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc, "struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *(__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("WrapFree", (void (*)(void))__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree, "struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *(__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)") < 0) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_type_init_code(void) { +static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -6947,115 +6562,89 @@ static int __Pyx_modinit_type_init_code(void) { __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set; #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(1, 11, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(0, 11, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro = __Pyx_PyObject_GenericGetAttr; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro = PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PyMalloc, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(1, 11, __pyx_L1_error) - #endif + if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_PyMalloc, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree; __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set; #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(1, 20, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(0, 20, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_getattro = __Pyx_PyObject_GenericGetAttr; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_getattro = PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PyFree, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(1, 20, __pyx_L1_error) - #endif + if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_PyFree, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool; __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.alloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc; __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.free = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free; __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.realloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc; #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(1, 32, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(0, 32, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro = __Pyx_PyObject_GenericGetAttr; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro = PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_MergeVtables(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Pool, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(1, 32, __pyx_L1_error) - #endif + if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Pool, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, NULL); if (unlikely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address)) __PYX_ERR(1, 115, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address)) __PYX_ERR(0, 115, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) #else - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #endif - #if PY_MAJOR_VERSION < 3 - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_print = 0; + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_dictoffset && __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro = __Pyx_PyObject_GenericGetAttr; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_Address, (PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_setup_reduce((PyObject *) __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(1, 115, __pyx_L1_error) - #endif + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Address, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -7063,8 +6652,9 @@ static int __Pyx_modinit_type_init_code(void) { return -1; } -static int __Pyx_modinit_type_import_code(void) { +static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; @@ -7073,15 +6663,15 @@ static int __Pyx_modinit_type_import_code(void) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_10(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyTypeObject), + 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_10(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_0_10); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7091,30 +6681,36 @@ static int __Pyx_modinit_type_import_code(void) { return -1; } -static int __Pyx_modinit_variable_import_code(void) { +static int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); /*--- Variable import code ---*/ __Pyx_RefNannyFinishContext(); return 0; } -static int __Pyx_modinit_function_import_code(void) { +static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); /*--- Function import code ---*/ __Pyx_RefNannyFinishContext(); return 0; } - -#if PY_MAJOR_VERSION >= 3 #if CYTHON_PEP489_MULTI_PHASE_INIT static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ static int __pyx_pymod_exec_cymem(PyObject* module); /*proto*/ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec_cymem}, + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + {Py_mod_gil, Py_MOD_GIL_USED}, + #endif + #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE + {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, + #endif {0, NULL} }; #endif @@ -7129,12 +6725,10 @@ namespace { PyModuleDef_HEAD_INIT, "cymem", 0, /* m_doc */ - #if CYTHON_PEP489_MULTI_PHASE_INIT - 0, /* m_size */ - #elif CYTHON_USE_MODULE_STATE - sizeof(__pyx_mstate), /* m_size */ + #if CYTHON_USE_MODULE_STATE + sizeof(__pyx_mstatetype), /* m_size */ #else - -1, /* m_size */ + (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1, /* m_size */ #endif __pyx_methods /* m_methods */, #if CYTHON_PEP489_MULTI_PHASE_INIT @@ -7155,51 +6749,71 @@ namespace { #ifdef __cplusplus } /* anonymous namespace */ #endif -#endif +/* PyModInitFuncType */ #ifndef CYTHON_NO_PYINIT_EXPORT -#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC -#elif PY_MAJOR_VERSION < 3 -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" void -#else -#define __Pyx_PyMODINIT_FUNC void -#endif + #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC #else -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * -#else -#define __Pyx_PyMODINIT_FUNC PyObject * -#endif + #ifdef __cplusplus + #define __Pyx_PyMODINIT_FUNC extern "C" PyObject * + #else + #define __Pyx_PyMODINIT_FUNC PyObject * + #endif #endif - -#if PY_MAJOR_VERSION < 3 -__Pyx_PyMODINIT_FUNC initcymem(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC initcymem(void) -#else __Pyx_PyMODINIT_FUNC PyInit_cymem(void) CYTHON_SMALL_CODE; /*proto*/ __Pyx_PyMODINIT_FUNC PyInit_cymem(void) #if CYTHON_PEP489_MULTI_PHASE_INIT { return PyModuleDef_Init(&__pyx_moduledef); } +/* ModuleCreationPEP489 */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 +static PY_INT64_T __Pyx_GetCurrentInterpreterId(void) { + { + PyObject *module = PyImport_ImportModule("_interpreters"); // 3.13+ I think + if (!module) { + PyErr_Clear(); // just try the 3.8-3.12 version + module = PyImport_ImportModule("_xxsubinterpreters"); + if (!module) goto bad; + } + PyObject *current = PyObject_CallMethod(module, "get_current", NULL); + Py_DECREF(module); + if (!current) goto bad; + if (PyTuple_Check(current)) { + PyObject *new_current = PySequence_GetItem(current, 0); + Py_DECREF(current); + current = new_current; + if (!new_current) goto bad; + } + long long as_c_int = PyLong_AsLongLong(current); + Py_DECREF(current); + return as_c_int; + } + bad: + PySys_WriteStderr("__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n"); + return -1; +} +#endif +#if !CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { - #if PY_VERSION_HEX >= 0x030700A1 static PY_INT64_T main_interpreter_id = -1; +#if CYTHON_COMPILING_IN_GRAAL + PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x03090000 + PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get()); +#elif CYTHON_COMPILING_IN_LIMITED_API + PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId(); +#else PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); +#endif + if (unlikely(current_id == -1)) { + return -1; + } if (main_interpreter_id == -1) { main_interpreter_id = current_id; - return (unlikely(current_id == -1)) ? -1 : 0; - } else if (unlikely(main_interpreter_id != current_id)) - #else - static PyInterpreterState *main_interpreter = NULL; - PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; - if (!main_interpreter) { - main_interpreter = current_interpreter; - } else if (unlikely(main_interpreter != current_interpreter)) - #endif - { + return 0; + } else if (unlikely(main_interpreter_id != current_id)) { PyErr_SetString( PyExc_ImportError, "Interpreter change detected - this module can only be loaded into one interpreter per process."); @@ -7207,21 +6821,14 @@ static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { } return 0; } -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *module, const char* from_name, const char* to_name, int allow_none) -#else -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) #endif +static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { PyObject *value = PyObject_GetAttrString(spec, from_name); int result = 0; if (likely(value)) { if (allow_none || value != Py_None) { -#if CYTHON_COMPILING_IN_LIMITED_API - result = PyModule_AddObject(module, to_name, value); -#else result = PyDict_SetItemString(moddict, to_name, value); -#endif } Py_DECREF(value); } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { @@ -7234,8 +6841,10 @@ static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) { PyObject *module = NULL, *moddict, *modname; CYTHON_UNUSED_VAR(def); + #if !CYTHON_USE_MODULE_STATE if (__Pyx_check_single_interpreter()) return NULL; + #endif if (__pyx_m) return __Pyx_NewRef(__pyx_m); modname = PyObject_GetAttrString(spec, "name"); @@ -7243,12 +6852,8 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe module = PyModule_NewObject(modname); Py_DECREF(modname); if (unlikely(!module)) goto bad; -#if CYTHON_COMPILING_IN_LIMITED_API - moddict = module; -#else moddict = PyModule_GetDict(module); if (unlikely(!moddict)) goto bad; -#endif if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; @@ -7262,12 +6867,12 @@ static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDe static CYTHON_SMALL_CODE int __pyx_pymod_exec_cymem(PyObject *__pyx_pyinit_module) #endif -#endif { int stringtab_initialized = 0; #if CYTHON_USE_MODULE_STATE int pystate_addmodule_run = 0; #endif + __pyx_mstatetype *__pyx_mstate = NULL; PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; @@ -7280,36 +6885,37 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec_cymem(PyObject *__pyx_pyinit_modul PyErr_SetString(PyExc_RuntimeError, "Module 'cymem' has already been imported. Re-initialisation is not supported."); return -1; } - #elif PY_MAJOR_VERSION >= 3 + #else if (__pyx_m) return __Pyx_NewRef(__pyx_m); #endif /*--- Module creation code ---*/ #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_m = __pyx_pyinit_module; - Py_INCREF(__pyx_m); + __pyx_t_1 = __pyx_pyinit_module; + Py_INCREF(__pyx_t_1); #else - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4("cymem", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); - if (unlikely(!__pyx_m)) __PYX_ERR(1, 1, __pyx_L1_error) - #elif CYTHON_USE_MODULE_STATE - __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #if CYTHON_USE_MODULE_STATE { - int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef); + int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef); __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "cymem" pseudovariable */ - if (unlikely((add_module_result < 0))) __PYX_ERR(1, 1, __pyx_L1_error) + if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) pystate_addmodule_run = 1; } #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - if (unlikely(!__pyx_m)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_m = __pyx_t_1; #endif + #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); #endif + __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); - __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(1, 1, __pyx_L1_error) - Py_INCREF(__pyx_d); - __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(1, 1, __pyx_L1_error) - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) + Py_INCREF(__pyx_mstate->__pyx_d); + __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef("cython_runtime"); if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /* ImportRefnannyAPI */ #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); if (!__Pyx_RefNanny) { @@ -7319,71 +6925,61 @@ if (!__Pyx_RefNanny) { Py_FatalError("failed to import 'refnanny' module"); } #endif - __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_cymem(void)", 0); - if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + +__Pyx_RefNannySetupContext("PyInit_cymem", 0); + if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pxy_PyFrame_Initialize_Offsets __Pxy_PyFrame_Initialize_Offsets(); #endif - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(1, 1, __pyx_L1_error) - __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(1, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Initialize various global constants etc. ---*/ + if (__Pyx_InitConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + stringtab_initialized = 1; + if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #if 0 || defined(__Pyx_CyFunction_USED) || defined(__Pyx_FusedFunction_USED) || defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED) || defined(__Pyx_AsyncGen_USED) + if (__pyx_CommonTypesMetaclass_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif #ifdef __Pyx_CyFunction_USED - if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_FusedFunction_USED - if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_Coroutine_USED - if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_Generator_USED - if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_AsyncGen_USED - if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_StopAsyncIteration_USED - if (__pyx_StopAsyncIteration_init(__pyx_m) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - PyEval_InitThreads(); - #endif - /*--- Initialize various global constants etc. ---*/ - if (__Pyx_InitConstants() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - stringtab_initialized = 1; - if (__Pyx_InitGlobals() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) - if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #endif if (__pyx_module_is_main_hunter__vendor___cymem__cymem) { - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name, __pyx_n_s_main) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name, __pyx_mstate_global->__pyx_n_u_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) } - #if PY_MAJOR_VERSION >= 3 { - PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(1, 1, __pyx_L1_error) + PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) if (!PyDict_GetItemString(modules, "hunter.vendor._cymem.cymem")) { - if (unlikely((PyDict_SetItemString(modules, "hunter.vendor._cymem.cymem", __pyx_m) < 0))) __PYX_ERR(1, 1, __pyx_L1_error) + if (unlikely((PyDict_SetItemString(modules, "hunter.vendor._cymem.cymem", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) } } - #endif /*--- Builtin init code ---*/ - if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_InitCachedBuiltins(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Constants init code ---*/ - if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(1, 1, __pyx_L1_error) + if (__Pyx_InitCachedConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_CreateCodeObjects(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Global type/function init code ---*/ - (void)__Pyx_modinit_global_init_code(); - (void)__Pyx_modinit_variable_export_code(); - if (unlikely((__Pyx_modinit_function_export_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_init_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_import_code() < 0))) __PYX_ERR(1, 1, __pyx_L1_error) - (void)__Pyx_modinit_variable_import_code(); - (void)__Pyx_modinit_function_import_code(); + (void)__Pyx_modinit_global_init_code(__pyx_mstate); + (void)__Pyx_modinit_variable_export_code(__pyx_mstate); + if (unlikely((__Pyx_modinit_function_export_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_init_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + if (unlikely((__Pyx_modinit_type_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) + (void)__Pyx_modinit_variable_import_code(__pyx_mstate); + (void)__Pyx_modinit_function_import_code(__pyx_mstate); /*--- Execution code ---*/ - #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - if (__Pyx_patch_abc() < 0) __PYX_ERR(1, 1, __pyx_L1_error) - #endif /* "hunter/vendor/_cymem/cymem.pyx":7 * from libc.string cimport memset @@ -7391,10 +6987,10 @@ if (!__Pyx_RefNanny) { * import warnings # <<<<<<<<<<<<<< * * WARN_ZERO_ALLOC = False - */ - __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_warnings, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 7, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_warnings, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_warnings, __pyx_t_2) < 0) __PYX_ERR(1, 7, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_warnings, __pyx_t_2) < 0) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":9 @@ -7403,17 +6999,17 @@ if (!__Pyx_RefNanny) { * WARN_ZERO_ALLOC = False # <<<<<<<<<<<<<< * * cdef class PyMalloc: - */ - if (PyDict_SetItem(__pyx_d, __pyx_n_s_WARN_ZERO_ALLOC, Py_False) < 0) __PYX_ERR(1, 9, __pyx_L1_error) +*/ + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_WARN_ZERO_ALLOC, Py_False) < 0) __PYX_ERR(0, 9, __pyx_L1_error) /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_PyMalloc___reduce_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__8)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyMalloc___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":3 @@ -7421,20 +7017,20 @@ if (!__Pyx_RefNanny) { * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_PyMalloc___setstate_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__10)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyMalloc___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_PyFree___reduce_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__11)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyFree___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":3 @@ -7442,10 +7038,10 @@ if (!__Pyx_RefNanny) { * raise TypeError, "self.free cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "self.free cannot be converted to a Python object for pickling" - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_PyFree___setstate_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__12)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyFree___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":29 @@ -7454,10 +7050,10 @@ if (!__Pyx_RefNanny) { * Default_Malloc = WrapMalloc(PyMem_Malloc) # <<<<<<<<<<<<<< * Default_Free = WrapFree(PyMem_Free) * - */ - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc(PyMem_Malloc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 29, __pyx_L1_error) +*/ + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc(PyMem_Malloc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_Default_Malloc, __pyx_t_2) < 0) __PYX_ERR(1, 29, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Default_Malloc, __pyx_t_2) < 0) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":30 @@ -7466,10 +7062,10 @@ if (!__Pyx_RefNanny) { * Default_Free = WrapFree(PyMem_Free) # <<<<<<<<<<<<<< * * cdef class Pool: - */ - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree(PyMem_Free)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 30, __pyx_L1_error) +*/ + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree(PyMem_Free)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_Default_Free, __pyx_t_2) < 0) __PYX_ERR(1, 30, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Default_Free, __pyx_t_2) < 0) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":49 @@ -7478,11 +7074,11 @@ if (!__Pyx_RefNanny) { * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, # <<<<<<<<<<<<<< * PyFree pyfree=Default_Free): * self.size = 0 - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Default_Malloc); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 49, __pyx_L1_error) +*/ + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Malloc); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc))))) __PYX_ERR(1, 49, __pyx_L1_error) - __pyx_k_ = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_2); + if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc))))) __PYX_ERR(0, 49, __pyx_L1_error) + __pyx_mstate_global->__pyx_k_ = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_2); __Pyx_GIVEREF((PyObject *)__pyx_t_2); __pyx_t_2 = 0; @@ -7492,11 +7088,11 @@ if (!__Pyx_RefNanny) { * PyFree pyfree=Default_Free): # <<<<<<<<<<<<<< * self.size = 0 * self.addresses = {} - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Default_Free); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 50, __pyx_L1_error) +*/ + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Free); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree))))) __PYX_ERR(1, 50, __pyx_L1_error) - __pyx_k__2 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_2); + if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree))))) __PYX_ERR(0, 50, __pyx_L1_error) + __pyx_mstate_global->__pyx_k__2 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_2); __Pyx_GIVEREF((PyObject *)__pyx_t_2); __pyx_t_2 = 0; @@ -7506,21 +7102,20 @@ if (!__Pyx_RefNanny) { * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< * self.refs.append(py_ref) * - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Pool_own_pyref, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__14)); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 111, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Pool_own_pyref, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict((PyObject *)__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_n_s_own_pyref, __pyx_t_2) < 0) __PYX_ERR(1, 111, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_mstate_global->__pyx_n_u_own_pyref, __pyx_t_2) < 0) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); /* "(tree fragment)":1 * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Pool___reduce_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__15)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Pool___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":3 @@ -7528,10 +7123,10 @@ if (!__Pyx_RefNanny) { * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Pool___setstate_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__16)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Pool___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":134 @@ -7540,17 +7135,17 @@ if (!__Pyx_RefNanny) { * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): # <<<<<<<<<<<<<< * self.ptr = NULL * self.pymalloc = pymalloc - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Default_Malloc); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 134, __pyx_L1_error) +*/ + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Malloc); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc))))) __PYX_ERR(1, 134, __pyx_L1_error) - __pyx_k__4 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_2); + if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc))))) __PYX_ERR(0, 134, __pyx_L1_error) + __pyx_mstate_global->__pyx_k__3 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_2); __Pyx_GIVEREF((PyObject *)__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Default_Free); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 134, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Free); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree))))) __PYX_ERR(1, 134, __pyx_L1_error) - __pyx_k__5 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_2); + if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree))))) __PYX_ERR(0, 134, __pyx_L1_error) + __pyx_mstate_global->__pyx_k__4 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_2); __Pyx_GIVEREF((PyObject *)__pyx_t_2); __pyx_t_2 = 0; @@ -7558,10 +7153,10 @@ if (!__Pyx_RefNanny) { * def __reduce_cython__(self): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Address___reduce_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__17)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Address___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":3 @@ -7569,20 +7164,20 @@ if (!__Pyx_RefNanny) { * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - */ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_n_s_Address___setstate_cython, NULL, __pyx_n_s_hunter_vendor__cymem_cymem, __pyx_d, ((PyObject *)__pyx_codeobj__18)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) +*/ + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Address___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/vendor/_cymem/cymem.pyx":1 * # cython: embedsignature=True, language_level=3str # <<<<<<<<<<<<<< * * from cpython.mem cimport PyMem_Malloc, PyMem_Free - */ - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) +*/ + __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_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) + 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; /*--- Wrapped vars code ---*/ @@ -7591,7 +7186,7 @@ if (!__Pyx_RefNanny) { __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); if (__pyx_m) { - if (__pyx_d && stringtab_initialized) { + if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter.vendor._cymem.cymem", __pyx_clineno, __pyx_lineno, __pyx_filename); } #if !CYTHON_USE_MODULE_STATE @@ -7612,12 +7207,251 @@ if (!__Pyx_RefNanny) { __Pyx_RefNannyFinishContext(); #if CYTHON_PEP489_MULTI_PHASE_INIT return (__pyx_m != NULL) ? 0 : -1; - #elif PY_MAJOR_VERSION >= 3 - return __pyx_m; #else - return; + return __pyx_m; #endif } +/* #### Code section: pystring_table ### */ + +typedef struct { + const char *s; +#if 179 <= 65535 + const unsigned short n; +#elif 179 / 2 < INT_MAX + const unsigned int n; +#elif 179 / 2 < LONG_MAX + const unsigned long n; +#else + const Py_ssize_t n; +#endif +#if 1 <= 31 + const unsigned int encoding : 5; +#elif 1 <= 255 + const unsigned char encoding; +#elif 1 <= 65535 + const unsigned short encoding; +#else + const Py_ssize_t encoding; +#endif + const unsigned int is_unicode : 1; + const unsigned int intern : 1; +} __Pyx_StringTabEntry; +static const char * const __pyx_string_tab_encodings[] = { 0 }; +static const __Pyx_StringTabEntry __pyx_string_tab[] = { + {__pyx_k_Address, sizeof(__pyx_k_Address), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Address */ + {__pyx_k_Address___reduce_cython, sizeof(__pyx_k_Address___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Address___reduce_cython */ + {__pyx_k_Address___setstate_cython, sizeof(__pyx_k_Address___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Address___setstate_cython */ + {__pyx_k_Allocating_zero_bytes, sizeof(__pyx_k_Allocating_zero_bytes), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Allocating_zero_bytes */ + {__pyx_k_AssertionError, sizeof(__pyx_k_AssertionError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AssertionError */ + {__pyx_k_Default_Free, sizeof(__pyx_k_Default_Free), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Default_Free */ + {__pyx_k_Default_Malloc, sizeof(__pyx_k_Default_Malloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Default_Malloc */ + {__pyx_k_Error_assigning_d_bytes, sizeof(__pyx_k_Error_assigning_d_bytes), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Error_assigning_d_bytes */ + {__pyx_k_Error_reallocating_to_d_bytes, sizeof(__pyx_k_Error_reallocating_to_d_bytes), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Error_reallocating_to_d_bytes */ + {__pyx_k_MemoryError, sizeof(__pyx_k_MemoryError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MemoryError */ + {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ + {__pyx_k_Pointer, sizeof(__pyx_k_Pointer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Pointer */ + {__pyx_k_Pool, sizeof(__pyx_k_Pool), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool */ + {__pyx_k_Pool___reduce_cython, sizeof(__pyx_k_Pool___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool___reduce_cython */ + {__pyx_k_Pool___setstate_cython, sizeof(__pyx_k_Pool___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool___setstate_cython */ + {__pyx_k_Pool_own_pyref, sizeof(__pyx_k_Pool_own_pyref), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool_own_pyref */ + {__pyx_k_PyFree, sizeof(__pyx_k_PyFree), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyFree */ + {__pyx_k_PyFree___reduce_cython, sizeof(__pyx_k_PyFree___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyFree___reduce_cython */ + {__pyx_k_PyFree___setstate_cython, sizeof(__pyx_k_PyFree___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyFree___setstate_cython */ + {__pyx_k_PyMalloc, sizeof(__pyx_k_PyMalloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyMalloc */ + {__pyx_k_PyMalloc___reduce_cython, sizeof(__pyx_k_PyMalloc___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyMalloc___reduce_cython */ + {__pyx_k_PyMalloc___setstate_cython, sizeof(__pyx_k_PyMalloc___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyMalloc___setstate_cython */ + {__pyx_k_Realloc_requires_new_size_0, sizeof(__pyx_k_Realloc_requires_new_size_0), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Realloc_requires_new_size_0 */ + {__pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TypeError */ + {__pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ValueError */ + {__pyx_k_WARN_ZERO_ALLOC, sizeof(__pyx_k_WARN_ZERO_ALLOC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_WARN_ZERO_ALLOC */ + {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__5 */ + {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */ + {__pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asyncio_coroutines */ + {__pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cline_in_traceback */ + {__pyx_k_d, sizeof(__pyx_k_d), 0, 1, 1}, /* PyObject cname: __pyx_n_u_d */ + {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ + {__pyx_k_elem_size, sizeof(__pyx_k_elem_size), 0, 1, 1}, /* PyObject cname: __pyx_n_u_elem_size */ + {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ + {__pyx_k_func, sizeof(__pyx_k_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func */ + {__pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_gc */ + {__pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getstate */ + {__pyx_k_hunter_vendor__cymem_cymem, sizeof(__pyx_k_hunter_vendor__cymem_cymem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter_vendor__cymem_cymem */ + {__pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 1, 1}, /* PyObject cname: __pyx_n_u_initializing */ + {__pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_coroutine */ + {__pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_isenabled */ + {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */ + {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module */ + {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ + {__pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_no_default___reduce___due_to_non */ + {__pyx_k_not_found_in_Pool, sizeof(__pyx_k_not_found_in_Pool), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_not_found_in_Pool */ + {__pyx_k_number, sizeof(__pyx_k_number), 0, 1, 1}, /* PyObject cname: __pyx_n_u_number */ + {__pyx_k_own_pyref, sizeof(__pyx_k_own_pyref), 0, 1, 1}, /* PyObject cname: __pyx_n_u_own_pyref */ + {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ + {__pyx_k_py_ref, sizeof(__pyx_k_py_ref), 0, 1, 1}, /* PyObject cname: __pyx_n_u_py_ref */ + {__pyx_k_pyfree, sizeof(__pyx_k_pyfree), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyfree */ + {__pyx_k_pymalloc, sizeof(__pyx_k_pymalloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pymalloc */ + {__pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_state */ + {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ + {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ + {__pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce */ + {__pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_cython */ + {__pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_ex */ + {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ + {__pyx_k_self_free_cannot_be_converted_to, sizeof(__pyx_k_self_free_cannot_be_converted_to), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_free_cannot_be_converted_to */ + {__pyx_k_self_malloc_cannot_be_converted, sizeof(__pyx_k_self_malloc_cannot_be_converted), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_malloc_cannot_be_converted */ + {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ + {__pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate */ + {__pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate_cython */ + {__pyx_k_spec, sizeof(__pyx_k_spec), 0, 1, 1}, /* PyObject cname: __pyx_n_u_spec */ + {__pyx_k_src_hunter_vendor__cymem_cymem_p, sizeof(__pyx_k_src_hunter_vendor__cymem_cymem_p), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter_vendor__cymem_cymem_p */ + {__pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stringsource */ + {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ + {__pyx_k_warn, sizeof(__pyx_k_warn), 0, 1, 1}, /* PyObject cname: __pyx_n_u_warn */ + {__pyx_k_warnings, sizeof(__pyx_k_warnings), 0, 1, 1}, /* PyObject cname: __pyx_n_u_warnings */ + {0, 0, 0, 0, 0} +}; +/* InitStrings.proto */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names); + +/* #### Code section: cached_builtins ### */ + +static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) + __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(0, 74, __pyx_L1_error) + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 88, __pyx_L1_error) + __pyx_builtin_AssertionError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_AssertionError); if (!__pyx_builtin_AssertionError) __PYX_ERR(0, 91, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: cached_constants ### */ + +static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { + __Pyx_RefNannyDeclarations + CYTHON_UNUSED_VAR(__pyx_mstate); + __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + __Pyx_RefNannyFinishContext(); + return 0; +} +/* #### Code section: init_constants ### */ + +static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { + CYTHON_UNUSED_VAR(__pyx_mstate); + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type; + __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop; + if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + return 0; + __pyx_L1_error:; + return -1; +} +/* #### Code section: init_codeobjects ### */ +\ + typedef struct { + unsigned int argcount : 2; + unsigned int num_posonly_args : 1; + unsigned int num_kwonly_args : 1; + unsigned int nlocals : 2; + unsigned int flags : 10; + unsigned int first_line : 7; + unsigned int line_table_length : 9; + } __Pyx_PyCode_New_function_description; +/* NewCodeObj.proto */ +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +); + + +static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { + PyObject* tuple_dedup_map = PyDict_New(); + if (unlikely(!tuple_dedup_map)) return -1; + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 111, 13}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_py_ref}; + __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter_vendor__cymem_cymem_p, __pyx_mstate->__pyx_n_u_own_pyref, __pyx_k_A_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; + } + Py_DECREF(tuple_dedup_map); + return 0; + bad: + Py_DECREF(tuple_dedup_map); + return -1; +} +/* #### Code section: init_globals ### */ + +static int __Pyx_InitGlobals(void) { + /* PythonCompatibility.init */ + if (likely(__Pyx_init_co_variables() == 0)); else + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + /* AssertionsEnabled.init */ + if (likely(__Pyx_init_assertions_enabled() == 0)); else + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + /* CachedMethodType.init */ + #if CYTHON_COMPILING_IN_LIMITED_API +{ + PyObject *typesModule=NULL; + typesModule = PyImport_ImportModule("types"); + if (typesModule) { + __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule, "MethodType"); + Py_DECREF(typesModule); + } +} // error handling follows +#endif + +if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) + + return 0; + __pyx_L1_error:; + return -1; +} /* #### Code section: cleanup_globals ### */ /* #### Code section: cleanup_module ### */ /* #### Code section: main_method ### */ @@ -7658,11 +7492,9 @@ static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; itp_getattro)) return tp->tp_getattro(obj, attr_name); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_getattr)) - return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); -#endif return PyObject_GetAttr(obj, attr_name); } #endif /* PyObjectGetAttrStrNoError */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -7780,11 +7608,11 @@ static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { #endif static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { PyObject *result; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1 +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 (void) PyObject_GetOptionalAttr(obj, attr_name, &result); return result; #else -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS PyTypeObject* tp = Py_TYPE(obj); if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); @@ -7800,22 +7628,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P /* GetBuiltinName */ static PyObject *__Pyx_GetBuiltinName(PyObject *name) { - PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_b, name); + PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_b, name); if (unlikely(!result) && !PyErr_Occurred()) { PyErr_Format(PyExc_NameError, -#if PY_MAJOR_VERSION >= 3 "name '%U' is not defined", name); -#else - "name '%.200s' is not defined", PyString_AS_STRING(name)); -#endif } return result; } /* TupleAndListFromArray */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { - PyObject *v; +#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + Py_ssize_t i; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); + } + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + for (i = 0; i < n; i++) { + if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { + Py_DECREF(res); + return NULL; + } + Py_INCREF(src[i]); + } + return res; +} +#elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { + PyObject *v; Py_ssize_t i; for (i = 0; i < length; i++) { v = dest[i] = src[i]; @@ -7827,8 +7671,7 @@ __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) { PyObject *res; if (n <= 0) { - Py_INCREF(__pyx_empty_tuple); - return __pyx_empty_tuple; + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); } res = PyTuple_New(n); if (unlikely(res == NULL)) return NULL; @@ -7851,7 +7694,8 @@ __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) /* BytesEquals */ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ + !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) return PyObject_RichCompareBool(s1, s2, equals); #else if (s1 == s2) { @@ -7898,55 +7742,39 @@ static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int eq /* UnicodeEquals */ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL return PyObject_RichCompareBool(s1, s2, equals); #else -#if PY_MAJOR_VERSION < 3 - PyObject* owned_ref = NULL; -#endif int s1_is_unicode, s2_is_unicode; if (s1 == s2) { goto return_eq; } s1_is_unicode = PyUnicode_CheckExact(s1); s2_is_unicode = PyUnicode_CheckExact(s2); -#if PY_MAJOR_VERSION < 3 - if ((s1_is_unicode & (!s2_is_unicode)) && PyString_CheckExact(s2)) { - owned_ref = PyUnicode_FromObject(s2); - if (unlikely(!owned_ref)) - return -1; - s2 = owned_ref; - s2_is_unicode = 1; - } else if ((s2_is_unicode & (!s1_is_unicode)) && PyString_CheckExact(s1)) { - owned_ref = PyUnicode_FromObject(s1); - if (unlikely(!owned_ref)) - return -1; - s1 = owned_ref; - s1_is_unicode = 1; - } else if (((!s2_is_unicode) & (!s1_is_unicode))) { - return __Pyx_PyBytes_Equals(s1, s2, equals); - } -#endif if (s1_is_unicode & s2_is_unicode) { - Py_ssize_t length; + Py_ssize_t length, length2; int kind; void *data1, *data2; + #if !CYTHON_COMPILING_IN_LIMITED_API if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) return -1; + #endif length = __Pyx_PyUnicode_GET_LENGTH(s1); - if (length != __Pyx_PyUnicode_GET_LENGTH(s2)) { + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length < 0)) return -1; + #endif + length2 = __Pyx_PyUnicode_GET_LENGTH(s2); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(length2 < 0)) return -1; + #endif + if (length != length2) { goto return_ne; } #if CYTHON_USE_UNICODE_INTERNALS { Py_hash_t hash1, hash2; - #if CYTHON_PEP393_ENABLED hash1 = ((PyASCIIObject*)s1)->hash; hash2 = ((PyASCIIObject*)s2)->hash; - #else - hash1 = ((PyUnicodeObject*)s1)->hash; - hash2 = ((PyUnicodeObject*)s2)->hash; - #endif if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { goto return_ne; } @@ -7964,9 +7792,6 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int goto return_eq; } else { int result = memcmp(data1, data2, (size_t)(length * kind)); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_EQ) ? (result == 0) : (result != 0); } } else if ((s1 == Py_None) & s2_is_unicode) { @@ -7976,9 +7801,6 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int } else { int result; PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif if (!py_result) return -1; result = __Pyx_PyObject_IsTrue(py_result); @@ -7986,14 +7808,8 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int return result; } return_eq: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_EQ); return_ne: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif return (equals == Py_NE); #endif } @@ -8002,14 +7818,25 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int #if CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s) { - Py_ssize_t i, n = PyTuple_GET_SIZE(kwnames); + Py_ssize_t i, n = __Pyx_PyTuple_GET_SIZE(kwnames); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(n == -1)) return NULL; + #endif for (i = 0; i < n; i++) { - if (s == PyTuple_GET_ITEM(kwnames, i)) return kwvalues[i]; + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + if (s == namei) return kwvalues[i]; } for (i = 0; i < n; i++) { - int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ); + PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!namei)) return NULL; + #endif + int eq = __Pyx_PyUnicode_Equals(s, namei, Py_EQ); if (unlikely(eq != 0)) { if (unlikely(eq < 0)) return NULL; return kwvalues[i]; @@ -8017,15 +7844,26 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO } return NULL; } -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { - Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames); + Py_ssize_t i, nkwargs; PyObject *dict; +#if !CYTHON_ASSUME_SAFE_SIZE + nkwargs = PyTuple_Size(kwnames); + if (unlikely(nkwargs < 0)) return NULL; +#else + nkwargs = PyTuple_GET_SIZE(kwnames); +#endif dict = PyDict_New(); if (unlikely(!dict)) return NULL; for (i=0; i= 0x030C00A6 +#if PY_VERSION_HEX >= 0x030C00A6 PyException_SetTraceback(value, tb); - #elif CYTHON_FAST_THREAD_STATE +#elif CYTHON_FAST_THREAD_STATE PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { @@ -8296,7 +8029,6 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject Py_XDECREF(owned_instance); return; } -#endif /* RaiseDoubleKeywords */ static void __Pyx_RaiseDoubleKeywordsError( @@ -8304,173 +8036,12 @@ static void __Pyx_RaiseDoubleKeywordsError( PyObject* kw_name) { PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AsString(kw_name)); - #endif -} - -/* ParseKeywords */ -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject *const *kwvalues, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - int kwds_is_tuple = CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds)); - while (1) { - Py_XDECREF(key); key = NULL; - Py_XDECREF(value); value = NULL; - if (kwds_is_tuple) { - Py_ssize_t size; -#if CYTHON_ASSUME_SAFE_MACROS - size = PyTuple_GET_SIZE(kwds); -#else - size = PyTuple_Size(kwds); - if (size < 0) goto bad; -#endif - if (pos >= size) break; -#if CYTHON_AVOID_BORROWED_REFS - key = __Pyx_PySequence_ITEM(kwds, pos); - if (!key) goto bad; -#elif CYTHON_ASSUME_SAFE_MACROS - key = PyTuple_GET_ITEM(kwds, pos); -#else - key = PyTuple_GetItem(kwds, pos); - if (!key) goto bad; -#endif - value = kwvalues[pos]; - pos++; - } - else - { - if (!PyDict_Next(kwds, &pos, &key, &value)) break; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); -#endif - } - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(value); - Py_DECREF(key); -#endif - key = NULL; - value = NULL; - continue; - } -#if !CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); -#endif - Py_INCREF(value); - name = first_kw_arg; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_Check(key))) { - while (*name) { - if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) - && _PyString_Eq(**name, key)) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; -#endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - if ((**argname == key) || ( - (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) - && _PyString_Eq(**argname, key))) { - goto arg_passed_twice; - } - argname++; - } - } - } else - #endif - if (likely(PyUnicode_Check(key))) { - while (*name) { - int cmp = ( - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**name, key) - ); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) { - values[name-argnames] = value; -#if CYTHON_AVOID_BORROWED_REFS - value = NULL; -#endif - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - int cmp = (**argname == key) ? 0 : - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**argname, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) goto arg_passed_twice; - argname++; - } - } - } else - goto invalid_keyword_type; - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - Py_XDECREF(key); - Py_XDECREF(value); - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - #if PY_MAJOR_VERSION < 3 - PyErr_Format(PyExc_TypeError, - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - Py_XDECREF(key); - Py_XDECREF(value); - return -1; } /* PyFunctionFastCall */ #if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL -static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na, PyObject *globals) { PyFrameObject *f; PyThreadState *tstate = __Pyx_PyThreadState_Current; @@ -8498,14 +8069,12 @@ static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args --tstate->recursion_depth; return result; } -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs) { PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); PyObject *globals = PyFunction_GET_GLOBALS(func); PyObject *argdefs = PyFunction_GET_DEFAULTS(func); PyObject *closure; -#if PY_MAJOR_VERSION >= 3 PyObject *kwdefs; -#endif PyObject *kwtuple, **k; PyObject **d; Py_ssize_t nd; @@ -8513,19 +8082,11 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, PyObject *result; assert(kwargs == NULL || PyDict_Check(kwargs)); nk = kwargs ? PyDict_Size(kwargs) : 0; - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) { - return NULL; - } - #else if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { return NULL; } - #endif if ( -#if PY_MAJOR_VERSION >= 3 co->co_kwonlyargcount == 0 && -#endif likely(kwargs == NULL || nk == 0) && co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { if (argdefs == NULL && co->co_argcount == nargs) { @@ -8562,9 +8123,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, k = NULL; } closure = PyFunction_GET_CLOSURE(func); -#if PY_MAJOR_VERSION >= 3 kwdefs = PyFunction_GET_KW_DEFAULTS(func); -#endif if (argdefs != NULL) { d = &PyTuple_GET_ITEM(argdefs, 0); nd = Py_SIZE(argdefs); @@ -8573,17 +8132,10 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, d = NULL; nd = 0; } -#if PY_MAJOR_VERSION >= 3 result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, args, (int)nargs, k, (int)nk, d, (int)nd, kwdefs, closure); -#else - result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, closure); -#endif Py_XDECREF(kwtuple); done: Py_LeaveRecursiveCall(); @@ -8598,13 +8150,8 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg ternaryfunc call = Py_TYPE(func)->tp_call; if (unlikely(!call)) return PyObject_Call(func, arg, kw); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) return NULL; - #endif result = (*call)(func, arg, kw); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -8623,13 +8170,8 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject PyCFunction cfunc; cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); self = __Pyx_CyOrPyCFunction_GET_SELF(func); - #if PY_MAJOR_VERSION < 3 - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - #else if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) return NULL; - #endif result = cfunc(self, arg); Py_LeaveRecursiveCall(); if (unlikely(!result) && unlikely(!PyErr_Occurred())) { @@ -8643,7 +8185,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject /* PyObjectFastCall */ #if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API -static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) { +static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs) { PyObject *argstuple; PyObject *result = 0; size_t i; @@ -8651,7 +8193,7 @@ static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **arg if (unlikely(!argstuple)) return NULL; for (i = 0; i < nargs; i++) { Py_INCREF(args[i]); - if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad; + if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0)) goto bad; } result = __Pyx_PyObject_Call(func, argstuple, kwargs); bad: @@ -8659,7 +8201,32 @@ static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **arg return result; } #endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) { +#if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + #if PY_VERSION_HEX < 0x03090000 + #define __Pyx_PyVectorcall_Function(callable) _PyVectorcall_Function(callable) + #elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) { + PyTypeObject *tp = Py_TYPE(callable); + #if defined(__Pyx_CyFunction_USED) + if (__Pyx_CyFunction_CheckExact(callable)) { + return __Pyx_CyFunction_func_vectorcall(callable); + } + #endif + if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { + return NULL; + } + assert(PyCallable_Check(callable)); + Py_ssize_t offset = tp->tp_vectorcall_offset; + assert(offset > 0); + vectorcallfunc ptr; + memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); + return ptr; +} + #else + #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable) + #endif +#endif +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *const *args, size_t _nargs, PyObject *kwargs) { Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); #if CYTHON_COMPILING_IN_CPYTHON if (nargs == 0 && kwargs == NULL) { @@ -8680,12 +8247,10 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); } } - #if PY_VERSION_HEX >= 0x030700A1 if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); } #endif - #endif #if CYTHON_FAST_PYCALL if (PyFunction_Check(func)) { return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); @@ -8693,24 +8258,22 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj #endif #endif if (kwargs == NULL) { - #if CYTHON_VECTORCALL - #if PY_VERSION_HEX < 0x03090000 - vectorcallfunc f = _PyVectorcall_Function(func); - #else - vectorcallfunc f = PyVectorcall_Function(func); - #endif + #if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API + vectorcallfunc f = __Pyx_PyVectorcall_Function(func); if (f) { - return f(func, args, (size_t)nargs, NULL); + return f(func, args, _nargs, NULL); } #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL if (__Pyx_CyFunction_CheckExact(func)) { __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, (size_t)nargs, NULL); + if (f) return f(func, args, _nargs, NULL); } + #elif CYTHON_COMPILING_IN_LIMITED_API && CYTHON_VECTORCALL + return PyObject_Vectorcall(func, args, _nargs, NULL); #endif } if (nargs == 0) { - return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs); + return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs); } #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); @@ -8719,44 +8282,573 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj #endif } -/* PyObjectCallNoArg */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { - PyObject *arg[2] = {NULL, NULL}; - return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +/* UnpackUnboundCMethod */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { + PyObject *result; + PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); + if (unlikely(!selfless_args)) return NULL; + result = PyObject_Call(method, selfless_args, kwargs); + Py_DECREF(selfless_args); + return result; } - -/* ArgTypeTest */ -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) -{ - __Pyx_TypeName type_name; - __Pyx_TypeName obj_type_name; - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; - } - else if (exact) { - #if PY_MAJOR_VERSION == 2 - if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; - #endif - } - else { - if (likely(__Pyx_TypeCheck(obj, type))) return 1; - } - type_name = __Pyx_PyType_GetName(type); - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); - PyErr_Format(PyExc_TypeError, - "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME - ", got " __Pyx_FMT_TYPENAME ")", name, type_name, obj_type_name); - __Pyx_DECREF_TypeName(type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; +#elif CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03090000 +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) { + return _PyObject_Vectorcall + (method, args ? args+1 : NULL, nargs ? nargs-1 : 0, kwnames); } - -/* IterFinish */ -static CYTHON_INLINE int __Pyx_IterFinish(void) { - PyObject* exc_type; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign +#else +static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { + return +#if PY_VERSION_HEX < 0x03090000 + _PyObject_Vectorcall +#else + PyObject_Vectorcall +#endif + (method, args ? args+1 : NULL, nargs ? (size_t) nargs-1 : 0, kwnames); +} +#endif +static PyMethodDef __Pyx_UnboundCMethod_Def = { + "CythonUnboundCMethod", + __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 + METH_VARARGS | METH_KEYWORDS, +#else + METH_FASTCALL | METH_KEYWORDS, +#endif + NULL +}; +static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { + PyObject *method, *result=NULL; + method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); + if (unlikely(!method)) + return -1; + result = method; +#if CYTHON_COMPILING_IN_CPYTHON + if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) + { + PyMethodDescrObject *descr = (PyMethodDescrObject*) method; + target->func = descr->d_method->ml_meth; + target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); + } else +#endif +#if CYTHON_COMPILING_IN_PYPY +#else + if (PyCFunction_Check(method)) +#endif + { + PyObject *self; + int self_found; +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + self = PyObject_GetAttrString(method, "__self__"); + if (!self) { + PyErr_Clear(); + } +#else + self = PyCFunction_GET_SELF(method); +#endif + self_found = (self && self != Py_None); +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + Py_XDECREF(self); +#endif + if (self_found) { + PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); + if (unlikely(!unbound_method)) return -1; + Py_DECREF(method); + result = unbound_method; + } + } +#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + if (unlikely(target->method)) { + Py_DECREF(result); + } else +#endif + target->method = result; + return 0; +} + +/* CallUnboundCMethod2 */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { + PyObject *args[2] = {arg1, arg2}; + if (cfunc->flag == METH_FASTCALL) { + return __Pyx_CallCFunctionFast(cfunc, self, args, 2); + } + if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL); + } +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 +#endif + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2); + } +#endif + PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; +} +#endif +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ + if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; +#if CYTHON_COMPILING_IN_CPYTHON + if (cfunc->func && (cfunc->flag & METH_VARARGS)) { + PyObject *result = NULL; + PyObject *args = PyTuple_New(2); + if (unlikely(!args)) return NULL; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + if (cfunc->flag & METH_KEYWORDS) + result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); + else + result = __Pyx_CallCFunction(cfunc, self, args); + Py_DECREF(args); + return result; + } +#endif + { + PyObject *args[4] = {NULL, self, arg1, arg2}; + return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); + } +} + +/* ParseKeywords */ +static int __Pyx_ValidateDuplicatePosArgs( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char* function_name) +{ + PyObject ** const *name = argnames; + while (name != first_kw_arg) { + PyObject *key = **name; + int found = PyDict_Contains(kwds, key); + if (unlikely(found)) { + if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; + } + name++; + } + return 0; +bad: + return -1; +} +#if CYTHON_USE_UNICODE_INTERNALS +static CYTHON_INLINE int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) { + int kind; + Py_ssize_t len = PyUnicode_GET_LENGTH(s1); + if (len != PyUnicode_GET_LENGTH(s2)) return 0; + kind = PyUnicode_KIND(s1); + if (kind != PyUnicode_KIND(s2)) return 0; + const void *data1 = PyUnicode_DATA(s1); + const void *data2 = PyUnicode_DATA(s2); + return (memcmp(data1, data2, (size_t) len * (size_t) kind) == 0); +} +#endif +static int __Pyx_MatchKeywordArg_str( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + #if CYTHON_USE_UNICODE_INTERNALS + Py_hash_t key_hash = ((PyASCIIObject*)key)->hash; + if (unlikely(key_hash == -1)) { + key_hash = PyObject_Hash(key); + if (unlikely(key_hash == -1)) + goto bad; + } + #endif + name = first_kw_arg; + while (*name) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) { + *index_found = (size_t) (name - argnames); + return 1; + } + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) { + *index_found = (size_t) (name - argnames); + return 1; + } + } + #endif + name++; + } + name = argnames; + while (name != first_kw_arg) { + PyObject *name_str = **name; + #if CYTHON_USE_UNICODE_INTERNALS + if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) { + if (__Pyx_UnicodeKeywordsEqual(name_str, key)) + goto arg_passed_twice; + } + #else + #if CYTHON_ASSUME_SAFE_SIZE + if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) + #endif + { + if (unlikely(name_str == key)) goto arg_passed_twice; + int cmp = PyUnicode_Compare(name_str, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) goto arg_passed_twice; + } + #endif + name++; + } + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +bad: + return -1; +} +static int __Pyx_MatchKeywordArg_nostr( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + PyObject ** const *name; + if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; + name = first_kw_arg; + while (*name) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (cmp == 1) { + *index_found = (size_t) (name - argnames); + return 1; + } + if (unlikely(cmp == -1)) goto bad; + name++; + } + name = argnames; + while (name != first_kw_arg) { + int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); + if (unlikely(cmp != 0)) { + if (cmp == 1) goto arg_passed_twice; + else goto bad; + } + name++; + } + return 0; +arg_passed_twice: + __Pyx_RaiseDoubleKeywordsError(function_name, key); + goto bad; +invalid_keyword_type: + PyErr_Format(PyExc_TypeError, + "%.200s() keywords must be strings", function_name); + goto bad; +bad: + return -1; +} +static CYTHON_INLINE int __Pyx_MatchKeywordArg( + PyObject *key, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + size_t *index_found, + const char *function_name) +{ + return likely(PyUnicode_CheckExact(key)) ? + __Pyx_MatchKeywordArg_str(key, argnames, first_kw_arg, index_found, function_name) : + __Pyx_MatchKeywordArg_nostr(key, argnames, first_kw_arg, index_found, function_name); +} +static void __Pyx_RejectUnknownKeyword( + PyObject *kwds, + PyObject ** const argnames[], + PyObject ** const *first_kw_arg, + const char *function_name) +{ + Py_ssize_t pos = 0; + PyObject *key = NULL; + __Pyx_BEGIN_CRITICAL_SECTION(kwds); + while (PyDict_Next(kwds, &pos, &key, NULL)) { + PyObject** const *name = first_kw_arg; + while (*name && (**name != key)) name++; + if (!*name) { + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(key); + #endif + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp != 1) { + if (cmp == 0) { + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + #endif + break; + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + #endif + } + } + __Pyx_END_CRITICAL_SECTION(); + assert(PyErr_Occurred()); +} +static int __Pyx_ParseKeywordDict( + PyObject *kwds, + PyObject ** const argnames[], + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t extracted = 0; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + name = first_kw_arg; + while (*name && num_kwargs > extracted) { + PyObject * key = **name; + PyObject *value; + int found = 0; + #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + found = PyDict_GetItemRef(kwds, key, &value); + #else + value = PyDict_GetItemWithError(kwds, key); + if (value) { + Py_INCREF(value); + found = 1; + } else { + if (unlikely(PyErr_Occurred())) goto bad; + } + #endif + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + extracted++; + } + name++; + } + if (num_kwargs > extracted) { + if (ignore_unknown_kwargs) { + if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1)) + goto bad; + } else { + __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name); + goto bad; + } + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordDictToDict( + PyObject *kwds, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + const char* function_name) +{ + PyObject** const *name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + Py_ssize_t len; +#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) + if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; +#endif + if (PyDict_Update(kwds2, kwds) < 0) goto bad; + name = first_kw_arg; + while (*name) { + PyObject *key = **name; + PyObject *value; +#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop)) + int found = PyDict_Pop(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + } +#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + int found = PyDict_GetItemRef(kwds2, key, &value); + if (found) { + if (unlikely(found < 0)) goto bad; + values[name-argnames] = value; + if (unlikely(PyDict_DelItem(kwds2, key) < 0)) goto bad; + } +#else + #if CYTHON_COMPILING_IN_CPYTHON + value = _PyDict_Pop(kwds2, key, kwds2); + #else + value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2); + #endif + if (value == kwds2) { + Py_DECREF(value); + } else { + if (unlikely(!value)) goto bad; + values[name-argnames] = value; + } +#endif + name++; + } + len = PyDict_Size(kwds2); + if (len > 0) { + return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name); + } else if (unlikely(len == -1)) { + goto bad; + } + return 0; +bad: + return -1; +} +static int __Pyx_ParseKeywordsTuple( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + PyObject *key = NULL; + PyObject** const * name; + PyObject** const *first_kw_arg = argnames + num_pos_args; + for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) { +#if CYTHON_AVOID_BORROWED_REFS + key = __Pyx_PySequence_ITEM(kwds, pos); +#else + key = __Pyx_PyTuple_GET_ITEM(kwds, pos); +#endif +#if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(!key)) goto bad; +#endif + name = first_kw_arg; + while (*name && (**name != key)) name++; + if (*name) { + PyObject *value = kwvalues[pos]; + values[name-argnames] = __Pyx_NewRef(value); + } else { + size_t index_found = 0; + int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); + if (cmp == 1) { + PyObject *value = kwvalues[pos]; + values[index_found] = __Pyx_NewRef(value); + } else { + if (unlikely(cmp == -1)) goto bad; + if (kwds2) { + PyObject *value = kwvalues[pos]; + if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; + } else if (!ignore_unknown_kwargs) { + goto invalid_keyword; + } + } + } + #if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(key); + key = NULL; + #endif + } + return 0; +invalid_keyword: + PyErr_Format(PyExc_TypeError, + "%s() got an unexpected keyword argument '%U'", + function_name, key); + goto bad; +bad: + #if CYTHON_AVOID_BORROWED_REFS + Py_XDECREF(key); + #endif + return -1; +} +static int __Pyx_ParseKeywords( + PyObject *kwds, + PyObject * const *kwvalues, + PyObject ** const argnames[], + PyObject *kwds2, + PyObject *values[], + Py_ssize_t num_pos_args, + Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs) +{ + if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) + return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); + else if (kwds2) + return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name); + else + return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); +} + +/* ArgTypeTest */ +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) +{ + __Pyx_TypeName type_name; + __Pyx_TypeName obj_type_name; + PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; + int from_annotation_subclass = 0; + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + else if (!exact) { + if (likely(__Pyx_TypeCheck(obj, type))) return 1; + } else if (exact == 2) { + if (__Pyx_TypeCheck(obj, type)) { + from_annotation_subclass = 1; + extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; + } + } + type_name = __Pyx_PyType_GetFullyQualifiedName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + PyErr_Format(PyExc_TypeError, + "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME + ", got " __Pyx_FMT_TYPENAME ")" +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + "%s%U" +#endif + , name, type_name, obj_type_name +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + , (from_annotation_subclass ? ". " : ""), extra_info +#endif + ); +#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + if (exact == 2 && from_annotation_subclass) { + PyObject *res; + PyObject *vargs[2]; + vargs[0] = PyErr_GetRaisedException(); + vargs[1] = extra_info; + res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); + Py_XDECREF(res); + PyErr_SetRaisedException(vargs[0]); + } +#endif + __Pyx_DECREF_TypeName(type_name); + __Pyx_DECREF_TypeName(obj_type_name); + return 0; +} + +/* IterFinish */ +static CYTHON_INLINE int __Pyx_IterFinish(void) { + PyObject* exc_type; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign exc_type = __Pyx_PyErr_CurrentExceptionType(); if (unlikely(exc_type)) { if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) @@ -8767,6 +8859,12 @@ static CYTHON_INLINE int __Pyx_IterFinish(void) { return 0; } +/* PyObjectCallNoArg */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { + PyObject *arg[2] = {NULL, NULL}; + return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); +} + /* PyObjectCallOneArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { PyObject *args[2] = {NULL, arg}; @@ -8796,18 +8894,12 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me Py_INCREF(descr); #if defined(Py_TPFLAGS_METHOD_DESCRIPTOR) && Py_TPFLAGS_METHOD_DESCRIPTOR if (__Pyx_PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_METHOD_DESCRIPTOR)) -#elif PY_MAJOR_VERSION >= 3 +#else #ifdef __Pyx_CyFunction_USED if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr))) #else if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type))) #endif -#else - #ifdef __Pyx_CyFunction_USED - if (likely(PyFunction_Check(descr) || __Pyx_CyFunction_Check(descr))) - #else - if (likely(PyFunction_Check(descr))) - #endif #endif { meth_found = 1; @@ -8845,15 +8937,10 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me *method = descr; return 0; } - type_name = __Pyx_PyType_GetName(tp); + type_name = __Pyx_PyType_GetFullyQualifiedName(tp); PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", type_name, name); -#else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(name)); -#endif __Pyx_DECREF_TypeName(type_name); return 0; #else @@ -8922,20 +9009,45 @@ static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) { if (t == Py_None) { __Pyx_RaiseNoneNotIterableError(); - } else if (PyTuple_GET_SIZE(t) < index) { - __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(t)); } else { - __Pyx_RaiseTooManyValuesError(index); + Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(t); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(size < 0)) return; + #endif + if (size < index) { + __Pyx_RaiseNeedMoreValuesError(size); + } else { + __Pyx_RaiseTooManyValuesError(index); + } } } /* UnpackTuple2 */ +static CYTHON_INLINE int __Pyx_unpack_tuple2( + PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple) { + if (likely(is_tuple || PyTuple_Check(tuple))) { + Py_ssize_t size; + if (has_known_size) { + return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); + } + size = __Pyx_PyTuple_GET_SIZE(tuple); + if (likely(size == 2)) { + return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); + } + if (size >= 0) { + __Pyx_UnpackTupleError(tuple, 2); + } + return -1; + } else { + return __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple); + } +} static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, int decref_tuple) { PyObject *value1 = NULL, *value2 = NULL; -#if CYTHON_COMPILING_IN_PYPY - value1 = PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; - value2 = PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS + value1 = __Pyx_PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; + value2 = __Pyx_PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; #else value1 = PyTuple_GET_ITEM(tuple, 0); Py_INCREF(value1); value2 = PyTuple_GET_ITEM(tuple, 1); Py_INCREF(value2); @@ -8946,7 +9058,7 @@ static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( *pvalue1 = value1; *pvalue2 = value2; return 0; -#if CYTHON_COMPILING_IN_PYPY +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS bad: Py_XDECREF(value1); Py_XDECREF(value2); @@ -8982,7 +9094,7 @@ static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyOb } /* dict_iter */ -#if CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 +#if CYTHON_COMPILING_IN_PYPY #include #endif static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, @@ -8994,7 +9106,7 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_di *p_orig_length = PyDict_Size(iterable); Py_INCREF(iterable); return iterable; -#elif PY_MAJOR_VERSION >= 3 +#else static PyObject *py_items = NULL, *py_keys = NULL, *py_values = NULL; PyObject **pp = NULL; if (method_name) { @@ -9029,53 +9141,102 @@ static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_di } return PyObject_GetIter(iterable); } -static CYTHON_INLINE int __Pyx_dict_iter_next( - PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, - PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { - PyObject* next_item; #if !CYTHON_COMPILING_IN_PYPY - if (source_is_dict) { - PyObject *key, *value; - if (unlikely(orig_length != PyDict_Size(iter_obj))) { - PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); +static CYTHON_INLINE int __Pyx_dict_iter_next_source_is_dict( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem) { + PyObject *key, *value; + if (unlikely(orig_length != PyDict_Size(iter_obj))) { + PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); + return -1; + } + if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { + return 0; + } + if (pitem) { + PyObject* tuple = PyTuple_New(2); + if (unlikely(!tuple)) { return -1; } - if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { - return 0; + Py_INCREF(key); + Py_INCREF(value); + #if CYTHON_ASSUME_SAFE_MACROS + PyTuple_SET_ITEM(tuple, 0, key); + PyTuple_SET_ITEM(tuple, 1, value); + #else + if (unlikely(PyTuple_SetItem(tuple, 0, key) < 0)) { + Py_DECREF(value); + Py_DECREF(tuple); + return -1; } - if (pitem) { - PyObject* tuple = PyTuple_New(2); - if (unlikely(!tuple)) { - return -1; - } + if (unlikely(PyTuple_SetItem(tuple, 1, value) < 0)) { + Py_DECREF(tuple); + return -1; + } + #endif + *pitem = tuple; + } else { + if (pkey) { Py_INCREF(key); + *pkey = key; + } + if (pvalue) { Py_INCREF(value); - PyTuple_SET_ITEM(tuple, 0, key); - PyTuple_SET_ITEM(tuple, 1, value); - *pitem = tuple; - } else { - if (pkey) { - Py_INCREF(key); - *pkey = key; - } - if (pvalue) { - Py_INCREF(value); - *pvalue = value; - } + *pvalue = value; } - return 1; + } + return 1; +} +#endif +static CYTHON_INLINE int __Pyx_dict_iter_next( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { + PyObject* next_item; +#if !CYTHON_COMPILING_IN_PYPY + if (source_is_dict) { + int result; +#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_BEGIN_CRITICAL_SECTION(iter_obj); +#endif + result = __Pyx_dict_iter_next_source_is_dict(iter_obj, orig_length, ppos, pkey, pvalue, pitem); +#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API + Py_END_CRITICAL_SECTION(); +#endif + return result; } else if (PyTuple_CheckExact(iter_obj)) { Py_ssize_t pos = *ppos; - if (unlikely(pos >= PyTuple_GET_SIZE(iter_obj))) return 0; + Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(iter_obj); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(tuple_size < 0)) return -1; + #endif + if (unlikely(pos >= tuple_size)) return 0; *ppos = pos + 1; + #if CYTHON_ASSUME_SAFE_MACROS next_item = PyTuple_GET_ITEM(iter_obj, pos); + #else + next_item = PyTuple_GetItem(iter_obj, pos); + if (unlikely(!next_item)) return -1; + #endif Py_INCREF(next_item); } else if (PyList_CheckExact(iter_obj)) { Py_ssize_t pos = *ppos; - if (unlikely(pos >= PyList_GET_SIZE(iter_obj))) return 0; + Py_ssize_t list_size = __Pyx_PyList_GET_SIZE(iter_obj); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(list_size < 0)) return -1; + #endif + if (unlikely(pos >= list_size)) return 0; *ppos = pos + 1; + #if CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + next_item = PyList_GetItemRef(iter_obj, pos); + if (unlikely(!next_item)) return -1; + #elif CYTHON_ASSUME_SAFE_MACROS next_item = PyList_GET_ITEM(iter_obj, pos); Py_INCREF(next_item); + #else + next_item = PyList_GetItem(iter_obj, pos); + if (unlikely(!next_item)) return -1; + Py_INCREF(next_item); + #endif } else #endif { @@ -9104,12 +9265,10 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, PyObject *old_exc, *old_val, *old_tb; PyObject *ctx; __Pyx_PyThreadState_declare -#ifdef WITH_THREAD PyGILState_STATE state; if (nogil) state = PyGILState_Ensure(); else state = (PyGILState_STATE)0; -#endif CYTHON_UNUSED_VAR(clineno); CYTHON_UNUSED_VAR(lineno); CYTHON_UNUSED_VAR(filename); @@ -9121,13 +9280,9 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, Py_XINCREF(old_val); Py_XINCREF(old_tb); __Pyx_ErrRestore(old_exc, old_val, old_tb); - PyErr_PrintEx(1); + PyErr_PrintEx(0); } - #if PY_MAJOR_VERSION < 3 - ctx = PyString_FromString(name); - #else ctx = PyUnicode_FromString(name); - #endif __Pyx_ErrRestore(old_exc, old_val, old_tb); if (!ctx) { PyErr_WriteUnraisable(Py_None); @@ -9135,10 +9290,8 @@ static void __Pyx_WriteUnraisable(const char *name, int clineno, PyErr_WriteUnraisable(ctx); Py_DECREF(ctx); } -#ifdef WITH_THREAD if (nogil) PyGILState_Release(state); -#endif } /* PyDictVersioning */ @@ -9175,33 +9328,26 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) #endif { PyObject *result; -#if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000 - result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } else if (unlikely(PyErr_Occurred())) { - return NULL; - } -#elif CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API if (unlikely(!__pyx_m)) { + if (!PyErr_Occurred()) + PyErr_SetNone(PyExc_NameError); return NULL; } result = PyObject_GetAttr(__pyx_m, name); if (likely(result)) { return result; } -#else - result = PyDict_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + PyErr_Clear(); +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { - return __Pyx_NewRef(result); + return result; } -#endif #else - result = PyObject_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { return __Pyx_NewRef(result); } @@ -9210,217 +9356,437 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) return __Pyx_GetBuiltinName(name); } -/* DictGetItem */ -#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY -static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { - PyObject *value; - value = PyDict_GetItemWithError(d, key); - if (unlikely(!value)) { - if (!PyErr_Occurred()) { - if (unlikely(PyTuple_Check(key))) { - PyObject* args = PyTuple_Pack(1, key); - if (likely(args)) { - PyErr_SetObject(PyExc_KeyError, args); - Py_DECREF(args); +/* CIntToDigits */ +static const char DIGIT_PAIRS_10[2*10*10+1] = { + "00010203040506070809" + "10111213141516171819" + "20212223242526272829" + "30313233343536373839" + "40414243444546474849" + "50515253545556575859" + "60616263646566676869" + "70717273747576777879" + "80818283848586878889" + "90919293949596979899" +}; +static const char DIGIT_PAIRS_8[2*8*8+1] = { + "0001020304050607" + "1011121314151617" + "2021222324252627" + "3031323334353637" + "4041424344454647" + "5051525354555657" + "6061626364656667" + "7071727374757677" +}; +static const char DIGITS_HEX[2*16+1] = { + "0123456789abcdef" + "0123456789ABCDEF" +}; + +/* BuildPyUnicode */ +static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, const char* chars, int clength, + int prepend_sign, char padding_char) { + PyObject *uval; + Py_ssize_t uoffset = ulength - clength; +#if CYTHON_USE_UNICODE_INTERNALS + Py_ssize_t i; + void *udata; + uval = PyUnicode_New(ulength, 127); + if (unlikely(!uval)) return NULL; + udata = PyUnicode_DATA(uval); + if (uoffset > 0) { + i = 0; + if (prepend_sign) { + __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, 0, '-'); + i++; + } + for (; i < uoffset; i++) { + __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, i, padding_char); + } + } + for (i=0; i < clength; i++) { + __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, uoffset+i, chars[i]); + } +#else + { + PyObject *sign = NULL, *padding = NULL; + uval = NULL; + if (uoffset > 0) { + prepend_sign = !!prepend_sign; + if (uoffset > prepend_sign) { + padding = PyUnicode_FromOrdinal(padding_char); + if (likely(padding) && uoffset > prepend_sign + 1) { + PyObject *tmp = PySequence_Repeat(padding, uoffset - prepend_sign); + Py_DECREF(padding); + padding = tmp; } - } else { - PyErr_SetObject(PyExc_KeyError, key); + if (unlikely(!padding)) goto done_or_error; + } + if (prepend_sign) { + sign = PyUnicode_FromOrdinal('-'); + if (unlikely(!sign)) goto done_or_error; } } - return NULL; + uval = PyUnicode_DecodeASCII(chars, clength, NULL); + if (likely(uval) && padding) { + PyObject *tmp = PyUnicode_Concat(padding, uval); + Py_DECREF(uval); + uval = tmp; + } + if (likely(uval) && sign) { + PyObject *tmp = PyUnicode_Concat(sign, uval); + Py_DECREF(uval); + uval = tmp; + } +done_or_error: + Py_XDECREF(padding); + Py_XDECREF(sign); } - Py_INCREF(value); - return value; -} #endif + return uval; +} -/* UnpackUnboundCMethod */ -static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { - PyObject *result; - PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); - if (unlikely(!selfless_args)) return NULL; - result = PyObject_Call(method, selfless_args, kwargs); - Py_DECREF(selfless_args); - return result; +/* COrdinalToPyUnicode */ +static CYTHON_INLINE int __Pyx_CheckUnicodeValue(int value) { + return value <= 1114111; } -static PyMethodDef __Pyx_UnboundCMethod_Def = { - "CythonUnboundCMethod", - __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), - METH_VARARGS | METH_KEYWORDS, - NULL -}; -static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { - PyObject *method; - method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); - if (unlikely(!method)) - return -1; - target->method = method; -#if CYTHON_COMPILING_IN_CPYTHON - #if PY_MAJOR_VERSION >= 3 - if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) - #else - if (likely(!__Pyx_CyOrPyCFunction_Check(method))) - #endif - { - PyMethodDescrObject *descr = (PyMethodDescrObject*) method; - target->func = descr->d_method->ml_meth; - target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); - } else -#endif -#if CYTHON_COMPILING_IN_PYPY -#else - if (PyCFunction_Check(method)) -#endif +static PyObject* __Pyx_PyUnicode_FromOrdinal_Padded(int value, Py_ssize_t ulength, char padding_char) { + if (likely(ulength <= 250)) { + char chars[256]; + if (value <= 255) { + memset(chars, padding_char, (size_t) (ulength - 1)); + chars[ulength-1] = (char) value; + return PyUnicode_DecodeLatin1(chars, ulength, NULL); + } + char *cpos = chars + sizeof(chars); + if (value < 0x800) { + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0xc0 | (value & 0x1f)); + } else if (value < 0x10000) { + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0xe0 | (value & 0x0f)); + } else { + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0x80 | (value & 0x3f)); + value >>= 6; + *--cpos = (char) (0xf0 | (value & 0x07)); + } + cpos -= ulength; + memset(cpos, padding_char, (size_t) (ulength - 1)); + return PyUnicode_DecodeUTF8(cpos, chars + sizeof(chars) - cpos, NULL); + } + if (value <= 127 && CYTHON_USE_UNICODE_INTERNALS) { + const char chars[1] = {(char) value}; + return __Pyx_PyUnicode_BuildFromAscii(ulength, chars, 1, 0, padding_char); + } { - PyObject *self; - int self_found; -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - self = PyObject_GetAttrString(method, "__self__"); - if (!self) { - PyErr_Clear(); + PyObject *uchar, *padding_uchar, *padding, *result; + padding_uchar = PyUnicode_FromOrdinal(padding_char); + if (unlikely(!padding_uchar)) return NULL; + padding = PySequence_Repeat(padding_uchar, ulength - 1); + Py_DECREF(padding_uchar); + if (unlikely(!padding)) return NULL; + uchar = PyUnicode_FromOrdinal(value); + if (unlikely(!uchar)) { + Py_DECREF(padding); + return NULL; } -#else - self = PyCFunction_GET_SELF(method); + result = PyUnicode_Concat(padding, uchar); + Py_DECREF(padding); + Py_DECREF(uchar); + return result; + } +} + +/* CIntToPyUnicode */ +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_size_t(size_t value, Py_ssize_t width, char padding_char, char format_char) { + char digits[sizeof(size_t)*3+2]; + char *dpos, *end = digits + sizeof(size_t)*3+2; + const char *hex_digits = DIGITS_HEX; + Py_ssize_t length, ulength; + int prepend_sign, last_one_off; + size_t remaining; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wconversion" #endif - self_found = (self && self != Py_None); -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - Py_XDECREF(self); + const size_t neg_one = (size_t) -1, const_zero = (size_t) 0; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic pop #endif - if (self_found) { - PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); - if (unlikely(!unbound_method)) return -1; - Py_DECREF(method); - target->method = unbound_method; + const int is_unsigned = neg_one > const_zero; + if (format_char == 'c') { + if (unlikely(!(is_unsigned || value == 0 || value > 0) || + !(sizeof(value) <= 2 || value & ~ (size_t) 0x01fffff || __Pyx_CheckUnicodeValue((int) value)))) { + PyErr_SetString(PyExc_OverflowError, "%c arg not in range(0x110000)"); + return NULL; + } + if (width <= 1) { + return PyUnicode_FromOrdinal((int) value); + } + return __Pyx_PyUnicode_FromOrdinal_Padded((int) value, width, padding_char); + } + if (format_char == 'X') { + hex_digits += 16; + format_char = 'x'; + } + remaining = value; + last_one_off = 0; + dpos = end; + do { + int digit_pos; + switch (format_char) { + case 'o': + digit_pos = abs((int)(remaining % (8*8))); + remaining = (size_t) (remaining / (8*8)); + dpos -= 2; + memcpy(dpos, DIGIT_PAIRS_8 + digit_pos * 2, 2); + last_one_off = (digit_pos < 8); + break; + case 'd': + digit_pos = abs((int)(remaining % (10*10))); + remaining = (size_t) (remaining / (10*10)); + dpos -= 2; + memcpy(dpos, DIGIT_PAIRS_10 + digit_pos * 2, 2); + last_one_off = (digit_pos < 10); + break; + case 'x': + *(--dpos) = hex_digits[abs((int)(remaining % 16))]; + remaining = (size_t) (remaining / 16); + break; + default: + assert(0); + break; } + } while (unlikely(remaining != 0)); + assert(!last_one_off || *dpos == '0'); + dpos += last_one_off; + length = end - dpos; + ulength = length; + prepend_sign = 0; + if (!is_unsigned && value <= neg_one) { + if (padding_char == ' ' || width <= length + 1) { + *(--dpos) = '-'; + ++length; + } else { + prepend_sign = 1; + } + ++ulength; } - return 0; + if (width > ulength) { + ulength = width; + } + if (ulength == 1) { + return PyUnicode_FromOrdinal(*dpos); + } + return __Pyx_PyUnicode_BuildFromAscii(ulength, dpos, (int) length, prepend_sign, padding_char); } -/* CallUnboundCMethod2 */ -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030600B1 -static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { - if (likely(cfunc->func)) { - PyObject *args[2] = {arg1, arg2}; - if (cfunc->flag == METH_FASTCALL) { - #if PY_VERSION_HEX >= 0x030700A0 - return (*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)cfunc->func)(self, args, 2); +/* PyObjectFormatAndDecref */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { + if (unlikely(!s)) return NULL; + if (likely(PyUnicode_CheckExact(s))) return s; + return __Pyx_PyObject_FormatAndDecref(s, f); +} +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { + PyObject *result; + if (unlikely(!s)) return NULL; + result = PyObject_Format(s, f); + Py_DECREF(s); + return result; +} + +/* JoinPyUnicode */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char) { +#if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + PyObject *result_uval; + int result_ukind, kind_shift; + Py_ssize_t i, char_pos; + void *result_udata; + if (max_char > 1114111) max_char = 1114111; + result_uval = PyUnicode_New(result_ulength, max_char); + if (unlikely(!result_uval)) return NULL; + result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND; + kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1; + result_udata = PyUnicode_DATA(result_uval); + assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0); + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - result_ulength < 0)) + goto overflow; + char_pos = 0; + for (i=0; i < value_count; i++) { + int ukind; + Py_ssize_t ulength; + void *udata; + PyObject *uval = values[i]; + #if !CYTHON_COMPILING_IN_LIMITED_API + if (__Pyx_PyUnicode_READY(uval) == (-1)) + goto bad; + #endif + ulength = __Pyx_PyUnicode_GET_LENGTH(uval); + #if !CYTHON_ASSUME_SAFE_SIZE + if (unlikely(ulength < 0)) goto bad; + #endif + if (unlikely(!ulength)) + continue; + if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos)) + goto overflow; + ukind = __Pyx_PyUnicode_KIND(uval); + udata = __Pyx_PyUnicode_DATA(uval); + if (ukind == result_ukind) { + memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); + } else { + #if PY_VERSION_HEX >= 0x030d0000 + if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; + #elif CYTHON_COMPILING_IN_CPYTHON || defined(_PyUnicode_FastCopyCharacters) + _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); #else - return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, 2, NULL); + Py_ssize_t j; + for (j=0; j < ulength; j++) { + Py_UCS4 uchar = __Pyx_PyUnicode_READ(ukind, udata, j); + __Pyx_PyUnicode_WRITE(result_ukind, result_udata, char_pos+j, uchar); + } #endif } - #if PY_VERSION_HEX >= 0x030700A0 - if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) - return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, 2, NULL); - #endif - } - return __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); -} -#endif -static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ - PyObject *args, *result = NULL; - if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; -#if CYTHON_COMPILING_IN_CPYTHON - if (cfunc->func && (cfunc->flag & METH_VARARGS)) { - args = PyTuple_New(2); - if (unlikely(!args)) goto bad; - Py_INCREF(arg1); - PyTuple_SET_ITEM(args, 0, arg1); - Py_INCREF(arg2); - PyTuple_SET_ITEM(args, 1, arg2); - if (cfunc->flag & METH_KEYWORDS) - result = (*(PyCFunctionWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, NULL); - else - result = (*cfunc->func)(self, args); - } else { - args = PyTuple_New(3); - if (unlikely(!args)) goto bad; - Py_INCREF(self); - PyTuple_SET_ITEM(args, 0, self); - Py_INCREF(arg1); - PyTuple_SET_ITEM(args, 1, arg1); - Py_INCREF(arg2); - PyTuple_SET_ITEM(args, 2, arg2); - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); + char_pos += ulength; } + return result_uval; +overflow: + PyErr_SetString(PyExc_OverflowError, "join() result is too long for a Python string"); +bad: + Py_DECREF(result_uval); + return NULL; #else - args = PyTuple_Pack(3, self, arg1, arg2); - if (unlikely(!args)) goto bad; - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); -#endif + Py_ssize_t i; + PyObject *result = NULL; + PyObject *value_tuple = PyTuple_New(value_count); + if (unlikely(!value_tuple)) return NULL; + CYTHON_UNUSED_VAR(max_char); + CYTHON_UNUSED_VAR(result_ulength); + for (i=0; i__pyx_empty_unicode, value_tuple); bad: - Py_XDECREF(args); + Py_DECREF(value_tuple); return result; +#endif +} + +/* DictGetItem */ +#if !CYTHON_COMPILING_IN_PYPY +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { + PyObject *value; + if (unlikely(__Pyx_PyDict_GetItemRef(d, key, &value) == 0)) { // no value, no error + if (unlikely(PyTuple_Check(key))) { + PyObject* args = PyTuple_Pack(1, key); + if (likely(args)) { + PyErr_SetObject(PyExc_KeyError, args); + Py_DECREF(args); + } + } else { + PyErr_SetObject(PyExc_KeyError, key); + } + } + return value; +} +#endif + +/* PyObjectCall2Args */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args[3] = {NULL, arg1, arg2}; + return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); } /* CallUnboundCMethod1 */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg) { - if (likely(cfunc->func)) { + int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); + if (likely(was_initialized == 2 && cfunc->func)) { int flag = cfunc->flag; if (flag == METH_O) { - return (*(cfunc->func))(self, arg); - } else if ((PY_VERSION_HEX >= 0x030600B1) && flag == METH_FASTCALL) { - #if PY_VERSION_HEX >= 0x030700A0 - return (*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)cfunc->func)(self, &arg, 1); - #else - return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, &arg, 1, NULL); - #endif - } else if ((PY_VERSION_HEX >= 0x030700A0) && flag == (METH_FASTCALL | METH_KEYWORDS)) { - return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, &arg, 1, NULL); + return __Pyx_CallCFunction(cfunc, self, arg); + } else if (flag == METH_FASTCALL) { + return __Pyx_CallCFunctionFast(cfunc, self, &arg, 1); + } else if (flag == (METH_FASTCALL | METH_KEYWORDS)) { + return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, &arg, 1, NULL); } } - return __Pyx__CallUnboundCMethod1(cfunc, self, arg); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + else if (unlikely(was_initialized == 1)) { + __Pyx_CachedCFunction tmp_cfunc = { +#ifndef __cplusplus + 0 +#endif + }; + tmp_cfunc.type = cfunc->type; + tmp_cfunc.method_name = cfunc->method_name; + return __Pyx__CallUnboundCMethod1(&tmp_cfunc, self, arg); + } +#endif + PyObject* result = __Pyx__CallUnboundCMethod1(cfunc, self, arg); + __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); + return result; } #endif static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg){ - PyObject *args, *result = NULL; + PyObject *result = NULL; if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; #if CYTHON_COMPILING_IN_CPYTHON if (cfunc->func && (cfunc->flag & METH_VARARGS)) { - args = PyTuple_New(1); - if (unlikely(!args)) goto bad; + PyObject *args = PyTuple_New(1); + if (unlikely(!args)) return NULL; Py_INCREF(arg); PyTuple_SET_ITEM(args, 0, arg); if (cfunc->flag & METH_KEYWORDS) - result = (*(PyCFunctionWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, NULL); + result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); else - result = (*cfunc->func)(self, args); - } else { - args = PyTuple_New(2); - if (unlikely(!args)) goto bad; - Py_INCREF(self); - PyTuple_SET_ITEM(args, 0, self); - Py_INCREF(arg); - PyTuple_SET_ITEM(args, 1, arg); - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); - } -#else - args = PyTuple_Pack(2, self, arg); - if (unlikely(!args)) goto bad; - result = __Pyx_PyObject_Call(cfunc->method, args, NULL); + result = __Pyx_CallCFunction(cfunc, self, args); + Py_DECREF(args); + } else #endif -bad: - Py_XDECREF(args); + { + result = __Pyx_PyObject_Call2Args(cfunc->method, self, arg); + } return result; } /* py_dict_pop */ static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyObject *default_value) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B3 & PY_VERSION_HEX < 0x030d0000 - if ((1)) { - return _PyDict_Pop(d, key, default_value); - } else -#endif +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop) + PyObject *value; + if (PyDict_Pop(d, key, &value) == 0) { + if (default_value) { + Py_INCREF(default_value); + } else { + PyErr_SetObject(PyExc_KeyError, key); + } + value = default_value; + } + return value; +#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 + return _PyDict_Pop(d, key, default_value); +#else if (default_value) { - return __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyDict_Type_pop, d, key, default_value); + return __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, d, key, default_value); } else { - return __Pyx_CallUnboundCMethod1(&__pyx_umethod_PyDict_Type_pop, d, key); + return __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, d, key); } +#endif } /* PySequenceMultiply */ static PyObject* __Pyx_PySequence_Multiply_Generic(PyObject *seq, Py_ssize_t mul) { - PyObject *result, *pymul = PyInt_FromSsize_t(mul); + PyObject *result, *pymul = PyLong_FromSsize_t(mul); if (unlikely(!pymul)) return NULL; result = PyNumber_Multiply(seq, pymul); @@ -9439,25 +9805,102 @@ static CYTHON_INLINE PyObject* __Pyx_PySequence_Multiply(PyObject *seq, Py_ssize } } +/* CallTypeTraverse */ +#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) +#else +static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg) { + #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 + if (__Pyx_get_runtime_version() < 0x03090000) return 0; + #endif + if (!always_call) { + PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*); + unsigned long flags = PyType_GetFlags(base); + if (flags & Py_TPFLAGS_HEAPTYPE) { + return 0; + } + } + Py_VISIT((PyObject*)Py_TYPE(o)); + return 0; +} +#endif + +/* LimitedApiGetTypeDict */ +#if CYTHON_COMPILING_IN_LIMITED_API +static Py_ssize_t __Pyx_GetTypeDictOffset(void) { + PyObject *tp_dictoffset_o; + Py_ssize_t tp_dictoffset; + tp_dictoffset_o = PyObject_GetAttrString((PyObject*)(&PyType_Type), "__dictoffset__"); + if (unlikely(!tp_dictoffset_o)) return -1; + tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o); + Py_DECREF(tp_dictoffset_o); + if (unlikely(tp_dictoffset == 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' doesn't have a dictoffset"); + return -1; + } else if (unlikely(tp_dictoffset < 0)) { + PyErr_SetString( + PyExc_TypeError, + "'type' has an unexpected negative dictoffset. " + "Please report this as Cython bug"); + return -1; + } + return tp_dictoffset; +} +static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp) { + static Py_ssize_t tp_dictoffset = 0; + if (unlikely(tp_dictoffset == 0)) { + tp_dictoffset = __Pyx_GetTypeDictOffset(); + if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) { + tp_dictoffset = 0; // try again next time? + return NULL; + } + } + return *(PyObject**)((char*)tp + tp_dictoffset); +} +#endif + +/* SetItemOnTypeDict */ +static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; +#else + tp_dict = tp->tp_dict; +#endif + result = PyDict_SetItem(tp_dict, k, v); + if (likely(!result)) { + PyType_Modified(tp); + if (unlikely(PyObject_HasAttr(v, __pyx_mstate_global->__pyx_n_u_set_name))) { + PyObject *setNameResult = PyObject_CallMethodObjArgs(v, __pyx_mstate_global->__pyx_n_u_set_name, (PyObject *) tp, k, NULL); + if (!setNameResult) return -1; + Py_DECREF(setNameResult); + } + } + return result; +} + /* FixUpExtensionType */ -#if CYTHON_USE_TYPE_SPECS static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { -#if PY_VERSION_HEX > 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API +#if __PYX_LIMITED_VERSION_HEX > 0x030900B1 CYTHON_UNUSED_VAR(spec); CYTHON_UNUSED_VAR(type); + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); #else const PyType_Slot *slot = spec->slots; + int changed = 0; +#if !CYTHON_COMPILING_IN_LIMITED_API while (slot && slot->slot && slot->slot != Py_tp_members) slot++; if (slot && slot->slot == Py_tp_members) { - int changed = 0; -#if !(PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON) +#if !CYTHON_COMPILING_IN_CPYTHON const -#endif +#endif // !CYTHON_COMPILING_IN_CPYTHON) PyMemberDef *memb = (PyMemberDef*) slot->pfunc; while (memb && memb->name) { if (memb->name[0] == '_' && memb->name[1] == '_') { -#if PY_VERSION_HEX < 0x030900b1 if (strcmp(memb->name, "__weaklistoffset__") == 0) { assert(memb->type == T_PYSSIZET); assert(memb->flags == READONLY); @@ -9481,11 +9924,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject #endif changed = 1; } -#endif -#else - if ((0)); -#endif -#if PY_VERSION_HEX <= 0x030900b1 && CYTHON_COMPILING_IN_CPYTHON +#endif // CYTHON_METH_FASTCALL else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -9493,37 +9932,68 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject descr = PyDescr_NewMember(type, memb); if (unlikely(!descr)) return -1; - if (unlikely(PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr) < 0)) { - Py_DECREF(descr); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { return -1; } - Py_DECREF(descr); changed = 1; } -#endif } memb++; } - if (changed) - PyType_Modified(type); } -#endif +#endif // !CYTHON_COMPILING_IN_LIMITED_API + slot = spec->slots; + while (slot && slot->slot && slot->slot != Py_tp_getset) + slot++; + if (slot && slot->slot == Py_tp_getset) { + PyGetSetDef *getset = (PyGetSetDef*) slot->pfunc; + while (getset && getset->name) { + if (getset->name[0] == '_' && getset->name[1] == '_' && strcmp(getset->name, "__module__") == 0) { + PyObject *descr = PyDescr_NewGetSet(type, getset); + if (unlikely(!descr)) + return -1; + #if CYTHON_COMPILING_IN_LIMITED_API + PyObject *pyname = PyUnicode_FromString(getset->name); + if (unlikely(!pyname)) { + Py_DECREF(descr); + return -1; + } + int set_item_result = __Pyx_SetItemOnTypeDict(type, pyname, descr); + Py_DECREF(pyname); + #else + CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); + int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); + #endif + Py_DECREF(descr); + if (unlikely(set_item_result < 0)) { + return -1; + } + changed = 1; + } + ++getset; + } + } + if (changed) + PyType_Modified(type); +#endif // PY_VERSION_HEX > 0x030900B1 return 0; } -#endif /* ValidateBasesTuple */ #if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { Py_ssize_t i, n; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE n = PyTuple_GET_SIZE(bases); #else n = PyTuple_Size(bases); - if (n < 0) return -1; + if (unlikely(n < 0)) return -1; #endif for (i = 1; i < n; i++) { + PyTypeObject *b; #if CYTHON_AVOID_BORROWED_REFS PyObject *b0 = PySequence_GetItem(bases, i); if (!b0) return -1; @@ -9532,23 +10002,11 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #else PyObject *b0 = PyTuple_GetItem(bases, i); if (!b0) return -1; -#endif - PyTypeObject *b; -#if PY_MAJOR_VERSION < 3 - if (PyClass_Check(b0)) - { - PyErr_Format(PyExc_TypeError, "base class '%.200s' is an old-style class", - PyString_AS_STRING(((PyClassObject*)b0)->cl_name)); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - return -1; - } #endif b = (PyTypeObject*) b0; if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE)) { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); __Pyx_DECREF_TypeName(b_name); @@ -9560,7 +10018,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs if (dictoffset == 0) { Py_ssize_t b_dictoffset = 0; -#if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY +#if CYTHON_USE_TYPE_SLOTS b_dictoffset = b->tp_dictoffset; #else PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); @@ -9571,7 +10029,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif if (b_dictoffset) { { - __Pyx_TypeName b_name = __Pyx_PyType_GetName(b); + __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); PyErr_Format(PyExc_TypeError, "extension type '%.200s' has no __dict__ slot, " "but base type '" __Pyx_FMT_TYPENAME "' has: " @@ -9580,7 +10038,7 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs type_name, b_name); __Pyx_DECREF_TypeName(b_name); } -#if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY) +#if !CYTHON_USE_TYPE_SLOTS dictoffset_return: #endif #if CYTHON_AVOID_BORROWED_REFS @@ -9598,8 +10056,18 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs #endif /* PyType_Ready */ +CYTHON_UNUSED static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) { + while (t) { + PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); + if (bases) { + return 1; + } + t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*); + } + return 0; +} static int __Pyx_PyType_Ready(PyTypeObject *t) { -#if CYTHON_USE_TYPE_SPECS || !(CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API) || defined(PYSTON_MAJOR_VERSION) +#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON || defined(PYSTON_MAJOR_VERSION) (void)__Pyx_PyObject_CallMethod0; #if CYTHON_USE_TYPE_SPECS (void)__Pyx_validate_bases_tuple; @@ -9607,10 +10075,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { return PyType_Ready(t); #else int r; + if (!__Pyx_PyType_HasMultipleInheritance(t)) { + return PyType_Ready(t); + } PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset, bases) == -1)) return -1; -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) { int gc_was_enabled; #if PY_VERSION_HEX >= 0x030A00b1 @@ -9619,12 +10090,13 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #else PyObject *ret, *py_status; PyObject *gc = NULL; - #if PY_VERSION_HEX >= 0x030700a1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) - gc = PyImport_GetModule(__pyx_kp_u_gc); + #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\ + !CYTHON_COMPILING_IN_GRAAL + gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc); #endif - if (unlikely(!gc)) gc = PyImport_Import(__pyx_kp_u_gc); + if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc); if (unlikely(!gc)) return -1; - py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_isenabled); + py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled); if (unlikely(!py_status)) { Py_DECREF(gc); return -1; @@ -9632,7 +10104,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { gc_was_enabled = __Pyx_PyObject_IsTrue(py_status); Py_DECREF(py_status); if (gc_was_enabled > 0) { - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_disable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable); if (unlikely(!ret)) { Py_DECREF(gc); return -1; @@ -9651,7 +10123,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { (void)__Pyx_PyObject_CallMethod0; #endif r = PyType_Ready(t); -#if PY_VERSION_HEX >= 0x03050000 && !defined(PYSTON_MAJOR_VERSION) +#if !defined(PYSTON_MAJOR_VERSION) t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE; #if PY_VERSION_HEX >= 0x030A00b1 if (gc_was_enabled) @@ -9660,7 +10132,7 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { if (gc_was_enabled) { PyObject *tp, *v, *tb; PyErr_Fetch(&tp, &v, &tb); - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_kp_u_enable); + ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable); if (likely(ret || r == -1)) { Py_XDECREF(ret); PyErr_Restore(tp, v, tb); @@ -9679,67 +10151,15 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) { #endif } -/* PyObject_GenericGetAttrNoDict */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject *__Pyx_RaiseGenericGetAttributeError(PyTypeObject *tp, PyObject *attr_name) { - __Pyx_TypeName type_name = __Pyx_PyType_GetName(tp); - PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", - type_name, attr_name); -#else - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%.400s'", - type_name, PyString_AS_STRING(attr_name)); -#endif - __Pyx_DECREF_TypeName(type_name); - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name) { - PyObject *descr; - PyTypeObject *tp = Py_TYPE(obj); - if (unlikely(!PyString_Check(attr_name))) { - return PyObject_GenericGetAttr(obj, attr_name); - } - assert(!tp->tp_dictoffset); - descr = _PyType_Lookup(tp, attr_name); - if (unlikely(!descr)) { - return __Pyx_RaiseGenericGetAttributeError(tp, attr_name); - } - Py_INCREF(descr); - #if PY_MAJOR_VERSION < 3 - if (likely(PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_HAVE_CLASS))) - #endif - { - descrgetfunc f = Py_TYPE(descr)->tp_descr_get; - if (unlikely(f)) { - PyObject *res = f(descr, obj, (PyObject *)tp); - Py_DECREF(descr); - return res; - } - } - return descr; -} -#endif - -/* PyObject_GenericGetAttr */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name) { - if (unlikely(Py_TYPE(obj)->tp_dictoffset)) { - return PyObject_GenericGetAttr(obj, attr_name); - } - return __Pyx_PyObject_GenericGetAttrNoDict(obj, attr_name); -} -#endif - /* SetVTable */ static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { PyObject *ob = PyCapsule_New(vtable, 0, 0); if (unlikely(!ob)) goto bad; #if CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_n_s_pyx_vtable, ob) < 0)) + if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_mstate_global->__pyx_n_u_pyx_vtable, ob) < 0)) #else - if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_n_s_pyx_vtable, ob) < 0)) + if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable, ob) < 0)) #endif goto bad; Py_DECREF(ob); @@ -9753,9 +10173,9 @@ static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { static void* __Pyx_GetVtable(PyTypeObject *type) { void* ptr; #if CYTHON_COMPILING_IN_LIMITED_API - PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #else - PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable); + PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable); #endif if (!ob) goto bad; @@ -9770,29 +10190,49 @@ static void* __Pyx_GetVtable(PyTypeObject *type) { } /* MergeVTables */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_MergeVtables(PyTypeObject *type) { - int i; + int i=0; + Py_ssize_t size; void** base_vtables; - __Pyx_TypeName tp_base_name; - __Pyx_TypeName base_name; + __Pyx_TypeName tp_base_name = NULL; + __Pyx_TypeName base_name = NULL; void* unknown = (void*)-1; - PyObject* bases = type->tp_bases; + PyObject* bases = __Pyx_PyType_GetSlot(type, tp_bases, PyObject*); int base_depth = 0; { - PyTypeObject* base = type->tp_base; + PyTypeObject* base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); while (base) { base_depth += 1; - base = base->tp_base; + base = __Pyx_PyType_GetSlot(base, tp_base, PyTypeObject*); } } - base_vtables = (void**) malloc(sizeof(void*) * (size_t)(base_depth + 1)); + base_vtables = (void**) PyMem_Malloc(sizeof(void*) * (size_t)(base_depth + 1)); base_vtables[0] = unknown; - for (i = 1; i < PyTuple_GET_SIZE(bases); i++) { - void* base_vtable = __Pyx_GetVtable(((PyTypeObject*)PyTuple_GET_ITEM(bases, i))); +#if CYTHON_COMPILING_IN_LIMITED_API + size = PyTuple_Size(bases); + if (size < 0) goto other_failure; +#else + size = PyTuple_GET_SIZE(bases); +#endif + for (i = 1; i < size; i++) { + PyObject *basei; + void* base_vtable; +#if CYTHON_AVOID_BORROWED_REFS + basei = PySequence_GetItem(bases, i); + if (unlikely(!basei)) goto other_failure; +#elif !CYTHON_ASSUME_SAFE_MACROS + basei = PyTuple_GetItem(bases, i); + if (unlikely(!basei)) goto other_failure; +#else + basei = PyTuple_GET_ITEM(bases, i); +#endif + base_vtable = __Pyx_GetVtable((PyTypeObject*)basei); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(basei); +#endif if (base_vtable != NULL) { int j; - PyTypeObject* base = type->tp_base; + PyTypeObject* base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); for (j = 0; j < base_depth; j++) { if (base_vtables[j] == unknown) { base_vtables[j] = __Pyx_GetVtable(base); @@ -9803,31 +10243,66 @@ static int __Pyx_MergeVtables(PyTypeObject *type) { } else if (base_vtables[j] == NULL) { goto bad; } - base = base->tp_base; + base = __Pyx_PyType_GetSlot(base, tp_base, PyTypeObject*); } } } PyErr_Clear(); - free(base_vtables); + PyMem_Free(base_vtables); return 0; bad: - tp_base_name = __Pyx_PyType_GetName(type->tp_base); - base_name = __Pyx_PyType_GetName((PyTypeObject*)PyTuple_GET_ITEM(bases, i)); + { + PyTypeObject* basei = NULL; + PyTypeObject* tp_base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); + tp_base_name = __Pyx_PyType_GetFullyQualifiedName(tp_base); +#if CYTHON_AVOID_BORROWED_REFS + basei = (PyTypeObject*)PySequence_GetItem(bases, i); + if (unlikely(!basei)) goto really_bad; +#elif !CYTHON_ASSUME_SAFE_MACROS + basei = (PyTypeObject*)PyTuple_GetItem(bases, i); + if (unlikely(!basei)) goto really_bad; +#else + basei = (PyTypeObject*)PyTuple_GET_ITEM(bases, i); +#endif + base_name = __Pyx_PyType_GetFullyQualifiedName(basei); +#if CYTHON_AVOID_BORROWED_REFS + Py_DECREF(basei); +#endif + } PyErr_Format(PyExc_TypeError, "multiple bases have vtable conflict: '" __Pyx_FMT_TYPENAME "' and '" __Pyx_FMT_TYPENAME "'", tp_base_name, base_name); +#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS +really_bad: // bad has failed! +#endif __Pyx_DECREF_TypeName(tp_base_name); __Pyx_DECREF_TypeName(base_name); - free(base_vtables); +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS +other_failure: +#endif + PyMem_Free(base_vtables); return -1; } + +/* DelItemOnTypeDict */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) { + int result; + PyObject *tp_dict; +#if CYTHON_COMPILING_IN_LIMITED_API + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; +#else + tp_dict = tp->tp_dict; #endif + result = PyDict_DelItem(tp_dict, k); + if (likely(!result)) PyType_Modified(tp); + return result; +} /* SetupReduce */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { int ret; PyObject *name_attr; - name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_n_s_name); + name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name); if (likely(name_attr)) { ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); } else { @@ -9852,18 +10327,18 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { PyObject *setstate_cython = NULL; PyObject *getstate = NULL; #if CYTHON_USE_PYTYPE_LOOKUP - getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_n_s_getstate); + getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_getstate); #else - getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_getstate); + getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_getstate); if (!getstate && PyErr_Occurred()) { goto __PYX_BAD; } #endif if (getstate) { #if CYTHON_USE_PYTYPE_LOOKUP - object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_getstate); + object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); #else - object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_n_s_getstate); + object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); if (!object_getstate && PyErr_Occurred()) { goto __PYX_BAD; } @@ -9873,33 +10348,33 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { } } #if CYTHON_USE_PYTYPE_LOOKUP - object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; + object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; #else - object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; + object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; #endif - reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; + reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; if (reduce_ex == object_reduce_ex) { #if CYTHON_USE_PYTYPE_LOOKUP - object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; + object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; #else - object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; + object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; #endif - reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce); if (unlikely(!reduce)) goto __PYX_BAD; - if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_n_s_reduce_cython)) { - reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_reduce_cython); + reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce); if (unlikely(!reduce)) goto __PYX_BAD; + if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython)) { + reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (likely(reduce_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (reduce == object_reduce || PyErr_Occurred()) { goto __PYX_BAD; } - setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate); + setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate); if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); + if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython)) { + setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (likely(setstate_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; } else if (!setstate || PyErr_Occurred()) { goto __PYX_BAD; } @@ -9911,7 +10386,7 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { __PYX_BAD: if (!PyErr_Occurred()) { __Pyx_TypeName type_obj_name = - __Pyx_PyType_GetName((PyTypeObject*)type_obj); + __Pyx_PyType_GetFullyQualifiedName((PyTypeObject*)type_obj); PyErr_Format(PyExc_RuntimeError, "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); __Pyx_DECREF_TypeName(type_obj_name); @@ -9931,16 +10406,14 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { Py_XDECREF(setstate_cython); return ret; } -#endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_0_10 -#define __PYX_HAVE_RT_ImportType_3_0_10 -static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_10 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_2 +#define __PYX_HAVE_RT_ImportType_3_1_2 +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) { PyObject *result = 0; - char warning[200]; Py_ssize_t basicsize; Py_ssize_t itemsize; #if CYTHON_COMPILING_IN_LIMITED_API @@ -9960,6 +10433,9 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul basicsize = ((PyTypeObject *)result)->tp_basicsize; itemsize = ((PyTypeObject *)result)->tp_itemsize; #else + if (size == 0) { + return (PyTypeObject *)result; + } py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); if (!py_basicsize) goto bad; @@ -9991,7 +10467,7 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_10 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -9999,12 +10475,13 @@ static PyTypeObject *__Pyx_ImportType_3_0_10(PyObject *module, const char *modul module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_10 && (size_t)basicsize > size) { - PyOS_snprintf(warning, sizeof(warning), - "%s.%s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + if (PyErr_WarnFormat(NULL, 0, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize) < 0) { + goto bad; + } } return (PyTypeObject *)result; bad: @@ -10018,67 +10495,46 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { PyObject *module = 0; PyObject *empty_dict = 0; PyObject *empty_list = 0; - #if PY_MAJOR_VERSION < 3 - PyObject *py_import; - py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); - if (unlikely(!py_import)) - goto bad; - if (!from_list) { - empty_list = PyList_New(0); - if (unlikely(!empty_list)) - goto bad; - from_list = empty_list; - } - #endif empty_dict = PyDict_New(); if (unlikely(!empty_dict)) goto bad; - { - #if PY_MAJOR_VERSION >= 3 - if (level == -1) { - if (strchr(__Pyx_MODULE_NAME, '.') != NULL) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - #endif - if (!module) { - #if PY_MAJOR_VERSION < 3 - PyObject *py_level = PyInt_FromLong(level); - if (unlikely(!py_level)) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL); - Py_DECREF(py_level); - #else + if (level == -1) { + const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); + if (package_sep != (0)) { module = PyImport_ImportModuleLevelObject( - name, __pyx_d, empty_dict, from_list, level); - #endif + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); + if (unlikely(!module)) { + if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) + goto bad; + PyErr_Clear(); + } } + level = 0; + } + if (!module) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); } bad: Py_XDECREF(empty_dict); Py_XDECREF(empty_list); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_import); - #endif return module; } /* ImportDottedModule */ -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts_tuple, Py_ssize_t count) { PyObject *partial_name = NULL, *slice = NULL, *sep = NULL; + Py_ssize_t size; if (unlikely(PyErr_Occurred())) { PyErr_Clear(); } - if (likely(PyTuple_GET_SIZE(parts_tuple) == count)) { +#if CYTHON_ASSUME_SAFE_SIZE + size = PyTuple_GET_SIZE(parts_tuple); +#else + size = PyTuple_Size(parts_tuple); + if (size < 0) goto bad; +#endif + if (likely(size == count)) { partial_name = name; } else { slice = PySequence_GetSlice(parts_tuple, 0, count); @@ -10090,28 +10546,18 @@ static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts partial_name = PyUnicode_Join(sep, slice); } PyErr_Format( -#if PY_MAJOR_VERSION < 3 - PyExc_ImportError, - "No module named '%s'", PyString_AS_STRING(partial_name)); -#else -#if PY_VERSION_HEX >= 0x030600B1 PyExc_ModuleNotFoundError, -#else - PyExc_ImportError, -#endif "No module named '%U'", partial_name); -#endif bad: Py_XDECREF(sep); Py_XDECREF(slice); Py_XDECREF(partial_name); return NULL; } -#endif -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) { PyObject *imported_module; -#if PY_VERSION_HEX < 0x030700A1 || (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) +#if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ + CYTHON_COMPILING_IN_GRAAL PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) return NULL; @@ -10122,17 +10568,21 @@ static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) { #endif return imported_module; } -#endif -#if PY_MAJOR_VERSION >= 3 static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple) { Py_ssize_t i, nparts; +#if CYTHON_ASSUME_SAFE_SIZE nparts = PyTuple_GET_SIZE(parts_tuple); +#else + nparts = PyTuple_Size(parts_tuple); + if (nparts < 0) return NULL; +#endif for (i=1; i < nparts && module; i++) { PyObject *part, *submodule; #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS part = PyTuple_GET_ITEM(parts_tuple, i); #else - part = PySequence_ITEM(parts_tuple, i); + part = __Pyx_PySequence_ITEM(parts_tuple, i); + if (!part) return NULL; #endif submodule = __Pyx_PyObject_GetAttrStrNoError(module, part); #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) @@ -10146,20 +10596,7 @@ static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject * } return module; } -#endif static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple) { -#if PY_MAJOR_VERSION < 3 - PyObject *module, *from_list, *star = __pyx_n_s__6; - CYTHON_UNUSED_VAR(parts_tuple); - from_list = PyList_New(1); - if (unlikely(!from_list)) - return NULL; - Py_INCREF(star); - PyList_SET_ITEM(from_list, 0, star); - module = __Pyx_Import(name, from_list, 0); - Py_DECREF(from_list); - return module; -#else PyObject *imported_module; PyObject *module = __Pyx_Import(name, NULL, 0); if (!parts_tuple || unlikely(!module)) @@ -10171,15 +10608,14 @@ static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple } PyErr_Clear(); return __Pyx_ImportDottedModule_WalkParts(module, name, parts_tuple); -#endif } static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030400B1 +#if CYTHON_COMPILING_IN_CPYTHON PyObject *module = __Pyx__ImportDottedModule_Lookup(name); if (likely(module)) { - PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_n_s_spec); + PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_mstate_global->__pyx_n_u_spec); if (likely(spec)) { - PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_n_s_initializing); + PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_mstate_global->__pyx_n_u_initializing); if (likely(!unsafe || !__Pyx_PyObject_IsTrue(unsafe))) { Py_DECREF(spec); spec = NULL; @@ -10201,19 +10637,68 @@ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME); + return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); +} + +/* dict_setdefault */ +static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, + int is_safe_type) { + PyObject* value; + CYTHON_MAYBE_UNUSED_VAR(is_safe_type); +#if CYTHON_COMPILING_IN_LIMITED_API + value = PyObject_CallMethod(d, "setdefault", "OO", key, default_value); +#elif PY_VERSION_HEX >= 0x030d0000 + PyDict_SetDefaultRef(d, key, default_value, &value); +#else + value = PyDict_SetDefault(d, key, default_value); + if (unlikely(!value)) return NULL; + Py_INCREF(value); +#endif + return value; } /* FetchCommonType */ +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 +static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases); + if (result && metaclass) { + PyObject *old_tp = (PyObject*)Py_TYPE(result); + Py_INCREF((PyObject*)metaclass); +#if __PYX_LIMITED_VERSION_HEX >= 0x03090000 + Py_SET_TYPE(result, metaclass); +#else + result->ob_type = metaclass; +#endif + Py_DECREF(old_tp); + } + return result; +} +#else +#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b) +#endif static int __Pyx_VerifyCachedType(PyObject *cached_type, const char *name, - Py_ssize_t basicsize, Py_ssize_t expected_basicsize) { + Py_ssize_t basicsize; if (!PyType_Check(cached_type)) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s is not a type object", name); return -1; } + if (expected_basicsize == 0) { + return 0; // size is inherited, nothing useful to check + } +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_basicsize; + py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); + if (unlikely(!py_basicsize)) return -1; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = NULL; + if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) return -1; +#else + basicsize = ((PyTypeObject*) cached_type)->tp_basicsize; +#endif if (basicsize != expected_basicsize) { PyErr_Format(PyExc_TypeError, "Shared Cython type %.200s has the wrong size, try recompiling", @@ -10222,80 +10707,51 @@ static int __Pyx_VerifyCachedType(PyObject *cached_type, } return 0; } -#if !CYTHON_USE_TYPE_SPECS -static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) { - PyObject* abi_module; - const char* object_name; - PyTypeObject *cached_type = NULL; - abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - object_name = strrchr(type->tp_name, '.'); - object_name = object_name ? object_name+1 : type->tp_name; - cached_type = (PyTypeObject*) PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - if (__Pyx_VerifyCachedType( - (PyObject *)cached_type, - object_name, - cached_type->tp_basicsize, - type->tp_basicsize) < 0) { - goto bad; - } - goto done; - } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); - if (PyType_Ready(type) < 0) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, (PyObject *)type) < 0) - goto bad; - Py_INCREF(type); - cached_type = type; -done: - Py_DECREF(abi_module); - return cached_type; -bad: - Py_XDECREF(cached_type); - cached_type = NULL; - goto done; -} -#else -static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec *spec, PyObject *bases) { - PyObject *abi_module, *cached_type = NULL; +static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { + PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name; + int get_item_ref_result; const char* object_name = strrchr(spec->name, '.'); object_name = object_name ? object_name+1 : spec->name; + py_object_name = PyUnicode_FromString(object_name); + if (!py_object_name) return NULL; abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) return NULL; - cached_type = PyObject_GetAttrString(abi_module, object_name); - if (cached_type) { - Py_ssize_t basicsize; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); - if (unlikely(!py_basicsize)) goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) goto bad; -#else - basicsize = likely(PyType_Check(cached_type)) ? ((PyTypeObject*) cached_type)->tp_basicsize : -1; -#endif + if (!abi_module) goto done; + abi_module_dict = PyModule_GetDict(abi_module); + if (!abi_module_dict) goto done; + get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type); + if (get_item_ref_result == 1) { if (__Pyx_VerifyCachedType( cached_type, object_name, - basicsize, spec->basicsize) < 0) { goto bad; } goto done; + } else if (unlikely(get_item_ref_result == -1)) { + goto bad; } - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) goto bad; - PyErr_Clear(); CYTHON_UNUSED_VAR(module); - cached_type = __Pyx_PyType_FromModuleAndSpec(abi_module, spec, bases); + cached_type = __Pyx_PyType_FromMetaclass(metaclass, abi_module, spec, bases); if (unlikely(!cached_type)) goto bad; if (unlikely(__Pyx_fix_up_extension_type_from_spec(spec, (PyTypeObject *) cached_type) < 0)) goto bad; - if (PyObject_SetAttrString(abi_module, object_name, cached_type) < 0) goto bad; + new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type, 1); + if (unlikely(new_cached_type != cached_type)) { + if (unlikely(!new_cached_type)) goto bad; + Py_DECREF(cached_type); + cached_type = new_cached_type; + if (__Pyx_VerifyCachedType( + cached_type, + object_name, + spec->basicsize) < 0) { + goto bad; + } + goto done; + } else { + Py_DECREF(new_cached_type); + } done: - Py_DECREF(abi_module); + Py_XDECREF(abi_module); + Py_DECREF(py_object_name); assert(cached_type == NULL || PyType_Check(cached_type)); return (PyTypeObject *) cached_type; bad: @@ -10303,10 +10759,71 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyObject *module, PyType_Spec cached_type = NULL; goto done; } + +/* CommonTypesMetaclass */ +PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { + return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); +} +static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { + {"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL}, + {0, 0, 0, 0, 0} +}; +static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = { + {Py_tp_getset, (void *)__pyx_CommonTypesMetaclass_getset}, + {0, 0} +}; +static PyType_Spec __pyx_CommonTypesMetaclass_spec = { + __PYX_TYPE_MODULE_PREFIX "_common_types_metatype", + 0, + 0, +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | + Py_TPFLAGS_DISALLOW_INSTANTIATION | +#endif + Py_TPFLAGS_DEFAULT, + __pyx_CommonTypesMetaclass_slots +}; +static int __pyx_CommonTypesMetaclass_init(PyObject *module) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + PyObject *bases = PyTuple_Pack(1, &PyType_Type); + if (unlikely(!bases)) { + return -1; + } + mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases); + if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) { + return -1; + } + return 0; +} + +/* PyMethodNew */ +#if CYTHON_COMPILING_IN_LIMITED_API +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + PyObject *result; + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + { + PyObject *args[] = {func, self}; + result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL); + } + #else + result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL); + #endif + return result; +} +#else +static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { + CYTHON_UNUSED_VAR(typ); + if (!self) + return __Pyx_NewRef(func); + return PyMethod_New(func, self); +} #endif /* PyVectorcallFastCallDict */ -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { PyObject *res = NULL; @@ -10317,7 +10834,12 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector size_t j; PyObject *key, *value; unsigned long keys_are_strings; + #if !CYTHON_ASSUME_SAFE_SIZE + Py_ssize_t nkw = PyDict_Size(kw); + if (unlikely(nkw == -1)) return NULL; + #else Py_ssize_t nkw = PyDict_GET_SIZE(kw); + #endif newargs = (PyObject **)PyMem_Malloc((nargs + (size_t)nkw) * sizeof(args[0])); if (unlikely(newargs == NULL)) { PyErr_NoMemory(); @@ -10333,10 +10855,19 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector pos = i = 0; keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS; while (PyDict_Next(kw, &pos, &key, &value)) { - keys_are_strings &= Py_TYPE(key)->tp_flags; + keys_are_strings &= + #if CYTHON_COMPILING_IN_LIMITED_API + PyType_GetFlags(Py_TYPE(key)); + #else + Py_TYPE(key)->tp_flags; + #endif Py_INCREF(key); Py_INCREF(value); + #if !CYTHON_ASSUME_SAFE_MACROS + if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0)) goto cleanup; + #else PyTuple_SET_ITEM(kwnames, i, key); + #endif kwvalues[i] = value; i++; } @@ -10354,25 +10885,55 @@ static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vector } static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) { - if (likely(kw == NULL) || PyDict_GET_SIZE(kw) == 0) { + Py_ssize_t kw_size = + likely(kw == NULL) ? + 0 : +#if !CYTHON_ASSUME_SAFE_SIZE + PyDict_Size(kw); +#else + PyDict_GET_SIZE(kw); +#endif + if (kw_size == 0) { return vc(func, args, nargs, NULL); } +#if !CYTHON_ASSUME_SAFE_SIZE + else if (unlikely(kw_size == -1)) { + return NULL; + } +#endif return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw); } #endif /* CythonFunctionShared */ #if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func, void (*cfunc)(void)) { if (__Pyx_CyFunction_Check(func)) { return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; } else if (PyCFunction_Check(func)) { return PyCFunction_GetFunction(func) == (PyCFunction) cfunc; } - return 0; + return 0; +} +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) { + int result; + PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func); + if (unlikely(!newFunc)) { + PyErr_Clear(); // It's only an optimization, so don't throw an error + return 0; + } + result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc); + Py_DECREF(newFunc); + return result; + } + return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc); } #else -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) { +static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { + if (PyMethod_Check(func)) { + func = PyMethod_GET_FUNCTION(func); + } return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; } #endif @@ -10388,20 +10949,15 @@ static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* #endif } static PyObject * -__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) +__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(closure); if (unlikely(op->func_doc == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); if (unlikely(!op->func_doc)) return NULL; #else if (((PyCFunctionObject*)op)->m_ml->ml_doc) { -#if PY_MAJOR_VERSION >= 3 op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#else - op->func_doc = PyString_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); -#endif if (unlikely(op->func_doc == NULL)) return NULL; } else { @@ -10413,6 +10969,15 @@ __Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) Py_INCREF(op->func_doc); return op->func_doc; } +static PyObject * +__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { + PyObject *result; + CYTHON_UNUSED_VAR(closure); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_doc_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -10421,20 +10986,19 @@ __Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *cont value = Py_None; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_doc, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_name == NULL)) { #if CYTHON_COMPILING_IN_LIMITED_API op->func_name = PyObject_GetAttrString(op->func, "__name__"); -#elif PY_MAJOR_VERSION >= 3 - op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #else - op->func_name = PyString_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); + op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); #endif if (unlikely(op->func_name == NULL)) return NULL; @@ -10442,53 +11006,60 @@ __Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_name); return op->func_name; } +static PyObject * +__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) +{ + PyObject *result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_name_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__name__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_name, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * __Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op, void *context) { CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); Py_INCREF(op->func_qualname); - return op->func_qualname; + result = op->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static int __Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value, void *context) { CYTHON_UNUSED_VAR(context); -#if PY_MAJOR_VERSION >= 3 - if (unlikely(value == NULL || !PyUnicode_Check(value))) -#else - if (unlikely(value == NULL || !PyString_Check(value))) -#endif - { + if (unlikely(value == NULL || !PyUnicode_Check(value))) { PyErr_SetString(PyExc_TypeError, "__qualname__ must be set to a string object"); return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_qualname, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +__Pyx_CyFunction_get_dict_locked(__pyx_CyFunctionObject *op) { - CYTHON_UNUSED_VAR(context); if (unlikely(op->func_dict == NULL)) { op->func_dict = PyDict_New(); if (unlikely(op->func_dict == NULL)) @@ -10497,6 +11068,16 @@ __Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) Py_INCREF(op->func_dict); return op->func_dict; } +static PyObject * +__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) +{ + CYTHON_UNUSED_VAR(context); + PyObject *result; + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_dict_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *context) { @@ -10512,7 +11093,9 @@ __Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *con return -1; } Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_dict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * @@ -10573,13 +11156,14 @@ __Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value, void PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__defaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_tuple, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_defaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_tuple; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -10591,6 +11175,15 @@ __Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result = NULL; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_defaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -10604,13 +11197,14 @@ __Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, voi PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__kwdefaults__ will not " "currently affect the values used in function calls", 1); Py_INCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_kwdefaults_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->defaults_kwdict; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { if (op->defaults_getter) { if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; @@ -10622,6 +11216,15 @@ __Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { Py_INCREF(result); return result; } +static PyObject * +__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { + PyObject* result; + CYTHON_UNUSED_VAR(context); + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_kwdefaults_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} static int __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, void *context) { CYTHON_UNUSED_VAR(context); @@ -10633,13 +11236,14 @@ __Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, vo return -1; } Py_XINCREF(value); + __Pyx_BEGIN_CRITICAL_SECTION(op); __Pyx_Py_XDECREF_SET(op->func_annotations, value); + __Pyx_END_CRITICAL_SECTION(); return 0; } static PyObject * -__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { +__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) { PyObject* result = op->func_annotations; - CYTHON_UNUSED_VAR(context); if (unlikely(!result)) { result = PyDict_New(); if (unlikely(!result)) return NULL; @@ -10649,16 +11253,19 @@ __Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { return result; } static PyObject * -__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { - int is_coroutine; +__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; CYTHON_UNUSED_VAR(context); - if (op->func_is_coroutine) { - return __Pyx_NewRef(op->func_is_coroutine); - } - is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; -#if PY_VERSION_HEX >= 0x03050000 + __Pyx_BEGIN_CRITICAL_SECTION(op); + result = __Pyx_CyFunction_get_annotations_locked(op); + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) { + int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; if (is_coroutine) { - PyObject *module, *fromlist, *marker = __pyx_n_s_is_coroutine; + PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine; fromlist = PyList_New(1); if (unlikely(!fromlist)) return NULL; Py_INCREF(marker); @@ -10671,20 +11278,68 @@ __Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { return NULL; } #endif - module = PyImport_ImportModuleLevelObject(__pyx_n_s_asyncio_coroutines, NULL, NULL, fromlist, 0); + module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0); Py_DECREF(fromlist); if (unlikely(!module)) goto ignore; - op->func_is_coroutine = __Pyx_PyObject_GetAttrStr(module, marker); + is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker); Py_DECREF(module); - if (likely(op->func_is_coroutine)) { - return __Pyx_NewRef(op->func_is_coroutine); + if (likely(is_coroutine_value)) { + return is_coroutine_value; } ignore: PyErr_Clear(); } + return __Pyx_PyBool_FromLong(is_coroutine); +} +static PyObject * +__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { + PyObject *result; + CYTHON_UNUSED_VAR(context); + if (op->func_is_coroutine) { + return __Pyx_NewRef(op->func_is_coroutine); + } + result = __Pyx_CyFunction_get_is_coroutine_value(op); + if (unlikely(!result)) + return NULL; + __Pyx_BEGIN_CRITICAL_SECTION(op); + if (op->func_is_coroutine) { + Py_DECREF(result); + result = __Pyx_NewRef(op->func_is_coroutine); + } else { + op->func_is_coroutine = __Pyx_NewRef(result); + } + __Pyx_END_CRITICAL_SECTION(); + return result; +} +static void __Pyx_CyFunction_raise_argument_count_error(__pyx_CyFunctionObject *func, const char* message, Py_ssize_t size) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + py_name, message, size); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", + name, message, size); +#endif +} +static void __Pyx_CyFunction_raise_type_error(__pyx_CyFunctionObject *func, const char* message) { +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); + if (!py_name) return; + PyErr_Format(PyExc_TypeError, + "%.200S() %s", + py_name, message); + Py_DECREF(py_name); +#else + const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; + PyErr_Format(PyExc_TypeError, + "%.200s() %s", + name, message); #endif - op->func_is_coroutine = __Pyx_PyBool_FromLong(is_coroutine); - return __Pyx_NewRef(op->func_is_coroutine); } #if CYTHON_COMPILING_IN_LIMITED_API static PyObject * @@ -10699,24 +11354,24 @@ __Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *c } #endif static PyGetSetDef __pyx_CyFunction_getsets[] = { - {(char *) "func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {(char *) "func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {(char *) "__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, - {(char *) "func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {(char *) "func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {(char *) "func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {(char *) "func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {(char *) "func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {(char *) "__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, - {(char *) "__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, - {(char *) "_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, + {"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, + {"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, + {"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, + {"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, + {"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, + {"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, + {"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, + {"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, + {"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, + {"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, + {"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, #if CYTHON_COMPILING_IN_LIMITED_API {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, #endif @@ -10724,23 +11379,19 @@ static PyGetSetDef __pyx_CyFunction_getsets[] = { }; static PyMemberDef __pyx_CyFunction_members[] = { #if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, + {"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, #endif -#if CYTHON_USE_TYPE_SPECS - {(char *) "__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, + {"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, #if CYTHON_METH_FASTCALL -#if CYTHON_BACKPORT_VECTORCALL - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, +#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API + {"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, #else -#if !CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, -#endif -#endif + {"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, #endif -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, +#if CYTHON_COMPILING_IN_LIMITED_API + {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, #else - {(char *) "__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, + {"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, #endif #endif {0, 0, 0, 0, 0} @@ -10748,19 +11399,19 @@ static PyMemberDef __pyx_CyFunction_members[] = { static PyObject * __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, PyObject *args) { + PyObject *result = NULL; CYTHON_UNUSED_VAR(args); -#if PY_MAJOR_VERSION >= 3 + __Pyx_BEGIN_CRITICAL_SECTION(m); Py_INCREF(m->func_qualname); - return m->func_qualname; -#else - return PyString_FromString(((PyCFunctionObject*)m)->m_ml->ml_name); -#endif + result = m->func_qualname; + __Pyx_END_CRITICAL_SECTION(); + return result; } static PyMethodDef __pyx_CyFunction_methods[] = { {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, {0, 0, 0, 0} }; -#if PY_VERSION_HEX < 0x030500A0 || CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API #define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) #else #define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) @@ -10802,8 +11453,6 @@ static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef * Py_INCREF(op->func_globals); Py_XINCREF(code); op->func_code = code; - op->defaults_pyobjects = 0; - op->defaults_size = 0; op->defaults = NULL; op->defaults_tuple = NULL; op->defaults_kwdict = NULL; @@ -10865,14 +11514,7 @@ __Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) Py_CLEAR(m->defaults_kwdict); Py_CLEAR(m->func_annotations); Py_CLEAR(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_XDECREF(pydefaults[i]); - PyObject_Free(m->defaults); - m->defaults = NULL; - } + Py_CLEAR(m->defaults); return 0; } static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m) @@ -10889,6 +11531,10 @@ static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) } static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) { + { + int e = __Pyx_call_type_traverse((PyObject*)m, 1, visit, arg); + if (e) return e; + } Py_VISIT(m->func_closure); #if CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(m->func); @@ -10896,40 +11542,33 @@ static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, Py_VISIT(((PyCFunctionObject*)m)->m_module); #endif Py_VISIT(m->func_dict); - Py_VISIT(m->func_name); - Py_VISIT(m->func_qualname); + __Pyx_VISIT_CONST(m->func_name); + __Pyx_VISIT_CONST(m->func_qualname); Py_VISIT(m->func_doc); Py_VISIT(m->func_globals); - Py_VISIT(m->func_code); + __Pyx_VISIT_CONST(m->func_code); #if !CYTHON_COMPILING_IN_LIMITED_API Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); #endif Py_VISIT(m->defaults_tuple); Py_VISIT(m->defaults_kwdict); Py_VISIT(m->func_is_coroutine); - if (m->defaults) { - PyObject **pydefaults = __Pyx_CyFunction_Defaults(PyObject *, m); - int i; - for (i = 0; i < m->defaults_pyobjects; i++) - Py_VISIT(pydefaults[i]); - } + Py_VISIT(m->defaults); return 0; } static PyObject* __Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) { -#if PY_MAJOR_VERSION >= 3 - return PyUnicode_FromFormat("", + PyObject *repr; + __Pyx_BEGIN_CRITICAL_SECTION(op); + repr = PyUnicode_FromFormat("", op->func_qualname, (void *)op); -#else - return PyString_FromFormat("", - PyString_AsString(op->func_qualname), (void *)op); -#endif + __Pyx_END_CRITICAL_SECTION(); + return repr; } static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { #if CYTHON_COMPILING_IN_LIMITED_API PyObject *f = ((__pyx_CyFunctionObject*)func)->func; - PyObject *py_name = NULL; PyCFunction meth; int flags; meth = PyCFunction_GetFunction(f); @@ -10948,10 +11587,10 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py return (*meth)(self, arg); break; case METH_VARARGS | METH_KEYWORDS: - return (*(PyCFunctionWithKeywords)(void*)meth)(self, arg, kw); + return (*(PyCFunctionWithKeywords)(void(*)(void))meth)(self, arg, kw); case METH_NOARGS: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -10959,24 +11598,15 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif if (likely(size == 0)) return (*meth)(self, NULL); -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes no arguments", size); return NULL; } break; case METH_O: if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE size = PyTuple_GET_SIZE(arg); #else size = PyTuple_Size(arg); @@ -10995,18 +11625,9 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py #endif return result; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, - "%.200S() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, size); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - f->m_ml->ml_name, size); -#endif + __Pyx_CyFunction_raise_argument_count_error( + (__pyx_CyFunctionObject*)func, + "takes exactly one argument", size); return NULL; } break; @@ -11014,16 +11635,8 @@ static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, Py PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); return NULL; } -#if CYTHON_COMPILING_IN_LIMITED_API - py_name = __Pyx_CyFunction_get_name((__pyx_CyFunctionObject*)func, NULL); - if (!py_name) return NULL; - PyErr_Format(PyExc_TypeError, "%.200S() takes no keyword arguments", - py_name); - Py_DECREF(py_name); -#else - PyErr_Format(PyExc_TypeError, "%.200s() takes no keyword arguments", - f->m_ml->ml_name); -#endif + __Pyx_CyFunction_raise_type_error( + (__pyx_CyFunctionObject*)func, "takes no keyword arguments"); return NULL; } static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { @@ -11040,10 +11653,10 @@ static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *a static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { PyObject *result; __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func; -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc); if (vc) { -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw); #else (void) &__Pyx_PyVectorcall_FastCallDict; @@ -11055,11 +11668,11 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P Py_ssize_t argc; PyObject *new_args; PyObject *self; -#if CYTHON_ASSUME_SAFE_MACROS +#if CYTHON_ASSUME_SAFE_SIZE argc = PyTuple_GET_SIZE(args); #else argc = PyTuple_Size(args); - if (unlikely(!argc) < 0) return NULL; + if (unlikely(argc < 0)) return NULL; #endif new_args = PyTuple_GetSlice(args, 1, argc); if (unlikely(!new_args)) @@ -11067,14 +11680,9 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P self = PyTuple_GetItem(args, 0); if (unlikely(!self)) { Py_DECREF(new_args); -#if PY_MAJOR_VERSION > 2 PyErr_Format(PyExc_TypeError, "unbound method %.200S() needs an argument", cyfunc->func_qualname); -#else - PyErr_SetString(PyExc_TypeError, - "unbound method needs an argument"); -#endif return NULL; } result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw); @@ -11084,21 +11692,21 @@ static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, P } return result; } -#if CYTHON_METH_FASTCALL +#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames) { int ret = 0; if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) { if (unlikely(nargs < 1)) { - PyErr_Format(PyExc_TypeError, "%.200s() needs an argument", - ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + __Pyx_CyFunction_raise_type_error( + cyfunc, "needs an argument"); return -1; } ret = 1; } - if (unlikely(kwnames) && unlikely(PyTuple_GET_SIZE(kwnames))) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no keyword arguments", ((PyCFunctionObject*)cyfunc)->m_ml->ml_name); + if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) { + __Pyx_CyFunction_raise_type_error( + cyfunc, "takes no keyword arguments"); return -1; } return ret; @@ -11106,13 +11714,18 @@ static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionO static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -11120,29 +11733,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *c nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 0)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes no arguments (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes no arguments", nargs); return NULL; } - return def->ml_meth(self, NULL); + return meth(self, NULL); } static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { case 1: self = args[0]; @@ -11150,29 +11772,38 @@ static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } if (unlikely(nargs != 1)) { - PyErr_Format(PyExc_TypeError, - "%.200s() takes exactly one argument (%" CYTHON_FORMAT_SSIZE_T "d given)", - def->ml_name, nargs); + __Pyx_CyFunction_raise_argument_count_error( + cyfunc, "takes exactly one argument", nargs); return NULL; } - return def->ml_meth(self, args[0]); + return meth(self, args[0]); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; #else Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -11180,17 +11811,21 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames); + return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))meth)(self, args, nargs, kwnames); } static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) { __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyMethodDef* def = ((PyCFunctionObject*)cyfunc)->m_ml; PyTypeObject *cls = (PyTypeObject *) __Pyx_CyFunction_GetClassObj(cyfunc); #if CYTHON_BACKPORT_VECTORCALL Py_ssize_t nargs = (Py_ssize_t)nargsf; @@ -11198,6 +11833,12 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); #endif PyObject *self; +#if CYTHON_COMPILING_IN_LIMITED_API + PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); + if (unlikely(!meth)) return NULL; +#else + PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; +#endif switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { case 1: self = args[0]; @@ -11205,15 +11846,19 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject nargs -= 1; break; case 0: +#if CYTHON_COMPILING_IN_LIMITED_API + self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); + if (unlikely(!self) && PyErr_Occurred()) return NULL; +#else self = ((PyCFunctionObject*)cyfunc)->m_self; +#endif break; default: return NULL; } - return ((__Pyx_PyCMethod)(void(*)(void))def->ml_meth)(self, cls, args, (size_t)nargs, kwnames); + return ((__Pyx_PyCMethod)(void(*)(void))meth)(self, cls, args, (size_t)nargs, kwnames); } #endif -#if CYTHON_USE_TYPE_SPECS static PyType_Slot __pyx_CyFunctionType_slots[] = { {Py_tp_dealloc, (void *)__Pyx_CyFunction_dealloc}, {Py_tp_repr, (void *)__Pyx_CyFunction_repr}, @@ -11233,118 +11878,33 @@ static PyType_Spec __pyx_CyFunctionType_spec = { #ifdef Py_TPFLAGS_METHOD_DESCRIPTOR Py_TPFLAGS_METHOD_DESCRIPTOR | #endif -#if (defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL) +#if CYTHON_METH_FASTCALL +#if defined(Py_TPFLAGS_HAVE_VECTORCALL) + Py_TPFLAGS_HAVE_VECTORCALL | +#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL) _Py_TPFLAGS_HAVE_VECTORCALL | #endif - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - __pyx_CyFunctionType_slots -}; -#else -static PyTypeObject __pyx_CyFunctionType_type = { - PyVarObject_HEAD_INIT(0, 0) - __PYX_TYPE_MODULE_PREFIX "cython_function_or_method", - sizeof(__pyx_CyFunctionObject), - 0, - (destructor) __Pyx_CyFunction_dealloc, -#if !CYTHON_METH_FASTCALL - 0, -#elif CYTHON_BACKPORT_VECTORCALL - (printfunc)offsetof(__pyx_CyFunctionObject, func_vectorcall), -#else - offsetof(PyCFunctionObject, vectorcall), -#endif - 0, - 0, -#if PY_MAJOR_VERSION < 3 - 0, -#else - 0, -#endif - (reprfunc) __Pyx_CyFunction_repr, - 0, - 0, - 0, - 0, - __Pyx_CyFunction_CallAsMethod, - 0, - 0, - 0, - 0, -#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR - Py_TPFLAGS_METHOD_DESCRIPTOR | -#endif -#if defined(_Py_TPFLAGS_HAVE_VECTORCALL) && CYTHON_METH_FASTCALL - _Py_TPFLAGS_HAVE_VECTORCALL | +#endif // CYTHON_METH_FASTCALL +#if PY_VERSION_HEX >= 0x030A0000 + Py_TPFLAGS_IMMUTABLETYPE | #endif Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - 0, - (traverseproc) __Pyx_CyFunction_traverse, - (inquiry) __Pyx_CyFunction_clear, - 0, -#if PY_VERSION_HEX < 0x030500A0 - offsetof(__pyx_CyFunctionObject, func_weakreflist), -#else - offsetof(PyCFunctionObject, m_weakreflist), -#endif - 0, - 0, - __pyx_CyFunction_methods, - __pyx_CyFunction_members, - __pyx_CyFunction_getsets, - 0, - 0, - __Pyx_PyMethod_New, - 0, - offsetof(__pyx_CyFunctionObject, func_dict), - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, -#if PY_VERSION_HEX >= 0x030400a1 - 0, -#endif -#if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, -#endif -#if __PYX_NEED_TP_PRINT_SLOT - 0, -#endif -#if PY_VERSION_HEX >= 0x030C0000 - 0, -#endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, -#endif + __pyx_CyFunctionType_slots }; -#endif static int __pyx_CyFunction_init(PyObject *module) { -#if CYTHON_USE_TYPE_SPECS - __pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec(module, &__pyx_CyFunctionType_spec, NULL); -#else - CYTHON_UNUSED_VAR(module); - __pyx_CyFunctionType = __Pyx_FetchCommonType(&__pyx_CyFunctionType_type); -#endif - if (unlikely(__pyx_CyFunctionType == NULL)) { + __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); + mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec( + mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL); + if (unlikely(mstate->__pyx_CyFunctionType == NULL)) { return -1; } return 0; } -static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *func, size_t size, int pyobjects) { +static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) { __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults = PyObject_Malloc(size); + m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL); // _PyObject_New(defaults_type); if (unlikely(!m->defaults)) - return PyErr_NoMemory(); - memset(m->defaults, 0, size); - m->defaults_pyobjects = pyobjects; - m->defaults_size = size; + return NULL; return m->defaults; } static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) { @@ -11367,7 +11927,7 @@ static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, Py static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qualname, PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { PyObject *op = __Pyx_CyFunction_Init( - PyObject_GC_New(__pyx_CyFunctionObject, __pyx_CyFunctionType), + PyObject_GC_New(__pyx_CyFunctionObject, __pyx_mstate_global->__pyx_CyFunctionType), ml, flags, qualname, closure, module, globals, code ); if (likely(op)) { @@ -11386,8 +11946,8 @@ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { } if (likely(__Pyx_TypeCheck(obj, type))) return 1; - obj_type_name = __Pyx_PyType_GetName(Py_TYPE(obj)); - type_name = __Pyx_PyType_GetName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + type_name = __Pyx_PyType_GetFullyQualifiedName(type); PyErr_Format(PyExc_TypeError, "Cannot convert " __Pyx_FMT_TYPENAME " to " __Pyx_FMT_TYPENAME, obj_type_name, type_name); @@ -11397,7 +11957,7 @@ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { } /* CLineInTraceback */ -#ifndef CYTHON_CLINE_IN_TRACEBACK +#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { PyObject *use_cline; PyObject *ptype, *pvalue, *ptraceback; @@ -11405,22 +11965,26 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { PyObject **cython_runtime_dict; #endif CYTHON_MAYBE_UNUSED_VAR(tstate); - if (unlikely(!__pyx_cython_runtime)) { + if (unlikely(!__pyx_mstate_global->__pyx_cython_runtime)) { return c_line; } __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); #if CYTHON_COMPILING_IN_CPYTHON - cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_mstate_global->__pyx_cython_runtime); if (likely(cython_runtime_dict)) { + __Pyx_BEGIN_CRITICAL_SECTION(*cython_runtime_dict); __PYX_PY_DICT_LOOKUP_IF_MODIFIED( use_cline, *cython_runtime_dict, - __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) + __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback)) + Py_XINCREF(use_cline); + __Pyx_END_CRITICAL_SECTION(); } else #endif { - PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback); if (use_cline_obj) { use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_INCREF(use_cline); Py_DECREF(use_cline_obj); } else { PyErr_Clear(); @@ -11429,18 +11993,18 @@ static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { } if (!use_cline) { c_line = 0; - (void) PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + (void) PyObject_SetAttr(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False); } else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { c_line = 0; } + Py_XDECREF(use_cline); __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); return c_line; } #endif /* CodeObjectCache */ -#if !CYTHON_COMPILING_IN_LIMITED_API static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { int start = 0, mid = 0, end = count - 1; if (end >= 0 && code_line > entries[end].code_line) { @@ -11462,70 +12026,109 @@ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int co return mid + 1; } } -static PyCodeObject *__pyx_find_code_object(int code_line) { - PyCodeObject* code_object; +static __Pyx_CachedCodeObjectType *__pyx__find_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line) { + __Pyx_CachedCodeObjectType* code_object; int pos; - if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { + if (unlikely(!code_line) || unlikely(!code_cache->entries)) { return NULL; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) { return NULL; } - code_object = __pyx_code_cache.entries[pos].code_object; + code_object = code_cache->entries[pos].code_object; Py_INCREF(code_object); return code_object; } -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { +static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__find_code_object; + return NULL; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just miss. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count); + if (old_count < 0) { + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); + return NULL; + } +#endif + __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); +#endif + return result; +#endif +} +static void __pyx__insert_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line, __Pyx_CachedCodeObjectType* code_object) +{ int pos, i; - __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; + __Pyx_CodeObjectCacheEntry* entries = code_cache->entries; if (unlikely(!code_line)) { return; } if (unlikely(!entries)) { entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); if (likely(entries)) { - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = 64; - __pyx_code_cache.count = 1; + code_cache->entries = entries; + code_cache->max_count = 64; + code_cache->count = 1; entries[0].code_line = code_line; entries[0].code_object = code_object; Py_INCREF(code_object); } return; } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { - PyCodeObject* tmp = entries[pos].code_object; + pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); + if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) { + __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object; entries[pos].code_object = code_object; + Py_INCREF(code_object); Py_DECREF(tmp); return; } - if (__pyx_code_cache.count == __pyx_code_cache.max_count) { - int new_max = __pyx_code_cache.max_count + 64; + if (code_cache->count == code_cache->max_count) { + int new_max = code_cache->max_count + 64; entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); + code_cache->entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); if (unlikely(!entries)) { return; } - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = new_max; + code_cache->entries = entries; + code_cache->max_count = new_max; } - for (i=__pyx_code_cache.count; i>pos; i--) { + for (i=code_cache->count; i>pos; i--) { entries[i] = entries[i-1]; } entries[pos].code_line = code_line; entries[pos].code_object = code_object; - __pyx_code_cache.count++; + code_cache->count++; Py_INCREF(code_object); } +static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object) { +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS + (void)__pyx__insert_code_object; + return; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just fail. +#else + struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_nonatomic_int_type expected = 0; + if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) { + return; + } +#endif + __pyx__insert_code_object(code_cache, code_line, code_object); +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING + __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN); #endif +#endif +} /* AddTraceback */ #include "compile.h" #include "frameobject.h" #include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API +#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION) #ifndef Py_BUILD_CORE #define Py_BUILD_CORE 1 #endif @@ -11539,35 +12142,12 @@ static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; replace = PyObject_GetAttrString(code, "replace"); if (likely(replace)) { - PyObject *result; - result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict); + PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict); Py_DECREF(replace); return result; } PyErr_Clear(); - #if __PYX_LIMITED_VERSION_HEX < 0x030780000 - { - PyObject *compiled = NULL, *result = NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL; - compiled = Py_CompileString( - "out = type(code)(\n" - " code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n" - " code.co_flags, code.co_code, code.co_consts, code.co_names,\n" - " code.co_varnames, code.co_filename, co_name, co_firstlineno,\n" - " code.co_lnotab)\n", "", Py_file_input); - if (!compiled) return NULL; - result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict); - Py_DECREF(compiled); - if (!result) PyErr_Print(); - Py_DECREF(result); - result = PyDict_GetItemString(scratch_dict, "out"); - if (result) Py_INCREF(result); - return result; - } - #else return NULL; - #endif } static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { @@ -11580,20 +12160,26 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); } PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); - code_object = Py_CompileString("_getframe()", filename, Py_eval_input); - if (unlikely(!code_object)) goto bad; - py_py_line = PyLong_FromLong(py_line); - if (unlikely(!py_py_line)) goto bad; - py_funcname = PyUnicode_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - dict = PyDict_New(); - if (unlikely(!dict)) goto bad; - { - PyObject *old_code_object = code_object; - code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); - Py_DECREF(old_code_object); + code_object = __pyx_find_code_object(c_line ? -c_line : py_line); + if (!code_object) { + code_object = Py_CompileString("_getframe()", filename, Py_eval_input); + if (unlikely(!code_object)) goto bad; + py_py_line = PyLong_FromLong(py_line); + if (unlikely(!py_py_line)) goto bad; + py_funcname = PyUnicode_FromString(funcname); + if (unlikely(!py_funcname)) goto bad; + dict = PyDict_New(); + if (unlikely(!dict)) goto bad; + { + PyObject *old_code_object = code_object; + code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); + Py_DECREF(old_code_object); + } + if (unlikely(!code_object)) goto bad; + __pyx_insert_code_object(c_line ? -c_line : py_line, code_object); + } else { + dict = PyDict_New(); } - if (unlikely(!code_object)) goto bad; getframe = PySys_GetObject("_getframe"); if (unlikely(!getframe)) goto bad; if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; @@ -11619,58 +12205,17 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( int py_line, const char *filename) { PyCodeObject *py_code = NULL; PyObject *py_funcname = NULL; - #if PY_MAJOR_VERSION < 3 - PyObject *py_srcfile = NULL; - py_srcfile = PyString_FromString(filename); - if (!py_srcfile) goto bad; - #endif if (c_line) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - #else py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); if (!py_funcname) goto bad; funcname = PyUnicode_AsUTF8(py_funcname); if (!funcname) goto bad; - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - if (!py_funcname) goto bad; - #endif } - #if PY_MAJOR_VERSION < 3 - py_code = __Pyx_PyCode_New( - 0, - 0, - 0, - 0, - 0, - 0, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - py_line, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - Py_DECREF(py_srcfile); - #else py_code = PyCode_NewEmpty(filename, funcname, py_line); - #endif Py_XDECREF(py_funcname); return py_code; bad: Py_XDECREF(py_funcname); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_srcfile); - #endif return NULL; } static void __Pyx_AddTraceback(const char *funcname, int c_line, @@ -11701,7 +12246,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, py_frame = PyFrame_New( tstate, /*PyThreadState *tstate,*/ py_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); if (!py_frame) goto bad; @@ -11736,7 +12281,7 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, } /* CIntFromPy */ -static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) { +static CYTHON_INLINE size_t __Pyx_PyLong_As_size_t(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -11746,256 +12291,237 @@ static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(size_t) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(size_t, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (size_t) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + size_t val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (size_t) -1; + val = __Pyx_PyLong_As_size_t(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 2 * PyLong_SHIFT)) { - return (size_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) >= 2 * PyLong_SHIFT)) { + return (size_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); } - break; - case 3: - if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 3 * PyLong_SHIFT)) { - return (size_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) >= 3 * PyLong_SHIFT)) { + return (size_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); } - break; - case 4: - if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 4 * PyLong_SHIFT)) { - return (size_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) >= 4 * PyLong_SHIFT)) { + return (size_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (size_t) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (size_t) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(size_t) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(size_t) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(size_t, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(size_t) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(size_t) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(size_t, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(size_t) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(size_t) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { + return (size_t) (((size_t)-1)*(((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); } - break; - case 2: - if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - return (size_t) ((((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { + return (size_t) ((((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); } - break; - case -3: - if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { + return (size_t) (((size_t)-1)*(((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); } - break; - case 3: - if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - return (size_t) ((((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { + return (size_t) ((((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); } - break; - case -4: - if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { + return (size_t) (((size_t)-1)*(((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); } - break; - case 4: - if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { - return (size_t) ((((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { + return (size_t) ((((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(size_t) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, long, PyLong_AsLong(x)) + if ((sizeof(size_t) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(size_t, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(size_t) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(size_t) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(size_t, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + size_t val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (size_t) -1; + assert(PyLong_CheckExact(v)); } { - size_t val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (size_t) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (size_t) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (size_t) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (size_t) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (size_t) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(size_t) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((size_t) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(size_t) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((size_t) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((size_t) 1) << (sizeof(size_t) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (size_t) -1; } - return (size_t) -1; + is_negative = result == 1; } - } else { - size_t val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (size_t) -1; - val = __Pyx_PyInt_As_size_t(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (size_t) -1; + } else { + stepval = v; + } + v = NULL; + val = (size_t) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(size_t) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((size_t) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(size_t) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((size_t) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((size_t) 1) << (sizeof(size_t) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (size_t) -1; return val; } raise_overflow: @@ -12009,23 +12535,78 @@ static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) { } /* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 static __Pyx_TypeName -__Pyx_PyType_GetName(PyTypeObject* tp) +__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) { - PyObject *name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_n_s_name); - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { - PyErr_Clear(); - Py_XDECREF(name); - name = __Pyx_NewRef(__pyx_n_s__19); + PyObject *module = NULL, *name = NULL, *result = NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_qualname); + #else + name = PyType_GetQualName(tp); + #endif + if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; + module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_module); + if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; + if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { + result = name; + name = NULL; + goto done; + } + result = PyUnicode_FromFormat("%U.%U", module, name); + if (unlikely(result == NULL)) goto bad; + done: + Py_XDECREF(name); + Py_XDECREF(module); + return result; + bad: + PyErr_Clear(); + if (name) { + result = name; + name = NULL; + } else { + result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__5); + } + goto done; +} +#endif + +/* PyObjectVectorCallKwBuilder */ +#if CYTHON_VECTORCALL +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_PyObject_FastCallDict; + if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; + Py_INCREF(key); + args[n] = value; + return 0; +} +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_VectorcallBuilder_AddArgStr; + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; } - return name; + return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); +} +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + PyObject *pyKey = PyUnicode_FromString(key); + if (!pyKey) return -1; + return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); +} +#else // CYTHON_VECTORCALL +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return PyDict_SetItem(builder, key, value); } #endif /* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12037,17 +12618,17 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { const int is_unsigned = neg_one > const_zero; if (is_unsigned) { if (sizeof(long) < sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); } else if (sizeof(long) <= sizeof(unsigned long)) { return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif } } else { if (sizeof(long) <= sizeof(long)) { - return PyInt_FromLong((long) value); + return PyLong_FromLong((long) value); #ifdef HAVE_LONG_LONG } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { return PyLong_FromLongLong((PY_LONG_LONG) value); @@ -12055,31 +12636,38 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } } { - int one = 1; int little = (int)*(unsigned char *)&one; unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; return _PyLong_FromByteArray(bytes, sizeof(long), little, !is_unsigned); #else - PyObject *from_bytes, *result = NULL; - PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL; + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); if (!from_bytes) return NULL; py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); if (!py_bytes) goto limited_bad; order_str = PyUnicode_FromString(little ? "little" : "big"); if (!order_str) goto limited_bad; - arg_tuple = PyTuple_Pack(2, py_bytes, order_str); - if (!arg_tuple) goto limited_bad; - if (!is_unsigned) { - kwds = PyDict_New(); - if (!kwds) goto limited_bad; - if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); } - result = PyObject_Call(from_bytes, arg_tuple, kwds); limited_bad: Py_XDECREF(kwds); - Py_XDECREF(arg_tuple); Py_XDECREF(order_str); Py_XDECREF(py_bytes); Py_XDECREF(from_bytes); @@ -12089,7 +12677,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { } /* CIntFromPy */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12099,256 +12687,237 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(long) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (long) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + long val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (long) -1; + val = __Pyx_PyLong_As_long(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); } - break; - } + } + break; } + } #endif #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(long) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(long) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(long) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) + if ((sizeof(long) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + long val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (long) -1; + assert(PyLong_CheckExact(v)); } { - long val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (long) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (long) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (long) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (long) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((long) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (long) -1; } - return (long) -1; + is_negative = result == 1; } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (long) -1; - val = __Pyx_PyInt_As_long(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (long) -1; + } else { + stepval = v; + } + v = NULL; + val = (long) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((long) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((long) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (long) -1; return val; } raise_overflow: @@ -12362,7 +12931,7 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } /* CIntFromPy */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" @@ -12372,256 +12941,237 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { #pragma GCC diagnostic pop #endif const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if ((sizeof(int) < sizeof(long))) { - __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (int) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { + if (unlikely(!PyLong_Check(x))) { + int val; + PyObject *tmp = __Pyx_PyNumber_Long(x); + if (!tmp) return (int) -1; + val = __Pyx_PyLong_As_int(tmp); + Py_DECREF(tmp); + return val; + } + if (is_unsigned) { #if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + if (unlikely(__Pyx_PyLong_IsNeg(x))) { + goto raise_neg_overflow; + } else if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_DigitCount(x)) { + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); } - break; - } + } + break; } + } #endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 + if (unlikely(Py_SIZE(x) < 0)) { + goto raise_neg_overflow; + } #else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } #endif - if ((sizeof(int) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) + if ((sizeof(int) <= sizeof(unsigned long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) + } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) #endif - } - } else { + } + } else { #if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + if (__Pyx_PyLong_IsCompact(x)) { + __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) + } else { + const digit* digits = __Pyx_PyLong_Digits(x); + assert(__Pyx_PyLong_DigitCount(x) > 1); + switch (__Pyx_PyLong_SignedDigitCount(x)) { + case -2: + if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 2: + if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -3: + if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 3: + if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case -4: + if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } + } + break; + case 4: + if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { + if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); } - break; - } + } + break; } + } #endif - if ((sizeof(int) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) + if ((sizeof(int) <= sizeof(long))) { + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) #ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) + } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) #endif - } + } + } + { + int val; + int ret = -1; +#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API + Py_ssize_t bytes_copied = PyLong_AsNativeBytes( + x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); + if (unlikely(bytes_copied == -1)) { + } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { + goto raise_overflow; + } else { + ret = 0; + } +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); +#else + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (int) -1; + assert(PyLong_CheckExact(v)); } { - int val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); -#if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } -#endif - if (likely(v)) { - int ret = -1; -#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - long idigit; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (unlikely(!PyLong_CheckExact(v))) { - PyObject *tmp = v; - v = PyNumber_Long(v); - assert(PyLong_CheckExact(v)); - Py_DECREF(tmp); - if (unlikely(!v)) return (int) -1; - } -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(x) == 0) - return (int) 0; - is_negative = Py_SIZE(x) < 0; -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - is_negative = result == 1; - } -#endif - if (is_unsigned && unlikely(is_negative)) { - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - if (unlikely(!stepval)) - return (int) -1; - } else { - stepval = __Pyx_NewRef(v); - } - val = (int) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - if (Py_SIZE(stepval) == 0) - goto unpacking_done; - #endif - } - idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((int) idigit) << bits; - #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000 - unpacking_done: - #endif - if (!is_unsigned) { - if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { Py_DECREF(v); - if (likely(!ret)) - return val; + return (int) -1; } - return (int) -1; + is_negative = result == 1; } - } else { - int val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (int) -1; - val = __Pyx_PyInt_As_int(tmp); - Py_DECREF(tmp); + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = v; + } + v = NULL; + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((int) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); +#endif + if (unlikely(ret)) + return (int) -1; return val; } raise_overflow: @@ -12675,29 +13225,6 @@ static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, } return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b); } -#if PY_MAJOR_VERSION == 2 -static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { - PyObject *exception, *value, *tb; - int res; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&exception, &value, &tb); - res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - if (!res) { - res = PyObject_IsSubclass(err, exc_type2); - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - } - __Pyx_ErrRestore(exception, value, tb); - return res; -} -#else static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { if (exc_type1) { return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2); @@ -12705,21 +13232,15 @@ static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); } } -#endif static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { Py_ssize_t i, n; assert(PyExceptionClass_Check(exc_type)); n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 for (i=0; i= 0x030B00A4 +#if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 return Py_Version & ~0xFFUL; #else - const char* rt_version = Py_GetVersion(); - unsigned long version = 0; - unsigned long factor = 0x01000000UL; - unsigned int digit = 0; - int i = 0; - while (factor) { - while ('0' <= rt_version[i] && rt_version[i] <= '9') { - digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + static unsigned long __Pyx_cached_runtime_version = 0; + if (__Pyx_cached_runtime_version == 0) { + const char* rt_version = Py_GetVersion(); + unsigned long version = 0; + unsigned long factor = 0x01000000UL; + unsigned int digit = 0; + int i = 0; + while (factor) { + while ('0' <= rt_version[i] && rt_version[i] <= '9') { + digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); + ++i; + } + version += factor * digit; + if (rt_version[i] != '.') + break; + digit = 0; + factor >>= 8; ++i; } - version += factor * digit; - if (rt_version[i] != '.') - break; - digit = 0; - factor >>= 8; - ++i; + __Pyx_cached_runtime_version = version; } - return version; + return __Pyx_cached_runtime_version; #endif } + +/* CheckBinaryVersion */ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { const unsigned long MAJOR_MINOR = 0xFFFF0000UL; if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) @@ -12805,14 +13332,14 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s void (*fp)(void); void *p; } tmp; - d = PyObject_GetAttrString(__pyx_m, (char *)"__pyx_capi__"); + d = PyObject_GetAttrString(__pyx_m, "__pyx_capi__"); if (!d) { PyErr_Clear(); d = PyDict_New(); if (!d) goto bad; Py_INCREF(d); - if (PyModule_AddObject(__pyx_m, (char *)"__pyx_capi__", d) < 0) + if (PyModule_AddObject(__pyx_m, "__pyx_capi__", d) < 0) goto bad; } tmp.fp = f; @@ -12830,45 +13357,165 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s return -1; } -/* InitStrings */ -#if PY_MAJOR_VERSION >= 3 -static int __Pyx_InitString(__Pyx_StringTabEntry t, PyObject **str) { - if (t.is_unicode | t.is_str) { - if (t.intern) { - *str = PyUnicode_InternFromString(t.s); - } else if (t.encoding) { - *str = PyUnicode_Decode(t.s, t.n - 1, t.encoding, NULL); +/* NewCodeObj */ +#if CYTHON_COMPILING_IN_LIMITED_API + static PyObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyObject *exception_table = NULL; + PyObject *types_module=NULL, *code_type=NULL, *result=NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + PyObject *version_info; + PyObject *py_minor_version = NULL; + #endif + long minor_version = 0; + PyObject *type, *value, *traceback; + PyErr_Fetch(&type, &value, &traceback); + #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + minor_version = 11; + #else + if (!(version_info = PySys_GetObject("version_info"))) goto end; + if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; + minor_version = PyLong_AsLong(py_minor_version); + Py_DECREF(py_minor_version); + if (minor_version == -1 && PyErr_Occurred()) goto end; + #endif + if (!(types_module = PyImport_ImportModule("types"))) goto end; + if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; + if (minor_version <= 7) { + (void)p; + result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOOO", a, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); + } else if (minor_version <= 10) { + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, fline, lnos, fv, cell); } else { - *str = PyUnicode_FromStringAndSize(t.s, t.n - 1); + if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; + result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOOOO", a,p, k, l, s, f, code, + c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); } - } else { - *str = PyBytes_FromStringAndSize(t.s, t.n - 1); + end: + Py_XDECREF(code_type); + Py_XDECREF(exception_table); + Py_XDECREF(types_module); + if (type) { + PyErr_Restore(type, value, traceback); + } + return result; } - if (!*str) - return -1; - if (PyObject_Hash(*str) == -1) - return -1; - return 0; -} +#elif PY_VERSION_HEX >= 0x030B0000 + static PyCodeObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, + PyObject *code, PyObject *c, PyObject* n, PyObject *v, + PyObject *fv, PyObject *cell, PyObject* fn, + PyObject *name, int fline, PyObject *lnos) { + PyCodeObject *result; + result = + #if PY_VERSION_HEX >= 0x030C0000 + PyUnstable_Code_NewWithPosOnlyArgs + #else + PyCode_NewWithPosOnlyArgs + #endif + (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes); + return result; + } +#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#else + #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #endif -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION >= 3 - __Pyx_InitString(*t, t->p); - #else +static PyObject* __Pyx_PyCode_New( + const __Pyx_PyCode_New_function_description descr, + PyObject * const *varnames, + PyObject *filename, + PyObject *funcname, + const char *line_table, + PyObject *tuple_dedup_map +) { + PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL, *line_table_bytes = NULL; + Py_ssize_t var_count = (Py_ssize_t) descr.nlocals; + PyObject *varnames_tuple = PyTuple_New(var_count); + if (unlikely(!varnames_tuple)) return NULL; + for (Py_ssize_t i=0; i < var_count; i++) { + Py_INCREF(varnames[i]); + if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0)) goto done; + } + #if CYTHON_COMPILING_IN_LIMITED_API + varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple); + if (!varnames_tuple_dedup) { + if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0)) goto done; + varnames_tuple_dedup = varnames_tuple; + } + #else + varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple); + if (unlikely(!varnames_tuple_dedup)) goto done; + #endif + #if CYTHON_AVOID_BORROWED_REFS + Py_INCREF(varnames_tuple_dedup); + #endif + if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL + && !CYTHON_COMPILING_IN_GRAAL) { + line_table_bytes = PyBytes_FromStringAndSize(line_table, descr.line_table_length); + if (unlikely(!line_table_bytes)) goto done; + Py_ssize_t code_len = (descr.line_table_length * 2 + 4) & ~3; + code_bytes = PyBytes_FromStringAndSize(NULL, code_len); + if (unlikely(!code_bytes)) goto done; + char* c_code_bytes = PyBytes_AsString(code_bytes); + if (unlikely(!c_code_bytes)) goto done; + memset(c_code_bytes, 0, (size_t) code_len); + } + code_obj = (PyObject*) __Pyx__PyCode_New( + (int) descr.argcount, + (int) descr.num_posonly_args, + (int) descr.num_kwonly_args, + (int) descr.nlocals, + 0, + (int) descr.flags, + code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + varnames_tuple_dedup, + __pyx_mstate_global->__pyx_empty_tuple, + __pyx_mstate_global->__pyx_empty_tuple, + filename, + funcname, + (int) descr.first_line, + (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table_bytes) ? line_table_bytes : __pyx_mstate_global->__pyx_empty_bytes + ); +done: + Py_XDECREF(code_bytes); + Py_XDECREF(line_table_bytes); + #if CYTHON_AVOID_BORROWED_REFS + Py_XDECREF(varnames_tuple_dedup); + #endif + Py_DECREF(varnames_tuple); + return code_obj; +} + +/* InitStrings */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names) { + while (t->s) { + PyObject *str; if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); + if (t->intern) { + str = PyUnicode_InternFromString(t->s); + } else if (t->encoding) { + str = PyUnicode_Decode(t->s, t->n - 1, encoding_names[t->encoding], NULL); + } else { + str = PyUnicode_FromStringAndSize(t->s, t->n - 1); + } } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); + str = PyBytes_FromStringAndSize(t->s, t->n - 1); } - if (!*t->p) + if (!str) return -1; - if (PyObject_Hash(*t->p) == -1) + *target = str; + if (PyObject_Hash(str) == -1) return -1; - #endif ++t; + ++target; } return 0; } @@ -12896,31 +13543,30 @@ static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; return __Pyx_PyObject_AsStringAndSize(o, &ignore); } -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#if !CYTHON_PEP393_ENABLED -static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - char* defenc_c; - PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); - if (!defenc) return NULL; - defenc_c = PyBytes_AS_STRING(defenc); -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; +#if CYTHON_COMPILING_IN_LIMITED_API { - char* end = defenc_c + PyBytes_GET_SIZE(defenc); - char* c; - for (c = defenc_c; c < end; c++) { - if ((unsigned char) (*c) >= 128) { - PyUnicode_AsASCIIString(o); - return NULL; - } + const char* result; + Py_ssize_t unicode_length; + CYTHON_MAYBE_UNUSED_VAR(unicode_length); // only for __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + #if __PYX_LIMITED_VERSION_HEX < 0x030A0000 + if (unlikely(PyArg_Parse(o, "s#", &result, length) < 0)) return NULL; + #else + result = PyUnicode_AsUTF8AndSize(o, length); + #endif + #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + unicode_length = PyUnicode_GetLength(o); + if (unlikely(unicode_length < 0)) return NULL; + if (unlikely(unicode_length != *length)) { + PyUnicode_AsASCIIString(o); + return NULL; } + #endif + return result; } -#endif - *length = PyBytes_GET_SIZE(defenc); - return defenc_c; -} #else -static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII if (likely(PyUnicode_IS_ASCII(o))) { *length = PyUnicode_GET_LENGTH(o); @@ -12932,25 +13578,25 @@ static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py #else return PyUnicode_AsUTF8AndSize(o, length); #endif -} #endif +} #endif static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT - if ( -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - __Pyx_sys_getdefaultencoding_not_ascii && -#endif - PyUnicode_Check(o)) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 + if (PyUnicode_Check(o)) { return __Pyx_PyUnicode_AsStringAndSize(o, length); } else #endif -#if (!CYTHON_COMPILING_IN_PYPY && !CYTHON_COMPILING_IN_LIMITED_API) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) if (PyByteArray_Check(o)) { +#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))) *length = PyByteArray_GET_SIZE(o); return PyByteArray_AS_STRING(o); - } else +#else + *length = PyByteArray_Size(o); + if (*length == -1) return NULL; + return PyByteArray_AsString(o); #endif + } else { char* result; int r = PyBytes_AsStringAndSize(o, &result, length); @@ -12973,9 +13619,8 @@ static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { Py_DECREF(x); return retval; } -static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { - __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result)); -#if PY_MAJOR_VERSION >= 3 +static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) { + __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result)); if (PyLong_Check(result)) { if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, "__int__ returned non-int (type " __Pyx_FMT_TYPENAME "). " @@ -12989,74 +13634,44 @@ static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const __Pyx_DECREF_TypeName(result_type_name); return result; } -#endif PyErr_Format(PyExc_TypeError, - "__%.4s__ returned non-%.4s (type " __Pyx_FMT_TYPENAME ")", - type_name, type_name, result_type_name); + "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ")", + result_type_name); __Pyx_DECREF_TypeName(result_type_name); Py_DECREF(result); return NULL; } -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) { #if CYTHON_USE_TYPE_SLOTS PyNumberMethods *m; #endif - const char *name = NULL; PyObject *res = NULL; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x) || PyLong_Check(x))) -#else if (likely(PyLong_Check(x))) -#endif - return __Pyx_NewRef(x); + return __Pyx_NewRef(x); #if CYTHON_USE_TYPE_SLOTS m = Py_TYPE(x)->tp_as_number; - #if PY_MAJOR_VERSION < 3 - if (m && m->nb_int) { - name = "int"; - res = m->nb_int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = m->nb_long(x); - } - #else if (likely(m && m->nb_int)) { - name = "int"; - res = m->nb_int(x); + res = m->nb_int(x); } - #endif #else if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { - res = PyNumber_Int(x); + res = PyNumber_Long(x); } #endif if (likely(res)) { -#if PY_MAJOR_VERSION < 3 - if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { -#else - if (unlikely(!PyLong_CheckExact(res))) { -#endif - return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); - } + if (unlikely(!PyLong_CheckExact(res))) { + return __Pyx_PyNumber_LongWrongResultType(res); + } } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); + PyErr_SetString(PyExc_TypeError, + "an integer is required"); } return res; } static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; PyObject *x; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(b))) { - if (sizeof(Py_ssize_t) >= sizeof(long)) - return PyInt_AS_LONG(b); - else - return PyInt_AsSsize_t(b); - } -#endif if (likely(PyLong_CheckExact(b))) { #if CYTHON_USE_PYLONG_INTERNALS if (likely(__Pyx_PyLong_IsCompact(b))) { @@ -13102,34 +13717,349 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { } x = PyNumber_Index(b); if (!x) return -1; - ival = PyInt_AsSsize_t(x); + ival = PyLong_AsSsize_t(x); Py_DECREF(x); return ival; } static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) { if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) { return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o); -#if PY_MAJOR_VERSION < 3 - } else if (likely(PyInt_CheckExact(o))) { - return PyInt_AS_LONG(o); -#endif } else { Py_ssize_t ival; PyObject *x; x = PyNumber_Index(o); if (!x) return -1; - ival = PyInt_AsLong(x); + ival = PyLong_AsLong(x); Py_DECREF(x); return ival; } } +static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b) { + CYTHON_UNUSED_VAR(b); + return __Pyx_NewRef(Py_None); +} static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); } -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { - return PyInt_FromSize_t(ival); +static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t ival) { + return PyLong_FromSize_t(ival); +} + + +/* MultiPhaseInitModuleState */ +#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE +#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000) + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1 +#else + #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0 +#endif +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS +#error "Module state with PEP489 requires atomics. Currently that's one of\ + C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics" +#endif +#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +#define __Pyx_ModuleStateLookup_Lock() +#define __Pyx_ModuleStateLookup_Unlock() +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000 +static PyMutex __Pyx_ModuleStateLookup_mutex = {0}; +#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(__cplusplus) && __cplusplus >= 201103L +#include +static std::mutex __Pyx_ModuleStateLookup_mutex; +#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock() +#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock() +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__) +#include +static mtx_t __Pyx_ModuleStateLookup_mutex; +static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT; +static void __Pyx_ModuleStateLookup_initialize_mutex(void) { + mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain); +} +#define __Pyx_ModuleStateLookup_Lock()\ + call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\ + mtx_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(HAVE_PTHREAD_H) +#include +static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER; +#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex) +#elif defined(_WIN32) +#include // synchapi.h on its own doesn't work +static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT; +#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) +#else +#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\ + Requires C standard >= C11, or C++ standard >= C++11,\ + or pthreads, or the Windows 32 API, or Python >= 3.13." +#endif +typedef struct { + int64_t id; + PyObject *module; +} __Pyx_InterpreterIdAndModule; +typedef struct { + char interpreter_id_as_index; + Py_ssize_t count; + Py_ssize_t allocated; + __Pyx_InterpreterIdAndModule table[1]; +} __Pyx_ModuleStateLookupData; +#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32 +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0; +#endif +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0; +#else +static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL; +#endif +static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound( + __Pyx_InterpreterIdAndModule* table, + Py_ssize_t count, + int64_t interpreterId) { + __Pyx_InterpreterIdAndModule* begin = table; + __Pyx_InterpreterIdAndModule* end = begin + count; + if (begin->id == interpreterId) { + return begin; + } + while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2; + if (halfway->id == interpreterId) { + return halfway; + } + if (halfway->id < interpreterId) { + begin = halfway; + } else { + end = halfway; + } + } + for (; begin < end; ++begin) { + if (begin->id >= interpreterId) return begin; + } + return begin; +} +static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return NULL; +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + { + __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + if (likely(data)) { + __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data); + if (likely(data == new_data)) { + goto read_finished; + } + } + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); + __Pyx_ModuleStateLookup_Lock(); + __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter); + data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); + __Pyx_ModuleStateLookup_Unlock(); + } + read_finished:; +#else + __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_InterpreterIdAndModule* found = NULL; + if (unlikely(!data)) goto end; + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + found = data->table+interpreter_id; + } + } else { + found = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + } + end: + { + PyObject *result=NULL; + if (found && found->id == interpreter_id) { + result = found->module; + } +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); +#endif + return result; + } +} +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE +static void __Pyx_ModuleStateLookup_wait_until_no_readers(void) { + while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0); } - +#else +#define __Pyx_ModuleStateLookup_wait_until_no_readers() +#endif +static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) { + Py_ssize_t to_allocate = (*old_data)->allocated; + while (to_allocate <= interpreter_id) { + if (to_allocate == 0) to_allocate = 1; + else to_allocate *= 2; + } + __Pyx_ModuleStateLookupData *new_data = *old_data; + if (to_allocate != (*old_data)->allocated) { + new_data = (__Pyx_ModuleStateLookupData *)realloc( + *old_data, + sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + PyErr_NoMemory(); + return -1; + } + for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) { + new_data->table[i].id = i; + new_data->table[i].module = NULL; + } + new_data->allocated = to_allocate; + } + new_data->table[interpreter_id].module = module; + if (new_data->count < interpreter_id+1) { + new_data->count = interpreter_id+1; + } + *old_data = new_data; + return 0; +} +static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) { + __Pyx_InterpreterIdAndModule *read = data->table; + __Pyx_InterpreterIdAndModule *write = data->table; + __Pyx_InterpreterIdAndModule *end = read + data->count; + for (; readmodule) { + write->id = read->id; + write->module = read->module; + ++write; + } + } + data->count = write - data->table; + for (; writeid = 0; + write->module = NULL; + } + data->interpreter_id_as_index = 0; +} +static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + int result = 0; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data; +#endif + __Pyx_ModuleStateLookupData *new_data = old_data; + if (!new_data) { + new_data = (__Pyx_ModuleStateLookupData *)calloc(1, sizeof(__Pyx_ModuleStateLookupData)); + if (!new_data) { + result = -1; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = 1; + new_data->interpreter_id_as_index = 1; + } + __Pyx_ModuleStateLookup_wait_until_no_readers(); + if (new_data->interpreter_id_as_index) { + if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { + result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id); + goto end; + } + __Pyx_State_ConvertFromInterpIdAsIndex(new_data); + } + { + Py_ssize_t insert_at = 0; + { + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + new_data->table, new_data->count, interpreter_id); + assert(lower_bound); + insert_at = lower_bound - new_data->table; + if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) { + lower_bound->module = module; + goto end; // already in table, nothing more to do + } + } + if (new_data->count+1 >= new_data->allocated) { + Py_ssize_t to_allocate = (new_data->count+1)*2; + new_data = + (__Pyx_ModuleStateLookupData*)realloc( + new_data, + sizeof(__Pyx_ModuleStateLookupData) + + (to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); + if (!new_data) { + result = -1; + new_data = old_data; + PyErr_NoMemory(); + goto end; + } + new_data->allocated = to_allocate; + } + ++new_data->count; + int64_t last_id = interpreter_id; + PyObject *last_module = module; + for (Py_ssize_t i=insert_at; icount; ++i) { + int64_t current_id = new_data->table[i].id; + new_data->table[i].id = last_id; + last_id = current_id; + PyObject *current_module = new_data->table[i].module; + new_data->table[i].module = last_module; + last_module = current_module; + } + } + end: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data); +#else + __Pyx_ModuleStateLookup_data = new_data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return result; +} +static int __Pyx_State_RemoveModule(CYTHON_UNUSED void* dummy) { + int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); + if (interpreter_id == -1) return -1; + __Pyx_ModuleStateLookup_Lock(); +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *) + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); +#else + __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data; +#endif + if (data->interpreter_id_as_index) { + if (interpreter_id < data->count) { + data->table[interpreter_id].module = NULL; + } + goto done; + } + { + __Pyx_ModuleStateLookup_wait_until_no_readers(); + __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( + data->table, data->count, interpreter_id); + if (!lower_bound) goto done; + if (lower_bound->id != interpreter_id) goto done; + __Pyx_InterpreterIdAndModule *end = data->table+data->count; + for (;lower_boundid = (lower_bound+1)->id; + lower_bound->module = (lower_bound+1)->module; + } + } + --data->count; + if (data->count == 0) { + free(data); + data = NULL; + } + done: +#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE + __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data); +#else + __Pyx_ModuleStateLookup_data = data; +#endif + __Pyx_ModuleStateLookup_Unlock(); + return 0; +} +#endif /* #### Code section: utility_code_pragmas_end ### */ #ifdef _MSC_VER diff --git a/tests/test_cookbook.py b/tests/test_cookbook.py index 18845a8..69218af 100644 --- a/tests/test_cookbook.py +++ b/tests/test_cookbook.py @@ -136,7 +136,7 @@ def __call__(self, event): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, fixme", + reason='broken on 3.12, fixme', ) @pytest.mark.parametrize( 'options', @@ -170,7 +170,7 @@ def test_profile(LineMatcher, options): 'sample8errors.error raised exception: None. Duration: ?.????s', 'sample8errors.silenced1 returned: None. Duration: ?.????s', 'sample8errors.error raised exception: None. Duration: ?.????s', - 'sample8errors.silenced3 returned: \'mwhahaha\'. Duration: ?.????s', + "sample8errors.silenced3 returned: 'mwhahaha'. Duration: ?.????s", 'sample8errors.error raised exception: None. Duration: ?.????s', '.repr raised exception: None. Duration: ?.????s', 'sample8errors.silenced4 returned: None. Duration: ?.????s', @@ -184,7 +184,7 @@ def test_profile(LineMatcher, options): 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', 'sample8errors.silenced1 returned: None. Duration: ?.????s', 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', - 'sample8errors.silenced3 returned: \'mwhahaha\'. Duration: ?.????s', + "sample8errors.silenced3 returned: 'mwhahaha'. Duration: ?.????s", 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', 'sample8errors.silenced4 returned: None. Duration: ?.????s', 'sample8errors.error raised exception: (*RuntimeError*, *). Duration: ?.????s', diff --git a/tests/test_integration.py b/tests/test_integration.py index f14ed27..3095873 100644 --- a/tests/test_integration.py +++ b/tests/test_integration.py @@ -438,7 +438,7 @@ def a(): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, fixme", + reason='broken on 3.12, fixme', ) def test_errorsnooper(LineMatcher): lines = StringIO() @@ -556,7 +556,7 @@ def a(): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, fixme", + reason='broken on 3.12, fixme', ) def test_errorsnooper_fastmode(LineMatcher): lines = StringIO() @@ -807,14 +807,17 @@ def test_backlog_subprocess(LineMatcher): ) @pytest.mark.parametrize('mode', ['postmortem', 'settrace', 'debugger']) def test_pdb(LineMatcher, pdb, mode): - with TestProcess( - sys.executable, - '-msamplepdb', - pdb, - mode, - bufsize=0, - stdin=subprocess.PIPE, - ) as target, dump_on_error(target.read): + with ( + TestProcess( + sys.executable, + '-msamplepdb', + pdb, + mode, + bufsize=0, + stdin=subprocess.PIPE, + ) as target, + dump_on_error(target.read), + ): wait_for_strings(target.read, TIMEOUT, '-> ') target.proc.stdin.write('c\n') output = target.read() diff --git a/tests/test_tracer.py b/tests/test_tracer.py index 5a6e6db..26a87e1 100644 --- a/tests/test_tracer.py +++ b/tests/test_tracer.py @@ -844,7 +844,7 @@ def foo(): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, see https://github.com/cython/cython/issues/5470", + reason='broken on 3.12, see https://github.com/cython/cython/issues/5470', ) def test_source_cython(LineMatcher): pytest.importorskip('sample5') @@ -889,7 +889,7 @@ def foo(): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, see https://github.com/cython/cython/issues/5470", + reason='broken on 3.12, see https://github.com/cython/cython/issues/5470', ) def test_fullsource_cython(LineMatcher): pytest.importorskip('sample5') @@ -1541,7 +1541,7 @@ def a(): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, fixme", + reason='broken on 3.12, fixme', ) def test_errorsnooper(LineMatcher): lines = StringIO() @@ -1658,7 +1658,7 @@ def a(): @pytest.mark.xfail( sys.version_info.major == 3 and sys.version_info.minor == 12, - reason="broken on 3.12, fixme", + reason='broken on 3.12, fixme', ) def test_errorsnooper_fastmode(LineMatcher): lines = StringIO() diff --git a/tests/test_util.py b/tests/test_util.py index 1ea033f..b2d74f5 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -144,10 +144,10 @@ def test_safe_repr(): def test_safe_repr_zoneinfo(): - zoneinfo = pytest.importorskip("zoneinfo") + zoneinfo = pytest.importorskip('zoneinfo') assert ( safe_repr(datetime(2000, 2, 2, tzinfo=zoneinfo.ZoneInfo('Europe/Bucharest'))) - == f"datetime(2000, 2, 2, 0, 0, 0, 0, tzinfo={repr(zoneinfo.ZoneInfo('Europe/Bucharest'))}, fold=0)" + == f'datetime(2000, 2, 2, 0, 0, 0, 0, tzinfo={repr(zoneinfo.ZoneInfo("Europe/Bucharest"))}, fold=0)' ) diff --git a/tox.ini b/tox.ini index b874122..0c3590b 100644 --- a/tox.ini +++ b/tox.ini @@ -14,20 +14,19 @@ envlist = clean, check, docs, - {py38,py39,py310,py311,py312,pypy38,pypy39,pypy310}-{pure,cython}-{cover,nocov}, + {py39,py310,py311,py312,py313,pypy39,pypy310}-{pure,cython}-{cover,nocov}, report ignore_basepython_conflict = true [testenv] basepython = - pypy38: {env:TOXPYTHON:pypy3.8} pypy39: {env:TOXPYTHON:pypy3.9} pypy310: {env:TOXPYTHON:pypy3.10} - py38: {env:TOXPYTHON:python3.8} py39: {env:TOXPYTHON:python3.9} py310: {env:TOXPYTHON:python3.10} py311: {env:TOXPYTHON:python3.11} py312: {env:TOXPYTHON:python3.12} + py313: {env:TOXPYTHON:python3.13} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests @@ -38,11 +37,14 @@ setenv = cover: SETUPPY_EXT_COVERAGE=yes passenv = * +usedevelop = + cover: true + nocov: false deps = pytest pytest-benchmark cover: pytest-cov - cython==3.0.10 + cython manhole process-tests setuptools-scm @@ -52,14 +54,11 @@ deps = tzdata ipdb commands = - {py38,py39,py310,py311,py312}: python tests/setup.py clean --all - {py38,py39,py310,py311,py312}: python tests/setup.py build_ext --force --inplace + {py38,py39,py310,py311,py312,py313}: python tests/setup.py clean --all + {py38,py39,py310,py311,py312,py313}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} -usedevelop = - nocov: false - cover: true [testenv:check] deps = @@ -75,47 +74,29 @@ commands = pre-commit run --all-files --show-diff-on-failure [testenv:cythonize] -basepython = {env:TOXPYTHON:python} +basepython = {env:TOXPYTHON:python3.13} pip_pre = true deps = - cython==3.0.10 + cython + setuptools skip_install = true commands = {posargs:python setup.py clean --all build_ext --force} -[testenv:spell] -setenv = - SPELLCHECK=1 -commands = - sphinx-build -b spelling docs dist/docs -skip_install = true -deps = - -r{toxinidir}/docs/requirements.txt - sphinxcontrib-spelling - pyenchant - [testenv:docs] usedevelop = true +install_command = + python -m pip install --no-use-pep517 {opts} {packages} deps = -r{toxinidir}/docs/requirements.txt commands = sphinx-build {posargs:-E} -b html docs dist/docs sphinx-build -b linkcheck docs dist/docs -[testenv:codecov] -deps = - codecov - cython==3.0.10 -skip_install = true -setenv = - PYTHONPATH={toxinidir}/src -commands = - codecov [] - [testenv:report] deps = coverage - cython==3.0.10 + cython skip_install = true setenv = PYTHONPATH={toxinidir}/src @@ -124,8 +105,11 @@ commands = coverage html [testenv:clean] -commands = coverage erase +commands = + python setup.py clean + coverage erase skip_install = true deps = + setuptools coverage - cython==3.0.10 + cython From 24124665c80f22bcff216c845ee33cdf0f8d0630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Mon, 7 Jul 2025 15:04:19 +0300 Subject: [PATCH 28/80] WIP --- pyproject.toml | 7 +++++-- tests/eviltracer.pxd | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index b5664c9..f99d09a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,8 +4,11 @@ requires = [ "wheel", "setuptools_scm>=3.3.1,!=4.0.0", ] -build-backend = "backend" -backend-path = ["build_backend"] +build-backend = "setuptools.build_meta" +#build-backend = "backend" +#backend-path = ["build_backend"] + +[tool.setuptools_scm] [tool.ruff] extend-exclude = ["static", "ci/templates"] diff --git a/tests/eviltracer.pxd b/tests/eviltracer.pxd index c45735e..2fe9e11 100644 --- a/tests/eviltracer.pxd +++ b/tests/eviltracer.pxd @@ -5,6 +5,7 @@ cimport cython cdef extern from "vendor/_compat.h": """ #if PY_VERSION_HEX >= 0x030B00A7 + #define Py_BUILD_CORE #include "internal/pycore_frame.h" #endif """ From 403cf021fa32ed8554716b0bfa8f3c39aed795b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 8 Jul 2025 08:20:45 +0300 Subject: [PATCH 29/80] Replace that cymem thing with something simpler. --- src/hunter/_event.pyx | 28 +- src/hunter/vendor/_cymem/__init__.pxd | 0 src/hunter/vendor/_cymem/__init__.py | 1 - src/hunter/vendor/_cymem/about.py | 7 - src/hunter/vendor/_cymem/cymem.c | 14072 ------------------------ src/hunter/vendor/_cymem/cymem.pxd | 32 - src/hunter/vendor/_cymem/cymem.pyx | 151 - 7 files changed, 15 insertions(+), 14276 deletions(-) delete mode 100644 src/hunter/vendor/_cymem/__init__.pxd delete mode 100644 src/hunter/vendor/_cymem/__init__.py delete mode 100644 src/hunter/vendor/_cymem/about.py delete mode 100644 src/hunter/vendor/_cymem/cymem.c delete mode 100644 src/hunter/vendor/_cymem/cymem.pxd delete mode 100644 src/hunter/vendor/_cymem/cymem.pyx diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index 6689426..0ce5a84 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -10,12 +10,10 @@ from tokenize import TokenError from tokenize import generate_tokens from cpython.pythread cimport PyThread_get_thread_ident -from cpython.ref cimport Py_XINCREF from cpython.ref cimport PyObject from cython cimport auto_pickle from ._tracer cimport Tracer -from .vendor._cymem.cymem cimport Pool from .const import SITE_PACKAGES_PATHS from .const import SYS_PREFIX_PATHS @@ -30,17 +28,21 @@ __all__ = 'Event', cdef object UNSET = object() -cdef Pool mem = Pool() -cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) - -cdef inline PyObject** make_kind_names(list strings): - cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) - cdef object name - for i, string in enumerate(strings): - name = intern(string) - Py_XINCREF( name) - array[i] = name - return array + +cdef str CALL = 'call' +cdef str EXCEPTION = 'exception' +cdef str LINE = 'line' +cdef str RETURN = 'return' + +cdef const PyObject** KIND_NAMES = [ + CALL, + EXCEPTION, + LINE, + RETURN, + CALL, + EXCEPTION, + RETURN, +] @auto_pickle(False) diff --git a/src/hunter/vendor/_cymem/__init__.pxd b/src/hunter/vendor/_cymem/__init__.pxd deleted file mode 100644 index e69de29..0000000 diff --git a/src/hunter/vendor/_cymem/__init__.py b/src/hunter/vendor/_cymem/__init__.py deleted file mode 100644 index a550144..0000000 --- a/src/hunter/vendor/_cymem/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from .about import * diff --git a/src/hunter/vendor/_cymem/about.py b/src/hunter/vendor/_cymem/about.py deleted file mode 100644 index 7de9dc1..0000000 --- a/src/hunter/vendor/_cymem/about.py +++ /dev/null @@ -1,7 +0,0 @@ -__title__ = "cymem" -__version__ = "2.0.3" -__summary__ = "Manage calls to calloc/free through Cython" -__uri__ = "https://github.com/explosion/cymem" -__author__ = "Matthew Honnibal" -__email__ = "matt@explosion.ai" -__license__ = "MIT" diff --git a/src/hunter/vendor/_cymem/cymem.c b/src/hunter/vendor/_cymem/cymem.c deleted file mode 100644 index 6571284..0000000 --- a/src/hunter/vendor/_cymem/cymem.c +++ /dev/null @@ -1,14072 +0,0 @@ -/* Generated by Cython 3.1.2 */ - -/* BEGIN: Cython Metadata -{ - "distutils": { - "depends": [], - "include_dirs": [ - "src/hunter/vendor/_cymem" - ], - "name": "hunter.vendor._cymem.cymem", - "sources": [ - "src/hunter/vendor/_cymem/cymem.pyx" - ] - }, - "module_name": "hunter.vendor._cymem.cymem" -} -END: Cython Metadata */ - -#ifndef PY_SSIZE_T_CLEAN -#define PY_SSIZE_T_CLEAN -#endif /* PY_SSIZE_T_CLEAN */ -/* InitLimitedAPI */ -#if defined(Py_LIMITED_API) && !defined(CYTHON_LIMITED_API) - #define CYTHON_LIMITED_API 1 -#endif - -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x03080000 - #error Cython requires Python 3.8+. -#else -#define __PYX_ABI_VERSION "3_1_2" -#define CYTHON_HEX_VERSION 0x030102F0 -#define CYTHON_FUTURE_DIVISION 1 -/* CModulePreamble */ -#include -#ifndef offsetof - #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif -#if !defined(_WIN32) && !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif -#define __PYX_COMMA , -#ifndef HAVE_LONG_LONG - #define HAVE_LONG_LONG -#endif -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif -#ifndef Py_HUGE_VAL - #define Py_HUGE_VAL HUGE_VAL -#endif -#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX -#if defined(GRAALVM_PYTHON) - /* For very preliminary testing purposes. Most variables are set the same as PyPy. - The existence of this section does not imply that anything works or is even tested */ - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 1 - #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 - #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #undef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 0 - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #undef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 1 - #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 - #undef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 0 - #undef CYTHON_ASSUME_SAFE_SIZE - #define CYTHON_ASSUME_SAFE_SIZE 0 - #undef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 0 - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 1 - #undef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 0 - #undef CYTHON_USE_SYS_MONITORING - #define CYTHON_USE_SYS_MONITORING 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #undef CYTHON_USE_AM_SEND - #define CYTHON_USE_AM_SEND 0 - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 1 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#elif defined(PYPY_VERSION) - #define CYTHON_COMPILING_IN_PYPY 1 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 - #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #ifndef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #endif - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #undef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 0 - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #undef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 1 - #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 - #undef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 0 - #ifndef CYTHON_ASSUME_SAFE_SIZE - #define CYTHON_ASSUME_SAFE_SIZE 1 - #endif - #undef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 0 - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #if PY_VERSION_HEX < 0x03090000 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT) - #define CYTHON_PEP489_MULTI_PHASE_INIT 1 - #endif - #undef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 0 - #undef CYTHON_USE_SYS_MONITORING - #define CYTHON_USE_SYS_MONITORING 0 - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00) - #endif - #undef CYTHON_USE_AM_SEND - #define CYTHON_USE_AM_SEND 0 - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100) - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#elif defined(CYTHON_LIMITED_API) - #ifdef Py_LIMITED_API - #undef __PYX_LIMITED_VERSION_HEX - #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API - #endif - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #define CYTHON_COMPILING_IN_LIMITED_API 1 - #define CYTHON_COMPILING_IN_GRAAL 0 - #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 - #undef CYTHON_CLINE_IN_TRACEBACK - #define CYTHON_CLINE_IN_TRACEBACK 0 - #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 1 - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #undef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 0 - #ifndef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #endif - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 - #endif - #undef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 0 - #undef CYTHON_ASSUME_SAFE_SIZE - #define CYTHON_ASSUME_SAFE_SIZE 0 - #undef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 0 - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #undef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #ifndef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 1 - #endif - #ifndef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 0 - #endif - #undef CYTHON_USE_SYS_MONITORING - #define CYTHON_USE_SYS_MONITORING 0 - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #endif - #ifndef CYTHON_USE_AM_SEND - #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000) - #endif - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif - #undef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS 0 -#else - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_CPYTHON 1 - #define CYTHON_COMPILING_IN_LIMITED_API 0 - #define CYTHON_COMPILING_IN_GRAAL 0 - #ifdef Py_GIL_DISABLED - #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1 - #else - #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0 - #endif - #if PY_VERSION_HEX < 0x030A0000 - #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #elif !defined(CYTHON_USE_TYPE_SLOTS) - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #ifndef CYTHON_USE_TYPE_SPECS - #define CYTHON_USE_TYPE_SPECS 0 - #endif - #ifndef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 1 - #endif - #ifndef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 1 - #endif - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #elif !defined(CYTHON_USE_PYLIST_INTERNALS) - #define CYTHON_USE_PYLIST_INTERNALS 1 - #endif - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2 - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #elif !defined(CYTHON_USE_UNICODE_WRITER) - #define CYTHON_USE_UNICODE_WRITER 1 - #endif - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1 - #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS) - #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_ASSUME_SAFE_SIZE - #define CYTHON_ASSUME_SAFE_SIZE 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #ifndef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 1 - #endif - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - #undef CYTHON_FAST_GIL - #define CYTHON_FAST_GIL 0 - #elif !defined(CYTHON_FAST_GIL) - #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6) - #endif - #ifndef CYTHON_METH_FASTCALL - #define CYTHON_METH_FASTCALL 1 - #endif - #ifndef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 1 - #endif - #ifndef CYTHON_PEP487_INIT_SUBCLASS - #define CYTHON_PEP487_INIT_SUBCLASS 1 - #endif - #ifndef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 1 - #endif - #ifndef CYTHON_USE_MODULE_STATE - #define CYTHON_USE_MODULE_STATE 0 - #endif - #ifndef CYTHON_USE_SYS_MONITORING - #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1) - #endif - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 1 - #endif - #ifndef CYTHON_USE_AM_SEND - #define CYTHON_USE_AM_SEND 1 - #endif - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #elif !defined(CYTHON_USE_DICT_VERSIONS) - #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE) - #endif - #ifndef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 1 - #endif - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 - #endif - #ifndef CYTHON_USE_FREELISTS - #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING) - #endif -#endif -#ifndef CYTHON_FAST_PYCCALL -#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCALL -#endif -#ifndef CYTHON_VECTORCALL -#if CYTHON_COMPILING_IN_LIMITED_API -#define CYTHON_VECTORCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000) -#else -#define CYTHON_VECTORCALL (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1) -#endif -#endif -#define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1) -#if CYTHON_USE_PYLONG_INTERNALS - #undef SHIFT - #undef BASE - #undef MASK - #ifdef SIZEOF_VOID_P - enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; - #endif -#endif -#ifndef __has_attribute - #define __has_attribute(x) 0 -#endif -#ifndef __has_cpp_attribute - #define __has_cpp_attribute(x) 0 -#endif -#ifndef CYTHON_RESTRICT - #if defined(__GNUC__) - #define CYTHON_RESTRICT __restrict__ - #elif defined(_MSC_VER) && _MSC_VER >= 1400 - #define CYTHON_RESTRICT __restrict - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_RESTRICT restrict - #else - #define CYTHON_RESTRICT - #endif -#endif -#ifndef CYTHON_UNUSED - #if defined(__cplusplus) - /* for clang __has_cpp_attribute(maybe_unused) is true even before C++17 - * but leads to warnings with -pedantic, since it is a C++17 feature */ - #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L) - #if __has_cpp_attribute(maybe_unused) - #define CYTHON_UNUSED [[maybe_unused]] - #endif - #endif - #endif -#endif -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif -#ifndef CYTHON_UNUSED_VAR -# if defined(__cplusplus) - template void CYTHON_UNUSED_VAR( const T& ) { } -# else -# define CYTHON_UNUSED_VAR(x) (void)(x) -# endif -#endif -#ifndef CYTHON_MAYBE_UNUSED_VAR - #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x) -#endif -#ifndef CYTHON_NCP_UNUSED -# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING -# define CYTHON_NCP_UNUSED -# else -# define CYTHON_NCP_UNUSED CYTHON_UNUSED -# endif -#endif -#ifndef CYTHON_USE_CPP_STD_MOVE - #if defined(__cplusplus) && (\ - __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600)) - #define CYTHON_USE_CPP_STD_MOVE 1 - #else - #define CYTHON_USE_CPP_STD_MOVE 0 - #endif -#endif -#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) -#ifdef _MSC_VER - #ifndef _MSC_STDINT_H_ - #if _MSC_VER < 1300 - typedef unsigned char uint8_t; - typedef unsigned short uint16_t; - typedef unsigned int uint32_t; - #else - typedef unsigned __int8 uint8_t; - typedef unsigned __int16 uint16_t; - typedef unsigned __int32 uint32_t; - #endif - #endif - #if _MSC_VER < 1300 - #ifdef _WIN64 - typedef unsigned long long __pyx_uintptr_t; - #else - typedef unsigned int __pyx_uintptr_t; - #endif - #else - #ifdef _WIN64 - typedef unsigned __int64 __pyx_uintptr_t; - #else - typedef unsigned __int32 __pyx_uintptr_t; - #endif - #endif -#else - #include - typedef uintptr_t __pyx_uintptr_t; -#endif -#ifndef CYTHON_FALLTHROUGH - #if defined(__cplusplus) - /* for clang __has_cpp_attribute(fallthrough) is true even before C++17 - * but leads to warnings with -pedantic, since it is a C++17 feature */ - #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L) - #if __has_cpp_attribute(fallthrough) - #define CYTHON_FALLTHROUGH [[fallthrough]] - #endif - #endif - #ifndef CYTHON_FALLTHROUGH - #if __has_cpp_attribute(clang::fallthrough) - #define CYTHON_FALLTHROUGH [[clang::fallthrough]] - #elif __has_cpp_attribute(gnu::fallthrough) - #define CYTHON_FALLTHROUGH [[gnu::fallthrough]] - #endif - #endif - #endif - #ifndef CYTHON_FALLTHROUGH - #if __has_attribute(fallthrough) - #define CYTHON_FALLTHROUGH __attribute__((fallthrough)) - #else - #define CYTHON_FALLTHROUGH - #endif - #endif - #if defined(__clang__) && defined(__apple_build_version__) - #if __apple_build_version__ < 7000000 - #undef CYTHON_FALLTHROUGH - #define CYTHON_FALLTHROUGH - #endif - #endif -#endif -#ifndef Py_UNREACHABLE - #define Py_UNREACHABLE() assert(0); abort() -#endif -#ifdef __cplusplus - template - struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);}; - #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL::value) -#else - #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0) -#endif -#if CYTHON_COMPILING_IN_PYPY == 1 - #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000) -#else - #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000) -#endif -#define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer)) - -/* CInitCode */ -#ifndef CYTHON_INLINE - #if defined(__clang__) - #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) - #elif defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* PythonCompatibility */ -#define __PYX_BUILD_PY_SSIZE_T "n" -#define CYTHON_FORMAT_SSIZE_T "z" -#define __Pyx_BUILTIN_MODULE_NAME "builtins" -#define __Pyx_DefaultClassType PyType_Type -#if CYTHON_COMPILING_IN_LIMITED_API - #ifndef CO_OPTIMIZED - static int CO_OPTIMIZED; - #endif - #ifndef CO_NEWLOCALS - static int CO_NEWLOCALS; - #endif - #ifndef CO_VARARGS - static int CO_VARARGS; - #endif - #ifndef CO_VARKEYWORDS - static int CO_VARKEYWORDS; - #endif - #ifndef CO_ASYNC_GENERATOR - static int CO_ASYNC_GENERATOR; - #endif - #ifndef CO_GENERATOR - static int CO_GENERATOR; - #endif - #ifndef CO_COROUTINE - static int CO_COROUTINE; - #endif -#else - #ifndef CO_COROUTINE - #define CO_COROUTINE 0x80 - #endif - #ifndef CO_ASYNC_GENERATOR - #define CO_ASYNC_GENERATOR 0x200 - #endif -#endif -static int __Pyx_init_co_variables(void); -#if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE) - #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type) -#else - #define __Pyx_IS_TYPE(ob, type) (((const PyObject*)ob)->ob_type == (type)) -#endif -#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_Is) - #define __Pyx_Py_Is(x, y) Py_Is(x, y) -#else - #define __Pyx_Py_Is(x, y) ((x) == (y)) -#endif -#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsNone) - #define __Pyx_Py_IsNone(ob) Py_IsNone(ob) -#else - #define __Pyx_Py_IsNone(ob) __Pyx_Py_Is((ob), Py_None) -#endif -#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsTrue) - #define __Pyx_Py_IsTrue(ob) Py_IsTrue(ob) -#else - #define __Pyx_Py_IsTrue(ob) __Pyx_Py_Is((ob), Py_True) -#endif -#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsFalse) - #define __Pyx_Py_IsFalse(ob) Py_IsFalse(ob) -#else - #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False) -#endif -#define __Pyx_NoneAsNull(obj) (__Pyx_Py_IsNone(obj) ? NULL : (obj)) -#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o) -#else - #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o) -#endif -#ifndef Py_TPFLAGS_CHECKTYPES - #define Py_TPFLAGS_CHECKTYPES 0 -#endif -#ifndef Py_TPFLAGS_HAVE_INDEX - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif -#ifndef Py_TPFLAGS_HAVE_NEWBUFFER - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif -#ifndef Py_TPFLAGS_HAVE_FINALIZE - #define Py_TPFLAGS_HAVE_FINALIZE 0 -#endif -#ifndef Py_TPFLAGS_SEQUENCE - #define Py_TPFLAGS_SEQUENCE 0 -#endif -#ifndef Py_TPFLAGS_MAPPING - #define Py_TPFLAGS_MAPPING 0 -#endif -#ifndef METH_STACKLESS - #define METH_STACKLESS 0 -#endif -#ifndef METH_FASTCALL - #ifndef METH_FASTCALL - #define METH_FASTCALL 0x80 - #endif - typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs); - typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, - Py_ssize_t nargs, PyObject *kwnames); -#else - #if PY_VERSION_HEX >= 0x030d00A4 - # define __Pyx_PyCFunctionFast PyCFunctionFast - # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords - #else - # define __Pyx_PyCFunctionFast _PyCFunctionFast - # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords - #endif -#endif -#if CYTHON_METH_FASTCALL - #define __Pyx_METH_FASTCALL METH_FASTCALL - #define __Pyx_PyCFunction_FastCall __Pyx_PyCFunctionFast - #define __Pyx_PyCFunction_FastCallWithKeywords __Pyx_PyCFunctionFastWithKeywords -#else - #define __Pyx_METH_FASTCALL METH_VARARGS - #define __Pyx_PyCFunction_FastCall PyCFunction - #define __Pyx_PyCFunction_FastCallWithKeywords PyCFunctionWithKeywords -#endif -#if CYTHON_VECTORCALL - #define __pyx_vectorcallfunc vectorcallfunc - #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET PY_VECTORCALL_ARGUMENTS_OFFSET - #define __Pyx_PyVectorcall_NARGS(n) PyVectorcall_NARGS((size_t)(n)) -#elif CYTHON_BACKPORT_VECTORCALL - typedef PyObject *(*__pyx_vectorcallfunc)(PyObject *callable, PyObject *const *args, - size_t nargsf, PyObject *kwnames); - #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET ((size_t)1 << (8 * sizeof(size_t) - 1)) - #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(((size_t)(n)) & ~__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)) -#else - #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0 - #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n)) -#endif -#if PY_VERSION_HEX >= 0x030900B1 -#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func) -#else -#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func) -#endif -#define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func) -#if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth) -#elif !CYTHON_COMPILING_IN_LIMITED_API -#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func) -#endif -#if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags) -static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) { - return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self; -} -#endif -static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void (*cfunc)(void)) { -#if CYTHON_COMPILING_IN_LIMITED_API - return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc; -#else - return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; -#endif -} -#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc) -#if __PYX_LIMITED_VERSION_HEX < 0x03090000 - #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b)) - typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *); -#else - #define __Pyx_PyType_FromModuleAndSpec(m, s, b) PyType_FromModuleAndSpec(m, s, b) - #define __Pyx_PyCMethod PyCMethod -#endif -#ifndef METH_METHOD - #define METH_METHOD 0x200 -#endif -#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc) - #define PyObject_Malloc(s) PyMem_Malloc(s) - #define PyObject_Free(p) PyMem_Free(p) - #define PyObject_Realloc(p) PyMem_Realloc(p) -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyFrame_SetLineNumber(frame, lineno) -#elif CYTHON_COMPILING_IN_GRAAL - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) - #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno)) -#else - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) - #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyThreadState_Current PyThreadState_Get() -#elif !CYTHON_FAST_THREAD_STATE - #define __Pyx_PyThreadState_Current PyThreadState_GET() -#elif PY_VERSION_HEX >= 0x030d00A1 - #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked() -#else - #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() -#endif -#if CYTHON_USE_MODULE_STATE -static CYTHON_INLINE void *__Pyx__PyModule_GetState(PyObject *op) -{ - void *result; - result = PyModule_GetState(op); - if (!result) - Py_FatalError("Couldn't find the module state"); - return result; -} -#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o) -#else -#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global) -#endif -#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype) -#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype) -#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype) -#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype) -#if CYTHON_USE_TYPE_SLOTS - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name) - #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype) - #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL) - #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) -#else - #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name)) - #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\ - ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\ - (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\ - __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL) - #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype) - #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype) -#endif -#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) -#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) -#else -#define __Pyx_PyDict_NewPresized(n) PyDict_New() -#endif -#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) -#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS -#define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) -static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) { - PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name); - if (res == NULL) PyErr_Clear(); - return res; -} -#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000 -#define __Pyx_PyDict_GetItemStrWithError PyDict_GetItemWithError -#define __Pyx_PyDict_GetItemStr PyDict_GetItem -#else -static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, PyObject *name) { -#if CYTHON_COMPILING_IN_PYPY - return PyDict_GetItem(dict, name); -#else - PyDictEntry *ep; - PyDictObject *mp = (PyDictObject*) dict; - long hash = ((PyStringObject *) name)->ob_shash; - assert(hash != -1); - ep = (mp->ma_lookup)(mp, name, hash); - if (ep == NULL) { - return NULL; - } - return ep->me_value; -#endif -} -#define __Pyx_PyDict_GetItemStr PyDict_GetItem -#endif -#if CYTHON_USE_TYPE_SLOTS - #define __Pyx_PyType_GetFlags(tp) (((PyTypeObject *)tp)->tp_flags) - #define __Pyx_PyType_HasFeature(type, feature) ((__Pyx_PyType_GetFlags(type) & (feature)) != 0) -#else - #define __Pyx_PyType_GetFlags(tp) (PyType_GetFlags((PyTypeObject *)tp)) - #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature) -#endif -#define __Pyx_PyObject_GetIterNextFunc(iterator) __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc) -#if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000 -#define __Pyx_PyHeapTypeObject_GC_Del(obj) {\ - PyTypeObject *type = Py_TYPE((PyObject*)obj);\ - assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\ - PyObject_GC_Del(obj);\ - Py_DECREF(type);\ -} -#else -#define __Pyx_PyHeapTypeObject_GC_Del(obj) PyObject_GC_Del(obj) -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U) - #define __Pyx_PyUnicode_KIND(u) ((void)u, (0)) - #define __Pyx_PyUnicode_DATA(u) ((void*)u) - #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i)) - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GetLength(u)) -#else - #if PY_VERSION_HEX >= 0x030C0000 - #define __Pyx_PyUnicode_READY(op) (0) - #else - #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ - 0 : _PyUnicode_Ready((PyObject *)(op))) - #endif - #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) - #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u)) - #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) - #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, (Py_UCS4) ch) - #if PY_VERSION_HEX >= 0x030C0000 - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) - #else - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03090000 - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : ((PyCompactUnicodeObject *)(u))->wstr_length)) - #else - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) - #endif - #endif -#endif -#if CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) - #define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b) -#else - #define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b) - #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\ - PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b)) -#endif -#if CYTHON_COMPILING_IN_PYPY - #if !defined(PyUnicode_DecodeUnicodeEscape) - #define PyUnicode_DecodeUnicodeEscape(s, size, errors) PyUnicode_Decode(s, size, "unicode_escape", errors) - #endif - #if !defined(PyUnicode_Contains) - #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) - #endif - #if !defined(PyByteArray_Check) - #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type) - #endif - #if !defined(PyObject_Format) - #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) - #endif -#endif -#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) -#if CYTHON_COMPILING_IN_CPYTHON - #define __Pyx_PySequence_ListKeepNew(obj)\ - (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj)) -#else - #define __Pyx_PySequence_ListKeepNew(obj) PySequence_List(obj) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) __Pyx_IS_TYPE(obj, &PySet_Type) -#endif -#if PY_VERSION_HEX >= 0x030900A4 - #define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt) - #define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size) -#else - #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) - #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) -#endif -#if CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) - #elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) - #else - #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i) - #endif -#elif CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS - #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i) - #else - #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i)) - #endif -#else - #define __Pyx_PyList_GetItemRef(o, i) __Pyx_NewRef(PyList_GET_ITEM(o, i)) -#endif -#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 -#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result) -#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS -static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { - *result = PyObject_GetItem(dict, key); - if (*result == NULL) { - if (PyErr_ExceptionMatches(PyExc_KeyError)) { - PyErr_Clear(); - return 0; - } - return -1; - } - return 1; -} -#else -static CYTHON_INLINE int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) { - *result = PyDict_GetItemWithError(dict, key); - if (*result == NULL) { - return PyErr_Occurred() ? -1 : 0; - } - Py_INCREF(*result); - return 1; -} -#endif -#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST - #define __Pyx_VISIT_CONST(obj) Py_VISIT(obj) -#else - #define __Pyx_VISIT_CONST(obj) -#endif -#if CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i) - #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) - #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0)) - #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i) - #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0)) - #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i) -#else - #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i) - #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) - #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v) - #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i) - #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v) - #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i) -#endif -#if CYTHON_ASSUME_SAFE_SIZE - #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o) - #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o) - #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o) - #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o) - #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o) - #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o) -#else - #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o) - #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o) - #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o) - #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o) - #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o) - #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o) -#endif -#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name) -#else - static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) { - PyObject *module = PyImport_AddModule(name); - Py_XINCREF(module); - return module; - } -#endif -#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString) - #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) -#endif -#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t -#define __Pyx_PyLong_AsHash_t __Pyx_PyIndex_AsSsize_t -#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000 - #define __Pyx_PySendResult PySendResult -#else - typedef enum { - PYGEN_RETURN = 0, - PYGEN_ERROR = -1, - PYGEN_NEXT = 1, - } __Pyx_PySendResult; -#endif -#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3 - typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result); -#else - #define __Pyx_pyiter_sendfunc sendfunc -#endif -#if !CYTHON_USE_AM_SEND -#define __PYX_HAS_PY_AM_SEND 0 -#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000 -#define __PYX_HAS_PY_AM_SEND 1 -#else -#define __PYX_HAS_PY_AM_SEND 2 // our own backported implementation -#endif -#if __PYX_HAS_PY_AM_SEND < 2 - #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods -#else - typedef struct { - unaryfunc am_await; - unaryfunc am_aiter; - unaryfunc am_anext; - __Pyx_pyiter_sendfunc am_send; - } __Pyx_PyAsyncMethodsStruct; - #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s)) -#endif -#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0 - #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21) -#else - #define __Pyx_TPFLAGS_HAVE_AM_SEND (0) -#endif -#if PY_VERSION_HEX >= 0x03090000 -#define __Pyx_PyInterpreterState_Get() PyInterpreterState_Get() -#else -#define __Pyx_PyInterpreterState_Get() PyThreadState_Get()->interp -#endif -#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000 -#ifdef __cplusplus -extern "C" -#endif -PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize); -#endif -#if CYTHON_COMPILING_IN_LIMITED_API -static int __Pyx_init_co_variable(PyObject *inspect, const char* name, int *write_to) { - int value; - PyObject *py_value = PyObject_GetAttrString(inspect, name); - if (!py_value) return 0; - value = (int) PyLong_AsLong(py_value); - Py_DECREF(py_value); - *write_to = value; - return value != -1 || !PyErr_Occurred(); -} -static int __Pyx_init_co_variables(void) { - PyObject *inspect; - int result; - inspect = PyImport_ImportModule("inspect"); - result = -#if !defined(CO_OPTIMIZED) - __Pyx_init_co_variable(inspect, "CO_OPTIMIZED", &CO_OPTIMIZED) && -#endif -#if !defined(CO_NEWLOCALS) - __Pyx_init_co_variable(inspect, "CO_NEWLOCALS", &CO_NEWLOCALS) && -#endif -#if !defined(CO_VARARGS) - __Pyx_init_co_variable(inspect, "CO_VARARGS", &CO_VARARGS) && -#endif -#if !defined(CO_VARKEYWORDS) - __Pyx_init_co_variable(inspect, "CO_VARKEYWORDS", &CO_VARKEYWORDS) && -#endif -#if !defined(CO_ASYNC_GENERATOR) - __Pyx_init_co_variable(inspect, "CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) && -#endif -#if !defined(CO_GENERATOR) - __Pyx_init_co_variable(inspect, "CO_GENERATOR", &CO_GENERATOR) && -#endif -#if !defined(CO_COROUTINE) - __Pyx_init_co_variable(inspect, "CO_COROUTINE", &CO_COROUTINE) && -#endif - 1; - Py_DECREF(inspect); - return result ? 0 : -1; -} -#else -static int __Pyx_init_co_variables(void) { - return 0; // It's a limited API-only feature -} -#endif - -/* MathInitCode */ -#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) - #ifndef _USE_MATH_DEFINES - #define _USE_MATH_DEFINES - #endif -#endif -#include -#ifdef NAN -#define __PYX_NAN() ((float) NAN) -#else -static CYTHON_INLINE float __PYX_NAN() { - float value; - memset(&value, 0xFF, sizeof(value)); - return value; -} -#endif -#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) -#define __Pyx_truncl trunc -#else -#define __Pyx_truncl truncl -#endif - -#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME -#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 0 -#endif -#ifndef CYTHON_CLINE_IN_TRACEBACK -#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME -#endif -#if CYTHON_CLINE_IN_TRACEBACK -#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; } -#else -#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; } -#endif -#define __PYX_ERR(f_index, lineno, Ln_error) \ - { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } - -#ifdef CYTHON_EXTERN_C - #undef __PYX_EXTERN_C - #define __PYX_EXTERN_C CYTHON_EXTERN_C -#elif defined(__PYX_EXTERN_C) - #ifdef _MSC_VER - #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.") - #else - #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead. - #endif -#else - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#define __PYX_HAVE__hunter__vendor___cymem__cymem -#define __PYX_HAVE_API__hunter__vendor___cymem__cymem -/* Early includes */ -#include -#include -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS) -#define CYTHON_WITHOUT_ASSERTIONS -#endif - -#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 -#define __PYX_DEFAULT_STRING_ENCODING "" -#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString -#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#define __Pyx_uchar_cast(c) ((unsigned char)c) -#define __Pyx_long_cast(x) ((long)x) -#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\ - (sizeof(type) < sizeof(Py_ssize_t)) ||\ - (sizeof(type) > sizeof(Py_ssize_t) &&\ - likely(v < (type)PY_SSIZE_T_MAX ||\ - v == (type)PY_SSIZE_T_MAX) &&\ - (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\ - v == (type)PY_SSIZE_T_MIN))) ||\ - (sizeof(type) == sizeof(Py_ssize_t) &&\ - (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\ - v == (type)PY_SSIZE_T_MAX))) ) -static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { - return (size_t) i < (size_t) limit; -} -#if defined (__cplusplus) && __cplusplus >= 201103L - #include - #define __Pyx_sst_abs(value) std::abs(value) -#elif SIZEOF_INT >= SIZEOF_SIZE_T - #define __Pyx_sst_abs(value) abs(value) -#elif SIZEOF_LONG >= SIZEOF_SIZE_T - #define __Pyx_sst_abs(value) labs(value) -#elif defined (_MSC_VER) - #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value)) -#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define __Pyx_sst_abs(value) llabs(value) -#elif defined (__GNUC__) - #define __Pyx_sst_abs(value) __builtin_llabs(value) -#else - #define __Pyx_sst_abs(value) ((value<0) ? -value : value) -#endif -static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s); -static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); -static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); -static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*); -#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) -#define __Pyx_PyBytes_FromString PyBytes_FromString -#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); -#if CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) - #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) - #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) - #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) - #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) - #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) - #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s) -#else - #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AsString(s)) - #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AsString(s)) - #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AsString(s)) - #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AsString(s)) - #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AsString(s)) - #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AsString(s)) - #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s) -#endif -#define __Pyx_PyObject_AsWritableString(s) ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsWritableSString(s) ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) -#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) -#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) -#define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o) -#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef) - return Py_NewRef(obj); -#else - Py_INCREF(obj); - return obj; -#endif -} -static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef) - return Py_XNewRef(obj); -#else - Py_XINCREF(obj); - return obj; -#endif -} -static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b); -static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x); -#define __Pyx_PySequence_Tuple(obj)\ - (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t); -static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); -#if CYTHON_ASSUME_SAFE_MACROS -#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) -#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x) -#else -#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) -#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x) -#endif -#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x)) -#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) -#if CYTHON_USE_PYLONG_INTERNALS - #if PY_VERSION_HEX >= 0x030C00A7 - #ifndef _PyLong_SIGN_MASK - #define _PyLong_SIGN_MASK 3 - #endif - #ifndef _PyLong_NON_SIZE_BITS - #define _PyLong_NON_SIZE_BITS 3 - #endif - #define __Pyx_PyLong_Sign(x) (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK) - #define __Pyx_PyLong_IsNeg(x) ((__Pyx_PyLong_Sign(x) & 2) != 0) - #define __Pyx_PyLong_IsNonNeg(x) (!__Pyx_PyLong_IsNeg(x)) - #define __Pyx_PyLong_IsZero(x) (__Pyx_PyLong_Sign(x) & 1) - #define __Pyx_PyLong_IsPos(x) (__Pyx_PyLong_Sign(x) == 0) - #define __Pyx_PyLong_CompactValueUnsigned(x) (__Pyx_PyLong_Digits(x)[0]) - #define __Pyx_PyLong_DigitCount(x) ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS)) - #define __Pyx_PyLong_SignedDigitCount(x)\ - ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x)) - #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue) - #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x) - #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x) - #else - #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS)) - #define __Pyx_PyLong_CompactValue(x) ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0]) - #endif - typedef Py_ssize_t __Pyx_compact_pylong; - typedef size_t __Pyx_compact_upylong; - #else - #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0) - #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0) - #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0) - #define __Pyx_PyLong_IsPos(x) (Py_SIZE(x) > 0) - #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0]) - #define __Pyx_PyLong_DigitCount(x) __Pyx_sst_abs(Py_SIZE(x)) - #define __Pyx_PyLong_SignedDigitCount(x) Py_SIZE(x) - #define __Pyx_PyLong_IsCompact(x) (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1) - #define __Pyx_PyLong_CompactValue(x)\ - ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0])) - typedef sdigit __Pyx_compact_pylong; - typedef digit __Pyx_compact_upylong; - #endif - #if PY_VERSION_HEX >= 0x030C00A5 - #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->long_value.ob_digit) - #else - #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit) - #endif -#endif -#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 - #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) -#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL) -#else - #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) -#endif - - -/* Test for GCC > 2.95 */ -#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) -#else /* !__GNUC__ or GCC < 2.95 */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ -/* PretendToInitialize */ -#ifdef __cplusplus -#if __cplusplus > 201103L -#include -#endif -template -static void __Pyx_pretend_to_initialize(T* ptr) { -#if __cplusplus > 201103L - if ((std::is_trivially_default_constructible::value)) -#endif - *ptr = T(); - (void)ptr; -} -#else -static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } -#endif - - -#if !CYTHON_USE_MODULE_STATE -static PyObject *__pyx_m = NULL; -#endif -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * const __pyx_cfilenm = __FILE__; -static const char *__pyx_filename; - -/* #### Code section: filename_table ### */ - -static const char* const __pyx_f[] = { - "src/hunter/vendor/_cymem/cymem.pyx", - "", - "src/hunter/vendor/_cymem/cymem.pxd", - ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", -}; -/* #### Code section: utility_code_proto_before_types ### */ -/* Atomics.proto */ -#include -#ifndef CYTHON_ATOMICS - #define CYTHON_ATOMICS 1 -#endif -#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS -#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING -#define __pyx_atomic_int_type int -#define __pyx_nonatomic_int_type int -#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ - (__STDC_VERSION__ >= 201112L) &&\ - !defined(__STDC_NO_ATOMICS__)) - #include -#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ - (__cplusplus >= 201103L) ||\ - (defined(_MSC_VER) && _MSC_VER >= 1700))) - #include -#endif -#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\ - (__STDC_VERSION__ >= 201112L) &&\ - !defined(__STDC_NO_ATOMICS__) &&\ - ATOMIC_INT_LOCK_FREE == 2) - #undef __pyx_atomic_int_type - #define __pyx_atomic_int_type atomic_int - #define __pyx_atomic_ptr_type atomic_uintptr_t - #define __pyx_nonatomic_ptr_type uintptr_t - #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed) - #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel) - #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel) - #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg) - #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired) - #define __pyx_atomic_load(value) atomic_load(value) - #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value) - #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed) - #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire) - #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) - #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) - #pragma message ("Using standard C atomics") - #elif defined(__PYX_DEBUG_ATOMICS) - #warning "Using standard C atomics" - #endif -#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\ - (__cplusplus >= 201103L) ||\ -\ - (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\ - ATOMIC_INT_LOCK_FREE == 2) - #undef __pyx_atomic_int_type - #define __pyx_atomic_int_type std::atomic_int - #define __pyx_atomic_ptr_type std::atomic_uintptr_t - #define __pyx_nonatomic_ptr_type uintptr_t - #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed) - #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel) - #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel) - #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg) - #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired) - #define __pyx_atomic_load(value) std::atomic_load(value) - #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value) - #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed) - #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire) - #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value) - #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER) - #pragma message ("Using standard C++ atomics") - #elif defined(__PYX_DEBUG_ATOMICS) - #warning "Using standard C++ atomics" - #endif -#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\ - (__GNUC_MINOR__ > 1 ||\ - (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2)))) - #define __pyx_atomic_ptr_type void* - #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1) - #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1) - #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1) - #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg) - static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { - __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired); - int result = old == *expected; - *expected = old; - return result; - } - #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0) - #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value) - #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0) - #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0) - #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value) - #ifdef __PYX_DEBUG_ATOMICS - #warning "Using GNU atomics" - #endif -#elif CYTHON_ATOMICS && defined(_MSC_VER) - #include - #undef __pyx_atomic_int_type - #define __pyx_atomic_int_type long - #define __pyx_atomic_ptr_type void* - #undef __pyx_nonatomic_int_type - #define __pyx_nonatomic_int_type long - #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer) - #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1) - #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1) - #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1) - #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg) - static CYTHON_INLINE int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) { - __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected); - int result = old == *expected; - *expected = old; - return result; - } - #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0) - #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value) - #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value - #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0) - #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value) - #ifdef __PYX_DEBUG_ATOMICS - #pragma message ("Using MSVC atomics") - #endif -#else - #undef CYTHON_ATOMICS - #define CYTHON_ATOMICS 0 - #ifdef __PYX_DEBUG_ATOMICS - #warning "Not using atomics" - #endif -#endif -#if CYTHON_ATOMICS - #define __pyx_add_acquisition_count(memview)\ - __pyx_atomic_incr_relaxed(__pyx_get_slice_count_pointer(memview)) - #define __pyx_sub_acquisition_count(memview)\ - __pyx_atomic_decr_acq_rel(__pyx_get_slice_count_pointer(memview)) -#else - #define __pyx_add_acquisition_count(memview)\ - __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) - #define __pyx_sub_acquisition_count(memview)\ - __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) -#endif - -/* IncludeStructmemberH.proto */ -#include - -/* CriticalSections.proto */ -#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING -#define __Pyx_PyCriticalSection void* -#define __Pyx_PyCriticalSection2 void* -#define __Pyx_PyCriticalSection_Begin1(cs, arg) (void)cs -#define __Pyx_PyCriticalSection_Begin2(cs, arg1, arg2) (void)cs -#define __Pyx_PyCriticalSection_End1(cs) -#define __Pyx_PyCriticalSection_End2(cs) -#else -#define __Pyx_PyCriticalSection PyCriticalSection -#define __Pyx_PyCriticalSection2 PyCriticalSection2 -#define __Pyx_PyCriticalSection_Begin1 PyCriticalSection_Begin -#define __Pyx_PyCriticalSection_Begin2 PyCriticalSection2_Begin -#define __Pyx_PyCriticalSection_End1 PyCriticalSection_End -#define __Pyx_PyCriticalSection_End2 PyCriticalSection2_End -#endif -#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API -#define __Pyx_BEGIN_CRITICAL_SECTION(o) { -#define __Pyx_END_CRITICAL_SECTION() } -#else -#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION -#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION -#endif - -/* #### Code section: numeric_typedefs ### */ -/* #### Code section: complex_type_declarations ### */ -/* #### Code section: type_declarations ### */ - -/*--- Type declarations ---*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; - -/* "hunter/vendor/_cymem/cymem.pxd":2 - * # cython: language_level=3str - * ctypedef void* (*malloc_t)(size_t n) # <<<<<<<<<<<<<< - * ctypedef void (*free_t)(void *p) - * -*/ -typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); - -/* "hunter/vendor/_cymem/cymem.pxd":3 - * # cython: language_level=3str - * ctypedef void* (*malloc_t)(size_t n) - * ctypedef void (*free_t)(void *p) # <<<<<<<<<<<<<< - * - * cdef class PyMalloc: -*/ -typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); - -/* "hunter/vendor/_cymem/cymem.pxd":5 - * ctypedef void (*free_t)(void *p) - * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef malloc_t malloc - * cdef void _set(self, malloc_t malloc) -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t malloc; -}; - - -/* "hunter/vendor/_cymem/cymem.pxd":11 - * cdef PyMalloc WrapMalloc(malloc_t malloc) - * - * cdef class PyFree: # <<<<<<<<<<<<<< - * cdef free_t free - * cdef void _set(self, free_t free) -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t free; -}; - - -/* "hunter/vendor/_cymem/cymem.pxd":17 - * cdef PyFree WrapFree(free_t free) - * - * cdef class Pool: # <<<<<<<<<<<<<< - * cdef readonly size_t size - * cdef readonly dict addresses -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtab; - size_t size; - PyObject *addresses; - PyObject *refs; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; -}; - - -/* "hunter/vendor/_cymem/cymem.pxd":29 - * - * - * cdef class Address: # <<<<<<<<<<<<<< - * cdef void* ptr - * cdef readonly PyMalloc pymalloc -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { - PyObject_HEAD - void *ptr; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; -}; - - - -/* "hunter/vendor/_cymem/cymem.pyx":11 - * WARN_ZERO_ALLOC = False - * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef void _set(self, malloc_t malloc): - * self.malloc = malloc -*/ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc { - void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - - -/* "hunter/vendor/_cymem/cymem.pyx":20 - * return o - * - * cdef class PyFree: # <<<<<<<<<<<<<< - * cdef void _set(self, free_t free): - * self.free = free -*/ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree { - void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; - - -/* "hunter/vendor/_cymem/cymem.pyx":32 - * Default_Free = WrapFree(PyMem_Free) - * - * cdef class Pool: # <<<<<<<<<<<<<< - * """Track allocated memory addresses, and free them all when the Pool is - * garbage collected. This provides an easy way to avoid memory leaks, and -*/ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { - void *(*alloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t); - void (*free)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *); - void *(*realloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool; -/* #### Code section: utility_code_proto ### */ - -/* --- Runtime support code (head) --- */ -/* Refnanny.proto */ -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, Py_ssize_t); - void (*DECREF)(void*, PyObject*, Py_ssize_t); - void (*GOTREF)(void*, PyObject*, Py_ssize_t); - void (*GIVEREF)(void*, PyObject*, Py_ssize_t); - void* (*SetupContext)(const char*, Py_ssize_t, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - if (acquire_gil) {\ - PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\ - PyGILState_Release(__pyx_gilstate_save);\ - } else {\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\ - } - #define __Pyx_RefNannyFinishContextNogil() {\ - PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ - __Pyx_RefNannyFinishContext();\ - PyGILState_Release(__pyx_gilstate_save);\ - } - #define __Pyx_RefNannyFinishContextNogil() {\ - PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ - __Pyx_RefNannyFinishContext();\ - PyGILState_Release(__pyx_gilstate_save);\ - } - #define __Pyx_RefNannyFinishContext()\ - __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), (__LINE__)) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), (__LINE__)) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), (__LINE__)) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), (__LINE__)) - #define __Pyx_XINCREF(r) do { if((r) == NULL); else {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) == NULL); else {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) == NULL); else {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) == NULL); else {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name, acquire_gil) - #define __Pyx_RefNannyFinishContextNogil() - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif -#define __Pyx_Py_XDECREF_SET(r, v) do {\ - PyObject *tmp = (PyObject *) r;\ - r = v; Py_XDECREF(tmp);\ - } while (0) -#define __Pyx_XDECREF_SET(r, v) do {\ - PyObject *tmp = (PyObject *) r;\ - r = v; __Pyx_XDECREF(tmp);\ - } while (0) -#define __Pyx_DECREF_SET(r, v) do {\ - PyObject *tmp = (PyObject *) r;\ - r = v; __Pyx_DECREF(tmp);\ - } while (0) -#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0) -#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0) - -/* PyErrExceptionMatches.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err) -static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err); -#else -#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err) -#endif - -/* PyThreadStateGet.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; -#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; -#if PY_VERSION_HEX >= 0x030C00A6 -#define __Pyx_PyErr_Occurred() (__pyx_tstate->current_exception != NULL) -#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL) -#else -#define __Pyx_PyErr_Occurred() (__pyx_tstate->curexc_type != NULL) -#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->curexc_type) -#endif -#else -#define __Pyx_PyThreadState_declare -#define __Pyx_PyThreadState_assign -#define __Pyx_PyErr_Occurred() (PyErr_Occurred() != NULL) -#define __Pyx_PyErr_CurrentExceptionType() PyErr_Occurred() -#endif - -/* PyErrFetchRestore.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL) -#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb) -#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb) -#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb) -#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) -static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); -static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6 -#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) -#else -#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) -#endif -#else -#define __Pyx_PyErr_Clear() PyErr_Clear() -#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) -#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb) -#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb) -#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb) -#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb) -#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb) -#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb) -#endif - -/* PyObjectGetAttrStr.proto */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n) -#endif - -/* PyObjectGetAttrStrNoError.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name); - -/* GetBuiltinName.proto */ -static PyObject *__Pyx_GetBuiltinName(PyObject *name); - -/* TupleAndListFromArray.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); -#endif -#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL -static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); -#endif - -/* IncludeStringH.proto */ -#include - -/* BytesEquals.proto */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); - -/* UnicodeEquals.proto */ -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); - -/* fastcall.proto */ -#if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) -#elif CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) -#else - #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) -#endif -#define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) -#define __Pyx_KwValues_VARARGS(args, nargs) NULL -#define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) -#define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) -#if CYTHON_METH_FASTCALL - #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) - #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) - #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) - static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API - CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); - #else - #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) - #endif -#else - #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS - #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS - #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS - #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS - #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS -#endif -#define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) -#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) -#else -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) -#endif - -/* RaiseArgTupleInvalid.proto */ -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); - -/* RejectKeywords.proto */ -static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); - -/* RaiseException.proto */ -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); - -/* RaiseDoubleKeywords.proto */ -static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); - -/* ParseKeywords.proto */ -static CYTHON_INLINE int __Pyx_ParseKeywords( - PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], - PyObject *kwds2, PyObject *values[], - Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, - const char* function_name, - int ignore_unknown_kwargs -); - -/* CallCFunction.proto */ -#define __Pyx_CallCFunction(cfunc, self, args)\ - ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) -#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ - ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) -#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ - ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) -#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ - ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) - -/* PyFunctionFastCall.proto */ -#if CYTHON_FAST_PYCALL -#if !CYTHON_VECTORCALL -#define __Pyx_PyFunction_FastCall(func, args, nargs)\ - __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); -#endif -#define __Pyx_BUILD_ASSERT_EXPR(cond)\ - (sizeof(char [1 - 2*!(cond)]) - 1) -#ifndef Py_MEMBER_SIZE -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) -#endif -#if !CYTHON_VECTORCALL -#if PY_VERSION_HEX >= 0x03080000 - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets() - #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) -#else - static size_t __pyx_pyframe_localsplus_offset = 0; - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets()\ - ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ - (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) - #define __Pyx_PyFrame_GetLocalsplus(frame)\ - (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) -#endif -#endif -#endif - -/* PyObjectCall.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); -#else -#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) -#endif - -/* PyObjectCallMethO.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); -#endif - -/* PyObjectFastCall.proto */ -#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); - -/* UnpackUnboundCMethod.proto */ -typedef struct { - PyObject *type; - PyObject **method_name; -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS - __pyx_atomic_int_type initialized; -#endif - PyCFunction func; - PyObject *method; - int flag; -} __Pyx_CachedCFunction; -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING -static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { -#if !CYTHON_ATOMICS - return 1; -#else - __pyx_nonatomic_int_type expected = 0; - if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { - return 0; - } - return expected; -#endif -} -static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { -#if CYTHON_ATOMICS - __pyx_atomic_store(&cfunc->initialized, 2); -#endif -} -#else -#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 -#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) -#endif - -/* CallUnboundCMethod2.proto */ -CYTHON_UNUSED -static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); -#else -#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) -#endif - -/* ArgTypeTest.proto */ -#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ - ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ - __Pyx__ArgTypeTest(obj, type, name, exact)) -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); - -/* IterFinish.proto */ -static CYTHON_INLINE int __Pyx_IterFinish(void); - -/* PyObjectCallNoArg.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); - -/* PyObjectCallOneArg.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); - -/* PyObjectGetMethod.proto */ -static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method); - -/* PyObjectCallMethod0.proto */ -static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name); - -/* RaiseNeedMoreValuesToUnpack.proto */ -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -/* RaiseTooManyValuesToUnpack.proto */ -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -/* UnpackItemEndCheck.proto */ -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); - -/* RaiseNoneIterError.proto */ -static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); - -/* UnpackTupleError.proto */ -static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); - -/* UnpackTuple2.proto */ -static CYTHON_INLINE int __Pyx_unpack_tuple2( - PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple); -static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( - PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple); -static int __Pyx_unpack_tuple2_generic( - PyObject* tuple, PyObject** value1, PyObject** value2, int has_known_size, int decref_tuple); - -/* dict_iter.proto */ -static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* dict, int is_dict, PyObject* method_name, - Py_ssize_t* p_orig_length, int* p_is_dict); -static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* dict_or_iter, Py_ssize_t orig_length, Py_ssize_t* ppos, - PyObject** pkey, PyObject** pvalue, PyObject** pitem, int is_dict); - -/* WriteUnraisableException.proto */ -static void __Pyx_WriteUnraisable(const char *name, int clineno, - int lineno, const char *filename, - int full_traceback, int nogil); - -/* PyDictVersioning.proto */ -#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS -#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) -#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) -#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\ - (version_var) = __PYX_GET_DICT_VERSION(dict);\ - (cache_var) = (value); -#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\ - static PY_UINT64_T __pyx_dict_version = 0;\ - static PyObject *__pyx_dict_cached_value = NULL;\ - if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ - (VAR) = __pyx_dict_cached_value;\ - } else {\ - (VAR) = __pyx_dict_cached_value = (LOOKUP);\ - __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ - }\ -} -static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj); -static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj); -static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version); -#else -#define __PYX_GET_DICT_VERSION(dict) (0) -#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var) -#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP); -#endif - -/* GetModuleGlobalName.proto */ -#if CYTHON_USE_DICT_VERSIONS -#define __Pyx_GetModuleGlobalName(var, name) do {\ - static PY_UINT64_T __pyx_dict_version = 0;\ - static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ - (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ - __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ -} while(0) -#define __Pyx_GetModuleGlobalNameUncached(var, name) do {\ - PY_UINT64_T __pyx_dict_version;\ - PyObject *__pyx_dict_cached_value;\ - (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ -} while(0) -static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value); -#else -#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name) -#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name) -static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); -#endif - -/* PyDictContains.proto */ -static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, int eq) { - int result = PyDict_Contains(dict, item); - return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); -} - -/* BuildPyUnicode.proto */ -static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, const char* chars, int clength, - int prepend_sign, char padding_char); - -/* COrdinalToPyUnicode.proto */ -static CYTHON_INLINE int __Pyx_CheckUnicodeValue(int value); -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromOrdinal_Padded(int value, Py_ssize_t width, char padding_char); - -/* GCCDiagnostics.proto */ -#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) -#define __Pyx_HAS_GCC_DIAGNOSTIC -#endif - -/* IncludeStdlibH.proto */ -#include - -/* CIntToPyUnicode.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_size_t(size_t value, Py_ssize_t width, char padding_char, char format_char); - -/* PyObjectFormatAndDecref.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); - -/* JoinPyUnicode.proto */ -static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, - Py_UCS4 max_char); - -/* AssertionsEnabled.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API || (CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030C0000) - static int __pyx_assertions_enabled_flag; - #define __pyx_assertions_enabled() (__pyx_assertions_enabled_flag) - static int __Pyx_init_assertions_enabled(void) { - PyObject *builtins, *debug, *debug_str; - int flag; - builtins = PyEval_GetBuiltins(); - if (!builtins) goto bad; - debug_str = PyUnicode_FromStringAndSize("__debug__", 9); - if (!debug_str) goto bad; - debug = PyObject_GetItem(builtins, debug_str); - Py_DECREF(debug_str); - if (!debug) goto bad; - flag = PyObject_IsTrue(debug); - Py_DECREF(debug); - if (flag == -1) goto bad; - __pyx_assertions_enabled_flag = flag; - return 0; - bad: - __pyx_assertions_enabled_flag = 1; - return -1; - } -#else - #define __Pyx_init_assertions_enabled() (0) - #define __pyx_assertions_enabled() (!Py_OptimizeFlag) -#endif - -/* DictGetItem.proto */ -#if !CYTHON_COMPILING_IN_PYPY -static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); -#define __Pyx_PyObject_Dict_GetItem(obj, name)\ - (likely(PyDict_CheckExact(obj)) ?\ - __Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name)) -#else -#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key) -#define __Pyx_PyObject_Dict_GetItem(obj, name) PyObject_GetItem(obj, name) -#endif - -/* py_dict_pop.proto */ -static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyObject *default_value); - -/* PyObjectCall2Args.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); - -/* CallUnboundCMethod1.proto */ -CYTHON_UNUSED -static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); -#else -#define __Pyx_CallUnboundCMethod1(cfunc, self, arg) __Pyx__CallUnboundCMethod1(cfunc, self, arg) -#endif - -/* ListAppend.proto */ -#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS -static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { - PyListObject* L = (PyListObject*) list; - Py_ssize_t len = Py_SIZE(list); - if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) { - Py_INCREF(x); - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 - L->ob_item[len] = x; - #else - PyList_SET_ITEM(list, len, x); - #endif - __Pyx_SET_SIZE(list, len + 1); - return 0; - } - return PyList_Append(list, x); -} -#else -#define __Pyx_PyList_Append(L,x) PyList_Append(L,x) -#endif - -/* PySequenceMultiply.proto */ -#define __Pyx_PySequence_Multiply_Left(mul, seq) __Pyx_PySequence_Multiply(seq, mul) -static CYTHON_INLINE PyObject* __Pyx_PySequence_Multiply(PyObject *seq, Py_ssize_t mul); - -/* CallTypeTraverse.proto */ -#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) -#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 -#else -static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg); -#endif - -/* LimitedApiGetTypeDict.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp); -#endif - -/* SetItemOnTypeDict.proto */ -static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v); -#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v) - -/* FixUpExtensionType.proto */ -static CYTHON_INLINE int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type); - -/* ValidateBasesTuple.proto */ -#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS -static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases); -#endif - -/* PyType_Ready.proto */ -CYTHON_UNUSED static int __Pyx_PyType_Ready(PyTypeObject *t); - -/* SetVTable.proto */ -static int __Pyx_SetVtable(PyTypeObject* typeptr , void* vtable); - -/* GetVTable.proto */ -static void* __Pyx_GetVtable(PyTypeObject *type); - -/* MergeVTables.proto */ -static int __Pyx_MergeVtables(PyTypeObject *type); - -/* DelItemOnTypeDict.proto */ -static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); -#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k) - -/* SetupReduce.proto */ -static int __Pyx_setup_reduce(PyObject* type_obj); - -/* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 -#define __PYX_HAVE_RT_ImportType_proto_3_1_2 -#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L -#include -#endif -#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) -#else -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) -#endif -enum __Pyx_ImportType_CheckSize_3_1_2 { - __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, - __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 -}; -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); -#endif - -/* Import.proto */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); - -/* ImportDottedModule.proto */ -static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple); -static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple); - -/* FetchSharedCythonModule.proto */ -static PyObject *__Pyx_FetchSharedCythonABIModule(void); - -/* dict_setdefault.proto */ -static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, int is_safe_type); - -/* FetchCommonType.proto */ -static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases); - -/* CommonTypesMetaclass.proto */ -static int __pyx_CommonTypesMetaclass_init(PyObject *module); -#define __Pyx_CommonTypesMetaclass_USED - -/* PyMethodNew.proto */ -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ); - -/* PyVectorcallFastCallDict.proto */ -#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) -static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw); -#endif - -/* CythonFunctionShared.proto */ -#define __Pyx_CyFunction_USED -#define __Pyx_CYFUNCTION_STATICMETHOD 0x01 -#define __Pyx_CYFUNCTION_CLASSMETHOD 0x02 -#define __Pyx_CYFUNCTION_CCLASS 0x04 -#define __Pyx_CYFUNCTION_COROUTINE 0x08 -#define __Pyx_CyFunction_GetClosure(f)\ - (((__pyx_CyFunctionObject *) (f))->func_closure) -#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API - #define __Pyx_CyFunction_GetClassObj(f)\ - (((__pyx_CyFunctionObject *) (f))->func_classobj) -#else - #define __Pyx_CyFunction_GetClassObj(f)\ - ((PyObject*) ((PyCMethodObject *) (f))->mm_class) -#endif -#define __Pyx_CyFunction_SetClassObj(f, classobj)\ - __Pyx__CyFunction_SetClassObj((__pyx_CyFunctionObject *) (f), (classobj)) -#define __Pyx_CyFunction_Defaults(type, f)\ - ((type *)(((__pyx_CyFunctionObject *) (f))->defaults)) -#define __Pyx_CyFunction_SetDefaultsGetter(f, g)\ - ((__pyx_CyFunctionObject *) (f))->defaults_getter = (g) -typedef struct { -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject_HEAD - PyObject *func; -#elif PY_VERSION_HEX < 0x030900B1 - PyCFunctionObject func; -#else - PyCMethodObject func; -#endif -#if CYTHON_BACKPORT_VECTORCALL ||\ - (CYTHON_COMPILING_IN_LIMITED_API && CYTHON_METH_FASTCALL) - __pyx_vectorcallfunc func_vectorcall; -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *func_weakreflist; -#endif - PyObject *func_dict; - PyObject *func_name; - PyObject *func_qualname; - PyObject *func_doc; - PyObject *func_globals; - PyObject *func_code; - PyObject *func_closure; -#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API - PyObject *func_classobj; -#endif - PyObject *defaults; - int flags; - PyObject *defaults_tuple; - PyObject *defaults_kwdict; - PyObject *(*defaults_getter)(PyObject *); - PyObject *func_annotations; - PyObject *func_is_coroutine; -} __pyx_CyFunctionObject; -#undef __Pyx_CyOrPyCFunction_Check -#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType) -#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type) -#define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType) -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)); -#undef __Pyx_IsSameCFunction -#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc) -static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml, - int flags, PyObject* qualname, - PyObject *closure, - PyObject *module, PyObject *globals, - PyObject* code); -static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj); -static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, - PyTypeObject *defaults_type); -static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m, - PyObject *tuple); -static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m, - PyObject *dict); -static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *m, - PyObject *dict); -static int __pyx_CyFunction_init(PyObject *module); -#if CYTHON_METH_FASTCALL -static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames); -#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API -#define __Pyx_CyFunction_func_vectorcall(f) (((__pyx_CyFunctionObject*)f)->func_vectorcall) -#else -#define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall) -#endif -#endif - -/* CythonFunction.proto */ -static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, - int flags, PyObject* qualname, - PyObject *closure, - PyObject *module, PyObject *globals, - PyObject* code); - -/* ExtTypeTest.proto */ -static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); - -/* CLineInTraceback.proto */ -#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME -static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); -#else -#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) -#endif - -/* CodeObjectCache.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -typedef PyObject __Pyx_CachedCodeObjectType; -#else -typedef PyCodeObject __Pyx_CachedCodeObjectType; -#endif -typedef struct { - __Pyx_CachedCodeObjectType* code_object; - int code_line; -} __Pyx_CodeObjectCacheEntry; -struct __Pyx_CodeObjectCache { - int count; - int max_count; - __Pyx_CodeObjectCacheEntry* entries; - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - __pyx_atomic_int_type accessor_count; - #endif -}; -static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); -static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line); -static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object); - -/* AddTraceback.proto */ -static void __Pyx_AddTraceback(const char *funcname, int c_line, - int py_line, const char *filename); - -/* CIntFromPy.proto */ -static CYTHON_INLINE size_t __Pyx_PyLong_As_size_t(PyObject *); - -/* FormatTypeName.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API -typedef PyObject *__Pyx_TypeName; -#define __Pyx_FMT_TYPENAME "%U" -#define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj) -#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 -#define __Pyx_PyType_GetFullyQualifiedName PyType_GetFullyQualifiedName -#else -static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp); -#endif -#else // !LIMITED_API -typedef const char *__Pyx_TypeName; -#define __Pyx_FMT_TYPENAME "%.200s" -#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name) -#define __Pyx_DECREF_TypeName(obj) -#endif - -/* PyObjectVectorCallKwBuilder.proto */ -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); -#if CYTHON_VECTORCALL -#if PY_VERSION_HEX >= 0x03090000 -#define __Pyx_Object_Vectorcall_CallFromBuilder PyObject_Vectorcall -#else -#define __Pyx_Object_Vectorcall_CallFromBuilder _PyObject_Vectorcall -#endif -#define __Pyx_MakeVectorcallBuilderKwds(n) PyTuple_New(n) -static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); -static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n); -#else -#define __Pyx_Object_Vectorcall_CallFromBuilder __Pyx_PyObject_FastCallDict -#define __Pyx_MakeVectorcallBuilderKwds(n) __Pyx_PyDict_NewPresized(n) -#define __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n) PyDict_SetItem(builder, key, value) -#define __Pyx_VectorcallBuilder_AddArgStr(key, value, builder, args, n) PyDict_SetItemString(builder, key, value) -#endif - -/* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); - -/* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); - -/* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); - -/* FastTypeChecks.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type) -#define __Pyx_TypeCheck2(obj, type1, type2) __Pyx_IsAnySubtype2(Py_TYPE(obj), (PyTypeObject *)type1, (PyTypeObject *)type2) -static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b); -static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b); -static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); -static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2); -#else -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) -#define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2)) -#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) -static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) { - return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2); -} -#endif -#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2) -#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) -#ifdef PyExceptionInstance_Check - #define __Pyx_PyBaseException_Check(obj) PyExceptionInstance_Check(obj) -#else - #define __Pyx_PyBaseException_Check(obj) __Pyx_TypeCheck(obj, PyExc_BaseException) -#endif - -/* GetRuntimeVersion.proto */ -static unsigned long __Pyx_get_runtime_version(void); - -/* CheckBinaryVersion.proto */ -static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); - -/* FunctionExport.proto */ -static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); - -/* MultiPhaseInitModuleState.proto */ -#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE -static PyObject *__Pyx_State_FindModule(void*); -static int __Pyx_State_AddModule(PyObject* module, void*); -static int __Pyx_State_RemoveModule(void*); -#elif CYTHON_USE_MODULE_STATE -#define __Pyx_State_FindModule PyState_FindModule -#define __Pyx_State_AddModule PyState_AddModule -#define __Pyx_State_RemoveModule PyState_RemoveModule -#endif - -/* #### Code section: module_declarations ### */ -/* CythonABIVersion.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API - #if CYTHON_METH_FASTCALL - #define __PYX_FASTCALL_ABI_SUFFIX "_fastcall" - #else - #define __PYX_FASTCALL_ABI_SUFFIX - #endif - #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_FASTCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX -#else - #define __PYX_LIMITED_ABI_SUFFIX -#endif -#if __PYX_HAS_PY_AM_SEND == 1 - #define __PYX_AM_SEND_ABI_SUFFIX -#elif __PYX_HAS_PY_AM_SEND == 2 - #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport" -#else - #define __PYX_AM_SEND_ABI_SUFFIX "noamsend" -#endif -#ifndef __PYX_MONITORING_ABI_SUFFIX - #define __PYX_MONITORING_ABI_SUFFIX -#endif -#if CYTHON_USE_TP_FINALIZE - #define __PYX_TP_FINALIZE_ABI_SUFFIX -#else - #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize" -#endif -#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED) - #define __PYX_FREELISTS_ABI_SUFFIX -#else - #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists" -#endif -#define CYTHON_ABI __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX -#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI -#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." - -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc); /* proto*/ -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free); /* proto*/ -static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size); /* proto*/ -static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p, size_t __pyx_v_new_size); /* proto*/ -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p); /* proto*/ - -/* Module declarations from "cpython.mem" */ - -/* Module declarations from "libc.string" */ - -/* Module declarations from "libc.stdio" */ - -/* Module declarations from "__builtin__" */ - -/* Module declarations from "cpython.type" */ - -/* Module declarations from "cpython" */ - -/* Module declarations from "cpython.object" */ - -/* Module declarations from "cpython.ref" */ - -/* Module declarations from "hunter.vendor._cymem.cymem" */ -static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc(__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); /*proto*/ -static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree(__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); /*proto*/ -/* #### Code section: typeinfo ### */ -/* #### Code section: before_global_var ### */ -#define __Pyx_MODULE_NAME "hunter.vendor._cymem.cymem" -extern int __pyx_module_is_main_hunter__vendor___cymem__cymem; -int __pyx_module_is_main_hunter__vendor___cymem__cymem = 0; - -/* Implementation of "hunter.vendor._cymem.cymem" */ -/* #### Code section: global_var ### */ -static PyObject *__pyx_builtin_TypeError; -static PyObject *__pyx_builtin_MemoryError; -static PyObject *__pyx_builtin_ValueError; -static PyObject *__pyx_builtin_AssertionError; -/* #### Code section: string_decls ### */ -static const char __pyx_k_Q[] = "\200\001\330\004\n\210+\220Q"; -static const char __pyx_k_d[] = "d"; -static const char __pyx_k__5[] = "?"; -static const char __pyx_k_gc[] = "gc"; -static const char __pyx_k_A_E[] = "\200A\330\010\014\210E\220\027\230\001\230\021"; -static const char __pyx_k_pop[] = "pop"; -static const char __pyx_k_Pool[] = "Pool"; -static const char __pyx_k_func[] = "__func__"; -static const char __pyx_k_main[] = "__main__"; -static const char __pyx_k_name[] = "__name__"; -static const char __pyx_k_self[] = "self"; -static const char __pyx_k_spec[] = "__spec__"; -static const char __pyx_k_test[] = "__test__"; -static const char __pyx_k_warn[] = "warn"; -static const char __pyx_k_PyFree[] = "PyFree"; -static const char __pyx_k_enable[] = "enable"; -static const char __pyx_k_module[] = "__module__"; -static const char __pyx_k_number[] = "number"; -static const char __pyx_k_py_ref[] = "py_ref"; -static const char __pyx_k_pyfree[] = "pyfree"; -static const char __pyx_k_reduce[] = "__reduce__"; -static const char __pyx_k_Address[] = "Address"; -static const char __pyx_k_Pointer[] = "Pointer "; -static const char __pyx_k_disable[] = "disable"; -static const char __pyx_k_PyMalloc[] = "PyMalloc"; -static const char __pyx_k_add_note[] = "add_note"; -static const char __pyx_k_getstate[] = "__getstate__"; -static const char __pyx_k_pymalloc[] = "pymalloc"; -static const char __pyx_k_qualname[] = "__qualname__"; -static const char __pyx_k_set_name[] = "__set_name__"; -static const char __pyx_k_setstate[] = "__setstate__"; -static const char __pyx_k_warnings[] = "warnings"; -static const char __pyx_k_TypeError[] = "TypeError"; -static const char __pyx_k_elem_size[] = "elem_size"; -static const char __pyx_k_isenabled[] = "isenabled"; -static const char __pyx_k_own_pyref[] = "own_pyref"; -static const char __pyx_k_pyx_state[] = "__pyx_state"; -static const char __pyx_k_reduce_ex[] = "__reduce_ex__"; -static const char __pyx_k_ValueError[] = "ValueError"; -static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__"; -static const char __pyx_k_MemoryError[] = "MemoryError"; -static const char __pyx_k_Default_Free[] = "Default_Free"; -static const char __pyx_k_initializing[] = "_initializing"; -static const char __pyx_k_is_coroutine[] = "_is_coroutine"; -static const char __pyx_k_stringsource[] = ""; -static const char __pyx_k_reduce_cython[] = "__reduce_cython__"; -static const char __pyx_k_AssertionError[] = "AssertionError"; -static const char __pyx_k_Default_Malloc[] = "Default_Malloc"; -static const char __pyx_k_Pool_own_pyref[] = "Pool.own_pyref"; -static const char __pyx_k_WARN_ZERO_ALLOC[] = "WARN_ZERO_ALLOC"; -static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; -static const char __pyx_k_not_found_in_Pool[] = " not found in Pool "; -static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines"; -static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; -static const char __pyx_k_Pool___reduce_cython[] = "Pool.__reduce_cython__"; -static const char __pyx_k_Allocating_zero_bytes[] = "Allocating zero bytes"; -static const char __pyx_k_Pool___setstate_cython[] = "Pool.__setstate_cython__"; -static const char __pyx_k_PyFree___reduce_cython[] = "PyFree.__reduce_cython__"; -static const char __pyx_k_Address___reduce_cython[] = "Address.__reduce_cython__"; -static const char __pyx_k_Error_assigning_d_bytes[] = "Error assigning %d bytes"; -static const char __pyx_k_PyFree___setstate_cython[] = "PyFree.__setstate_cython__"; -static const char __pyx_k_PyMalloc___reduce_cython[] = "PyMalloc.__reduce_cython__"; -static const char __pyx_k_Address___setstate_cython[] = "Address.__setstate_cython__"; -static const char __pyx_k_PyMalloc___setstate_cython[] = "PyMalloc.__setstate_cython__"; -static const char __pyx_k_hunter_vendor__cymem_cymem[] = "hunter.vendor._cymem.cymem"; -static const char __pyx_k_Realloc_requires_new_size_0[] = "Realloc requires new_size > 0"; -static const char __pyx_k_Error_reallocating_to_d_bytes[] = "Error reallocating to %d bytes"; -static const char __pyx_k_self_malloc_cannot_be_converted[] = "self.malloc cannot be converted to a Python object for pickling"; -static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; -static const char __pyx_k_no_default___reduce___due_to_non[] = "no default __reduce__ due to non-trivial __cinit__"; -static const char __pyx_k_self_free_cannot_be_converted_to[] = "self.free cannot be converted to a Python object for pickling"; -static const char __pyx_k_src_hunter_vendor__cymem_cymem_p[] = "src/hunter/vendor/_cymem/cymem.pyx"; -/* #### Code section: decls ### */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree); /* proto */ -static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, PyObject *__pyx_v_py_ref); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED size_t __pyx_v_number, CYTHON_UNUSED size_t __pyx_v_elem_size, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree); /* proto */ -static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ -static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -/* #### Code section: late_includes ### */ -/* #### Code section: module_state ### */ -/* SmallCodeConfig */ -#ifndef CYTHON_SMALL_CODE -#if defined(__clang__) - #define CYTHON_SMALL_CODE -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - #define CYTHON_SMALL_CODE __attribute__((cold)) -#else - #define CYTHON_SMALL_CODE -#endif -#endif - -typedef struct { - PyObject *__pyx_d; - PyObject *__pyx_b; - PyObject *__pyx_cython_runtime; - PyObject *__pyx_empty_tuple; - PyObject *__pyx_empty_bytes; - PyObject *__pyx_empty_unicode; - #ifdef __Pyx_CyFunction_USED - PyTypeObject *__pyx_CyFunctionType; - #endif - #ifdef __Pyx_FusedFunction_USED - PyTypeObject *__pyx_FusedFunctionType; - #endif - #ifdef __Pyx_Generator_USED - PyTypeObject *__pyx_GeneratorType; - #endif - #ifdef __Pyx_IterableCoroutine_USED - PyTypeObject *__pyx_IterableCoroutineType; - #endif - #ifdef __Pyx_Coroutine_USED - PyTypeObject *__pyx_CoroutineAwaitType; - #endif - #ifdef __Pyx_Coroutine_USED - PyTypeObject *__pyx_CoroutineType; - #endif - PyTypeObject *__pyx_ptype_7cpython_4type_type; - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; - PyObject *__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree; - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool; - PyTypeObject *__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address; - __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_k_; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_k__2; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_k__3; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_k__4; - PyObject *__pyx_codeobj_tab[9]; - PyObject *__pyx_string_tab[70]; -/* #### Code section: module_state_contents ### */ -/* CommonTypesMetaclass.module_state_decls */ -PyTypeObject *__pyx_CommonTypesMetaclassType; - -/* CachedMethodType.module_state_decls */ -#if CYTHON_COMPILING_IN_LIMITED_API -PyObject *__Pyx_CachedMethodType; -#endif - -/* CodeObjectCache.module_state_decls */ -struct __Pyx_CodeObjectCache __pyx_code_cache; - -/* #### Code section: module_state_end ### */ -} __pyx_mstatetype; - -#if CYTHON_USE_MODULE_STATE -#ifdef __cplusplus -namespace { -extern struct PyModuleDef __pyx_moduledef; -} /* anonymous namespace */ -#else -static struct PyModuleDef __pyx_moduledef; -#endif - -#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef))) - -#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef)) -#else -static __pyx_mstatetype __pyx_mstate_global_static = -#ifdef __cplusplus - {}; -#else - {0}; -#endif -static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_static; -#endif -/* #### Code section: constant_name_defines ### */ -#define __pyx_n_u_Address __pyx_string_tab[0] -#define __pyx_n_u_Address___reduce_cython __pyx_string_tab[1] -#define __pyx_n_u_Address___setstate_cython __pyx_string_tab[2] -#define __pyx_kp_u_Allocating_zero_bytes __pyx_string_tab[3] -#define __pyx_n_u_AssertionError __pyx_string_tab[4] -#define __pyx_n_u_Default_Free __pyx_string_tab[5] -#define __pyx_n_u_Default_Malloc __pyx_string_tab[6] -#define __pyx_kp_u_Error_assigning_d_bytes __pyx_string_tab[7] -#define __pyx_kp_u_Error_reallocating_to_d_bytes __pyx_string_tab[8] -#define __pyx_n_u_MemoryError __pyx_string_tab[9] -#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[10] -#define __pyx_kp_u_Pointer __pyx_string_tab[11] -#define __pyx_n_u_Pool __pyx_string_tab[12] -#define __pyx_n_u_Pool___reduce_cython __pyx_string_tab[13] -#define __pyx_n_u_Pool___setstate_cython __pyx_string_tab[14] -#define __pyx_n_u_Pool_own_pyref __pyx_string_tab[15] -#define __pyx_n_u_PyFree __pyx_string_tab[16] -#define __pyx_n_u_PyFree___reduce_cython __pyx_string_tab[17] -#define __pyx_n_u_PyFree___setstate_cython __pyx_string_tab[18] -#define __pyx_n_u_PyMalloc __pyx_string_tab[19] -#define __pyx_n_u_PyMalloc___reduce_cython __pyx_string_tab[20] -#define __pyx_n_u_PyMalloc___setstate_cython __pyx_string_tab[21] -#define __pyx_kp_u_Realloc_requires_new_size_0 __pyx_string_tab[22] -#define __pyx_n_u_TypeError __pyx_string_tab[23] -#define __pyx_n_u_ValueError __pyx_string_tab[24] -#define __pyx_n_u_WARN_ZERO_ALLOC __pyx_string_tab[25] -#define __pyx_kp_u__5 __pyx_string_tab[26] -#define __pyx_kp_u_add_note __pyx_string_tab[27] -#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[28] -#define __pyx_n_u_cline_in_traceback __pyx_string_tab[29] -#define __pyx_n_u_d __pyx_string_tab[30] -#define __pyx_kp_u_disable __pyx_string_tab[31] -#define __pyx_n_u_elem_size __pyx_string_tab[32] -#define __pyx_kp_u_enable __pyx_string_tab[33] -#define __pyx_n_u_func __pyx_string_tab[34] -#define __pyx_kp_u_gc __pyx_string_tab[35] -#define __pyx_n_u_getstate __pyx_string_tab[36] -#define __pyx_n_u_hunter_vendor__cymem_cymem __pyx_string_tab[37] -#define __pyx_n_u_initializing __pyx_string_tab[38] -#define __pyx_n_u_is_coroutine __pyx_string_tab[39] -#define __pyx_kp_u_isenabled __pyx_string_tab[40] -#define __pyx_n_u_main __pyx_string_tab[41] -#define __pyx_n_u_module __pyx_string_tab[42] -#define __pyx_n_u_name __pyx_string_tab[43] -#define __pyx_kp_u_no_default___reduce___due_to_non __pyx_string_tab[44] -#define __pyx_kp_u_not_found_in_Pool __pyx_string_tab[45] -#define __pyx_n_u_number __pyx_string_tab[46] -#define __pyx_n_u_own_pyref __pyx_string_tab[47] -#define __pyx_n_u_pop __pyx_string_tab[48] -#define __pyx_n_u_py_ref __pyx_string_tab[49] -#define __pyx_n_u_pyfree __pyx_string_tab[50] -#define __pyx_n_u_pymalloc __pyx_string_tab[51] -#define __pyx_n_u_pyx_state __pyx_string_tab[52] -#define __pyx_n_u_pyx_vtable __pyx_string_tab[53] -#define __pyx_n_u_qualname __pyx_string_tab[54] -#define __pyx_n_u_reduce __pyx_string_tab[55] -#define __pyx_n_u_reduce_cython __pyx_string_tab[56] -#define __pyx_n_u_reduce_ex __pyx_string_tab[57] -#define __pyx_n_u_self __pyx_string_tab[58] -#define __pyx_kp_u_self_free_cannot_be_converted_to __pyx_string_tab[59] -#define __pyx_kp_u_self_malloc_cannot_be_converted __pyx_string_tab[60] -#define __pyx_n_u_set_name __pyx_string_tab[61] -#define __pyx_n_u_setstate __pyx_string_tab[62] -#define __pyx_n_u_setstate_cython __pyx_string_tab[63] -#define __pyx_n_u_spec __pyx_string_tab[64] -#define __pyx_kp_u_src_hunter_vendor__cymem_cymem_p __pyx_string_tab[65] -#define __pyx_kp_u_stringsource __pyx_string_tab[66] -#define __pyx_n_u_test __pyx_string_tab[67] -#define __pyx_n_u_warn __pyx_string_tab[68] -#define __pyx_n_u_warnings __pyx_string_tab[69] -/* #### Code section: module_state_clear ### */ -#if CYTHON_USE_MODULE_STATE -static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { - __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m); - if (!clear_module_state) return 0; - Py_CLEAR(clear_module_state->__pyx_d); - Py_CLEAR(clear_module_state->__pyx_b); - Py_CLEAR(clear_module_state->__pyx_cython_runtime); - Py_CLEAR(clear_module_state->__pyx_empty_tuple); - Py_CLEAR(clear_module_state->__pyx_empty_bytes); - Py_CLEAR(clear_module_state->__pyx_empty_unicode); - #ifdef __Pyx_CyFunction_USED - Py_CLEAR(clear_module_state->__pyx_CyFunctionType); - #endif - #ifdef __Pyx_FusedFunction_USED - Py_CLEAR(clear_module_state->__pyx_FusedFunctionType); - #endif - #if CYTHON_PEP489_MULTI_PHASE_INIT - __Pyx_State_RemoveModule(NULL); - #endif - Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); - Py_CLEAR(clear_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); - Py_CLEAR(clear_module_state->__pyx_k_); - Py_CLEAR(clear_module_state->__pyx_k__2); - Py_CLEAR(clear_module_state->__pyx_k__3); - Py_CLEAR(clear_module_state->__pyx_k__4); - for (int i=0; i<9; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<70; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } - return 0; -} -#endif -/* #### Code section: module_state_traverse ### */ -#if CYTHON_USE_MODULE_STATE -static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { - __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m); - if (!traverse_module_state) return 0; - Py_VISIT(traverse_module_state->__pyx_d); - Py_VISIT(traverse_module_state->__pyx_b); - Py_VISIT(traverse_module_state->__pyx_cython_runtime); - __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple); - __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes); - __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode); - #ifdef __Pyx_CyFunction_USED - Py_VISIT(traverse_module_state->__pyx_CyFunctionType); - #endif - #ifdef __Pyx_FusedFunction_USED - Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); - #endif - Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); - Py_VISIT(traverse_module_state->__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address); - Py_VISIT(traverse_module_state->__pyx_k_); - Py_VISIT(traverse_module_state->__pyx_k__2); - Py_VISIT(traverse_module_state->__pyx_k__3); - Py_VISIT(traverse_module_state->__pyx_k__4); - for (int i=0; i<9; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<70; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } - return 0; -} -#endif -/* #### Code section: module_code ### */ - -/* "hunter/vendor/_cymem/cymem.pyx":12 - * - * cdef class PyMalloc: - * cdef void _set(self, malloc_t malloc): # <<<<<<<<<<<<<< - * self.malloc = malloc - * -*/ - -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc) { - - /* "hunter/vendor/_cymem/cymem.pyx":13 - * cdef class PyMalloc: - * cdef void _set(self, malloc_t malloc): - * self.malloc = malloc # <<<<<<<<<<<<<< - * - * cdef PyMalloc WrapMalloc(malloc_t malloc): -*/ - __pyx_v_self->malloc = __pyx_v_malloc; - - /* "hunter/vendor/_cymem/cymem.pyx":12 - * - * cdef class PyMalloc: - * cdef void _set(self, malloc_t malloc): # <<<<<<<<<<<<<< - * self.malloc = malloc - * -*/ - - /* function exit code */ -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__, "PyMalloc.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } - const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len < 0)) return NULL; - if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_malloc_cannot_be_converted, 0, 0); - __PYX_ERR(1, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyMalloc.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__, "PyMalloc.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[1] = {0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 1)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - } - __pyx_v___pyx_state = values[0]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyMalloc.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_self), __pyx_v___pyx_state); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_malloc_cannot_be_converted, 0, 0); - __PYX_ERR(1, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyMalloc.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":15 - * self.malloc = malloc - * - * cdef PyMalloc WrapMalloc(malloc_t malloc): # <<<<<<<<<<<<<< - * cdef PyMalloc o = PyMalloc() - * o._set(malloc) -*/ - -static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc(__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t __pyx_v_malloc) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_o = 0; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - size_t __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("WrapMalloc", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":16 - * - * cdef PyMalloc WrapMalloc(malloc_t malloc): - * cdef PyMalloc o = PyMalloc() # <<<<<<<<<<<<<< - * o._set(malloc) - * return o -*/ - __pyx_t_2 = NULL; - __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - __pyx_t_4 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error) - __Pyx_GOTREF((PyObject *)__pyx_t_1); - } - __pyx_v_o = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":17 - * cdef PyMalloc WrapMalloc(malloc_t malloc): - * cdef PyMalloc o = PyMalloc() - * o._set(malloc) # <<<<<<<<<<<<<< - * return o - * -*/ - ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_v_o->__pyx_vtab)->_set(__pyx_v_o, __pyx_v_malloc); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 17, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":18 - * cdef PyMalloc o = PyMalloc() - * o._set(malloc) - * return o # <<<<<<<<<<<<<< - * - * cdef class PyFree: -*/ - __Pyx_XDECREF((PyObject *)__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_o); - __pyx_r = __pyx_v_o; - goto __pyx_L0; - - /* "hunter/vendor/_cymem/cymem.pyx":15 - * self.malloc = malloc - * - * cdef PyMalloc WrapMalloc(malloc_t malloc): # <<<<<<<<<<<<<< - * cdef PyMalloc o = PyMalloc() - * o._set(malloc) -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.WrapMalloc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_o); - __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":21 - * - * cdef class PyFree: - * cdef void _set(self, free_t free): # <<<<<<<<<<<<<< - * self.free = free - * -*/ - -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free) { - - /* "hunter/vendor/_cymem/cymem.pyx":22 - * cdef class PyFree: - * cdef void _set(self, free_t free): - * self.free = free # <<<<<<<<<<<<<< - * - * cdef PyFree WrapFree(free_t free): -*/ - __pyx_v_self->free = __pyx_v_free; - - /* "hunter/vendor/_cymem/cymem.pyx":21 - * - * cdef class PyFree: - * cdef void _set(self, free_t free): # <<<<<<<<<<<<<< - * self.free = free - * -*/ - - /* function exit code */ -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__, "PyFree.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } - const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len < 0)) return NULL; - if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_free_cannot_be_converted_to, 0, 0); - __PYX_ERR(1, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyFree.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__, "PyFree.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[1] = {0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 1)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - } - __pyx_v___pyx_state = values[0]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyFree.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_self), __pyx_v___pyx_state); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" # <<<<<<<<<<<<<< -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_self_free_cannot_be_converted_to, 0, 0); - __PYX_ERR(1, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.PyFree.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":24 - * self.free = free - * - * cdef PyFree WrapFree(free_t free): # <<<<<<<<<<<<<< - * cdef PyFree o = PyFree() - * o._set(free) -*/ - -static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree(__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t __pyx_v_free) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_o = 0; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - size_t __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("WrapFree", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":25 - * - * cdef PyFree WrapFree(free_t free): - * cdef PyFree o = PyFree() # <<<<<<<<<<<<<< - * o._set(free) - * return o -*/ - __pyx_t_2 = NULL; - __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - __pyx_t_4 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 25, __pyx_L1_error) - __Pyx_GOTREF((PyObject *)__pyx_t_1); - } - __pyx_v_o = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":26 - * cdef PyFree WrapFree(free_t free): - * cdef PyFree o = PyFree() - * o._set(free) # <<<<<<<<<<<<<< - * return o - * -*/ - ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_v_o->__pyx_vtab)->_set(__pyx_v_o, __pyx_v_free); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 26, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":27 - * cdef PyFree o = PyFree() - * o._set(free) - * return o # <<<<<<<<<<<<<< - * - * Default_Malloc = WrapMalloc(PyMem_Malloc) -*/ - __Pyx_XDECREF((PyObject *)__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_o); - __pyx_r = __pyx_v_o; - goto __pyx_L0; - - /* "hunter/vendor/_cymem/cymem.pyx":24 - * self.free = free - * - * cdef PyFree WrapFree(free_t free): # <<<<<<<<<<<<<< - * cdef PyFree o = PyFree() - * o._set(free) -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.WrapFree", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_o); - __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":49 - * """ - * - * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, # <<<<<<<<<<<<<< - * PyFree pyfree=Default_Free): - * self.size = 0 -*/ - -/* Python wrapper */ -static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc = 0; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree = 0; - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[2] = {0,0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; - #endif - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pymalloc,&__pyx_mstate_global->__pyx_n_u_pyfree,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 49, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 2: - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 49, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 1: - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 49, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 49, __pyx_L3_error) - if (!values[0]) values[0] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k_); - if (!values[1]) values[1] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__2); - } else { - switch (__pyx_nargs) { - case 2: - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 49, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 1: - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 49, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - if (!values[0]) values[0] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k_); - if (!values[1]) values[1] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__2); - } - __pyx_v_pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)values[0]); - __pyx_v_pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)values[1]); - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 49, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return -1; - __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pymalloc), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, 1, "pymalloc", 0))) __PYX_ERR(0, 49, __pyx_L1_error) - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pyfree), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, 1, "pyfree", 0))) __PYX_ERR(0, 50, __pyx_L1_error) - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v_pymalloc, __pyx_v_pyfree); - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __pyx_r = -1; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - goto __pyx_L7_cleaned_up; - __pyx_L0:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __pyx_L7_cleaned_up:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool___cinit__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":51 - * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, - * PyFree pyfree=Default_Free): - * self.size = 0 # <<<<<<<<<<<<<< - * self.addresses = {} - * self.refs = [] -*/ - __pyx_v_self->size = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":52 - * PyFree pyfree=Default_Free): - * self.size = 0 - * self.addresses = {} # <<<<<<<<<<<<<< - * self.refs = [] - * self.pymalloc = pymalloc -*/ - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 52, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v_self->addresses); - __Pyx_DECREF(__pyx_v_self->addresses); - __pyx_v_self->addresses = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":53 - * self.size = 0 - * self.addresses = {} - * self.refs = [] # <<<<<<<<<<<<<< - * self.pymalloc = pymalloc - * self.pyfree = pyfree -*/ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 53, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v_self->refs); - __Pyx_DECREF(__pyx_v_self->refs); - __pyx_v_self->refs = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":54 - * self.addresses = {} - * self.refs = [] - * self.pymalloc = pymalloc # <<<<<<<<<<<<<< - * self.pyfree = pyfree - * -*/ - __Pyx_INCREF((PyObject *)__pyx_v_pymalloc); - __Pyx_GIVEREF((PyObject *)__pyx_v_pymalloc); - __Pyx_GOTREF((PyObject *)__pyx_v_self->pymalloc); - __Pyx_DECREF((PyObject *)__pyx_v_self->pymalloc); - __pyx_v_self->pymalloc = __pyx_v_pymalloc; - - /* "hunter/vendor/_cymem/cymem.pyx":55 - * self.refs = [] - * self.pymalloc = pymalloc - * self.pyfree = pyfree # <<<<<<<<<<<<<< - * - * def __dealloc__(self): -*/ - __Pyx_INCREF((PyObject *)__pyx_v_pyfree); - __Pyx_GIVEREF((PyObject *)__pyx_v_pyfree); - __Pyx_GOTREF((PyObject *)__pyx_v_self->pyfree); - __Pyx_DECREF((PyObject *)__pyx_v_self->pyfree); - __pyx_v_self->pyfree = __pyx_v_pyfree; - - /* "hunter/vendor/_cymem/cymem.pyx":49 - * """ - * - * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, # <<<<<<<<<<<<<< - * PyFree pyfree=Default_Free): - * self.size = 0 -*/ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":57 - * self.pyfree = pyfree - * - * def __dealloc__(self): # <<<<<<<<<<<<<< - * cdef size_t addr - * if self.addresses is not None: -*/ - -/* Python wrapper */ -static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_3__dealloc__(PyObject *__pyx_v_self); /*proto*/ -static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_3__dealloc__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_2__dealloc__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - size_t __pyx_v_addr; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - Py_ssize_t __pyx_t_4; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; - size_t __pyx_t_8; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__dealloc__", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":59 - * def __dealloc__(self): - * cdef size_t addr - * if self.addresses is not None: # <<<<<<<<<<<<<< - * for addr in self.addresses: - * if addr != 0: -*/ - __pyx_t_1 = (__pyx_v_self->addresses != ((PyObject*)Py_None)); - if (__pyx_t_1) { - - /* "hunter/vendor/_cymem/cymem.pyx":60 - * cdef size_t addr - * if self.addresses is not None: - * for addr in self.addresses: # <<<<<<<<<<<<<< - * if addr != 0: - * self.pyfree.free(addr) -*/ - __pyx_t_3 = 0; - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(0, 60, __pyx_L1_error) - } - __pyx_t_6 = __Pyx_dict_iterator(__pyx_v_self->addresses, 1, ((PyObject *)NULL), (&__pyx_t_4), (&__pyx_t_5)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 60, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_2); - __pyx_t_2 = __pyx_t_6; - __pyx_t_6 = 0; - while (1) { - __pyx_t_7 = __Pyx_dict_iter_next(__pyx_t_2, __pyx_t_4, &__pyx_t_3, &__pyx_t_6, NULL, NULL, __pyx_t_5); - if (unlikely(__pyx_t_7 == 0)) break; - if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(0, 60, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = __Pyx_PyLong_As_size_t(__pyx_t_6); if (unlikely((__pyx_t_8 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 60, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_v_addr = __pyx_t_8; - - /* "hunter/vendor/_cymem/cymem.pyx":61 - * if self.addresses is not None: - * for addr in self.addresses: - * if addr != 0: # <<<<<<<<<<<<<< - * self.pyfree.free(addr) - * -*/ - __pyx_t_1 = (__pyx_v_addr != 0); - if (__pyx_t_1) { - - /* "hunter/vendor/_cymem/cymem.pyx":62 - * for addr in self.addresses: - * if addr != 0: - * self.pyfree.free(addr) # <<<<<<<<<<<<<< - * - * cdef void* alloc(self, size_t number, size_t elem_size) except NULL: -*/ - __pyx_v_self->pyfree->free(((void *)__pyx_v_addr)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 62, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":61 - * if self.addresses is not None: - * for addr in self.addresses: - * if addr != 0: # <<<<<<<<<<<<<< - * self.pyfree.free(addr) - * -*/ - } - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":59 - * def __dealloc__(self): - * cdef size_t addr - * if self.addresses is not None: # <<<<<<<<<<<<<< - * for addr in self.addresses: - * if addr != 0: -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":57 - * self.pyfree = pyfree - * - * def __dealloc__(self): # <<<<<<<<<<<<<< - * cdef size_t addr - * if self.addresses is not None: -*/ - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_WriteUnraisable("hunter.vendor._cymem.cymem.Pool.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); - __pyx_L0:; - __Pyx_RefNannyFinishContext(); -} - -/* "hunter/vendor/_cymem/cymem.pyx":64 - * self.pyfree.free(addr) - * - * cdef void* alloc(self, size_t number, size_t elem_size) except NULL: # <<<<<<<<<<<<<< - * """Allocate a 0-initialized number*elem_size-byte block of memory, and - * remember its address. The block will be freed when the Pool is garbage -*/ - -static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size) { - void *__pyx_v_p; - void *__pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - size_t __pyx_t_7; - void *__pyx_t_8; - PyObject *__pyx_t_9 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("alloc", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":70 - * WARN_ZERO_ALLOC was set to True. - * """ - * if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): # <<<<<<<<<<<<<< - * warnings.warn("Allocating zero bytes") - * cdef void* p = self.pymalloc.malloc(number * elem_size) -*/ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_WARN_ZERO_ALLOC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 70, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - } else { - __pyx_t_1 = __pyx_t_3; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_3 = (__pyx_v_number == 0); - if (!__pyx_t_3) { - } else { - __pyx_t_1 = __pyx_t_3; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_3 = (__pyx_v_elem_size == 0); - __pyx_t_1 = __pyx_t_3; - __pyx_L4_bool_binop_done:; - if (__pyx_t_1) { - - /* "hunter/vendor/_cymem/cymem.pyx":71 - * """ - * if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): - * warnings.warn("Allocating zero bytes") # <<<<<<<<<<<<<< - * cdef void* p = self.pymalloc.malloc(number * elem_size) - * if p == NULL: -*/ - __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_warnings); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 71, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_warn); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 71, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = 1; - #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6); - assert(__pyx_t_4); - PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx__function); - __Pyx_DECREF_SET(__pyx_t_6, __pyx__function); - __pyx_t_7 = 0; - } - #endif - { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Allocating_zero_bytes}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 71, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":70 - * WARN_ZERO_ALLOC was set to True. - * """ - * if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): # <<<<<<<<<<<<<< - * warnings.warn("Allocating zero bytes") - * cdef void* p = self.pymalloc.malloc(number * elem_size) -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":72 - * if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): - * warnings.warn("Allocating zero bytes") - * cdef void* p = self.pymalloc.malloc(number * elem_size) # <<<<<<<<<<<<<< - * if p == NULL: - * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) -*/ - __pyx_t_8 = __pyx_v_self->pymalloc->malloc((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 72, __pyx_L1_error) - __pyx_v_p = __pyx_t_8; - - /* "hunter/vendor/_cymem/cymem.pyx":73 - * warnings.warn("Allocating zero bytes") - * cdef void* p = self.pymalloc.malloc(number * elem_size) - * if p == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) - * memset(p, 0, number * elem_size) -*/ - __pyx_t_1 = (__pyx_v_p == NULL); - if (unlikely(__pyx_t_1)) { - - /* "hunter/vendor/_cymem/cymem.pyx":74 - * cdef void* p = self.pymalloc.malloc(number * elem_size) - * if p == NULL: - * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) # <<<<<<<<<<<<<< - * memset(p, 0, number * elem_size) - * self.addresses[p] = number * elem_size -*/ - __pyx_t_6 = NULL; - __Pyx_INCREF(__pyx_builtin_MemoryError); - __pyx_t_4 = __pyx_builtin_MemoryError; - __pyx_t_5 = __Pyx_PyLong_FromSize_t((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 74, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Error_assigning_d_bytes, __pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 74, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_9}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 74, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 74, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":73 - * warnings.warn("Allocating zero bytes") - * cdef void* p = self.pymalloc.malloc(number * elem_size) - * if p == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) - * memset(p, 0, number * elem_size) -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":75 - * if p == NULL: - * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) - * memset(p, 0, number * elem_size) # <<<<<<<<<<<<<< - * self.addresses[p] = number * elem_size - * self.size += number * elem_size -*/ - (void)(memset(__pyx_v_p, 0, (__pyx_v_number * __pyx_v_elem_size))); - - /* "hunter/vendor/_cymem/cymem.pyx":76 - * raise MemoryError("Error assigning %d bytes" % (number * elem_size)) - * memset(p, 0, number * elem_size) - * self.addresses[p] = number * elem_size # <<<<<<<<<<<<<< - * self.size += number * elem_size - * return p -*/ - __pyx_t_2 = __Pyx_PyLong_FromSize_t((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 76, __pyx_L1_error) - } - __pyx_t_4 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 76, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - if (unlikely((PyDict_SetItem(__pyx_v_self->addresses, __pyx_t_4, __pyx_t_2) < 0))) __PYX_ERR(0, 76, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":77 - * memset(p, 0, number * elem_size) - * self.addresses[p] = number * elem_size - * self.size += number * elem_size # <<<<<<<<<<<<<< - * return p - * -*/ - __pyx_v_self->size = (__pyx_v_self->size + (__pyx_v_number * __pyx_v_elem_size)); - - /* "hunter/vendor/_cymem/cymem.pyx":78 - * self.addresses[p] = number * elem_size - * self.size += number * elem_size - * return p # <<<<<<<<<<<<<< - * - * cdef void* realloc(self, void* p, size_t new_size) except NULL: -*/ - __pyx_r = __pyx_v_p; - goto __pyx_L0; - - /* "hunter/vendor/_cymem/cymem.pyx":64 - * self.pyfree.free(addr) - * - * cdef void* alloc(self, size_t number, size_t elem_size) except NULL: # <<<<<<<<<<<<<< - * """Allocate a 0-initialized number*elem_size-byte block of memory, and - * remember its address. The block will be freed when the Pool is garbage -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.alloc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":80 - * return p - * - * cdef void* realloc(self, void* p, size_t new_size) except NULL: # <<<<<<<<<<<<<< - * """Resizes the memory block pointed to by p to new_size bytes, returning - * a non-NULL pointer to the new block. new_size must be larger than the -*/ - -static void *__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p, size_t __pyx_v_new_size) { - void *__pyx_v_new_ptr; - void *__pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7[4]; - PyObject *__pyx_t_8 = NULL; - size_t __pyx_t_9; - void *__pyx_t_10; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("realloc", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":87 - * If p is not in the Pool or new_size is 0, a MemoryError is raised. - * """ - * if p not in self.addresses: # <<<<<<<<<<<<<< - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - * if new_size == 0: -*/ - __pyx_t_1 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); - __PYX_ERR(0, 87, __pyx_L1_error) - } - __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_t_1, __pyx_v_self->addresses, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 87, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(__pyx_t_2)) { - - /* "hunter/vendor/_cymem/cymem.pyx":88 - * """ - * if p not in self.addresses: - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) # <<<<<<<<<<<<<< - * if new_size == 0: - * raise ValueError("Realloc requires new_size > 0") -*/ - __pyx_t_3 = NULL; - __Pyx_INCREF(__pyx_builtin_ValueError); - __pyx_t_4 = __pyx_builtin_ValueError; - __pyx_t_5 = __Pyx_PyUnicode_From_size_t(((size_t)__pyx_v_p), 0, ' ', 'd'); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->addresses), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_Pointer; - __pyx_t_7[1] = __pyx_t_5; - __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_not_found_in_Pool; - __pyx_t_7[3] = __pyx_t_6; - __pyx_t_8 = __Pyx_PyUnicode_Join(__pyx_t_7, 4, 8 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + 19 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6), 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); - if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_8}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 88, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 88, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":87 - * If p is not in the Pool or new_size is 0, a MemoryError is raised. - * """ - * if p not in self.addresses: # <<<<<<<<<<<<<< - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - * if new_size == 0: -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":89 - * if p not in self.addresses: - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - * if new_size == 0: # <<<<<<<<<<<<<< - * raise ValueError("Realloc requires new_size > 0") - * assert new_size > self.addresses[p] -*/ - __pyx_t_2 = (__pyx_v_new_size == 0); - if (unlikely(__pyx_t_2)) { - - /* "hunter/vendor/_cymem/cymem.pyx":90 - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - * if new_size == 0: - * raise ValueError("Realloc requires new_size > 0") # <<<<<<<<<<<<<< - * assert new_size > self.addresses[p] - * cdef void* new_ptr = self.alloc(1, new_size) -*/ - __pyx_t_4 = NULL; - __Pyx_INCREF(__pyx_builtin_ValueError); - __pyx_t_8 = __pyx_builtin_ValueError; - __pyx_t_9 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Realloc_requires_new_size_0}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 90, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 90, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":89 - * if p not in self.addresses: - * raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - * if new_size == 0: # <<<<<<<<<<<<<< - * raise ValueError("Realloc requires new_size > 0") - * assert new_size > self.addresses[p] -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":91 - * if new_size == 0: - * raise ValueError("Realloc requires new_size > 0") - * assert new_size > self.addresses[p] # <<<<<<<<<<<<<< - * cdef void* new_ptr = self.alloc(1, new_size) - * if new_ptr == NULL: -*/ - #ifndef CYTHON_WITHOUT_ASSERTIONS - if (unlikely(__pyx_assertions_enabled())) { - __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 91, __pyx_L1_error) - } - __pyx_t_8 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_4 = __Pyx_PyDict_GetItem(__pyx_v_self->addresses, __pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_GT); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_2)) { - __Pyx_Raise(__pyx_builtin_AssertionError, 0, 0, 0); - __PYX_ERR(0, 91, __pyx_L1_error) - } - } - #else - if ((1)); else __PYX_ERR(0, 91, __pyx_L1_error) - #endif - - /* "hunter/vendor/_cymem/cymem.pyx":92 - * raise ValueError("Realloc requires new_size > 0") - * assert new_size > self.addresses[p] - * cdef void* new_ptr = self.alloc(1, new_size) # <<<<<<<<<<<<<< - * if new_ptr == NULL: - * raise MemoryError("Error reallocating to %d bytes" % new_size) -*/ - __pyx_t_10 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self->__pyx_vtab)->alloc(__pyx_v_self, 1, __pyx_v_new_size); if (unlikely(__pyx_t_10 == ((void *)0))) __PYX_ERR(0, 92, __pyx_L1_error) - __pyx_v_new_ptr = __pyx_t_10; - - /* "hunter/vendor/_cymem/cymem.pyx":93 - * assert new_size > self.addresses[p] - * cdef void* new_ptr = self.alloc(1, new_size) - * if new_ptr == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error reallocating to %d bytes" % new_size) - * memcpy(new_ptr, p, self.addresses[p]) -*/ - __pyx_t_2 = (__pyx_v_new_ptr == NULL); - if (unlikely(__pyx_t_2)) { - - /* "hunter/vendor/_cymem/cymem.pyx":94 - * cdef void* new_ptr = self.alloc(1, new_size) - * if new_ptr == NULL: - * raise MemoryError("Error reallocating to %d bytes" % new_size) # <<<<<<<<<<<<<< - * memcpy(new_ptr, p, self.addresses[p]) - * self.free(p) -*/ - __pyx_t_4 = NULL; - __Pyx_INCREF(__pyx_builtin_MemoryError); - __pyx_t_1 = __pyx_builtin_MemoryError; - __pyx_t_3 = __Pyx_PyLong_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Error_reallocating_to_d_bytes, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_9 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_6}; - __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 94, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - } - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(0, 94, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":93 - * assert new_size > self.addresses[p] - * cdef void* new_ptr = self.alloc(1, new_size) - * if new_ptr == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error reallocating to %d bytes" % new_size) - * memcpy(new_ptr, p, self.addresses[p]) -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":95 - * if new_ptr == NULL: - * raise MemoryError("Error reallocating to %d bytes" % new_size) - * memcpy(new_ptr, p, self.addresses[p]) # <<<<<<<<<<<<<< - * self.free(p) - * self.addresses[new_ptr] = new_size -*/ - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 95, __pyx_L1_error) - } - __pyx_t_8 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 95, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_self->addresses, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 95, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_9 = __Pyx_PyLong_As_size_t(__pyx_t_1); if (unlikely((__pyx_t_9 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 95, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (void)(memcpy(__pyx_v_new_ptr, __pyx_v_p, __pyx_t_9)); - - /* "hunter/vendor/_cymem/cymem.pyx":96 - * raise MemoryError("Error reallocating to %d bytes" % new_size) - * memcpy(new_ptr, p, self.addresses[p]) - * self.free(p) # <<<<<<<<<<<<<< - * self.addresses[new_ptr] = new_size - * return new_ptr -*/ - ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self->__pyx_vtab)->free(__pyx_v_self, __pyx_v_p); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 96, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":97 - * memcpy(new_ptr, p, self.addresses[p]) - * self.free(p) - * self.addresses[new_ptr] = new_size # <<<<<<<<<<<<<< - * return new_ptr - * -*/ - __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_new_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 97, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 97, __pyx_L1_error) - } - __pyx_t_8 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_new_ptr)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 97, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - if (unlikely((PyDict_SetItem(__pyx_v_self->addresses, __pyx_t_8, __pyx_t_1) < 0))) __PYX_ERR(0, 97, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":98 - * self.free(p) - * self.addresses[new_ptr] = new_size - * return new_ptr # <<<<<<<<<<<<<< - * - * cdef void free(self, void* p) except *: -*/ - __pyx_r = __pyx_v_new_ptr; - goto __pyx_L0; - - /* "hunter/vendor/_cymem/cymem.pyx":80 - * return p - * - * cdef void* realloc(self, void* p, size_t new_size) except NULL: # <<<<<<<<<<<<<< - * """Resizes the memory block pointed to by p to new_size bytes, returning - * a non-NULL pointer to the new block. new_size must be larger than the -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.realloc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":100 - * return new_ptr - * - * cdef void free(self, void* p) except *: # <<<<<<<<<<<<<< - * """Frees the memory block pointed to by p, which must have been returned - * by a previous call to Pool.alloc. You don't necessarily need to free -*/ - -static void __pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, void *__pyx_v_p) { - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - size_t __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("free", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":108 - * If p is not in Pool.addresses, a KeyError is raised. - * """ - * self.size -= self.addresses.pop(p) # <<<<<<<<<<<<<< - * self.pyfree.free(p) - * -*/ - __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(__pyx_v_self->addresses == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "pop"); - __PYX_ERR(0, 108, __pyx_L1_error) - } - __pyx_t_2 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_p)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyDict_Pop(__pyx_v_self->addresses, __pyx_t_2, ((PyObject *)NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceSubtract(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_4 = __Pyx_PyLong_As_size_t(__pyx_t_2); if (unlikely((__pyx_t_4 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_self->size = __pyx_t_4; - - /* "hunter/vendor/_cymem/cymem.pyx":109 - * """ - * self.size -= self.addresses.pop(p) - * self.pyfree.free(p) # <<<<<<<<<<<<<< - * - * def own_pyref(self, object py_ref): -*/ - __pyx_v_self->pyfree->free(__pyx_v_p); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 109, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":100 - * return new_ptr - * - * cdef void free(self, void* p) except *: # <<<<<<<<<<<<<< - * """Frees the memory block pointed to by p, which must have been returned - * by a previous call to Pool.alloc. You don't necessarily need to free -*/ - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.free", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_L0:; - __Pyx_RefNannyFinishContext(); -} - -/* "hunter/vendor/_cymem/cymem.pyx":111 - * self.pyfree.free(p) - * - * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< - * self.refs.append(py_ref) - * -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref, "Pool.own_pyref(self, py_ref)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref = {"own_pyref", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - PyObject *__pyx_v_py_ref = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[1] = {0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("own_pyref (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_py_ref,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 111, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 111, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "own_pyref", 0) < 0) __PYX_ERR(0, 111, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("own_pyref", 1, 1, 1, i); __PYX_ERR(0, 111, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 1)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 111, __pyx_L3_error) - } - __pyx_v_py_ref = values[0]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("own_pyref", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 111, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.own_pyref", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v_py_ref); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, PyObject *__pyx_v_py_ref) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("own_pyref", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":112 - * - * def own_pyref(self, object py_ref): - * self.refs.append(py_ref) # <<<<<<<<<<<<<< - * - * -*/ - if (unlikely(__pyx_v_self->refs == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "append"); - __PYX_ERR(0, 112, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_PyList_Append(__pyx_v_self->refs, __pyx_v_py_ref); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 112, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":111 - * self.pyfree.free(p) - * - * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< - * self.refs.append(py_ref) - * -*/ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.own_pyref", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pxd":18 - * - * cdef class Pool: - * cdef readonly size_t size # <<<<<<<<<<<<<< - * cdef readonly dict addresses - * cdef readonly list refs -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4size_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4size_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4size___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_FromSize_t(__pyx_v_self->size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 18, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.size.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pxd":19 - * cdef class Pool: - * cdef readonly size_t size - * cdef readonly dict addresses # <<<<<<<<<<<<<< - * cdef readonly list refs - * cdef readonly PyMalloc pymalloc -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_self->addresses); - __pyx_r = __pyx_v_self->addresses; - goto __pyx_L0; - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pxd":20 - * cdef readonly size_t size - * cdef readonly dict addresses - * cdef readonly list refs # <<<<<<<<<<<<<< - * cdef readonly PyMalloc pymalloc - * cdef readonly PyFree pyfree -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_self->refs); - __pyx_r = __pyx_v_self->refs; - goto __pyx_L0; - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pxd":21 - * cdef readonly dict addresses - * cdef readonly list refs - * cdef readonly PyMalloc pymalloc # <<<<<<<<<<<<<< - * cdef readonly PyFree pyfree - * -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_self->pymalloc); - __pyx_r = ((PyObject *)__pyx_v_self->pymalloc); - goto __pyx_L0; - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pxd":22 - * cdef readonly list refs - * cdef readonly PyMalloc pymalloc - * cdef readonly PyFree pyfree # <<<<<<<<<<<<<< - * - * cdef void* alloc(self, size_t number, size_t size) except NULL -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_self->pyfree); - __pyx_r = ((PyObject *)__pyx_v_self->pyfree); - goto __pyx_L0; - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__, "Pool.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } - const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len < 0)) return NULL; - if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(1, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__, "Pool.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[1] = {0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 1)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - } - __pyx_v___pyx_state = values[0]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_self), __pyx_v___pyx_state); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(1, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Pool.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":133 - * pyfree (PyFree): The free to use (default uses PyMem_Free). - * """ - * def __cinit__(self, size_t number, size_t elem_size, # <<<<<<<<<<<<<< - * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): - * self.ptr = NULL -*/ - -/* Python wrapper */ -static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - CYTHON_UNUSED size_t __pyx_v_number; - CYTHON_UNUSED size_t __pyx_v_elem_size; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc = 0; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree = 0; - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[4] = {0,0,0,0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; - #endif - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_number,&__pyx_mstate_global->__pyx_n_u_elem_size,&__pyx_mstate_global->__pyx_n_u_pymalloc,&__pyx_mstate_global->__pyx_n_u_pyfree,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 133, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 4: - values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 133, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 3: - values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 133, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 2: - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 133, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 1: - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 133, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 133, __pyx_L3_error) - if (!values[2]) values[2] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__3); - if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__4); - for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, i); __PYX_ERR(0, 133, __pyx_L3_error) } - } - } else { - switch (__pyx_nargs) { - case 4: - values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 133, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 3: - values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 133, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 2: - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 133, __pyx_L3_error) - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 133, __pyx_L3_error) - break; - default: goto __pyx_L5_argtuple_error; - } - if (!values[2]) values[2] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__3); - if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)__pyx_mstate_global->__pyx_k__4); - } - __pyx_v_number = __Pyx_PyLong_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 133, __pyx_L3_error) - __pyx_v_elem_size = __Pyx_PyLong_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 133, __pyx_L3_error) - __pyx_v_pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)values[2]); - __pyx_v_pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)values[3]); - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 133, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return -1; - __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pymalloc), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, 1, "pymalloc", 0))) __PYX_ERR(0, 134, __pyx_L1_error) - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pyfree), __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, 1, "pyfree", 0))) __PYX_ERR(0, 134, __pyx_L1_error) - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v_number, __pyx_v_elem_size, __pyx_v_pymalloc, __pyx_v_pyfree); - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __pyx_r = -1; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - goto __pyx_L7_cleaned_up; - __pyx_L0:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __pyx_L7_cleaned_up:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address___cinit__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED size_t __pyx_v_number, CYTHON_UNUSED size_t __pyx_v_elem_size, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_v_pymalloc, struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_v_pyfree) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":135 - * def __cinit__(self, size_t number, size_t elem_size, - * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): - * self.ptr = NULL # <<<<<<<<<<<<<< - * self.pymalloc = pymalloc - * self.pyfree = pyfree -*/ - __pyx_v_self->ptr = NULL; - - /* "hunter/vendor/_cymem/cymem.pyx":136 - * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): - * self.ptr = NULL - * self.pymalloc = pymalloc # <<<<<<<<<<<<<< - * self.pyfree = pyfree - * -*/ - __Pyx_INCREF((PyObject *)__pyx_v_pymalloc); - __Pyx_GIVEREF((PyObject *)__pyx_v_pymalloc); - __Pyx_GOTREF((PyObject *)__pyx_v_self->pymalloc); - __Pyx_DECREF((PyObject *)__pyx_v_self->pymalloc); - __pyx_v_self->pymalloc = __pyx_v_pymalloc; - - /* "hunter/vendor/_cymem/cymem.pyx":137 - * self.ptr = NULL - * self.pymalloc = pymalloc - * self.pyfree = pyfree # <<<<<<<<<<<<<< - * - * def __init__(self, size_t number, size_t elem_size): -*/ - __Pyx_INCREF((PyObject *)__pyx_v_pyfree); - __Pyx_GIVEREF((PyObject *)__pyx_v_pyfree); - __Pyx_GOTREF((PyObject *)__pyx_v_self->pyfree); - __Pyx_DECREF((PyObject *)__pyx_v_self->pyfree); - __pyx_v_self->pyfree = __pyx_v_pyfree; - - /* "hunter/vendor/_cymem/cymem.pyx":133 - * pyfree (PyFree): The free to use (default uses PyMem_Free). - * """ - * def __cinit__(self, size_t number, size_t elem_size, # <<<<<<<<<<<<<< - * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): - * self.ptr = NULL -*/ - - /* function exit code */ - __pyx_r = 0; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":139 - * self.pyfree = pyfree - * - * def __init__(self, size_t number, size_t elem_size): # <<<<<<<<<<<<<< - * self.ptr = self.pymalloc.malloc(number * elem_size) - * if self.ptr == NULL: -*/ - -/* Python wrapper */ -static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - size_t __pyx_v_number; - size_t __pyx_v_elem_size; - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[2] = {0,0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1; - #endif - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_number,&__pyx_mstate_global->__pyx_n_u_elem_size,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 139, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 2: - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 139, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 1: - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 139, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 139, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, i); __PYX_ERR(0, 139, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 2)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 139, __pyx_L3_error) - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 139, __pyx_L3_error) - } - __pyx_v_number = __Pyx_PyLong_As_size_t(values[0]); if (unlikely((__pyx_v_number == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 139, __pyx_L3_error) - __pyx_v_elem_size = __Pyx_PyLong_As_size_t(values[1]); if (unlikely((__pyx_v_elem_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 139, __pyx_L3_error) - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 139, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return -1; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v_number, __pyx_v_elem_size); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_2__init__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, size_t __pyx_v_number, size_t __pyx_v_elem_size) { - int __pyx_r; - __Pyx_RefNannyDeclarations - void *__pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - size_t __pyx_t_8; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__init__", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":140 - * - * def __init__(self, size_t number, size_t elem_size): - * self.ptr = self.pymalloc.malloc(number * elem_size) # <<<<<<<<<<<<<< - * if self.ptr == NULL: - * raise MemoryError("Error assigning %d bytes" % number * elem_size) -*/ - __pyx_t_1 = __pyx_v_self->pymalloc->malloc((__pyx_v_number * __pyx_v_elem_size)); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 140, __pyx_L1_error) - __pyx_v_self->ptr = __pyx_t_1; - - /* "hunter/vendor/_cymem/cymem.pyx":141 - * def __init__(self, size_t number, size_t elem_size): - * self.ptr = self.pymalloc.malloc(number * elem_size) - * if self.ptr == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error assigning %d bytes" % number * elem_size) - * memset(self.ptr, 0, number * elem_size) -*/ - __pyx_t_2 = (__pyx_v_self->ptr == NULL); - if (unlikely(__pyx_t_2)) { - - /* "hunter/vendor/_cymem/cymem.pyx":142 - * self.ptr = self.pymalloc.malloc(number * elem_size) - * if self.ptr == NULL: - * raise MemoryError("Error assigning %d bytes" % number * elem_size) # <<<<<<<<<<<<<< - * memset(self.ptr, 0, number * elem_size) - * -*/ - __pyx_t_4 = NULL; - __Pyx_INCREF(__pyx_builtin_MemoryError); - __pyx_t_5 = __pyx_builtin_MemoryError; - __pyx_t_6 = __Pyx_PyLong_FromSize_t(__pyx_v_number); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Error_assigning_d_bytes, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PySequence_Multiply(__pyx_t_7, __pyx_v_elem_size); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_6}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 142, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - } - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(0, 142, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":141 - * def __init__(self, size_t number, size_t elem_size): - * self.ptr = self.pymalloc.malloc(number * elem_size) - * if self.ptr == NULL: # <<<<<<<<<<<<<< - * raise MemoryError("Error assigning %d bytes" % number * elem_size) - * memset(self.ptr, 0, number * elem_size) -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":143 - * if self.ptr == NULL: - * raise MemoryError("Error assigning %d bytes" % number * elem_size) - * memset(self.ptr, 0, number * elem_size) # <<<<<<<<<<<<<< - * - * property addr: -*/ - (void)(memset(__pyx_v_self->ptr, 0, (__pyx_v_number * __pyx_v_elem_size))); - - /* "hunter/vendor/_cymem/cymem.pyx":139 - * self.pyfree = pyfree - * - * def __init__(self, size_t number, size_t elem_size): # <<<<<<<<<<<<<< - * self.ptr = self.pymalloc.malloc(number * elem_size) - * if self.ptr == NULL: -*/ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":146 - * - * property addr: - * def __get__(self): # <<<<<<<<<<<<<< - * return self.ptr - * -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4addr___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "hunter/vendor/_cymem/cymem.pyx":147 - * property addr: - * def __get__(self): - * return self.ptr # <<<<<<<<<<<<<< - * - * def __dealloc__(self): -*/ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_FromSize_t(((size_t)__pyx_v_self->ptr)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 147, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "hunter/vendor/_cymem/cymem.pyx":146 - * - * property addr: - * def __get__(self): # <<<<<<<<<<<<<< - * return self.ptr - * -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.addr.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pyx":149 - * return self.ptr - * - * def __dealloc__(self): # <<<<<<<<<<<<<< - * if self.ptr != NULL: - * self.pyfree.free(self.ptr) -*/ - -/* Python wrapper */ -static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(PyObject *__pyx_v_self); /*proto*/ -static void __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -static void __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_4__dealloc__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { - int __pyx_t_1; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":150 - * - * def __dealloc__(self): - * if self.ptr != NULL: # <<<<<<<<<<<<<< - * self.pyfree.free(self.ptr) -*/ - __pyx_t_1 = (__pyx_v_self->ptr != NULL); - if (__pyx_t_1) { - - /* "hunter/vendor/_cymem/cymem.pyx":151 - * def __dealloc__(self): - * if self.ptr != NULL: - * self.pyfree.free(self.ptr) # <<<<<<<<<<<<<< -*/ - __pyx_v_self->pyfree->free(__pyx_v_self->ptr); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 151, __pyx_L1_error) - - /* "hunter/vendor/_cymem/cymem.pyx":150 - * - * def __dealloc__(self): - * if self.ptr != NULL: # <<<<<<<<<<<<<< - * self.pyfree.free(self.ptr) -*/ - } - - /* "hunter/vendor/_cymem/cymem.pyx":149 - * return self.ptr - * - * def __dealloc__(self): # <<<<<<<<<<<<<< - * if self.ptr != NULL: - * self.pyfree.free(self.ptr) -*/ - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_WriteUnraisable("hunter.vendor._cymem.cymem.Address.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); - __pyx_L0:; -} - -/* "hunter/vendor/_cymem/cymem.pxd":31 - * cdef class Address: - * cdef void* ptr - * cdef readonly PyMalloc pymalloc # <<<<<<<<<<<<<< - * cdef readonly PyFree pyfree -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_self->pymalloc); - __pyx_r = ((PyObject *)__pyx_v_self->pymalloc); - goto __pyx_L0; - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/vendor/_cymem/cymem.pxd":32 - * cdef void* ptr - * cdef readonly PyMalloc pymalloc - * cdef readonly PyFree pyfree # <<<<<<<<<<<<<< -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(PyObject *__pyx_v_self) { - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree___get__(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_self->pyfree); - __pyx_r = ((PyObject *)__pyx_v_self->pyfree); - goto __pyx_L0; - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__, "Address.__reduce_cython__(self)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } - const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len < 0)) return NULL; - if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(1, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -PyDoc_STRVAR(__pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__, "Address.__setstate_cython__(self, __pyx_state)"); -static PyMethodDef __pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}; -static PyObject *__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[1] = {0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(1, 3, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(1, 3, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 1)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(1, 3, __pyx_L3_error) - } - __pyx_v___pyx_state = values[0]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__(((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)__pyx_v_self), __pyx_v___pyx_state); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" # <<<<<<<<<<<<<< -*/ - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0); - __PYX_ERR(1, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter.vendor._cymem.cymem.Address.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} -/* #### Code section: module_exttypes ### */ -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)o); - p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - return o; -} - -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc(PyObject *o) { - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !__Pyx_PyObject_GC_IsFinalized(o))) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif - #if CYTHON_USE_TYPE_SLOTS - (*Py_TYPE(o)->tp_free)(o); - #else - { - freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); - if (tp_free) tp_free(o); - } - #endif -} - -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc[] = { - {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc___reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_2__setstate_cython__}, - {0, 0, 0, 0} -}; -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec = { - "hunter.vendor._cymem.cymem.PyMalloc", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc = { - PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""PyMalloc", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - 0, /*tp_as_async*/ - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - 0, /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyMalloc, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if __PYX_NEED_TP_PRINT_SLOT == 1 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if PY_VERSION_HEX >= 0x030d00A4 - 0, /*tp_versions_used*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree; - -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)o); - p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; - return o; -} - -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree(PyObject *o) { - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !__Pyx_PyObject_GC_IsFinalized(o))) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif - #if CYTHON_USE_TYPE_SLOTS - (*Py_TYPE(o)->tp_free)(o); - #else - { - freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); - if (tp_free) tp_free(o); - } - #endif -} - -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree[] = { - {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree___reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_6PyFree_2__setstate_cython__}, - {0, 0, 0, 0} -}; -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec = { - "hunter.vendor._cymem.cymem.PyFree", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree = { - PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""PyFree", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - 0, /*tp_as_async*/ - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - 0, /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_PyFree, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if __PYX_NEED_TP_PRINT_SLOT == 1 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if PY_VERSION_HEX >= 0x030d00A4 - 0, /*tp_versions_used*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool; - -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)o); - p->__pyx_vtab = __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool; - p->addresses = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->refs = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); - p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); - if (unlikely(__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_1__cinit__(o, a, k) < 0)) goto bad; - return o; - bad: - Py_DECREF(o); o = 0; - return NULL; -} - -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif - PyObject_GC_UnTrack(o); - { - PyObject *etype, *eval, *etb; - PyErr_Fetch(&etype, &eval, &etb); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); - __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_3__dealloc__(o); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); - PyErr_Restore(etype, eval, etb); - } - Py_CLEAR(p->addresses); - Py_CLEAR(p->refs); - Py_CLEAR(p->pymalloc); - Py_CLEAR(p->pyfree); - #if CYTHON_USE_TYPE_SLOTS - (*Py_TYPE(o)->tp_free)(o); - #else - { - freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); - if (tp_free) tp_free(o); - } - #endif -} - -static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)o; - { - e = __Pyx_call_type_traverse(o, 1, v, a); - if (e) return e; - } - if (p->addresses) { - e = (*v)(p->addresses, a); if (e) return e; - } - if (p->refs) { - e = (*v)(p->refs, a); if (e) return e; - } - if (p->pymalloc) { - e = (*v)(((PyObject *)p->pymalloc), a); if (e) return e; - } - if (p->pyfree) { - e = (*v)(((PyObject *)p->pyfree), a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Pool(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)o; - tmp = ((PyObject*)p->addresses); - p->addresses = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->refs); - p->refs = ((PyObject*)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->pymalloc); - p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->pyfree); - p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_size(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4size_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_addresses(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9addresses_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_refs(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_4refs_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pymalloc(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_8pymalloc_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pyfree(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_6pyfree_1__get__(o); -} - -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Pool[] = { - {"own_pyref", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_4own_pyref}, - {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_6__reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_4Pool_8__setstate_cython__}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Pool[] = { - {"size", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_size, 0, 0, 0}, - {"addresses", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_addresses, 0, 0, 0}, - {"refs", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_refs, 0, 0, 0}, - {"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pymalloc, 0, 0, 0}, - {"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_4Pool_pyfree, 0, 0, 0}, - {0, 0, 0, 0, 0} -}; -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool}, - {Py_tp_doc, (void *)PyDoc_STR("Track allocated memory addresses, and free them all when the Pool is\n garbage collected. This provides an easy way to avoid memory leaks, and\n removes the need for deallocation functions for complicated structs.\n\n >>> from cymem.cymem cimport Pool\n >>> cdef Pool mem = Pool()\n >>> data1 = mem.alloc(10, sizeof(int))\n >>> data2 = mem.alloc(12, sizeof(float))\n\n Attributes:\n size (size_t): The current size (in bytes) allocated by the pool.\n addresses (dict): The currently allocated addresses and their sizes. Read-only.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n ")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Pool}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Pool}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_Pool}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Pool}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec = { - "hunter.vendor._cymem.cymem.Pool", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool = { - PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""Pool", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Pool, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - 0, /*tp_as_async*/ - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("Track allocated memory addresses, and free them all when the Pool is\n garbage collected. This provides an easy way to avoid memory leaks, and\n removes the need for deallocation functions for complicated structs.\n\n >>> from cymem.cymem cimport Pool\n >>> cdef Pool mem = Pool()\n >>> data1 = mem.alloc(10, sizeof(int))\n >>> data2 = mem.alloc(12, sizeof(float))\n\n Attributes:\n size (size_t): The current size (in bytes) allocated by the pool.\n addresses (dict): The currently allocated addresses and their sizes. Read-only.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).\n "), /*tp_doc*/ - __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Pool, /*tp_traverse*/ - __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Pool, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Pool, /*tp_methods*/ - 0, /*tp_members*/ - __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Pool, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Pool, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if __PYX_NEED_TP_PRINT_SLOT == 1 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if PY_VERSION_HEX >= 0x030d00A4 - 0, /*tp_versions_used*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif - -static PyObject *__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - if (likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - #endif - p = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o); - p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); - p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); - if (unlikely(__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_1__cinit__(o, a, k) < 0)) goto bad; - return o; - bad: - Py_DECREF(o); o = 0; - return NULL; -} - -static void __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) { - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - } - #endif - PyObject_GC_UnTrack(o); - { - PyObject *etype, *eval, *etb; - PyErr_Fetch(&etype, &eval, &etb); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); - __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_5__dealloc__(o); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); - PyErr_Restore(etype, eval, etb); - } - Py_CLEAR(p->pymalloc); - Py_CLEAR(p->pyfree); - #if CYTHON_USE_TYPE_SLOTS - (*Py_TYPE(o)->tp_free)(o); - #else - { - freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); - if (tp_free) tp_free(o); - } - #endif -} - -static int __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; - { - e = __Pyx_call_type_traverse(o, 1, v, a); - if (e) return e; - } - if (p->pymalloc) { - e = (*v)(((PyObject *)p->pymalloc), a); if (e) return e; - } - if (p->pyfree) { - e = (*v)(((PyObject *)p->pyfree), a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address(PyObject *o) { - PyObject* tmp; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *p = (struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address *)o; - tmp = ((PyObject*)p->pymalloc); - p->pymalloc = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->pyfree); - p->pyfree = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_4addr_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_8pymalloc_1__get__(o); -} - -static PyObject *__pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_6pyfree_1__get__(o); -} - -static PyMethodDef __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address[] = { - {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_6__reduce_cython__}, - {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_6hunter_6vendor_6_cymem_5cymem_7Address_8__setstate_cython__}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address[] = { - {"addr", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_addr, 0, 0, 0}, - {"pymalloc", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pymalloc, 0, 0, 0}, - {"pyfree", __pyx_getprop_6hunter_6vendor_6_cymem_5cymem_7Address_pyfree, 0, 0, 0}, - {0, 0, 0, 0, 0} -}; -#if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_doc, (void *)PyDoc_STR("Address(size_t number, size_t elem_size)\n\nA block of number * size-bytes of 0-initialized memory, tied to a Python\nref-counted object. When the object is garbage collected, the memory is freed.\n\n>>> from cymem.cymem cimport Address\n>>> cdef Address address = Address(10, sizeof(double))\n>>> d10 = address.ptr\n\nArgs:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\nAttributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free).")}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_methods, (void *)__pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_getset, (void *)__pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address}, - {Py_tp_init, (void *)__pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__}, - {Py_tp_new, (void *)__pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address}, - {0, 0}, -}; -static PyType_Spec __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec = { - "hunter.vendor._cymem.cymem.Address", - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), - 0, - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, - __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_slots, -}; -#else - -static PyTypeObject __pyx_type_6hunter_6vendor_6_cymem_5cymem_Address = { - PyVarObject_HEAD_INIT(0, 0) - "hunter.vendor._cymem.cymem.""Address", /*tp_name*/ - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - 0, /*tp_as_async*/ - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("Address(size_t number, size_t elem_size)\n\nA block of number * size-bytes of 0-initialized memory, tied to a Python\nref-counted object. When the object is garbage collected, the memory is freed.\n\n>>> from cymem.cymem cimport Address\n>>> cdef Address address = Address(10, sizeof(double))\n>>> d10 = address.ptr\n\nArgs:\n number (size_t): The number of elements in the memory block.\n elem_size (size_t): The size of each element.\n\nAttributes:\n ptr (void*): Pointer to the memory block.\n addr (size_t): Read-only size_t cast of the pointer.\n pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc).\n pyfree (PyFree): The free to use (default uses PyMem_Free)."), /*tp_doc*/ - __pyx_tp_traverse_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_traverse*/ - __pyx_tp_clear_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_methods*/ - 0, /*tp_members*/ - __pyx_getsets_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - #if !CYTHON_USE_TYPE_SPECS - 0, /*tp_dictoffset*/ - #endif - __pyx_pw_6hunter_6vendor_6_cymem_5cymem_7Address_3__init__, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6hunter_6vendor_6_cymem_5cymem_Address, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if CYTHON_USE_TP_FINALIZE - 0, /*tp_finalize*/ - #else - NULL, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if __PYX_NEED_TP_PRINT_SLOT == 1 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030C0000 - 0, /*tp_watched*/ - #endif - #if PY_VERSION_HEX >= 0x030d00A4 - 0, /*tp_versions_used*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 - 0, /*tp_pypy_flags*/ - #endif -}; -#endif - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; -/* #### Code section: initfunc_declarations ### */ -static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate); /*proto*/ -/* #### Code section: init_module ### */ - -static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); - /*--- Global init code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_variable_export_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); - /*--- Variable export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); - /*--- Function export code ---*/ - if (__Pyx_ExportFunction("WrapMalloc", (void (*)(void))__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc, "struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *(__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) - if (__Pyx_ExportFunction("WrapFree", (void (*)(void))__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree, "struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *(__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); - /*--- Type init code ---*/ - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyMalloc._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_8PyMalloc__set; - #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(0, 11, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) - #else - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc->tp_getattro = PyObject_GenericGetAttr; - } - #endif - if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) - if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_PyMalloc, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) < 0) __PYX_ERR(0, 11, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_PyFree._set = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_6PyFree__set; - #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(0, 20, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) - #else - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_PyFree; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree->tp_getattro = PyObject_GenericGetAttr; - } - #endif - if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) - if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_PyFree, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) < 0) __PYX_ERR(0, 20, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.alloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_alloc; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.free = (void (*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_free; - __pyx_vtable_6hunter_6vendor_6_cymem_5cymem_Pool.realloc = (void *(*)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t))__pyx_f_6hunter_6vendor_6_cymem_5cymem_4Pool_realloc; - #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(0, 32, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) - #else - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Pool; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool->tp_getattro = PyObject_GenericGetAttr; - } - #endif - if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) - if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Pool, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) < 0) __PYX_ERR(0, 32, __pyx_L1_error) - #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address)) __PYX_ERR(0, 115, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address_spec, __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) - #else - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = &__pyx_type_6hunter_6vendor_6_cymem_5cymem_Address; - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - #endif - #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) - #endif - #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address->tp_getattro = PyObject_GenericGetAttr; - } - #endif - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Address, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) < 0) __PYX_ERR(0, 115, __pyx_L1_error) - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); - /*--- Type import code ---*/ - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), - #elif CYTHON_COMPILING_IN_LIMITED_API - 0, 0, - #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_variable_import_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); - /*--- Variable import code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); - /*--- Function import code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -#if CYTHON_PEP489_MULTI_PHASE_INIT -static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ -static int __pyx_pymod_exec_cymem(PyObject* module); /*proto*/ -static PyModuleDef_Slot __pyx_moduledef_slots[] = { - {Py_mod_create, (void*)__pyx_pymod_create}, - {Py_mod_exec, (void*)__pyx_pymod_exec_cymem}, - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - {Py_mod_gil, Py_MOD_GIL_USED}, - #endif - #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE - {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, - #endif - {0, NULL} -}; -#endif - -#ifdef __cplusplus -namespace { - struct PyModuleDef __pyx_moduledef = - #else - static struct PyModuleDef __pyx_moduledef = - #endif - { - PyModuleDef_HEAD_INIT, - "cymem", - 0, /* m_doc */ - #if CYTHON_USE_MODULE_STATE - sizeof(__pyx_mstatetype), /* m_size */ - #else - (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1, /* m_size */ - #endif - __pyx_methods /* m_methods */, - #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_moduledef_slots, /* m_slots */ - #else - NULL, /* m_reload */ - #endif - #if CYTHON_USE_MODULE_STATE - __pyx_m_traverse, /* m_traverse */ - __pyx_m_clear, /* m_clear */ - NULL /* m_free */ - #else - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ - #endif - }; - #ifdef __cplusplus -} /* anonymous namespace */ -#endif - -/* PyModInitFuncType */ -#ifndef CYTHON_NO_PYINIT_EXPORT - #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC -#else - #ifdef __cplusplus - #define __Pyx_PyMODINIT_FUNC extern "C" PyObject * - #else - #define __Pyx_PyMODINIT_FUNC PyObject * - #endif -#endif - -__Pyx_PyMODINIT_FUNC PyInit_cymem(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC PyInit_cymem(void) -#if CYTHON_PEP489_MULTI_PHASE_INIT -{ - return PyModuleDef_Init(&__pyx_moduledef); -} -/* ModuleCreationPEP489 */ -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 -static PY_INT64_T __Pyx_GetCurrentInterpreterId(void) { - { - PyObject *module = PyImport_ImportModule("_interpreters"); // 3.13+ I think - if (!module) { - PyErr_Clear(); // just try the 3.8-3.12 version - module = PyImport_ImportModule("_xxsubinterpreters"); - if (!module) goto bad; - } - PyObject *current = PyObject_CallMethod(module, "get_current", NULL); - Py_DECREF(module); - if (!current) goto bad; - if (PyTuple_Check(current)) { - PyObject *new_current = PySequence_GetItem(current, 0); - Py_DECREF(current); - current = new_current; - if (!new_current) goto bad; - } - long long as_c_int = PyLong_AsLongLong(current); - Py_DECREF(current); - return as_c_int; - } - bad: - PySys_WriteStderr("__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n"); - return -1; -} -#endif -#if !CYTHON_USE_MODULE_STATE -static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { - static PY_INT64_T main_interpreter_id = -1; -#if CYTHON_COMPILING_IN_GRAAL - PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get()); -#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x03090000 - PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get()); -#elif CYTHON_COMPILING_IN_LIMITED_API - PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId(); -#else - PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); -#endif - if (unlikely(current_id == -1)) { - return -1; - } - if (main_interpreter_id == -1) { - main_interpreter_id = current_id; - return 0; - } else if (unlikely(main_interpreter_id != current_id)) { - PyErr_SetString( - PyExc_ImportError, - "Interpreter change detected - this module can only be loaded into one interpreter per process."); - return -1; - } - return 0; -} -#endif -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) -{ - PyObject *value = PyObject_GetAttrString(spec, from_name); - int result = 0; - if (likely(value)) { - if (allow_none || value != Py_None) { - result = PyDict_SetItemString(moddict, to_name, value); - } - Py_DECREF(value); - } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { - PyErr_Clear(); - } else { - result = -1; - } - return result; -} -static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) { - PyObject *module = NULL, *moddict, *modname; - CYTHON_UNUSED_VAR(def); - #if !CYTHON_USE_MODULE_STATE - if (__Pyx_check_single_interpreter()) - return NULL; - #endif - if (__pyx_m) - return __Pyx_NewRef(__pyx_m); - modname = PyObject_GetAttrString(spec, "name"); - if (unlikely(!modname)) goto bad; - module = PyModule_NewObject(modname); - Py_DECREF(modname); - if (unlikely(!module)) goto bad; - moddict = PyModule_GetDict(module); - if (unlikely(!moddict)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__", 0) < 0)) goto bad; - return module; -bad: - Py_XDECREF(module); - return NULL; -} - - -static CYTHON_SMALL_CODE int __pyx_pymod_exec_cymem(PyObject *__pyx_pyinit_module) -#endif -{ - int stringtab_initialized = 0; - #if CYTHON_USE_MODULE_STATE - int pystate_addmodule_run = 0; - #endif - __pyx_mstatetype *__pyx_mstate = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannyDeclarations - #if CYTHON_PEP489_MULTI_PHASE_INIT - if (__pyx_m) { - if (__pyx_m == __pyx_pyinit_module) return 0; - PyErr_SetString(PyExc_RuntimeError, "Module 'cymem' has already been imported. Re-initialisation is not supported."); - return -1; - } - #else - if (__pyx_m) return __Pyx_NewRef(__pyx_m); - #endif - /*--- Module creation code ---*/ - #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_t_1 = __pyx_pyinit_module; - Py_INCREF(__pyx_t_1); - #else - __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #if CYTHON_USE_MODULE_STATE - { - int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef); - __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "cymem" pseudovariable */ - if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - pystate_addmodule_run = 1; - } - #else - __pyx_m = __pyx_t_1; - #endif - #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); - #endif - __pyx_mstate = __pyx_mstate_global; - CYTHON_UNUSED_VAR(__pyx_t_1); - __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_mstate->__pyx_d); - __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef("cython_runtime"); if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - /* ImportRefnannyAPI */ - #if CYTHON_REFNANNY -__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); -if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); -} -#endif - -__Pyx_RefNannySetupContext("PyInit_cymem", 0); - if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #ifdef __Pxy_PyFrame_Initialize_Offsets - __Pxy_PyFrame_Initialize_Offsets(); - #endif - __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) - /*--- Initialize various global constants etc. ---*/ - if (__Pyx_InitConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - stringtab_initialized = 1; - if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #if 0 || defined(__Pyx_CyFunction_USED) || defined(__Pyx_FusedFunction_USED) || defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED) || defined(__Pyx_AsyncGen_USED) - if (__pyx_CommonTypesMetaclass_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_CyFunction_USED - if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_FusedFunction_USED - if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_Coroutine_USED - if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_Generator_USED - if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_AsyncGen_USED - if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - /*--- Library function declarations ---*/ - if (__pyx_module_is_main_hunter__vendor___cymem__cymem) { - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name, __pyx_mstate_global->__pyx_n_u_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - } - { - PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) - if (!PyDict_GetItemString(modules, "hunter.vendor._cymem.cymem")) { - if (unlikely((PyDict_SetItemString(modules, "hunter.vendor._cymem.cymem", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - } - } - /*--- Builtin init code ---*/ - if (__Pyx_InitCachedBuiltins(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - /*--- Constants init code ---*/ - if (__Pyx_InitCachedConstants(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - if (__Pyx_CreateCodeObjects(__pyx_mstate) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - /*--- Global type/function init code ---*/ - (void)__Pyx_modinit_global_init_code(__pyx_mstate); - (void)__Pyx_modinit_variable_export_code(__pyx_mstate); - if (unlikely((__Pyx_modinit_function_export_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_init_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - if (unlikely((__Pyx_modinit_type_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) - (void)__Pyx_modinit_variable_import_code(__pyx_mstate); - (void)__Pyx_modinit_function_import_code(__pyx_mstate); - /*--- Execution code ---*/ - - /* "hunter/vendor/_cymem/cymem.pyx":7 - * from libc.string cimport memset - * from libc.string cimport memcpy - * import warnings # <<<<<<<<<<<<<< - * - * WARN_ZERO_ALLOC = False -*/ - __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_warnings, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_warnings, __pyx_t_2) < 0) __PYX_ERR(0, 7, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":9 - * import warnings - * - * WARN_ZERO_ALLOC = False # <<<<<<<<<<<<<< - * - * cdef class PyMalloc: -*/ - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_WARN_ZERO_ALLOC, Py_False) < 0) __PYX_ERR(0, 9, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_1__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyMalloc___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.malloc cannot be converted to a Python object for pickling" -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_8PyMalloc_3__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyMalloc___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_1__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyFree___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "self.free cannot be converted to a Python object for pickling" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "self.free cannot be converted to a Python object for pickling" -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_6PyFree_3__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_PyFree___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":29 - * return o - * - * Default_Malloc = WrapMalloc(PyMem_Malloc) # <<<<<<<<<<<<<< - * Default_Free = WrapFree(PyMem_Free) - * -*/ - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapMalloc(PyMem_Malloc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Default_Malloc, __pyx_t_2) < 0) __PYX_ERR(0, 29, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":30 - * - * Default_Malloc = WrapMalloc(PyMem_Malloc) - * Default_Free = WrapFree(PyMem_Free) # <<<<<<<<<<<<<< - * - * cdef class Pool: -*/ - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6vendor_6_cymem_5cymem_WrapFree(PyMem_Free)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Default_Free, __pyx_t_2) < 0) __PYX_ERR(0, 30, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":49 - * """ - * - * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, # <<<<<<<<<<<<<< - * PyFree pyfree=Default_Free): - * self.size = 0 -*/ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Malloc); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc))))) __PYX_ERR(0, 49, __pyx_L1_error) - __pyx_mstate_global->__pyx_k_ = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_2); - __Pyx_GIVEREF((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":50 - * - * def __cinit__(self, PyMalloc pymalloc=Default_Malloc, - * PyFree pyfree=Default_Free): # <<<<<<<<<<<<<< - * self.size = 0 - * self.addresses = {} -*/ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Free); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree))))) __PYX_ERR(0, 50, __pyx_L1_error) - __pyx_mstate_global->__pyx_k__2 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_2); - __Pyx_GIVEREF((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":111 - * self.pyfree.free(p) - * - * def own_pyref(self, object py_ref): # <<<<<<<<<<<<<< - * self.refs.append(py_ref) - * -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_5own_pyref, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Pool_own_pyref, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 111, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool, __pyx_mstate_global->__pyx_n_u_own_pyref, __pyx_t_2) < 0) __PYX_ERR(0, 111, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Pool___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_4Pool_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Pool___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":134 - * """ - * def __cinit__(self, size_t number, size_t elem_size, - * PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): # <<<<<<<<<<<<<< - * self.ptr = NULL - * self.pymalloc = pymalloc -*/ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Malloc); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc))))) __PYX_ERR(0, 134, __pyx_L1_error) - __pyx_mstate_global->__pyx_k__3 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *)__pyx_t_2); - __Pyx_GIVEREF((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Default_Free); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree))))) __PYX_ERR(0, 134, __pyx_L1_error) - __pyx_mstate_global->__pyx_k__4 = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *)__pyx_t_2); - __Pyx_GIVEREF((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Address___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" -*/ - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6vendor_6_cymem_5cymem_7Address_9__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Address___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter_vendor__cymem_cymem, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(1, 3, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "hunter/vendor/_cymem/cymem.pyx":1 - * # cython: embedsignature=True, language_level=3str # <<<<<<<<<<<<<< - * - * from cpython.mem cimport PyMem_Malloc, PyMem_Free -*/ - __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; - - /*--- Wrapped vars code ---*/ - - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - if (__pyx_m) { - if (__pyx_mstate->__pyx_d && stringtab_initialized) { - __Pyx_AddTraceback("init hunter.vendor._cymem.cymem", __pyx_clineno, __pyx_lineno, __pyx_filename); - } - #if !CYTHON_USE_MODULE_STATE - Py_CLEAR(__pyx_m); - #else - Py_DECREF(__pyx_m); - if (pystate_addmodule_run) { - PyObject *tp, *value, *tb; - PyErr_Fetch(&tp, &value, &tb); - PyState_RemoveModule(&__pyx_moduledef); - PyErr_Restore(tp, value, tb); - } - #endif - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init hunter.vendor._cymem.cymem"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if CYTHON_PEP489_MULTI_PHASE_INIT - return (__pyx_m != NULL) ? 0 : -1; - #else - return __pyx_m; - #endif -} -/* #### Code section: pystring_table ### */ - -typedef struct { - const char *s; -#if 179 <= 65535 - const unsigned short n; -#elif 179 / 2 < INT_MAX - const unsigned int n; -#elif 179 / 2 < LONG_MAX - const unsigned long n; -#else - const Py_ssize_t n; -#endif -#if 1 <= 31 - const unsigned int encoding : 5; -#elif 1 <= 255 - const unsigned char encoding; -#elif 1 <= 65535 - const unsigned short encoding; -#else - const Py_ssize_t encoding; -#endif - const unsigned int is_unicode : 1; - const unsigned int intern : 1; -} __Pyx_StringTabEntry; -static const char * const __pyx_string_tab_encodings[] = { 0 }; -static const __Pyx_StringTabEntry __pyx_string_tab[] = { - {__pyx_k_Address, sizeof(__pyx_k_Address), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Address */ - {__pyx_k_Address___reduce_cython, sizeof(__pyx_k_Address___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Address___reduce_cython */ - {__pyx_k_Address___setstate_cython, sizeof(__pyx_k_Address___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Address___setstate_cython */ - {__pyx_k_Allocating_zero_bytes, sizeof(__pyx_k_Allocating_zero_bytes), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Allocating_zero_bytes */ - {__pyx_k_AssertionError, sizeof(__pyx_k_AssertionError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_AssertionError */ - {__pyx_k_Default_Free, sizeof(__pyx_k_Default_Free), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Default_Free */ - {__pyx_k_Default_Malloc, sizeof(__pyx_k_Default_Malloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Default_Malloc */ - {__pyx_k_Error_assigning_d_bytes, sizeof(__pyx_k_Error_assigning_d_bytes), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Error_assigning_d_bytes */ - {__pyx_k_Error_reallocating_to_d_bytes, sizeof(__pyx_k_Error_reallocating_to_d_bytes), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Error_reallocating_to_d_bytes */ - {__pyx_k_MemoryError, sizeof(__pyx_k_MemoryError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MemoryError */ - {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ - {__pyx_k_Pointer, sizeof(__pyx_k_Pointer), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Pointer */ - {__pyx_k_Pool, sizeof(__pyx_k_Pool), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool */ - {__pyx_k_Pool___reduce_cython, sizeof(__pyx_k_Pool___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool___reduce_cython */ - {__pyx_k_Pool___setstate_cython, sizeof(__pyx_k_Pool___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool___setstate_cython */ - {__pyx_k_Pool_own_pyref, sizeof(__pyx_k_Pool_own_pyref), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Pool_own_pyref */ - {__pyx_k_PyFree, sizeof(__pyx_k_PyFree), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyFree */ - {__pyx_k_PyFree___reduce_cython, sizeof(__pyx_k_PyFree___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyFree___reduce_cython */ - {__pyx_k_PyFree___setstate_cython, sizeof(__pyx_k_PyFree___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyFree___setstate_cython */ - {__pyx_k_PyMalloc, sizeof(__pyx_k_PyMalloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyMalloc */ - {__pyx_k_PyMalloc___reduce_cython, sizeof(__pyx_k_PyMalloc___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyMalloc___reduce_cython */ - {__pyx_k_PyMalloc___setstate_cython, sizeof(__pyx_k_PyMalloc___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PyMalloc___setstate_cython */ - {__pyx_k_Realloc_requires_new_size_0, sizeof(__pyx_k_Realloc_requires_new_size_0), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Realloc_requires_new_size_0 */ - {__pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TypeError */ - {__pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_ValueError */ - {__pyx_k_WARN_ZERO_ALLOC, sizeof(__pyx_k_WARN_ZERO_ALLOC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_WARN_ZERO_ALLOC */ - {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__5 */ - {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */ - {__pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_asyncio_coroutines */ - {__pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_cline_in_traceback */ - {__pyx_k_d, sizeof(__pyx_k_d), 0, 1, 1}, /* PyObject cname: __pyx_n_u_d */ - {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ - {__pyx_k_elem_size, sizeof(__pyx_k_elem_size), 0, 1, 1}, /* PyObject cname: __pyx_n_u_elem_size */ - {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ - {__pyx_k_func, sizeof(__pyx_k_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_func */ - {__pyx_k_gc, sizeof(__pyx_k_gc), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_gc */ - {__pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getstate */ - {__pyx_k_hunter_vendor__cymem_cymem, sizeof(__pyx_k_hunter_vendor__cymem_cymem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_hunter_vendor__cymem_cymem */ - {__pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 1, 1}, /* PyObject cname: __pyx_n_u_initializing */ - {__pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 1, 1}, /* PyObject cname: __pyx_n_u_is_coroutine */ - {__pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_isenabled */ - {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */ - {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module */ - {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ - {__pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_no_default___reduce___due_to_non */ - {__pyx_k_not_found_in_Pool, sizeof(__pyx_k_not_found_in_Pool), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_not_found_in_Pool */ - {__pyx_k_number, sizeof(__pyx_k_number), 0, 1, 1}, /* PyObject cname: __pyx_n_u_number */ - {__pyx_k_own_pyref, sizeof(__pyx_k_own_pyref), 0, 1, 1}, /* PyObject cname: __pyx_n_u_own_pyref */ - {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ - {__pyx_k_py_ref, sizeof(__pyx_k_py_ref), 0, 1, 1}, /* PyObject cname: __pyx_n_u_py_ref */ - {__pyx_k_pyfree, sizeof(__pyx_k_pyfree), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyfree */ - {__pyx_k_pymalloc, sizeof(__pyx_k_pymalloc), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pymalloc */ - {__pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_state */ - {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ - {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ - {__pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce */ - {__pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_cython */ - {__pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_ex */ - {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ - {__pyx_k_self_free_cannot_be_converted_to, sizeof(__pyx_k_self_free_cannot_be_converted_to), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_free_cannot_be_converted_to */ - {__pyx_k_self_malloc_cannot_be_converted, sizeof(__pyx_k_self_malloc_cannot_be_converted), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_self_malloc_cannot_be_converted */ - {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ - {__pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate */ - {__pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate_cython */ - {__pyx_k_spec, sizeof(__pyx_k_spec), 0, 1, 1}, /* PyObject cname: __pyx_n_u_spec */ - {__pyx_k_src_hunter_vendor__cymem_cymem_p, sizeof(__pyx_k_src_hunter_vendor__cymem_cymem_p), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter_vendor__cymem_cymem_p */ - {__pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stringsource */ - {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ - {__pyx_k_warn, sizeof(__pyx_k_warn), 0, 1, 1}, /* PyObject cname: __pyx_n_u_warn */ - {__pyx_k_warnings, sizeof(__pyx_k_warnings), 0, 1, 1}, /* PyObject cname: __pyx_n_u_warnings */ - {0, 0, 0, 0, 0} -}; -/* InitStrings.proto */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names); - -/* #### Code section: cached_builtins ### */ - -static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { - CYTHON_UNUSED_VAR(__pyx_mstate); - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) - __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(0, 74, __pyx_L1_error) - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 88, __pyx_L1_error) - __pyx_builtin_AssertionError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_AssertionError); if (!__pyx_builtin_AssertionError) __PYX_ERR(0, 91, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: cached_constants ### */ - -static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { - __Pyx_RefNannyDeclarations - CYTHON_UNUSED_VAR(__pyx_mstate); - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - __Pyx_RefNannyFinishContext(); - return 0; -} -/* #### Code section: init_constants ### */ - -static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { - CYTHON_UNUSED_VAR(__pyx_mstate); - __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type; - __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop; - if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: init_codeobjects ### */ -\ - typedef struct { - unsigned int argcount : 2; - unsigned int num_posonly_args : 1; - unsigned int num_kwonly_args : 1; - unsigned int nlocals : 2; - unsigned int flags : 10; - unsigned int first_line : 7; - unsigned int line_table_length : 9; - } __Pyx_PyCode_New_function_description; -/* NewCodeObj.proto */ -static PyObject* __Pyx_PyCode_New( - const __Pyx_PyCode_New_function_description descr, - PyObject * const *varnames, - PyObject *filename, - PyObject *funcname, - const char *line_table, - PyObject *tuple_dedup_map -); - - -static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { - PyObject* tuple_dedup_map = PyDict_New(); - if (unlikely(!tuple_dedup_map)) return -1; - { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; - __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; - __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 111, 13}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_py_ref}; - __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter_vendor__cymem_cymem_p, __pyx_mstate->__pyx_n_u_own_pyref, __pyx_k_A_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; - __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3, 9}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; - __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; - } - Py_DECREF(tuple_dedup_map); - return 0; - bad: - Py_DECREF(tuple_dedup_map); - return -1; -} -/* #### Code section: init_globals ### */ - -static int __Pyx_InitGlobals(void) { - /* PythonCompatibility.init */ - if (likely(__Pyx_init_co_variables() == 0)); else - -if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) - - /* AssertionsEnabled.init */ - if (likely(__Pyx_init_assertions_enabled() == 0)); else - -if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) - - /* CachedMethodType.init */ - #if CYTHON_COMPILING_IN_LIMITED_API -{ - PyObject *typesModule=NULL; - typesModule = PyImport_ImportModule("types"); - if (typesModule) { - __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule, "MethodType"); - Py_DECREF(typesModule); - } -} // error handling follows -#endif - -if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) - - return 0; - __pyx_L1_error:; - return -1; -} -/* #### Code section: cleanup_globals ### */ -/* #### Code section: cleanup_module ### */ -/* #### Code section: main_method ### */ -/* #### Code section: utility_code_pragmas ### */ -#ifdef _MSC_VER -#pragma warning( push ) -/* Warning 4127: conditional expression is constant - * Cython uses constant conditional expressions to allow in inline functions to be optimized at - * compile-time, so this warning is not useful - */ -#pragma warning( disable : 4127 ) -#endif - - - -/* #### Code section: utility_code_def ### */ - -/* --- Runtime support code --- */ -/* Refnanny */ -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule(modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, "RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif - -/* PyErrExceptionMatches */ -#if CYTHON_FAST_THREAD_STATE -static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { - Py_ssize_t i, n; - n = PyTuple_GET_SIZE(tuple); - for (i=0; i= 0x030C00A6 - PyObject *current_exception = tstate->current_exception; - if (unlikely(!current_exception)) return 0; - exc_type = (PyObject*) Py_TYPE(current_exception); - if (exc_type == err) return 1; -#else - exc_type = tstate->curexc_type; - if (exc_type == err) return 1; - if (unlikely(!exc_type)) return 0; -#endif - #if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(exc_type); - #endif - if (unlikely(PyTuple_Check(err))) { - result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - } else { - result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err); - } - #if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(exc_type); - #endif - return result; -} -#endif - -/* PyErrFetchRestore */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { -#if PY_VERSION_HEX >= 0x030C00A6 - PyObject *tmp_value; - assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value))); - if (value) { - #if CYTHON_COMPILING_IN_CPYTHON - if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb)) - #endif - PyException_SetTraceback(value, tb); - } - tmp_value = tstate->current_exception; - tstate->current_exception = value; - Py_XDECREF(tmp_value); - Py_XDECREF(type); - Py_XDECREF(tb); -#else - PyObject *tmp_type, *tmp_value, *tmp_tb; - tmp_type = tstate->curexc_type; - tmp_value = tstate->curexc_value; - tmp_tb = tstate->curexc_traceback; - tstate->curexc_type = type; - tstate->curexc_value = value; - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -#endif -} -static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { -#if PY_VERSION_HEX >= 0x030C00A6 - PyObject* exc_value; - exc_value = tstate->current_exception; - tstate->current_exception = 0; - *value = exc_value; - *type = NULL; - *tb = NULL; - if (exc_value) { - *type = (PyObject*) Py_TYPE(exc_value); - Py_INCREF(*type); - #if CYTHON_COMPILING_IN_CPYTHON - *tb = ((PyBaseExceptionObject*) exc_value)->traceback; - Py_XINCREF(*tb); - #else - *tb = PyException_GetTraceback(exc_value); - #endif - } -#else - *type = tstate->curexc_type; - *value = tstate->curexc_value; - *tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; -#endif -} -#endif - -/* PyObjectGetAttrStr */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro)) - return tp->tp_getattro(obj, attr_name); - return PyObject_GetAttr(obj, attr_name); -} -#endif - -/* PyObjectGetAttrStrNoError */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 -static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) - __Pyx_PyErr_Clear(); -} -#endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { - PyObject *result; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - (void) PyObject_GetOptionalAttr(obj, attr_name, &result); - return result; -#else -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { - return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); - } -#endif - result = __Pyx_PyObject_GetAttrStr(obj, attr_name); - if (unlikely(!result)) { - __Pyx_PyObject_GetAttrStr_ClearAttributeError(); - } - return result; -#endif -} - -/* GetBuiltinName */ -static PyObject *__Pyx_GetBuiltinName(PyObject *name) { - PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_b, name); - if (unlikely(!result) && !PyErr_Occurred()) { - PyErr_Format(PyExc_NameError, - "name '%U' is not defined", name); - } - return result; -} - -/* TupleAndListFromArray */ -#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL -static CYTHON_INLINE PyObject * -__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - Py_ssize_t i; - if (n <= 0) { - return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); - } - res = PyTuple_New(n); - if (unlikely(res == NULL)) return NULL; - for (i = 0; i < n; i++) { - if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { - Py_DECREF(res); - return NULL; - } - Py_INCREF(src[i]); - } - return res; -} -#elif CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { - PyObject *v; - Py_ssize_t i; - for (i = 0; i < length; i++) { - v = dest[i] = src[i]; - Py_INCREF(v); - } -} -static CYTHON_INLINE PyObject * -__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - if (n <= 0) { - return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); - } - res = PyTuple_New(n); - if (unlikely(res == NULL)) return NULL; - __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item, n); - return res; -} -static CYTHON_INLINE PyObject * -__Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - if (n <= 0) { - return PyList_New(0); - } - res = PyList_New(n); - if (unlikely(res == NULL)) return NULL; - __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item, n); - return res; -} -#endif - -/* BytesEquals */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ - !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) - return PyObject_RichCompareBool(s1, s2, equals); -#else - if (s1 == s2) { - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - const char *ps1, *ps2; - Py_ssize_t length = PyBytes_GET_SIZE(s1); - if (length != PyBytes_GET_SIZE(s2)) - return (equals == Py_NE); - ps1 = PyBytes_AS_STRING(s1); - ps2 = PyBytes_AS_STRING(s2); - if (ps1[0] != ps2[0]) { - return (equals == Py_NE); - } else if (length == 1) { - return (equals == Py_EQ); - } else { - int result; -#if CYTHON_USE_UNICODE_INTERNALS && (PY_VERSION_HEX < 0x030B0000) - Py_hash_t hash1, hash2; - hash1 = ((PyBytesObject*)s1)->ob_shash; - hash2 = ((PyBytesObject*)s2)->ob_shash; - if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { - return (equals == Py_NE); - } -#endif - result = memcmp(ps1, ps2, (size_t)length); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -#endif -} - -/* UnicodeEquals */ -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL - return PyObject_RichCompareBool(s1, s2, equals); -#else - int s1_is_unicode, s2_is_unicode; - if (s1 == s2) { - goto return_eq; - } - s1_is_unicode = PyUnicode_CheckExact(s1); - s2_is_unicode = PyUnicode_CheckExact(s2); - if (s1_is_unicode & s2_is_unicode) { - Py_ssize_t length, length2; - int kind; - void *data1, *data2; - #if !CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) - return -1; - #endif - length = __Pyx_PyUnicode_GET_LENGTH(s1); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(length < 0)) return -1; - #endif - length2 = __Pyx_PyUnicode_GET_LENGTH(s2); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(length2 < 0)) return -1; - #endif - if (length != length2) { - goto return_ne; - } -#if CYTHON_USE_UNICODE_INTERNALS - { - Py_hash_t hash1, hash2; - hash1 = ((PyASCIIObject*)s1)->hash; - hash2 = ((PyASCIIObject*)s2)->hash; - if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { - goto return_ne; - } - } -#endif - kind = __Pyx_PyUnicode_KIND(s1); - if (kind != __Pyx_PyUnicode_KIND(s2)) { - goto return_ne; - } - data1 = __Pyx_PyUnicode_DATA(s1); - data2 = __Pyx_PyUnicode_DATA(s2); - if (__Pyx_PyUnicode_READ(kind, data1, 0) != __Pyx_PyUnicode_READ(kind, data2, 0)) { - goto return_ne; - } else if (length == 1) { - goto return_eq; - } else { - int result = memcmp(data1, data2, (size_t)(length * kind)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & s2_is_unicode) { - goto return_ne; - } else if ((s2 == Py_None) & s1_is_unicode) { - goto return_ne; - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -return_eq: - return (equals == Py_EQ); -return_ne: - return (equals == Py_NE); -#endif -} - -/* fastcall */ -#if CYTHON_METH_FASTCALL -static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s) -{ - Py_ssize_t i, n = __Pyx_PyTuple_GET_SIZE(kwnames); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(n == -1)) return NULL; - #endif - for (i = 0; i < n; i++) - { - PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely(!namei)) return NULL; - #endif - if (s == namei) return kwvalues[i]; - } - for (i = 0; i < n; i++) - { - PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely(!namei)) return NULL; - #endif - int eq = __Pyx_PyUnicode_Equals(s, namei, Py_EQ); - if (unlikely(eq != 0)) { - if (unlikely(eq < 0)) return NULL; - return kwvalues[i]; - } - } - return NULL; -} -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API -CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) { - Py_ssize_t i, nkwargs; - PyObject *dict; -#if !CYTHON_ASSUME_SAFE_SIZE - nkwargs = PyTuple_Size(kwnames); - if (unlikely(nkwargs < 0)) return NULL; -#else - nkwargs = PyTuple_GET_SIZE(kwnames); -#endif - dict = PyDict_New(); - if (unlikely(!dict)) - return NULL; - for (i=0; i= 0x030C00A6 - PyException_SetTraceback(value, tb); -#elif CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* tmp_tb = tstate->curexc_traceback; - if (tb != tmp_tb) { - Py_INCREF(tb); - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_tb); - } -#else - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); - Py_INCREF(tb); - PyErr_Restore(tmp_type, tmp_value, tb); - Py_XDECREF(tmp_tb); -#endif - } -bad: - Py_XDECREF(owned_instance); - return; -} - -/* RaiseDoubleKeywords */ -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); -} - -/* PyFunctionFastCall */ -#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL -static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na, - PyObject *globals) { - PyFrameObject *f; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject **fastlocals; - Py_ssize_t i; - PyObject *result; - assert(globals != NULL); - /* XXX Perhaps we should create a specialized - PyFrame_New() that doesn't take locals, but does - take builtins without sanity checking them. - */ - assert(tstate != NULL); - f = PyFrame_New(tstate, co, globals, NULL); - if (f == NULL) { - return NULL; - } - fastlocals = __Pyx_PyFrame_GetLocalsplus(f); - for (i = 0; i < na; i++) { - Py_INCREF(*args); - fastlocals[i] = *args++; - } - result = PyEval_EvalFrameEx(f,0); - ++tstate->recursion_depth; - Py_DECREF(f); - --tstate->recursion_depth; - return result; -} -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs) { - PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); - PyObject *globals = PyFunction_GET_GLOBALS(func); - PyObject *argdefs = PyFunction_GET_DEFAULTS(func); - PyObject *closure; - PyObject *kwdefs; - PyObject *kwtuple, **k; - PyObject **d; - Py_ssize_t nd; - Py_ssize_t nk; - PyObject *result; - assert(kwargs == NULL || PyDict_Check(kwargs)); - nk = kwargs ? PyDict_Size(kwargs) : 0; - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) { - return NULL; - } - if ( - co->co_kwonlyargcount == 0 && - likely(kwargs == NULL || nk == 0) && - co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { - if (argdefs == NULL && co->co_argcount == nargs) { - result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); - goto done; - } - else if (nargs == 0 && argdefs != NULL - && co->co_argcount == Py_SIZE(argdefs)) { - /* function called with no arguments, but all parameters have - a default value: use default values as arguments .*/ - args = &PyTuple_GET_ITEM(argdefs, 0); - result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); - goto done; - } - } - if (kwargs != NULL) { - Py_ssize_t pos, i; - kwtuple = PyTuple_New(2 * nk); - if (kwtuple == NULL) { - result = NULL; - goto done; - } - k = &PyTuple_GET_ITEM(kwtuple, 0); - pos = i = 0; - while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { - Py_INCREF(k[i]); - Py_INCREF(k[i+1]); - i += 2; - } - nk = i / 2; - } - else { - kwtuple = NULL; - k = NULL; - } - closure = PyFunction_GET_CLOSURE(func); - kwdefs = PyFunction_GET_KW_DEFAULTS(func); - if (argdefs != NULL) { - d = &PyTuple_GET_ITEM(argdefs, 0); - nd = Py_SIZE(argdefs); - } - else { - d = NULL; - nd = 0; - } - result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, kwdefs, closure); - Py_XDECREF(kwtuple); -done: - Py_LeaveRecursiveCall(); - return result; -} -#endif - -/* PyObjectCall */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { - PyObject *result; - ternaryfunc call = Py_TYPE(func)->tp_call; - if (unlikely(!call)) - return PyObject_Call(func, arg, kw); - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) - return NULL; - result = (*call)(func, arg, kw); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); - } - return result; -} -#endif - -/* PyObjectCallMethO */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { - PyObject *self, *result; - PyCFunction cfunc; - cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func); - self = __Pyx_CyOrPyCFunction_GET_SELF(func); - if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) - return NULL; - result = cfunc(self, arg); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); - } - return result; -} -#endif - -/* PyObjectFastCall */ -#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API -static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs) { - PyObject *argstuple; - PyObject *result = 0; - size_t i; - argstuple = PyTuple_New((Py_ssize_t)nargs); - if (unlikely(!argstuple)) return NULL; - for (i = 0; i < nargs; i++) { - Py_INCREF(args[i]); - if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0)) goto bad; - } - result = __Pyx_PyObject_Call(func, argstuple, kwargs); - bad: - Py_DECREF(argstuple); - return result; -} -#endif -#if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API - #if PY_VERSION_HEX < 0x03090000 - #define __Pyx_PyVectorcall_Function(callable) _PyVectorcall_Function(callable) - #elif CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) { - PyTypeObject *tp = Py_TYPE(callable); - #if defined(__Pyx_CyFunction_USED) - if (__Pyx_CyFunction_CheckExact(callable)) { - return __Pyx_CyFunction_func_vectorcall(callable); - } - #endif - if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) { - return NULL; - } - assert(PyCallable_Check(callable)); - Py_ssize_t offset = tp->tp_vectorcall_offset; - assert(offset > 0); - vectorcallfunc ptr; - memcpy(&ptr, (char *) callable + offset, sizeof(ptr)); - return ptr; -} - #else - #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable) - #endif -#endif -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *const *args, size_t _nargs, PyObject *kwargs) { - Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs); -#if CYTHON_COMPILING_IN_CPYTHON - if (nargs == 0 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS)) - return __Pyx_PyObject_CallMethO(func, NULL); - } - else if (nargs == 1 && kwargs == NULL) { - if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O)) - return __Pyx_PyObject_CallMethO(func, args[0]); - } -#endif - #if PY_VERSION_HEX < 0x030800B1 - #if CYTHON_FAST_PYCCALL - if (PyCFunction_Check(func)) { - if (kwargs) { - return _PyCFunction_FastCallDict(func, args, nargs, kwargs); - } else { - return _PyCFunction_FastCallKeywords(func, args, nargs, NULL); - } - } - if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) { - return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL); - } - #endif - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(func)) { - return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs); - } - #endif - #endif - if (kwargs == NULL) { - #if CYTHON_VECTORCALL && !CYTHON_COMPILING_IN_LIMITED_API - vectorcallfunc f = __Pyx_PyVectorcall_Function(func); - if (f) { - return f(func, args, _nargs, NULL); - } - #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL - if (__Pyx_CyFunction_CheckExact(func)) { - __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func); - if (f) return f(func, args, _nargs, NULL); - } - #elif CYTHON_COMPILING_IN_LIMITED_API && CYTHON_VECTORCALL - return PyObject_Vectorcall(func, args, _nargs, NULL); - #endif - } - if (nargs == 0) { - return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs); - } - #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API - return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs); - #else - return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs); - #endif -} - -/* UnpackUnboundCMethod */ -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 -static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) { - PyObject *result; - PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args)); - if (unlikely(!selfless_args)) return NULL; - result = PyObject_Call(method, selfless_args, kwargs); - Py_DECREF(selfless_args); - return result; -} -#elif CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03090000 -static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) { - return _PyObject_Vectorcall - (method, args ? args+1 : NULL, nargs ? nargs-1 : 0, kwnames); -} -#else -static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { - return -#if PY_VERSION_HEX < 0x03090000 - _PyObject_Vectorcall -#else - PyObject_Vectorcall -#endif - (method, args ? args+1 : NULL, nargs ? (size_t) nargs-1 : 0, kwnames); -} -#endif -static PyMethodDef __Pyx_UnboundCMethod_Def = { - "CythonUnboundCMethod", - __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall), -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000 - METH_VARARGS | METH_KEYWORDS, -#else - METH_FASTCALL | METH_KEYWORDS, -#endif - NULL -}; -static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { - PyObject *method, *result=NULL; - method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); - if (unlikely(!method)) - return -1; - result = method; -#if CYTHON_COMPILING_IN_CPYTHON - if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) - { - PyMethodDescrObject *descr = (PyMethodDescrObject*) method; - target->func = descr->d_method->ml_meth; - target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); - } else -#endif -#if CYTHON_COMPILING_IN_PYPY -#else - if (PyCFunction_Check(method)) -#endif - { - PyObject *self; - int self_found; -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - self = PyObject_GetAttrString(method, "__self__"); - if (!self) { - PyErr_Clear(); - } -#else - self = PyCFunction_GET_SELF(method); -#endif - self_found = (self && self != Py_None); -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - Py_XDECREF(self); -#endif - if (self_found) { - PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method); - if (unlikely(!unbound_method)) return -1; - Py_DECREF(method); - result = unbound_method; - } - } -#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - if (unlikely(target->method)) { - Py_DECREF(result); - } else -#endif - target->method = result; - return 0; -} - -/* CallUnboundCMethod2 */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { - int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); - if (likely(was_initialized == 2 && cfunc->func)) { - PyObject *args[2] = {arg1, arg2}; - if (cfunc->flag == METH_FASTCALL) { - return __Pyx_CallCFunctionFast(cfunc, self, args, 2); - } - if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) - return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL); - } -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - else if (unlikely(was_initialized == 1)) { - __Pyx_CachedCFunction tmp_cfunc = { -#ifndef __cplusplus - 0 -#endif - }; - tmp_cfunc.type = cfunc->type; - tmp_cfunc.method_name = cfunc->method_name; - return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2); - } -#endif - PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); - __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); - return result; -} -#endif -static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ - if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; -#if CYTHON_COMPILING_IN_CPYTHON - if (cfunc->func && (cfunc->flag & METH_VARARGS)) { - PyObject *result = NULL; - PyObject *args = PyTuple_New(2); - if (unlikely(!args)) return NULL; - Py_INCREF(arg1); - PyTuple_SET_ITEM(args, 0, arg1); - Py_INCREF(arg2); - PyTuple_SET_ITEM(args, 1, arg2); - if (cfunc->flag & METH_KEYWORDS) - result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); - else - result = __Pyx_CallCFunction(cfunc, self, args); - Py_DECREF(args); - return result; - } -#endif - { - PyObject *args[4] = {NULL, self, arg1, arg2}; - return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); - } -} - -/* ParseKeywords */ -static int __Pyx_ValidateDuplicatePosArgs( - PyObject *kwds, - PyObject ** const argnames[], - PyObject ** const *first_kw_arg, - const char* function_name) -{ - PyObject ** const *name = argnames; - while (name != first_kw_arg) { - PyObject *key = **name; - int found = PyDict_Contains(kwds, key); - if (unlikely(found)) { - if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; - } - name++; - } - return 0; -bad: - return -1; -} -#if CYTHON_USE_UNICODE_INTERNALS -static CYTHON_INLINE int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) { - int kind; - Py_ssize_t len = PyUnicode_GET_LENGTH(s1); - if (len != PyUnicode_GET_LENGTH(s2)) return 0; - kind = PyUnicode_KIND(s1); - if (kind != PyUnicode_KIND(s2)) return 0; - const void *data1 = PyUnicode_DATA(s1); - const void *data2 = PyUnicode_DATA(s2); - return (memcmp(data1, data2, (size_t) len * (size_t) kind) == 0); -} -#endif -static int __Pyx_MatchKeywordArg_str( - PyObject *key, - PyObject ** const argnames[], - PyObject ** const *first_kw_arg, - size_t *index_found, - const char *function_name) -{ - PyObject ** const *name; - #if CYTHON_USE_UNICODE_INTERNALS - Py_hash_t key_hash = ((PyASCIIObject*)key)->hash; - if (unlikely(key_hash == -1)) { - key_hash = PyObject_Hash(key); - if (unlikely(key_hash == -1)) - goto bad; - } - #endif - name = first_kw_arg; - while (*name) { - PyObject *name_str = **name; - #if CYTHON_USE_UNICODE_INTERNALS - if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) { - *index_found = (size_t) (name - argnames); - return 1; - } - #else - #if CYTHON_ASSUME_SAFE_SIZE - if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) - #endif - { - int cmp = PyUnicode_Compare(name_str, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) { - *index_found = (size_t) (name - argnames); - return 1; - } - } - #endif - name++; - } - name = argnames; - while (name != first_kw_arg) { - PyObject *name_str = **name; - #if CYTHON_USE_UNICODE_INTERNALS - if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) { - if (__Pyx_UnicodeKeywordsEqual(name_str, key)) - goto arg_passed_twice; - } - #else - #if CYTHON_ASSUME_SAFE_SIZE - if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key)) - #endif - { - if (unlikely(name_str == key)) goto arg_passed_twice; - int cmp = PyUnicode_Compare(name_str, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) goto arg_passed_twice; - } - #endif - name++; - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; -bad: - return -1; -} -static int __Pyx_MatchKeywordArg_nostr( - PyObject *key, - PyObject ** const argnames[], - PyObject ** const *first_kw_arg, - size_t *index_found, - const char *function_name) -{ - PyObject ** const *name; - if (unlikely(!PyUnicode_Check(key))) goto invalid_keyword_type; - name = first_kw_arg; - while (*name) { - int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); - if (cmp == 1) { - *index_found = (size_t) (name - argnames); - return 1; - } - if (unlikely(cmp == -1)) goto bad; - name++; - } - name = argnames; - while (name != first_kw_arg) { - int cmp = PyObject_RichCompareBool(**name, key, Py_EQ); - if (unlikely(cmp != 0)) { - if (cmp == 1) goto arg_passed_twice; - else goto bad; - } - name++; - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - goto bad; -bad: - return -1; -} -static CYTHON_INLINE int __Pyx_MatchKeywordArg( - PyObject *key, - PyObject ** const argnames[], - PyObject ** const *first_kw_arg, - size_t *index_found, - const char *function_name) -{ - return likely(PyUnicode_CheckExact(key)) ? - __Pyx_MatchKeywordArg_str(key, argnames, first_kw_arg, index_found, function_name) : - __Pyx_MatchKeywordArg_nostr(key, argnames, first_kw_arg, index_found, function_name); -} -static void __Pyx_RejectUnknownKeyword( - PyObject *kwds, - PyObject ** const argnames[], - PyObject ** const *first_kw_arg, - const char *function_name) -{ - Py_ssize_t pos = 0; - PyObject *key = NULL; - __Pyx_BEGIN_CRITICAL_SECTION(kwds); - while (PyDict_Next(kwds, &pos, &key, NULL)) { - PyObject** const *name = first_kw_arg; - while (*name && (**name != key)) name++; - if (!*name) { - #if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(key); - #endif - size_t index_found = 0; - int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); - if (cmp != 1) { - if (cmp == 0) { - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - } - #if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(key); - #endif - break; - } - #if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(key); - #endif - } - } - __Pyx_END_CRITICAL_SECTION(); - assert(PyErr_Occurred()); -} -static int __Pyx_ParseKeywordDict( - PyObject *kwds, - PyObject ** const argnames[], - PyObject *values[], - Py_ssize_t num_pos_args, - Py_ssize_t num_kwargs, - const char* function_name, - int ignore_unknown_kwargs) -{ - PyObject** const *name; - PyObject** const *first_kw_arg = argnames + num_pos_args; - Py_ssize_t extracted = 0; -#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) - if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; -#endif - name = first_kw_arg; - while (*name && num_kwargs > extracted) { - PyObject * key = **name; - PyObject *value; - int found = 0; - #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - found = PyDict_GetItemRef(kwds, key, &value); - #else - value = PyDict_GetItemWithError(kwds, key); - if (value) { - Py_INCREF(value); - found = 1; - } else { - if (unlikely(PyErr_Occurred())) goto bad; - } - #endif - if (found) { - if (unlikely(found < 0)) goto bad; - values[name-argnames] = value; - extracted++; - } - name++; - } - if (num_kwargs > extracted) { - if (ignore_unknown_kwargs) { - if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1)) - goto bad; - } else { - __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name); - goto bad; - } - } - return 0; -bad: - return -1; -} -static int __Pyx_ParseKeywordDictToDict( - PyObject *kwds, - PyObject ** const argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject** const *name; - PyObject** const *first_kw_arg = argnames + num_pos_args; - Py_ssize_t len; -#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) - if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return -1; -#endif - if (PyDict_Update(kwds2, kwds) < 0) goto bad; - name = first_kw_arg; - while (*name) { - PyObject *key = **name; - PyObject *value; -#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop)) - int found = PyDict_Pop(kwds2, key, &value); - if (found) { - if (unlikely(found < 0)) goto bad; - values[name-argnames] = value; - } -#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - int found = PyDict_GetItemRef(kwds2, key, &value); - if (found) { - if (unlikely(found < 0)) goto bad; - values[name-argnames] = value; - if (unlikely(PyDict_DelItem(kwds2, key) < 0)) goto bad; - } -#else - #if CYTHON_COMPILING_IN_CPYTHON - value = _PyDict_Pop(kwds2, key, kwds2); - #else - value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2); - #endif - if (value == kwds2) { - Py_DECREF(value); - } else { - if (unlikely(!value)) goto bad; - values[name-argnames] = value; - } -#endif - name++; - } - len = PyDict_Size(kwds2); - if (len > 0) { - return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name); - } else if (unlikely(len == -1)) { - goto bad; - } - return 0; -bad: - return -1; -} -static int __Pyx_ParseKeywordsTuple( - PyObject *kwds, - PyObject * const *kwvalues, - PyObject ** const argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - Py_ssize_t num_kwargs, - const char* function_name, - int ignore_unknown_kwargs) -{ - PyObject *key = NULL; - PyObject** const * name; - PyObject** const *first_kw_arg = argnames + num_pos_args; - for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) { -#if CYTHON_AVOID_BORROWED_REFS - key = __Pyx_PySequence_ITEM(kwds, pos); -#else - key = __Pyx_PyTuple_GET_ITEM(kwds, pos); -#endif -#if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely(!key)) goto bad; -#endif - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - PyObject *value = kwvalues[pos]; - values[name-argnames] = __Pyx_NewRef(value); - } else { - size_t index_found = 0; - int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name); - if (cmp == 1) { - PyObject *value = kwvalues[pos]; - values[index_found] = __Pyx_NewRef(value); - } else { - if (unlikely(cmp == -1)) goto bad; - if (kwds2) { - PyObject *value = kwvalues[pos]; - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else if (!ignore_unknown_kwargs) { - goto invalid_keyword; - } - } - } - #if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(key); - key = NULL; - #endif - } - return 0; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - "%s() got an unexpected keyword argument '%U'", - function_name, key); - goto bad; -bad: - #if CYTHON_AVOID_BORROWED_REFS - Py_XDECREF(key); - #endif - return -1; -} -static int __Pyx_ParseKeywords( - PyObject *kwds, - PyObject * const *kwvalues, - PyObject ** const argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - Py_ssize_t num_kwargs, - const char* function_name, - int ignore_unknown_kwargs) -{ - if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) - return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); - else if (kwds2) - return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name); - else - return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs); -} - -/* ArgTypeTest */ -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) -{ - __Pyx_TypeName type_name; - __Pyx_TypeName obj_type_name; - PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; - int from_annotation_subclass = 0; - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; - } - else if (!exact) { - if (likely(__Pyx_TypeCheck(obj, type))) return 1; - } else if (exact == 2) { - if (__Pyx_TypeCheck(obj, type)) { - from_annotation_subclass = 1; - extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; - } - } - type_name = __Pyx_PyType_GetFullyQualifiedName(type); - obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); - PyErr_Format(PyExc_TypeError, - "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME - ", got " __Pyx_FMT_TYPENAME ")" -#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 - "%s%U" -#endif - , name, type_name, obj_type_name -#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 - , (from_annotation_subclass ? ". " : ""), extra_info -#endif - ); -#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 - if (exact == 2 && from_annotation_subclass) { - PyObject *res; - PyObject *vargs[2]; - vargs[0] = PyErr_GetRaisedException(); - vargs[1] = extra_info; - res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); - Py_XDECREF(res); - PyErr_SetRaisedException(vargs[0]); - } -#endif - __Pyx_DECREF_TypeName(type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; -} - -/* IterFinish */ -static CYTHON_INLINE int __Pyx_IterFinish(void) { - PyObject* exc_type; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - exc_type = __Pyx_PyErr_CurrentExceptionType(); - if (unlikely(exc_type)) { - if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) - return -1; - __Pyx_PyErr_Clear(); - return 0; - } - return 0; -} - -/* PyObjectCallNoArg */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { - PyObject *arg[2] = {NULL, NULL}; - return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* PyObjectCallOneArg */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { - PyObject *args[2] = {NULL, arg}; - return __Pyx_PyObject_FastCall(func, args+1, 1 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* PyObjectGetMethod */ -static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method) { - PyObject *attr; -#if CYTHON_UNPACK_METHODS && CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_PYTYPE_LOOKUP - __Pyx_TypeName type_name; - PyTypeObject *tp = Py_TYPE(obj); - PyObject *descr; - descrgetfunc f = NULL; - PyObject **dictptr, *dict; - int meth_found = 0; - assert (*method == NULL); - if (unlikely(tp->tp_getattro != PyObject_GenericGetAttr)) { - attr = __Pyx_PyObject_GetAttrStr(obj, name); - goto try_unpack; - } - if (unlikely(tp->tp_dict == NULL) && unlikely(PyType_Ready(tp) < 0)) { - return 0; - } - descr = _PyType_Lookup(tp, name); - if (likely(descr != NULL)) { - Py_INCREF(descr); -#if defined(Py_TPFLAGS_METHOD_DESCRIPTOR) && Py_TPFLAGS_METHOD_DESCRIPTOR - if (__Pyx_PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_METHOD_DESCRIPTOR)) -#else - #ifdef __Pyx_CyFunction_USED - if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr))) - #else - if (likely(PyFunction_Check(descr) || __Pyx_IS_TYPE(descr, &PyMethodDescr_Type))) - #endif -#endif - { - meth_found = 1; - } else { - f = Py_TYPE(descr)->tp_descr_get; - if (f != NULL && PyDescr_IsData(descr)) { - attr = f(descr, obj, (PyObject *)Py_TYPE(obj)); - Py_DECREF(descr); - goto try_unpack; - } - } - } - dictptr = _PyObject_GetDictPtr(obj); - if (dictptr != NULL && (dict = *dictptr) != NULL) { - Py_INCREF(dict); - attr = __Pyx_PyDict_GetItemStr(dict, name); - if (attr != NULL) { - Py_INCREF(attr); - Py_DECREF(dict); - Py_XDECREF(descr); - goto try_unpack; - } - Py_DECREF(dict); - } - if (meth_found) { - *method = descr; - return 1; - } - if (f != NULL) { - attr = f(descr, obj, (PyObject *)Py_TYPE(obj)); - Py_DECREF(descr); - goto try_unpack; - } - if (likely(descr != NULL)) { - *method = descr; - return 0; - } - type_name = __Pyx_PyType_GetFullyQualifiedName(tp); - PyErr_Format(PyExc_AttributeError, - "'" __Pyx_FMT_TYPENAME "' object has no attribute '%U'", - type_name, name); - __Pyx_DECREF_TypeName(type_name); - return 0; -#else - attr = __Pyx_PyObject_GetAttrStr(obj, name); - goto try_unpack; -#endif -try_unpack: -#if CYTHON_UNPACK_METHODS - if (likely(attr) && PyMethod_Check(attr) && likely(PyMethod_GET_SELF(attr) == obj)) { - PyObject *function = PyMethod_GET_FUNCTION(attr); - Py_INCREF(function); - Py_DECREF(attr); - *method = function; - return 1; - } -#endif - *method = attr; - return 0; -} - -/* PyObjectCallMethod0 */ -static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) { - PyObject *method = NULL, *result = NULL; - int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); - if (likely(is_method)) { - result = __Pyx_PyObject_CallOneArg(method, obj); - Py_DECREF(method); - return result; - } - if (unlikely(!method)) goto bad; - result = __Pyx_PyObject_CallNoArg(method); - Py_DECREF(method); -bad: - return result; -} - -/* RaiseNeedMoreValuesToUnpack */ -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack", - index, (index == 1) ? "" : "s"); -} - -/* RaiseTooManyValuesToUnpack */ -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected); -} - -/* UnpackItemEndCheck */ -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { - if (unlikely(retval)) { - Py_DECREF(retval); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } - return __Pyx_IterFinish(); -} - -/* RaiseNoneIterError */ -static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); -} - -/* UnpackTupleError */ -static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) { - if (t == Py_None) { - __Pyx_RaiseNoneNotIterableError(); - } else { - Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(t); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(size < 0)) return; - #endif - if (size < index) { - __Pyx_RaiseNeedMoreValuesError(size); - } else { - __Pyx_RaiseTooManyValuesError(index); - } - } -} - -/* UnpackTuple2 */ -static CYTHON_INLINE int __Pyx_unpack_tuple2( - PyObject* tuple, PyObject** value1, PyObject** value2, int is_tuple, int has_known_size, int decref_tuple) { - if (likely(is_tuple || PyTuple_Check(tuple))) { - Py_ssize_t size; - if (has_known_size) { - return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); - } - size = __Pyx_PyTuple_GET_SIZE(tuple); - if (likely(size == 2)) { - return __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple); - } - if (size >= 0) { - __Pyx_UnpackTupleError(tuple, 2); - } - return -1; - } else { - return __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple); - } -} -static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( - PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, int decref_tuple) { - PyObject *value1 = NULL, *value2 = NULL; -#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS - value1 = __Pyx_PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; - value2 = __Pyx_PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; -#else - value1 = PyTuple_GET_ITEM(tuple, 0); Py_INCREF(value1); - value2 = PyTuple_GET_ITEM(tuple, 1); Py_INCREF(value2); -#endif - if (decref_tuple) { - Py_DECREF(tuple); - } - *pvalue1 = value1; - *pvalue2 = value2; - return 0; -#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS -bad: - Py_XDECREF(value1); - Py_XDECREF(value2); - if (decref_tuple) { Py_XDECREF(tuple); } - return -1; -#endif -} -static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, - int has_known_size, int decref_tuple) { - Py_ssize_t index; - PyObject *value1 = NULL, *value2 = NULL, *iter = NULL; - iternextfunc iternext; - iter = PyObject_GetIter(tuple); - if (unlikely(!iter)) goto bad; - if (decref_tuple) { Py_DECREF(tuple); tuple = NULL; } - iternext = __Pyx_PyObject_GetIterNextFunc(iter); - value1 = iternext(iter); if (unlikely(!value1)) { index = 0; goto unpacking_failed; } - value2 = iternext(iter); if (unlikely(!value2)) { index = 1; goto unpacking_failed; } - if (!has_known_size && unlikely(__Pyx_IternextUnpackEndCheck(iternext(iter), 2))) goto bad; - Py_DECREF(iter); - *pvalue1 = value1; - *pvalue2 = value2; - return 0; -unpacking_failed: - if (!has_known_size && __Pyx_IterFinish() == 0) - __Pyx_RaiseNeedMoreValuesError(index); -bad: - Py_XDECREF(iter); - Py_XDECREF(value1); - Py_XDECREF(value2); - if (decref_tuple) { Py_XDECREF(tuple); } - return -1; -} - -/* dict_iter */ -#if CYTHON_COMPILING_IN_PYPY -#include -#endif -static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, - Py_ssize_t* p_orig_length, int* p_source_is_dict) { - is_dict = is_dict || likely(PyDict_CheckExact(iterable)); - *p_source_is_dict = is_dict; - if (is_dict) { -#if !CYTHON_COMPILING_IN_PYPY - *p_orig_length = PyDict_Size(iterable); - Py_INCREF(iterable); - return iterable; -#else - static PyObject *py_items = NULL, *py_keys = NULL, *py_values = NULL; - PyObject **pp = NULL; - if (method_name) { - const char *name = PyUnicode_AsUTF8(method_name); - if (strcmp(name, "iteritems") == 0) pp = &py_items; - else if (strcmp(name, "iterkeys") == 0) pp = &py_keys; - else if (strcmp(name, "itervalues") == 0) pp = &py_values; - if (pp) { - if (!*pp) { - *pp = PyUnicode_FromString(name + 4); - if (!*pp) - return NULL; - } - method_name = *pp; - } - } -#endif - } - *p_orig_length = 0; - if (method_name) { - PyObject* iter; - iterable = __Pyx_PyObject_CallMethod0(iterable, method_name); - if (!iterable) - return NULL; -#if !CYTHON_COMPILING_IN_PYPY - if (PyTuple_CheckExact(iterable) || PyList_CheckExact(iterable)) - return iterable; -#endif - iter = PyObject_GetIter(iterable); - Py_DECREF(iterable); - return iter; - } - return PyObject_GetIter(iterable); -} -#if !CYTHON_COMPILING_IN_PYPY -static CYTHON_INLINE int __Pyx_dict_iter_next_source_is_dict( - PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, - PyObject** pkey, PyObject** pvalue, PyObject** pitem) { - PyObject *key, *value; - if (unlikely(orig_length != PyDict_Size(iter_obj))) { - PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); - return -1; - } - if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { - return 0; - } - if (pitem) { - PyObject* tuple = PyTuple_New(2); - if (unlikely(!tuple)) { - return -1; - } - Py_INCREF(key); - Py_INCREF(value); - #if CYTHON_ASSUME_SAFE_MACROS - PyTuple_SET_ITEM(tuple, 0, key); - PyTuple_SET_ITEM(tuple, 1, value); - #else - if (unlikely(PyTuple_SetItem(tuple, 0, key) < 0)) { - Py_DECREF(value); - Py_DECREF(tuple); - return -1; - } - if (unlikely(PyTuple_SetItem(tuple, 1, value) < 0)) { - Py_DECREF(tuple); - return -1; - } - #endif - *pitem = tuple; - } else { - if (pkey) { - Py_INCREF(key); - *pkey = key; - } - if (pvalue) { - Py_INCREF(value); - *pvalue = value; - } - } - return 1; -} -#endif -static CYTHON_INLINE int __Pyx_dict_iter_next( - PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, - PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { - PyObject* next_item; -#if !CYTHON_COMPILING_IN_PYPY - if (source_is_dict) { - int result; -#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API - Py_BEGIN_CRITICAL_SECTION(iter_obj); -#endif - result = __Pyx_dict_iter_next_source_is_dict(iter_obj, orig_length, ppos, pkey, pvalue, pitem); -#if PY_VERSION_HEX >= 0x030d0000 && !CYTHON_COMPILING_IN_LIMITED_API - Py_END_CRITICAL_SECTION(); -#endif - return result; - } else if (PyTuple_CheckExact(iter_obj)) { - Py_ssize_t pos = *ppos; - Py_ssize_t tuple_size = __Pyx_PyTuple_GET_SIZE(iter_obj); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(tuple_size < 0)) return -1; - #endif - if (unlikely(pos >= tuple_size)) return 0; - *ppos = pos + 1; - #if CYTHON_ASSUME_SAFE_MACROS - next_item = PyTuple_GET_ITEM(iter_obj, pos); - #else - next_item = PyTuple_GetItem(iter_obj, pos); - if (unlikely(!next_item)) return -1; - #endif - Py_INCREF(next_item); - } else if (PyList_CheckExact(iter_obj)) { - Py_ssize_t pos = *ppos; - Py_ssize_t list_size = __Pyx_PyList_GET_SIZE(iter_obj); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(list_size < 0)) return -1; - #endif - if (unlikely(pos >= list_size)) return 0; - *ppos = pos + 1; - #if CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - next_item = PyList_GetItemRef(iter_obj, pos); - if (unlikely(!next_item)) return -1; - #elif CYTHON_ASSUME_SAFE_MACROS - next_item = PyList_GET_ITEM(iter_obj, pos); - Py_INCREF(next_item); - #else - next_item = PyList_GetItem(iter_obj, pos); - if (unlikely(!next_item)) return -1; - Py_INCREF(next_item); - #endif - } else -#endif - { - next_item = PyIter_Next(iter_obj); - if (unlikely(!next_item)) { - return __Pyx_IterFinish(); - } - } - if (pitem) { - *pitem = next_item; - } else if (pkey && pvalue) { - if (__Pyx_unpack_tuple2(next_item, pkey, pvalue, source_is_dict, source_is_dict, 1)) - return -1; - } else if (pkey) { - *pkey = next_item; - } else { - *pvalue = next_item; - } - return 1; -} - -/* WriteUnraisableException */ -static void __Pyx_WriteUnraisable(const char *name, int clineno, - int lineno, const char *filename, - int full_traceback, int nogil) { - PyObject *old_exc, *old_val, *old_tb; - PyObject *ctx; - __Pyx_PyThreadState_declare - PyGILState_STATE state; - if (nogil) - state = PyGILState_Ensure(); - else state = (PyGILState_STATE)0; - CYTHON_UNUSED_VAR(clineno); - CYTHON_UNUSED_VAR(lineno); - CYTHON_UNUSED_VAR(filename); - CYTHON_MAYBE_UNUSED_VAR(nogil); - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&old_exc, &old_val, &old_tb); - if (full_traceback) { - Py_XINCREF(old_exc); - Py_XINCREF(old_val); - Py_XINCREF(old_tb); - __Pyx_ErrRestore(old_exc, old_val, old_tb); - PyErr_PrintEx(0); - } - ctx = PyUnicode_FromString(name); - __Pyx_ErrRestore(old_exc, old_val, old_tb); - if (!ctx) { - PyErr_WriteUnraisable(Py_None); - } else { - PyErr_WriteUnraisable(ctx); - Py_DECREF(ctx); - } - if (nogil) - PyGILState_Release(state); -} - -/* PyDictVersioning */ -#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) { - PyObject *dict = Py_TYPE(obj)->tp_dict; - return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; -} -static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) { - PyObject **dictptr = NULL; - Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; - if (offset) { -#if CYTHON_COMPILING_IN_CPYTHON - dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); -#else - dictptr = _PyObject_GetDictPtr(obj); -#endif - } - return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; -} -static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) { - PyObject *dict = Py_TYPE(obj)->tp_dict; - if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) - return 0; - return obj_dict_version == __Pyx_get_object_dict_version(obj); -} -#endif - -/* GetModuleGlobalName */ -#if CYTHON_USE_DICT_VERSIONS -static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value) -#else -static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) -#endif -{ - PyObject *result; -#if CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(!__pyx_m)) { - if (!PyErr_Occurred()) - PyErr_SetNone(PyExc_NameError); - return NULL; - } - result = PyObject_GetAttr(__pyx_m, name); - if (likely(result)) { - return result; - } - PyErr_Clear(); -#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); - __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return result; - } -#else - result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } - PyErr_Clear(); -#endif - return __Pyx_GetBuiltinName(name); -} - -/* CIntToDigits */ -static const char DIGIT_PAIRS_10[2*10*10+1] = { - "00010203040506070809" - "10111213141516171819" - "20212223242526272829" - "30313233343536373839" - "40414243444546474849" - "50515253545556575859" - "60616263646566676869" - "70717273747576777879" - "80818283848586878889" - "90919293949596979899" -}; -static const char DIGIT_PAIRS_8[2*8*8+1] = { - "0001020304050607" - "1011121314151617" - "2021222324252627" - "3031323334353637" - "4041424344454647" - "5051525354555657" - "6061626364656667" - "7071727374757677" -}; -static const char DIGITS_HEX[2*16+1] = { - "0123456789abcdef" - "0123456789ABCDEF" -}; - -/* BuildPyUnicode */ -static PyObject* __Pyx_PyUnicode_BuildFromAscii(Py_ssize_t ulength, const char* chars, int clength, - int prepend_sign, char padding_char) { - PyObject *uval; - Py_ssize_t uoffset = ulength - clength; -#if CYTHON_USE_UNICODE_INTERNALS - Py_ssize_t i; - void *udata; - uval = PyUnicode_New(ulength, 127); - if (unlikely(!uval)) return NULL; - udata = PyUnicode_DATA(uval); - if (uoffset > 0) { - i = 0; - if (prepend_sign) { - __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, 0, '-'); - i++; - } - for (; i < uoffset; i++) { - __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, i, padding_char); - } - } - for (i=0; i < clength; i++) { - __Pyx_PyUnicode_WRITE(PyUnicode_1BYTE_KIND, udata, uoffset+i, chars[i]); - } -#else - { - PyObject *sign = NULL, *padding = NULL; - uval = NULL; - if (uoffset > 0) { - prepend_sign = !!prepend_sign; - if (uoffset > prepend_sign) { - padding = PyUnicode_FromOrdinal(padding_char); - if (likely(padding) && uoffset > prepend_sign + 1) { - PyObject *tmp = PySequence_Repeat(padding, uoffset - prepend_sign); - Py_DECREF(padding); - padding = tmp; - } - if (unlikely(!padding)) goto done_or_error; - } - if (prepend_sign) { - sign = PyUnicode_FromOrdinal('-'); - if (unlikely(!sign)) goto done_or_error; - } - } - uval = PyUnicode_DecodeASCII(chars, clength, NULL); - if (likely(uval) && padding) { - PyObject *tmp = PyUnicode_Concat(padding, uval); - Py_DECREF(uval); - uval = tmp; - } - if (likely(uval) && sign) { - PyObject *tmp = PyUnicode_Concat(sign, uval); - Py_DECREF(uval); - uval = tmp; - } -done_or_error: - Py_XDECREF(padding); - Py_XDECREF(sign); - } -#endif - return uval; -} - -/* COrdinalToPyUnicode */ -static CYTHON_INLINE int __Pyx_CheckUnicodeValue(int value) { - return value <= 1114111; -} -static PyObject* __Pyx_PyUnicode_FromOrdinal_Padded(int value, Py_ssize_t ulength, char padding_char) { - if (likely(ulength <= 250)) { - char chars[256]; - if (value <= 255) { - memset(chars, padding_char, (size_t) (ulength - 1)); - chars[ulength-1] = (char) value; - return PyUnicode_DecodeLatin1(chars, ulength, NULL); - } - char *cpos = chars + sizeof(chars); - if (value < 0x800) { - *--cpos = (char) (0x80 | (value & 0x3f)); - value >>= 6; - *--cpos = (char) (0xc0 | (value & 0x1f)); - } else if (value < 0x10000) { - *--cpos = (char) (0x80 | (value & 0x3f)); - value >>= 6; - *--cpos = (char) (0x80 | (value & 0x3f)); - value >>= 6; - *--cpos = (char) (0xe0 | (value & 0x0f)); - } else { - *--cpos = (char) (0x80 | (value & 0x3f)); - value >>= 6; - *--cpos = (char) (0x80 | (value & 0x3f)); - value >>= 6; - *--cpos = (char) (0x80 | (value & 0x3f)); - value >>= 6; - *--cpos = (char) (0xf0 | (value & 0x07)); - } - cpos -= ulength; - memset(cpos, padding_char, (size_t) (ulength - 1)); - return PyUnicode_DecodeUTF8(cpos, chars + sizeof(chars) - cpos, NULL); - } - if (value <= 127 && CYTHON_USE_UNICODE_INTERNALS) { - const char chars[1] = {(char) value}; - return __Pyx_PyUnicode_BuildFromAscii(ulength, chars, 1, 0, padding_char); - } - { - PyObject *uchar, *padding_uchar, *padding, *result; - padding_uchar = PyUnicode_FromOrdinal(padding_char); - if (unlikely(!padding_uchar)) return NULL; - padding = PySequence_Repeat(padding_uchar, ulength - 1); - Py_DECREF(padding_uchar); - if (unlikely(!padding)) return NULL; - uchar = PyUnicode_FromOrdinal(value); - if (unlikely(!uchar)) { - Py_DECREF(padding); - return NULL; - } - result = PyUnicode_Concat(padding, uchar); - Py_DECREF(padding); - Py_DECREF(uchar); - return result; - } -} - -/* CIntToPyUnicode */ -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_From_size_t(size_t value, Py_ssize_t width, char padding_char, char format_char) { - char digits[sizeof(size_t)*3+2]; - char *dpos, *end = digits + sizeof(size_t)*3+2; - const char *hex_digits = DIGITS_HEX; - Py_ssize_t length, ulength; - int prepend_sign, last_one_off; - size_t remaining; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const size_t neg_one = (size_t) -1, const_zero = (size_t) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (format_char == 'c') { - if (unlikely(!(is_unsigned || value == 0 || value > 0) || - !(sizeof(value) <= 2 || value & ~ (size_t) 0x01fffff || __Pyx_CheckUnicodeValue((int) value)))) { - PyErr_SetString(PyExc_OverflowError, "%c arg not in range(0x110000)"); - return NULL; - } - if (width <= 1) { - return PyUnicode_FromOrdinal((int) value); - } - return __Pyx_PyUnicode_FromOrdinal_Padded((int) value, width, padding_char); - } - if (format_char == 'X') { - hex_digits += 16; - format_char = 'x'; - } - remaining = value; - last_one_off = 0; - dpos = end; - do { - int digit_pos; - switch (format_char) { - case 'o': - digit_pos = abs((int)(remaining % (8*8))); - remaining = (size_t) (remaining / (8*8)); - dpos -= 2; - memcpy(dpos, DIGIT_PAIRS_8 + digit_pos * 2, 2); - last_one_off = (digit_pos < 8); - break; - case 'd': - digit_pos = abs((int)(remaining % (10*10))); - remaining = (size_t) (remaining / (10*10)); - dpos -= 2; - memcpy(dpos, DIGIT_PAIRS_10 + digit_pos * 2, 2); - last_one_off = (digit_pos < 10); - break; - case 'x': - *(--dpos) = hex_digits[abs((int)(remaining % 16))]; - remaining = (size_t) (remaining / 16); - break; - default: - assert(0); - break; - } - } while (unlikely(remaining != 0)); - assert(!last_one_off || *dpos == '0'); - dpos += last_one_off; - length = end - dpos; - ulength = length; - prepend_sign = 0; - if (!is_unsigned && value <= neg_one) { - if (padding_char == ' ' || width <= length + 1) { - *(--dpos) = '-'; - ++length; - } else { - prepend_sign = 1; - } - ++ulength; - } - if (width > ulength) { - ulength = width; - } - if (ulength == 1) { - return PyUnicode_FromOrdinal(*dpos); - } - return __Pyx_PyUnicode_BuildFromAscii(ulength, dpos, (int) length, prepend_sign, padding_char); -} - -/* PyObjectFormatAndDecref */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { - if (unlikely(!s)) return NULL; - if (likely(PyUnicode_CheckExact(s))) return s; - return __Pyx_PyObject_FormatAndDecref(s, f); -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f) { - PyObject *result; - if (unlikely(!s)) return NULL; - result = PyObject_Format(s, f); - Py_DECREF(s); - return result; -} - -/* JoinPyUnicode */ -static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, - Py_UCS4 max_char) { -#if CYTHON_USE_UNICODE_INTERNALS && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - PyObject *result_uval; - int result_ukind, kind_shift; - Py_ssize_t i, char_pos; - void *result_udata; - if (max_char > 1114111) max_char = 1114111; - result_uval = PyUnicode_New(result_ulength, max_char); - if (unlikely(!result_uval)) return NULL; - result_ukind = (max_char <= 255) ? PyUnicode_1BYTE_KIND : (max_char <= 65535) ? PyUnicode_2BYTE_KIND : PyUnicode_4BYTE_KIND; - kind_shift = (result_ukind == PyUnicode_4BYTE_KIND) ? 2 : result_ukind - 1; - result_udata = PyUnicode_DATA(result_uval); - assert(kind_shift == 2 || kind_shift == 1 || kind_shift == 0); - if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - result_ulength < 0)) - goto overflow; - char_pos = 0; - for (i=0; i < value_count; i++) { - int ukind; - Py_ssize_t ulength; - void *udata; - PyObject *uval = values[i]; - #if !CYTHON_COMPILING_IN_LIMITED_API - if (__Pyx_PyUnicode_READY(uval) == (-1)) - goto bad; - #endif - ulength = __Pyx_PyUnicode_GET_LENGTH(uval); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely(ulength < 0)) goto bad; - #endif - if (unlikely(!ulength)) - continue; - if (unlikely((PY_SSIZE_T_MAX >> kind_shift) - ulength < char_pos)) - goto overflow; - ukind = __Pyx_PyUnicode_KIND(uval); - udata = __Pyx_PyUnicode_DATA(uval); - if (ukind == result_ukind) { - memcpy((char *)result_udata + (char_pos << kind_shift), udata, (size_t) (ulength << kind_shift)); - } else { - #if PY_VERSION_HEX >= 0x030d0000 - if (unlikely(PyUnicode_CopyCharacters(result_uval, char_pos, uval, 0, ulength) < 0)) goto bad; - #elif CYTHON_COMPILING_IN_CPYTHON || defined(_PyUnicode_FastCopyCharacters) - _PyUnicode_FastCopyCharacters(result_uval, char_pos, uval, 0, ulength); - #else - Py_ssize_t j; - for (j=0; j < ulength; j++) { - Py_UCS4 uchar = __Pyx_PyUnicode_READ(ukind, udata, j); - __Pyx_PyUnicode_WRITE(result_ukind, result_udata, char_pos+j, uchar); - } - #endif - } - char_pos += ulength; - } - return result_uval; -overflow: - PyErr_SetString(PyExc_OverflowError, "join() result is too long for a Python string"); -bad: - Py_DECREF(result_uval); - return NULL; -#else - Py_ssize_t i; - PyObject *result = NULL; - PyObject *value_tuple = PyTuple_New(value_count); - if (unlikely(!value_tuple)) return NULL; - CYTHON_UNUSED_VAR(max_char); - CYTHON_UNUSED_VAR(result_ulength); - for (i=0; i__pyx_empty_unicode, value_tuple); -bad: - Py_DECREF(value_tuple); - return result; -#endif -} - -/* DictGetItem */ -#if !CYTHON_COMPILING_IN_PYPY -static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { - PyObject *value; - if (unlikely(__Pyx_PyDict_GetItemRef(d, key, &value) == 0)) { // no value, no error - if (unlikely(PyTuple_Check(key))) { - PyObject* args = PyTuple_Pack(1, key); - if (likely(args)) { - PyErr_SetObject(PyExc_KeyError, args); - Py_DECREF(args); - } - } else { - PyErr_SetObject(PyExc_KeyError, key); - } - } - return value; -} -#endif - -/* PyObjectCall2Args */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { - PyObject *args[3] = {NULL, arg1, arg2}; - return __Pyx_PyObject_FastCall(function, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET); -} - -/* CallUnboundCMethod1 */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg) { - int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc); - if (likely(was_initialized == 2 && cfunc->func)) { - int flag = cfunc->flag; - if (flag == METH_O) { - return __Pyx_CallCFunction(cfunc, self, arg); - } else if (flag == METH_FASTCALL) { - return __Pyx_CallCFunctionFast(cfunc, self, &arg, 1); - } else if (flag == (METH_FASTCALL | METH_KEYWORDS)) { - return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, &arg, 1, NULL); - } - } -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - else if (unlikely(was_initialized == 1)) { - __Pyx_CachedCFunction tmp_cfunc = { -#ifndef __cplusplus - 0 -#endif - }; - tmp_cfunc.type = cfunc->type; - tmp_cfunc.method_name = cfunc->method_name; - return __Pyx__CallUnboundCMethod1(&tmp_cfunc, self, arg); - } -#endif - PyObject* result = __Pyx__CallUnboundCMethod1(cfunc, self, arg); - __Pyx_CachedCFunction_SetFinishedInitializing(cfunc); - return result; -} -#endif -static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg){ - PyObject *result = NULL; - if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; -#if CYTHON_COMPILING_IN_CPYTHON - if (cfunc->func && (cfunc->flag & METH_VARARGS)) { - PyObject *args = PyTuple_New(1); - if (unlikely(!args)) return NULL; - Py_INCREF(arg); - PyTuple_SET_ITEM(args, 0, arg); - if (cfunc->flag & METH_KEYWORDS) - result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL); - else - result = __Pyx_CallCFunction(cfunc, self, args); - Py_DECREF(args); - } else -#endif - { - result = __Pyx_PyObject_Call2Args(cfunc->method, self, arg); - } - return result; -} - -/* py_dict_pop */ -static CYTHON_INLINE PyObject *__Pyx_PyDict_Pop(PyObject *d, PyObject *key, PyObject *default_value) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop) - PyObject *value; - if (PyDict_Pop(d, key, &value) == 0) { - if (default_value) { - Py_INCREF(default_value); - } else { - PyErr_SetObject(PyExc_KeyError, key); - } - value = default_value; - } - return value; -#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 - return _PyDict_Pop(d, key, default_value); -#else - if (default_value) { - return __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, d, key, default_value); - } else { - return __Pyx_CallUnboundCMethod1(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, d, key); - } -#endif -} - -/* PySequenceMultiply */ -static PyObject* __Pyx_PySequence_Multiply_Generic(PyObject *seq, Py_ssize_t mul) { - PyObject *result, *pymul = PyLong_FromSsize_t(mul); - if (unlikely(!pymul)) - return NULL; - result = PyNumber_Multiply(seq, pymul); - Py_DECREF(pymul); - return result; -} -static CYTHON_INLINE PyObject* __Pyx_PySequence_Multiply(PyObject *seq, Py_ssize_t mul) { -#if CYTHON_USE_TYPE_SLOTS - PyTypeObject *type = Py_TYPE(seq); - if (likely(type->tp_as_sequence && type->tp_as_sequence->sq_repeat)) { - return type->tp_as_sequence->sq_repeat(seq, mul); - } else -#endif - { - return __Pyx_PySequence_Multiply_Generic(seq, mul); - } -} - -/* CallTypeTraverse */ -#if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) -#else -static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg) { - #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 - if (__Pyx_get_runtime_version() < 0x03090000) return 0; - #endif - if (!always_call) { - PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*); - unsigned long flags = PyType_GetFlags(base); - if (flags & Py_TPFLAGS_HEAPTYPE) { - return 0; - } - } - Py_VISIT((PyObject*)Py_TYPE(o)); - return 0; -} -#endif - -/* LimitedApiGetTypeDict */ -#if CYTHON_COMPILING_IN_LIMITED_API -static Py_ssize_t __Pyx_GetTypeDictOffset(void) { - PyObject *tp_dictoffset_o; - Py_ssize_t tp_dictoffset; - tp_dictoffset_o = PyObject_GetAttrString((PyObject*)(&PyType_Type), "__dictoffset__"); - if (unlikely(!tp_dictoffset_o)) return -1; - tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o); - Py_DECREF(tp_dictoffset_o); - if (unlikely(tp_dictoffset == 0)) { - PyErr_SetString( - PyExc_TypeError, - "'type' doesn't have a dictoffset"); - return -1; - } else if (unlikely(tp_dictoffset < 0)) { - PyErr_SetString( - PyExc_TypeError, - "'type' has an unexpected negative dictoffset. " - "Please report this as Cython bug"); - return -1; - } - return tp_dictoffset; -} -static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp) { - static Py_ssize_t tp_dictoffset = 0; - if (unlikely(tp_dictoffset == 0)) { - tp_dictoffset = __Pyx_GetTypeDictOffset(); - if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) { - tp_dictoffset = 0; // try again next time? - return NULL; - } - } - return *(PyObject**)((char*)tp + tp_dictoffset); -} -#endif - -/* SetItemOnTypeDict */ -static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *v) { - int result; - PyObject *tp_dict; -#if CYTHON_COMPILING_IN_LIMITED_API - tp_dict = __Pyx_GetTypeDict(tp); - if (unlikely(!tp_dict)) return -1; -#else - tp_dict = tp->tp_dict; -#endif - result = PyDict_SetItem(tp_dict, k, v); - if (likely(!result)) { - PyType_Modified(tp); - if (unlikely(PyObject_HasAttr(v, __pyx_mstate_global->__pyx_n_u_set_name))) { - PyObject *setNameResult = PyObject_CallMethodObjArgs(v, __pyx_mstate_global->__pyx_n_u_set_name, (PyObject *) tp, k, NULL); - if (!setNameResult) return -1; - Py_DECREF(setNameResult); - } - } - return result; -} - -/* FixUpExtensionType */ -static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject *type) { -#if __PYX_LIMITED_VERSION_HEX > 0x030900B1 - CYTHON_UNUSED_VAR(spec); - CYTHON_UNUSED_VAR(type); - CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); -#else - const PyType_Slot *slot = spec->slots; - int changed = 0; -#if !CYTHON_COMPILING_IN_LIMITED_API - while (slot && slot->slot && slot->slot != Py_tp_members) - slot++; - if (slot && slot->slot == Py_tp_members) { -#if !CYTHON_COMPILING_IN_CPYTHON - const -#endif // !CYTHON_COMPILING_IN_CPYTHON) - PyMemberDef *memb = (PyMemberDef*) slot->pfunc; - while (memb && memb->name) { - if (memb->name[0] == '_' && memb->name[1] == '_') { - if (strcmp(memb->name, "__weaklistoffset__") == 0) { - assert(memb->type == T_PYSSIZET); - assert(memb->flags == READONLY); - type->tp_weaklistoffset = memb->offset; - changed = 1; - } - else if (strcmp(memb->name, "__dictoffset__") == 0) { - assert(memb->type == T_PYSSIZET); - assert(memb->flags == READONLY); - type->tp_dictoffset = memb->offset; - changed = 1; - } -#if CYTHON_METH_FASTCALL - else if (strcmp(memb->name, "__vectorcalloffset__") == 0) { - assert(memb->type == T_PYSSIZET); - assert(memb->flags == READONLY); -#if PY_VERSION_HEX >= 0x030800b4 - type->tp_vectorcall_offset = memb->offset; -#else - type->tp_print = (printfunc) memb->offset; -#endif - changed = 1; - } -#endif // CYTHON_METH_FASTCALL - else if (strcmp(memb->name, "__module__") == 0) { - PyObject *descr; - assert(memb->type == T_OBJECT); - assert(memb->flags == 0 || memb->flags == READONLY); - descr = PyDescr_NewMember(type, memb); - if (unlikely(!descr)) - return -1; - int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); - Py_DECREF(descr); - if (unlikely(set_item_result < 0)) { - return -1; - } - changed = 1; - } - } - memb++; - } - } -#endif // !CYTHON_COMPILING_IN_LIMITED_API - slot = spec->slots; - while (slot && slot->slot && slot->slot != Py_tp_getset) - slot++; - if (slot && slot->slot == Py_tp_getset) { - PyGetSetDef *getset = (PyGetSetDef*) slot->pfunc; - while (getset && getset->name) { - if (getset->name[0] == '_' && getset->name[1] == '_' && strcmp(getset->name, "__module__") == 0) { - PyObject *descr = PyDescr_NewGetSet(type, getset); - if (unlikely(!descr)) - return -1; - #if CYTHON_COMPILING_IN_LIMITED_API - PyObject *pyname = PyUnicode_FromString(getset->name); - if (unlikely(!pyname)) { - Py_DECREF(descr); - return -1; - } - int set_item_result = __Pyx_SetItemOnTypeDict(type, pyname, descr); - Py_DECREF(pyname); - #else - CYTHON_UNUSED_VAR(__Pyx__SetItemOnTypeDict); - int set_item_result = PyDict_SetItem(type->tp_dict, PyDescr_NAME(descr), descr); - #endif - Py_DECREF(descr); - if (unlikely(set_item_result < 0)) { - return -1; - } - changed = 1; - } - ++getset; - } - } - if (changed) - PyType_Modified(type); -#endif // PY_VERSION_HEX > 0x030900B1 - return 0; -} - -/* ValidateBasesTuple */ -#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS -static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffset, PyObject *bases) { - Py_ssize_t i, n; -#if CYTHON_ASSUME_SAFE_SIZE - n = PyTuple_GET_SIZE(bases); -#else - n = PyTuple_Size(bases); - if (unlikely(n < 0)) return -1; -#endif - for (i = 1; i < n; i++) - { - PyTypeObject *b; -#if CYTHON_AVOID_BORROWED_REFS - PyObject *b0 = PySequence_GetItem(bases, i); - if (!b0) return -1; -#elif CYTHON_ASSUME_SAFE_MACROS - PyObject *b0 = PyTuple_GET_ITEM(bases, i); -#else - PyObject *b0 = PyTuple_GetItem(bases, i); - if (!b0) return -1; -#endif - b = (PyTypeObject*) b0; - if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE)) - { - __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); - PyErr_Format(PyExc_TypeError, - "base class '" __Pyx_FMT_TYPENAME "' is not a heap type", b_name); - __Pyx_DECREF_TypeName(b_name); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - return -1; - } - if (dictoffset == 0) - { - Py_ssize_t b_dictoffset = 0; -#if CYTHON_USE_TYPE_SLOTS - b_dictoffset = b->tp_dictoffset; -#else - PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__"); - if (!py_b_dictoffset) goto dictoffset_return; - b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset); - Py_DECREF(py_b_dictoffset); - if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return; -#endif - if (b_dictoffset) { - { - __Pyx_TypeName b_name = __Pyx_PyType_GetFullyQualifiedName(b); - PyErr_Format(PyExc_TypeError, - "extension type '%.200s' has no __dict__ slot, " - "but base type '" __Pyx_FMT_TYPENAME "' has: " - "either add 'cdef dict __dict__' to the extension type " - "or add '__slots__ = [...]' to the base type", - type_name, b_name); - __Pyx_DECREF_TypeName(b_name); - } -#if !CYTHON_USE_TYPE_SLOTS - dictoffset_return: -#endif -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - return -1; - } - } -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(b0); -#endif - } - return 0; -} -#endif - -/* PyType_Ready */ -CYTHON_UNUSED static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) { - while (t) { - PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); - if (bases) { - return 1; - } - t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*); - } - return 0; -} -static int __Pyx_PyType_Ready(PyTypeObject *t) { -#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON || defined(PYSTON_MAJOR_VERSION) - (void)__Pyx_PyObject_CallMethod0; -#if CYTHON_USE_TYPE_SPECS - (void)__Pyx_validate_bases_tuple; -#endif - return PyType_Ready(t); -#else - int r; - if (!__Pyx_PyType_HasMultipleInheritance(t)) { - return PyType_Ready(t); - } - PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*); - if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset, bases) == -1)) - return -1; -#if !defined(PYSTON_MAJOR_VERSION) - { - int gc_was_enabled; - #if PY_VERSION_HEX >= 0x030A00b1 - gc_was_enabled = PyGC_Disable(); - (void)__Pyx_PyObject_CallMethod0; - #else - PyObject *ret, *py_status; - PyObject *gc = NULL; - #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\ - !CYTHON_COMPILING_IN_GRAAL - gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc); - #endif - if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc); - if (unlikely(!gc)) return -1; - py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled); - if (unlikely(!py_status)) { - Py_DECREF(gc); - return -1; - } - gc_was_enabled = __Pyx_PyObject_IsTrue(py_status); - Py_DECREF(py_status); - if (gc_was_enabled > 0) { - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable); - if (unlikely(!ret)) { - Py_DECREF(gc); - return -1; - } - Py_DECREF(ret); - } else if (unlikely(gc_was_enabled == -1)) { - Py_DECREF(gc); - return -1; - } - #endif - t->tp_flags |= Py_TPFLAGS_HEAPTYPE; -#if PY_VERSION_HEX >= 0x030A0000 - t->tp_flags |= Py_TPFLAGS_IMMUTABLETYPE; -#endif -#else - (void)__Pyx_PyObject_CallMethod0; -#endif - r = PyType_Ready(t); -#if !defined(PYSTON_MAJOR_VERSION) - t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE; - #if PY_VERSION_HEX >= 0x030A00b1 - if (gc_was_enabled) - PyGC_Enable(); - #else - if (gc_was_enabled) { - PyObject *tp, *v, *tb; - PyErr_Fetch(&tp, &v, &tb); - ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable); - if (likely(ret || r == -1)) { - Py_XDECREF(ret); - PyErr_Restore(tp, v, tb); - } else { - Py_XDECREF(tp); - Py_XDECREF(v); - Py_XDECREF(tb); - r = -1; - } - } - Py_DECREF(gc); - #endif - } -#endif - return r; -#endif -} - -/* SetVTable */ -static int __Pyx_SetVtable(PyTypeObject *type, void *vtable) { - PyObject *ob = PyCapsule_New(vtable, 0, 0); - if (unlikely(!ob)) - goto bad; -#if CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(PyObject_SetAttr((PyObject *) type, __pyx_mstate_global->__pyx_n_u_pyx_vtable, ob) < 0)) -#else - if (unlikely(PyDict_SetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable, ob) < 0)) -#endif - goto bad; - Py_DECREF(ob); - return 0; -bad: - Py_XDECREF(ob); - return -1; -} - -/* GetVTable */ -static void* __Pyx_GetVtable(PyTypeObject *type) { - void* ptr; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_mstate_global->__pyx_n_u_pyx_vtable); -#else - PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_mstate_global->__pyx_n_u_pyx_vtable); -#endif - if (!ob) - goto bad; - ptr = PyCapsule_GetPointer(ob, 0); - if (!ptr && !PyErr_Occurred()) - PyErr_SetString(PyExc_RuntimeError, "invalid vtable found for imported type"); - Py_DECREF(ob); - return ptr; -bad: - Py_XDECREF(ob); - return NULL; -} - -/* MergeVTables */ -static int __Pyx_MergeVtables(PyTypeObject *type) { - int i=0; - Py_ssize_t size; - void** base_vtables; - __Pyx_TypeName tp_base_name = NULL; - __Pyx_TypeName base_name = NULL; - void* unknown = (void*)-1; - PyObject* bases = __Pyx_PyType_GetSlot(type, tp_bases, PyObject*); - int base_depth = 0; - { - PyTypeObject* base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); - while (base) { - base_depth += 1; - base = __Pyx_PyType_GetSlot(base, tp_base, PyTypeObject*); - } - } - base_vtables = (void**) PyMem_Malloc(sizeof(void*) * (size_t)(base_depth + 1)); - base_vtables[0] = unknown; -#if CYTHON_COMPILING_IN_LIMITED_API - size = PyTuple_Size(bases); - if (size < 0) goto other_failure; -#else - size = PyTuple_GET_SIZE(bases); -#endif - for (i = 1; i < size; i++) { - PyObject *basei; - void* base_vtable; -#if CYTHON_AVOID_BORROWED_REFS - basei = PySequence_GetItem(bases, i); - if (unlikely(!basei)) goto other_failure; -#elif !CYTHON_ASSUME_SAFE_MACROS - basei = PyTuple_GetItem(bases, i); - if (unlikely(!basei)) goto other_failure; -#else - basei = PyTuple_GET_ITEM(bases, i); -#endif - base_vtable = __Pyx_GetVtable((PyTypeObject*)basei); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(basei); -#endif - if (base_vtable != NULL) { - int j; - PyTypeObject* base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); - for (j = 0; j < base_depth; j++) { - if (base_vtables[j] == unknown) { - base_vtables[j] = __Pyx_GetVtable(base); - base_vtables[j + 1] = unknown; - } - if (base_vtables[j] == base_vtable) { - break; - } else if (base_vtables[j] == NULL) { - goto bad; - } - base = __Pyx_PyType_GetSlot(base, tp_base, PyTypeObject*); - } - } - } - PyErr_Clear(); - PyMem_Free(base_vtables); - return 0; -bad: - { - PyTypeObject* basei = NULL; - PyTypeObject* tp_base = __Pyx_PyType_GetSlot(type, tp_base, PyTypeObject*); - tp_base_name = __Pyx_PyType_GetFullyQualifiedName(tp_base); -#if CYTHON_AVOID_BORROWED_REFS - basei = (PyTypeObject*)PySequence_GetItem(bases, i); - if (unlikely(!basei)) goto really_bad; -#elif !CYTHON_ASSUME_SAFE_MACROS - basei = (PyTypeObject*)PyTuple_GetItem(bases, i); - if (unlikely(!basei)) goto really_bad; -#else - basei = (PyTypeObject*)PyTuple_GET_ITEM(bases, i); -#endif - base_name = __Pyx_PyType_GetFullyQualifiedName(basei); -#if CYTHON_AVOID_BORROWED_REFS - Py_DECREF(basei); -#endif - } - PyErr_Format(PyExc_TypeError, - "multiple bases have vtable conflict: '" __Pyx_FMT_TYPENAME "' and '" __Pyx_FMT_TYPENAME "'", tp_base_name, base_name); -#if CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS -really_bad: // bad has failed! -#endif - __Pyx_DECREF_TypeName(tp_base_name); - __Pyx_DECREF_TypeName(base_name); -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_AVOID_BORROWED_REFS || !CYTHON_ASSUME_SAFE_MACROS -other_failure: -#endif - PyMem_Free(base_vtables); - return -1; -} - -/* DelItemOnTypeDict */ -static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) { - int result; - PyObject *tp_dict; -#if CYTHON_COMPILING_IN_LIMITED_API - tp_dict = __Pyx_GetTypeDict(tp); - if (unlikely(!tp_dict)) return -1; -#else - tp_dict = tp->tp_dict; -#endif - result = PyDict_DelItem(tp_dict, k); - if (likely(!result)) PyType_Modified(tp); - return result; -} - -/* SetupReduce */ -static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { - int ret; - PyObject *name_attr; - name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name); - if (likely(name_attr)) { - ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); - } else { - ret = -1; - } - if (unlikely(ret < 0)) { - PyErr_Clear(); - ret = 0; - } - Py_XDECREF(name_attr); - return ret; -} -static int __Pyx_setup_reduce(PyObject* type_obj) { - int ret = 0; - PyObject *object_reduce = NULL; - PyObject *object_getstate = NULL; - PyObject *object_reduce_ex = NULL; - PyObject *reduce = NULL; - PyObject *reduce_ex = NULL; - PyObject *reduce_cython = NULL; - PyObject *setstate = NULL; - PyObject *setstate_cython = NULL; - PyObject *getstate = NULL; -#if CYTHON_USE_PYTYPE_LOOKUP - getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_getstate); -#else - getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_getstate); - if (!getstate && PyErr_Occurred()) { - goto __PYX_BAD; - } -#endif - if (getstate) { -#if CYTHON_USE_PYTYPE_LOOKUP - object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); -#else - object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); - if (!object_getstate && PyErr_Occurred()) { - goto __PYX_BAD; - } -#endif - if (object_getstate != getstate) { - goto __PYX_GOOD; - } - } -#if CYTHON_USE_PYTYPE_LOOKUP - object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; -#else - object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; -#endif - reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; - if (reduce_ex == object_reduce_ex) { -#if CYTHON_USE_PYTYPE_LOOKUP - object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; -#else - object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; -#endif - reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce); if (unlikely(!reduce)) goto __PYX_BAD; - if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython)) { - reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); - if (likely(reduce_cython)) { - ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (reduce == object_reduce || PyErr_Occurred()) { - goto __PYX_BAD; - } - setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate); - if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); - if (likely(setstate_cython)) { - ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (!setstate || PyErr_Occurred()) { - goto __PYX_BAD; - } - } - PyType_Modified((PyTypeObject*)type_obj); - } - } - goto __PYX_GOOD; -__PYX_BAD: - if (!PyErr_Occurred()) { - __Pyx_TypeName type_obj_name = - __Pyx_PyType_GetFullyQualifiedName((PyTypeObject*)type_obj); - PyErr_Format(PyExc_RuntimeError, - "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); - __Pyx_DECREF_TypeName(type_obj_name); - } - ret = -1; -__PYX_GOOD: -#if !CYTHON_USE_PYTYPE_LOOKUP - Py_XDECREF(object_reduce); - Py_XDECREF(object_reduce_ex); - Py_XDECREF(object_getstate); - Py_XDECREF(getstate); -#endif - Py_XDECREF(reduce); - Py_XDECREF(reduce_ex); - Py_XDECREF(reduce_cython); - Py_XDECREF(setstate); - Py_XDECREF(setstate_cython); - return ret; -} - -/* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_1_2 -#define __PYX_HAVE_RT_ImportType_3_1_2 -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) -{ - PyObject *result = 0; - Py_ssize_t basicsize; - Py_ssize_t itemsize; -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - PyObject *py_itemsize; -#endif - result = PyObject_GetAttrString(module, class_name); - if (!result) - goto bad; - if (!PyType_Check(result)) { - PyErr_Format(PyExc_TypeError, - "%.200s.%.200s is not a type object", - module_name, class_name); - goto bad; - } -#if !CYTHON_COMPILING_IN_LIMITED_API - basicsize = ((PyTypeObject *)result)->tp_basicsize; - itemsize = ((PyTypeObject *)result)->tp_itemsize; -#else - if (size == 0) { - return (PyTypeObject *)result; - } - py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); - if (!py_basicsize) - goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; - py_itemsize = PyObject_GetAttrString(result, "__itemsize__"); - if (!py_itemsize) - goto bad; - itemsize = PyLong_AsSsize_t(py_itemsize); - Py_DECREF(py_itemsize); - py_itemsize = 0; - if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; -#endif - if (itemsize) { - if (size % alignment) { - alignment = size % alignment; - } - if (itemsize < (Py_ssize_t)alignment) - itemsize = (Py_ssize_t)alignment; - } - if ((size_t)(basicsize + itemsize) < size) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize+itemsize); - goto bad; - } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && - ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd-%zd from PyObject", - module_name, class_name, size, basicsize, basicsize+itemsize); - goto bad; - } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { - if (PyErr_WarnFormat(NULL, 0, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize) < 0) { - goto bad; - } - } - return (PyTypeObject *)result; -bad: - Py_XDECREF(result); - return NULL; -} -#endif - -/* Import */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { - PyObject *module = 0; - PyObject *empty_dict = 0; - PyObject *empty_list = 0; - empty_dict = PyDict_New(); - if (unlikely(!empty_dict)) - goto bad; - if (level == -1) { - const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); - if (package_sep != (0)) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - if (!module) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); - } -bad: - Py_XDECREF(empty_dict); - Py_XDECREF(empty_list); - return module; -} - -/* ImportDottedModule */ -static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts_tuple, Py_ssize_t count) { - PyObject *partial_name = NULL, *slice = NULL, *sep = NULL; - Py_ssize_t size; - if (unlikely(PyErr_Occurred())) { - PyErr_Clear(); - } -#if CYTHON_ASSUME_SAFE_SIZE - size = PyTuple_GET_SIZE(parts_tuple); -#else - size = PyTuple_Size(parts_tuple); - if (size < 0) goto bad; -#endif - if (likely(size == count)) { - partial_name = name; - } else { - slice = PySequence_GetSlice(parts_tuple, 0, count); - if (unlikely(!slice)) - goto bad; - sep = PyUnicode_FromStringAndSize(".", 1); - if (unlikely(!sep)) - goto bad; - partial_name = PyUnicode_Join(sep, slice); - } - PyErr_Format( - PyExc_ModuleNotFoundError, - "No module named '%U'", partial_name); -bad: - Py_XDECREF(sep); - Py_XDECREF(slice); - Py_XDECREF(partial_name); - return NULL; -} -static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) { - PyObject *imported_module; -#if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ - CYTHON_COMPILING_IN_GRAAL - PyObject *modules = PyImport_GetModuleDict(); - if (unlikely(!modules)) - return NULL; - imported_module = __Pyx_PyDict_GetItemStr(modules, name); - Py_XINCREF(imported_module); -#else - imported_module = PyImport_GetModule(name); -#endif - return imported_module; -} -static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple) { - Py_ssize_t i, nparts; -#if CYTHON_ASSUME_SAFE_SIZE - nparts = PyTuple_GET_SIZE(parts_tuple); -#else - nparts = PyTuple_Size(parts_tuple); - if (nparts < 0) return NULL; -#endif - for (i=1; i < nparts && module; i++) { - PyObject *part, *submodule; -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - part = PyTuple_GET_ITEM(parts_tuple, i); -#else - part = __Pyx_PySequence_ITEM(parts_tuple, i); - if (!part) return NULL; -#endif - submodule = __Pyx_PyObject_GetAttrStrNoError(module, part); -#if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) - Py_DECREF(part); -#endif - Py_DECREF(module); - module = submodule; - } - if (unlikely(!module)) { - return __Pyx__ImportDottedModule_Error(name, parts_tuple, i); - } - return module; -} -static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple) { - PyObject *imported_module; - PyObject *module = __Pyx_Import(name, NULL, 0); - if (!parts_tuple || unlikely(!module)) - return module; - imported_module = __Pyx__ImportDottedModule_Lookup(name); - if (likely(imported_module)) { - Py_DECREF(module); - return imported_module; - } - PyErr_Clear(); - return __Pyx_ImportDottedModule_WalkParts(module, name, parts_tuple); -} -static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) { -#if CYTHON_COMPILING_IN_CPYTHON - PyObject *module = __Pyx__ImportDottedModule_Lookup(name); - if (likely(module)) { - PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_mstate_global->__pyx_n_u_spec); - if (likely(spec)) { - PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_mstate_global->__pyx_n_u_initializing); - if (likely(!unsafe || !__Pyx_PyObject_IsTrue(unsafe))) { - Py_DECREF(spec); - spec = NULL; - } - Py_XDECREF(unsafe); - } - if (likely(!spec)) { - PyErr_Clear(); - return module; - } - Py_DECREF(spec); - Py_DECREF(module); - } else if (PyErr_Occurred()) { - PyErr_Clear(); - } -#endif - return __Pyx__ImportDottedModule(name, parts_tuple); -} - -/* FetchSharedCythonModule */ -static PyObject *__Pyx_FetchSharedCythonABIModule(void) { - return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); -} - -/* dict_setdefault */ -static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value, - int is_safe_type) { - PyObject* value; - CYTHON_MAYBE_UNUSED_VAR(is_safe_type); -#if CYTHON_COMPILING_IN_LIMITED_API - value = PyObject_CallMethod(d, "setdefault", "OO", key, default_value); -#elif PY_VERSION_HEX >= 0x030d0000 - PyDict_SetDefaultRef(d, key, default_value, &value); -#else - value = PyDict_SetDefault(d, key, default_value); - if (unlikely(!value)) return NULL; - Py_INCREF(value); -#endif - return value; -} - -/* FetchCommonType */ -#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 -static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { - PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases); - if (result && metaclass) { - PyObject *old_tp = (PyObject*)Py_TYPE(result); - Py_INCREF((PyObject*)metaclass); -#if __PYX_LIMITED_VERSION_HEX >= 0x03090000 - Py_SET_TYPE(result, metaclass); -#else - result->ob_type = metaclass; -#endif - Py_DECREF(old_tp); - } - return result; -} -#else -#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b) -#endif -static int __Pyx_VerifyCachedType(PyObject *cached_type, - const char *name, - Py_ssize_t expected_basicsize) { - Py_ssize_t basicsize; - if (!PyType_Check(cached_type)) { - PyErr_Format(PyExc_TypeError, - "Shared Cython type %.200s is not a type object", name); - return -1; - } - if (expected_basicsize == 0) { - return 0; // size is inherited, nothing useful to check - } -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - py_basicsize = PyObject_GetAttrString(cached_type, "__basicsize__"); - if (unlikely(!py_basicsize)) return -1; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = NULL; - if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred()) return -1; -#else - basicsize = ((PyTypeObject*) cached_type)->tp_basicsize; -#endif - if (basicsize != expected_basicsize) { - PyErr_Format(PyExc_TypeError, - "Shared Cython type %.200s has the wrong size, try recompiling", - name); - return -1; - } - return 0; -} -static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) { - PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name; - int get_item_ref_result; - const char* object_name = strrchr(spec->name, '.'); - object_name = object_name ? object_name+1 : spec->name; - py_object_name = PyUnicode_FromString(object_name); - if (!py_object_name) return NULL; - abi_module = __Pyx_FetchSharedCythonABIModule(); - if (!abi_module) goto done; - abi_module_dict = PyModule_GetDict(abi_module); - if (!abi_module_dict) goto done; - get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type); - if (get_item_ref_result == 1) { - if (__Pyx_VerifyCachedType( - cached_type, - object_name, - spec->basicsize) < 0) { - goto bad; - } - goto done; - } else if (unlikely(get_item_ref_result == -1)) { - goto bad; - } - CYTHON_UNUSED_VAR(module); - cached_type = __Pyx_PyType_FromMetaclass(metaclass, abi_module, spec, bases); - if (unlikely(!cached_type)) goto bad; - if (unlikely(__Pyx_fix_up_extension_type_from_spec(spec, (PyTypeObject *) cached_type) < 0)) goto bad; - new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type, 1); - if (unlikely(new_cached_type != cached_type)) { - if (unlikely(!new_cached_type)) goto bad; - Py_DECREF(cached_type); - cached_type = new_cached_type; - if (__Pyx_VerifyCachedType( - cached_type, - object_name, - spec->basicsize) < 0) { - goto bad; - } - goto done; - } else { - Py_DECREF(new_cached_type); - } -done: - Py_XDECREF(abi_module); - Py_DECREF(py_object_name); - assert(cached_type == NULL || PyType_Check(cached_type)); - return (PyTypeObject *) cached_type; -bad: - Py_XDECREF(cached_type); - cached_type = NULL; - goto done; -} - -/* CommonTypesMetaclass */ -PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { - return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); -} -static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { - {"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL}, - {0, 0, 0, 0, 0} -}; -static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = { - {Py_tp_getset, (void *)__pyx_CommonTypesMetaclass_getset}, - {0, 0} -}; -static PyType_Spec __pyx_CommonTypesMetaclass_spec = { - __PYX_TYPE_MODULE_PREFIX "_common_types_metatype", - 0, - 0, -#if PY_VERSION_HEX >= 0x030A0000 - Py_TPFLAGS_IMMUTABLETYPE | - Py_TPFLAGS_DISALLOW_INSTANTIATION | -#endif - Py_TPFLAGS_DEFAULT, - __pyx_CommonTypesMetaclass_slots -}; -static int __pyx_CommonTypesMetaclass_init(PyObject *module) { - __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); - PyObject *bases = PyTuple_Pack(1, &PyType_Type); - if (unlikely(!bases)) { - return -1; - } - mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases); - if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) { - return -1; - } - return 0; -} - -/* PyMethodNew */ -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - PyObject *result; - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 - { - PyObject *args[] = {func, self}; - result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL); - } - #else - result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL); - #endif - return result; -} -#else -static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) { - CYTHON_UNUSED_VAR(typ); - if (!self) - return __Pyx_NewRef(func); - return PyMethod_New(func, self); -} -#endif - -/* PyVectorcallFastCallDict */ -#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) -static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) -{ - PyObject *res = NULL; - PyObject *kwnames; - PyObject **newargs; - PyObject **kwvalues; - Py_ssize_t i, pos; - size_t j; - PyObject *key, *value; - unsigned long keys_are_strings; - #if !CYTHON_ASSUME_SAFE_SIZE - Py_ssize_t nkw = PyDict_Size(kw); - if (unlikely(nkw == -1)) return NULL; - #else - Py_ssize_t nkw = PyDict_GET_SIZE(kw); - #endif - newargs = (PyObject **)PyMem_Malloc((nargs + (size_t)nkw) * sizeof(args[0])); - if (unlikely(newargs == NULL)) { - PyErr_NoMemory(); - return NULL; - } - for (j = 0; j < nargs; j++) newargs[j] = args[j]; - kwnames = PyTuple_New(nkw); - if (unlikely(kwnames == NULL)) { - PyMem_Free(newargs); - return NULL; - } - kwvalues = newargs + nargs; - pos = i = 0; - keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS; - while (PyDict_Next(kw, &pos, &key, &value)) { - keys_are_strings &= - #if CYTHON_COMPILING_IN_LIMITED_API - PyType_GetFlags(Py_TYPE(key)); - #else - Py_TYPE(key)->tp_flags; - #endif - Py_INCREF(key); - Py_INCREF(value); - #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0)) goto cleanup; - #else - PyTuple_SET_ITEM(kwnames, i, key); - #endif - kwvalues[i] = value; - i++; - } - if (unlikely(!keys_are_strings)) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - goto cleanup; - } - res = vc(func, newargs, nargs, kwnames); -cleanup: - Py_DECREF(kwnames); - for (i = 0; i < nkw; i++) - Py_DECREF(kwvalues[i]); - PyMem_Free(newargs); - return res; -} -static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw) -{ - Py_ssize_t kw_size = - likely(kw == NULL) ? - 0 : -#if !CYTHON_ASSUME_SAFE_SIZE - PyDict_Size(kw); -#else - PyDict_GET_SIZE(kw); -#endif - if (kw_size == 0) { - return vc(func, args, nargs, NULL); - } -#if !CYTHON_ASSUME_SAFE_SIZE - else if (unlikely(kw_size == -1)) { - return NULL; - } -#endif - return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw); -} -#endif - -/* CythonFunctionShared */ -#if CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func, void (*cfunc)(void)) { - if (__Pyx_CyFunction_Check(func)) { - return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc; - } else if (PyCFunction_Check(func)) { - return PyCFunction_GetFunction(func) == (PyCFunction) cfunc; - } - return 0; -} -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { - if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) { - int result; - PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func); - if (unlikely(!newFunc)) { - PyErr_Clear(); // It's only an optimization, so don't throw an error - return 0; - } - result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc); - Py_DECREF(newFunc); - return result; - } - return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc); -} -#else -static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void (*cfunc)(void)) { - if (PyMethod_Check(func)) { - func = PyMethod_GET_FUNCTION(func); - } - return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc; -} -#endif -static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) { -#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API - __Pyx_Py_XDECREF_SET( - __Pyx_CyFunction_GetClassObj(f), - ((classobj) ? __Pyx_NewRef(classobj) : NULL)); -#else - __Pyx_Py_XDECREF_SET( - ((PyCMethodObject *) (f))->mm_class, - (PyTypeObject*)((classobj) ? __Pyx_NewRef(classobj) : NULL)); -#endif -} -static PyObject * -__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op) -{ - if (unlikely(op->func_doc == NULL)) { -#if CYTHON_COMPILING_IN_LIMITED_API - op->func_doc = PyObject_GetAttrString(op->func, "__doc__"); - if (unlikely(!op->func_doc)) return NULL; -#else - if (((PyCFunctionObject*)op)->m_ml->ml_doc) { - op->func_doc = PyUnicode_FromString(((PyCFunctionObject*)op)->m_ml->ml_doc); - if (unlikely(op->func_doc == NULL)) - return NULL; - } else { - Py_INCREF(Py_None); - return Py_None; - } -#endif - } - Py_INCREF(op->func_doc); - return op->func_doc; -} -static PyObject * -__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, void *closure) { - PyObject *result; - CYTHON_UNUSED_VAR(closure); - __Pyx_BEGIN_CRITICAL_SECTION(op); - result = __Pyx_CyFunction_get_doc_locked(op); - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static int -__Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value, void *context) -{ - CYTHON_UNUSED_VAR(context); - if (value == NULL) { - value = Py_None; - } - Py_INCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->func_doc, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op) -{ - if (unlikely(op->func_name == NULL)) { -#if CYTHON_COMPILING_IN_LIMITED_API - op->func_name = PyObject_GetAttrString(op->func, "__name__"); -#else - op->func_name = PyUnicode_InternFromString(((PyCFunctionObject*)op)->m_ml->ml_name); -#endif - if (unlikely(op->func_name == NULL)) - return NULL; - } - Py_INCREF(op->func_name); - return op->func_name; -} -static PyObject * -__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op, void *context) -{ - PyObject *result = NULL; - CYTHON_UNUSED_VAR(context); - __Pyx_BEGIN_CRITICAL_SECTION(op); - result = __Pyx_CyFunction_get_name_locked(op); - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static int -__Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value, void *context) -{ - CYTHON_UNUSED_VAR(context); - if (unlikely(value == NULL || !PyUnicode_Check(value))) { - PyErr_SetString(PyExc_TypeError, - "__name__ must be set to a string object"); - return -1; - } - Py_INCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->func_name, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op, void *context) -{ - CYTHON_UNUSED_VAR(context); - PyObject *result; - __Pyx_BEGIN_CRITICAL_SECTION(op); - Py_INCREF(op->func_qualname); - result = op->func_qualname; - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static int -__Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value, void *context) -{ - CYTHON_UNUSED_VAR(context); - if (unlikely(value == NULL || !PyUnicode_Check(value))) { - PyErr_SetString(PyExc_TypeError, - "__qualname__ must be set to a string object"); - return -1; - } - Py_INCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->func_qualname, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_dict_locked(__pyx_CyFunctionObject *op) -{ - if (unlikely(op->func_dict == NULL)) { - op->func_dict = PyDict_New(); - if (unlikely(op->func_dict == NULL)) - return NULL; - } - Py_INCREF(op->func_dict); - return op->func_dict; -} -static PyObject * -__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op, void *context) -{ - CYTHON_UNUSED_VAR(context); - PyObject *result; - __Pyx_BEGIN_CRITICAL_SECTION(op); - result = __Pyx_CyFunction_get_dict_locked(op); - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static int -__Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value, void *context) -{ - CYTHON_UNUSED_VAR(context); - if (unlikely(value == NULL)) { - PyErr_SetString(PyExc_TypeError, - "function's dictionary may not be deleted"); - return -1; - } - if (unlikely(!PyDict_Check(value))) { - PyErr_SetString(PyExc_TypeError, - "setting function's dictionary to a non-dict"); - return -1; - } - Py_INCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->func_dict, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_globals(__pyx_CyFunctionObject *op, void *context) -{ - CYTHON_UNUSED_VAR(context); - Py_INCREF(op->func_globals); - return op->func_globals; -} -static PyObject * -__Pyx_CyFunction_get_closure(__pyx_CyFunctionObject *op, void *context) -{ - CYTHON_UNUSED_VAR(op); - CYTHON_UNUSED_VAR(context); - Py_INCREF(Py_None); - return Py_None; -} -static PyObject * -__Pyx_CyFunction_get_code(__pyx_CyFunctionObject *op, void *context) -{ - PyObject* result = (op->func_code) ? op->func_code : Py_None; - CYTHON_UNUSED_VAR(context); - Py_INCREF(result); - return result; -} -static int -__Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) { - int result = 0; - PyObject *res = op->defaults_getter((PyObject *) op); - if (unlikely(!res)) - return -1; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - op->defaults_tuple = PyTuple_GET_ITEM(res, 0); - Py_INCREF(op->defaults_tuple); - op->defaults_kwdict = PyTuple_GET_ITEM(res, 1); - Py_INCREF(op->defaults_kwdict); - #else - op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0); - if (unlikely(!op->defaults_tuple)) result = -1; - else { - op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1); - if (unlikely(!op->defaults_kwdict)) result = -1; - } - #endif - Py_DECREF(res); - return result; -} -static int -__Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) { - CYTHON_UNUSED_VAR(context); - if (!value) { - value = Py_None; - } else if (unlikely(value != Py_None && !PyTuple_Check(value))) { - PyErr_SetString(PyExc_TypeError, - "__defaults__ must be set to a tuple object"); - return -1; - } - PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__defaults__ will not " - "currently affect the values used in function calls", 1); - Py_INCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->defaults_tuple, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_defaults_locked(__pyx_CyFunctionObject *op) { - PyObject* result = op->defaults_tuple; - if (unlikely(!result)) { - if (op->defaults_getter) { - if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; - result = op->defaults_tuple; - } else { - result = Py_None; - } - } - Py_INCREF(result); - return result; -} -static PyObject * -__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op, void *context) { - PyObject* result = NULL; - CYTHON_UNUSED_VAR(context); - __Pyx_BEGIN_CRITICAL_SECTION(op); - result = __Pyx_CyFunction_get_defaults_locked(op); - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static int -__Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value, void *context) { - CYTHON_UNUSED_VAR(context); - if (!value) { - value = Py_None; - } else if (unlikely(value != Py_None && !PyDict_Check(value))) { - PyErr_SetString(PyExc_TypeError, - "__kwdefaults__ must be set to a dict object"); - return -1; - } - PyErr_WarnEx(PyExc_RuntimeWarning, "changes to cyfunction.__kwdefaults__ will not " - "currently affect the values used in function calls", 1); - Py_INCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_kwdefaults_locked(__pyx_CyFunctionObject *op) { - PyObject* result = op->defaults_kwdict; - if (unlikely(!result)) { - if (op->defaults_getter) { - if (unlikely(__Pyx_CyFunction_init_defaults(op) < 0)) return NULL; - result = op->defaults_kwdict; - } else { - result = Py_None; - } - } - Py_INCREF(result); - return result; -} -static PyObject * -__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op, void *context) { - PyObject* result; - CYTHON_UNUSED_VAR(context); - __Pyx_BEGIN_CRITICAL_SECTION(op); - result = __Pyx_CyFunction_get_kwdefaults_locked(op); - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static int -__Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value, void *context) { - CYTHON_UNUSED_VAR(context); - if (!value || value == Py_None) { - value = NULL; - } else if (unlikely(!PyDict_Check(value))) { - PyErr_SetString(PyExc_TypeError, - "__annotations__ must be set to a dict object"); - return -1; - } - Py_XINCREF(value); - __Pyx_BEGIN_CRITICAL_SECTION(op); - __Pyx_Py_XDECREF_SET(op->func_annotations, value); - __Pyx_END_CRITICAL_SECTION(); - return 0; -} -static PyObject * -__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) { - PyObject* result = op->func_annotations; - if (unlikely(!result)) { - result = PyDict_New(); - if (unlikely(!result)) return NULL; - op->func_annotations = result; - } - Py_INCREF(result); - return result; -} -static PyObject * -__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op, void *context) { - PyObject *result; - CYTHON_UNUSED_VAR(context); - __Pyx_BEGIN_CRITICAL_SECTION(op); - result = __Pyx_CyFunction_get_annotations_locked(op); - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static PyObject * -__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) { - int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE; - if (is_coroutine) { - PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine; - fromlist = PyList_New(1); - if (unlikely(!fromlist)) return NULL; - Py_INCREF(marker); -#if CYTHON_ASSUME_SAFE_MACROS - PyList_SET_ITEM(fromlist, 0, marker); -#else - if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) { - Py_DECREF(marker); - Py_DECREF(fromlist); - return NULL; - } -#endif - module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0); - Py_DECREF(fromlist); - if (unlikely(!module)) goto ignore; - is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker); - Py_DECREF(module); - if (likely(is_coroutine_value)) { - return is_coroutine_value; - } -ignore: - PyErr_Clear(); - } - return __Pyx_PyBool_FromLong(is_coroutine); -} -static PyObject * -__Pyx_CyFunction_get_is_coroutine(__pyx_CyFunctionObject *op, void *context) { - PyObject *result; - CYTHON_UNUSED_VAR(context); - if (op->func_is_coroutine) { - return __Pyx_NewRef(op->func_is_coroutine); - } - result = __Pyx_CyFunction_get_is_coroutine_value(op); - if (unlikely(!result)) - return NULL; - __Pyx_BEGIN_CRITICAL_SECTION(op); - if (op->func_is_coroutine) { - Py_DECREF(result); - result = __Pyx_NewRef(op->func_is_coroutine); - } else { - op->func_is_coroutine = __Pyx_NewRef(result); - } - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static void __Pyx_CyFunction_raise_argument_count_error(__pyx_CyFunctionObject *func, const char* message, Py_ssize_t size) { -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); - if (!py_name) return; - PyErr_Format(PyExc_TypeError, - "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", - py_name, message, size); - Py_DECREF(py_name); -#else - const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; - PyErr_Format(PyExc_TypeError, - "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T "d given)", - name, message, size); -#endif -} -static void __Pyx_CyFunction_raise_type_error(__pyx_CyFunctionObject *func, const char* message) { -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL); - if (!py_name) return; - PyErr_Format(PyExc_TypeError, - "%.200S() %s", - py_name, message); - Py_DECREF(py_name); -#else - const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name; - PyErr_Format(PyExc_TypeError, - "%.200s() %s", - name, message); -#endif -} -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject * -__Pyx_CyFunction_get_module(__pyx_CyFunctionObject *op, void *context) { - CYTHON_UNUSED_VAR(context); - return PyObject_GetAttrString(op->func, "__module__"); -} -static int -__Pyx_CyFunction_set_module(__pyx_CyFunctionObject *op, PyObject* value, void *context) { - CYTHON_UNUSED_VAR(context); - return PyObject_SetAttrString(op->func, "__module__", value); -} -#endif -static PyGetSetDef __pyx_CyFunction_getsets[] = { - {"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {"__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0}, - {"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0}, - {"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0}, - {"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)__Pyx_CyFunction_set_dict, 0, 0}, - {"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0}, - {"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0}, - {"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0}, - {"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0}, - {"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0}, - {"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0}, - {"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0}, -#if CYTHON_COMPILING_IN_LIMITED_API - {"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0}, -#endif - {0, 0, 0, 0, 0} -}; -static PyMemberDef __pyx_CyFunction_members[] = { -#if !CYTHON_COMPILING_IN_LIMITED_API - {"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0}, -#endif - {"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict), READONLY, 0}, -#if CYTHON_METH_FASTCALL -#if CYTHON_BACKPORT_VECTORCALL || CYTHON_COMPILING_IN_LIMITED_API - {"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall), READONLY, 0}, -#else - {"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0}, -#endif -#if CYTHON_COMPILING_IN_LIMITED_API - {"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist), READONLY, 0}, -#else - {"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0}, -#endif -#endif - {0, 0, 0, 0, 0} -}; -static PyObject * -__Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, PyObject *args) -{ - PyObject *result = NULL; - CYTHON_UNUSED_VAR(args); - __Pyx_BEGIN_CRITICAL_SECTION(m); - Py_INCREF(m->func_qualname); - result = m->func_qualname; - __Pyx_END_CRITICAL_SECTION(); - return result; -} -static PyMethodDef __pyx_CyFunction_methods[] = { - {"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_VARARGS, 0}, - {0, 0, 0, 0} -}; -#if CYTHON_COMPILING_IN_LIMITED_API -#define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist) -#else -#define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist) -#endif -static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject *op, PyMethodDef *ml, int flags, PyObject* qualname, - PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { -#if !CYTHON_COMPILING_IN_LIMITED_API - PyCFunctionObject *cf = (PyCFunctionObject*) op; -#endif - if (unlikely(op == NULL)) - return NULL; -#if CYTHON_COMPILING_IN_LIMITED_API - op->func = PyCFunction_NewEx(ml, (PyObject*)op, module); - if (unlikely(!op->func)) return NULL; -#endif - op->flags = flags; - __Pyx_CyFunction_weakreflist(op) = NULL; -#if !CYTHON_COMPILING_IN_LIMITED_API - cf->m_ml = ml; - cf->m_self = (PyObject *) op; -#endif - Py_XINCREF(closure); - op->func_closure = closure; -#if !CYTHON_COMPILING_IN_LIMITED_API - Py_XINCREF(module); - cf->m_module = module; -#endif - op->func_dict = NULL; - op->func_name = NULL; - Py_INCREF(qualname); - op->func_qualname = qualname; - op->func_doc = NULL; -#if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API - op->func_classobj = NULL; -#else - ((PyCMethodObject*)op)->mm_class = NULL; -#endif - op->func_globals = globals; - Py_INCREF(op->func_globals); - Py_XINCREF(code); - op->func_code = code; - op->defaults = NULL; - op->defaults_tuple = NULL; - op->defaults_kwdict = NULL; - op->defaults_getter = NULL; - op->func_annotations = NULL; - op->func_is_coroutine = NULL; -#if CYTHON_METH_FASTCALL - switch (ml->ml_flags & (METH_VARARGS | METH_FASTCALL | METH_NOARGS | METH_O | METH_KEYWORDS | METH_METHOD)) { - case METH_NOARGS: - __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_NOARGS; - break; - case METH_O: - __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_O; - break; - case METH_METHOD | METH_FASTCALL | METH_KEYWORDS: - __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD; - break; - case METH_FASTCALL | METH_KEYWORDS: - __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS; - break; - case METH_VARARGS | METH_KEYWORDS: - __Pyx_CyFunction_func_vectorcall(op) = NULL; - break; - default: - PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); - Py_DECREF(op); - return NULL; - } -#endif - return (PyObject *) op; -} -static int -__Pyx_CyFunction_clear(__pyx_CyFunctionObject *m) -{ - Py_CLEAR(m->func_closure); -#if CYTHON_COMPILING_IN_LIMITED_API - Py_CLEAR(m->func); -#else - Py_CLEAR(((PyCFunctionObject*)m)->m_module); -#endif - Py_CLEAR(m->func_dict); - Py_CLEAR(m->func_name); - Py_CLEAR(m->func_qualname); - Py_CLEAR(m->func_doc); - Py_CLEAR(m->func_globals); - Py_CLEAR(m->func_code); -#if !CYTHON_COMPILING_IN_LIMITED_API -#if PY_VERSION_HEX < 0x030900B1 - Py_CLEAR(__Pyx_CyFunction_GetClassObj(m)); -#else - { - PyObject *cls = (PyObject*) ((PyCMethodObject *) (m))->mm_class; - ((PyCMethodObject *) (m))->mm_class = NULL; - Py_XDECREF(cls); - } -#endif -#endif - Py_CLEAR(m->defaults_tuple); - Py_CLEAR(m->defaults_kwdict); - Py_CLEAR(m->func_annotations); - Py_CLEAR(m->func_is_coroutine); - Py_CLEAR(m->defaults); - return 0; -} -static void __Pyx__CyFunction_dealloc(__pyx_CyFunctionObject *m) -{ - if (__Pyx_CyFunction_weakreflist(m) != NULL) - PyObject_ClearWeakRefs((PyObject *) m); - __Pyx_CyFunction_clear(m); - __Pyx_PyHeapTypeObject_GC_Del(m); -} -static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m) -{ - PyObject_GC_UnTrack(m); - __Pyx__CyFunction_dealloc(m); -} -static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg) -{ - { - int e = __Pyx_call_type_traverse((PyObject*)m, 1, visit, arg); - if (e) return e; - } - Py_VISIT(m->func_closure); -#if CYTHON_COMPILING_IN_LIMITED_API - Py_VISIT(m->func); -#else - Py_VISIT(((PyCFunctionObject*)m)->m_module); -#endif - Py_VISIT(m->func_dict); - __Pyx_VISIT_CONST(m->func_name); - __Pyx_VISIT_CONST(m->func_qualname); - Py_VISIT(m->func_doc); - Py_VISIT(m->func_globals); - __Pyx_VISIT_CONST(m->func_code); -#if !CYTHON_COMPILING_IN_LIMITED_API - Py_VISIT(__Pyx_CyFunction_GetClassObj(m)); -#endif - Py_VISIT(m->defaults_tuple); - Py_VISIT(m->defaults_kwdict); - Py_VISIT(m->func_is_coroutine); - Py_VISIT(m->defaults); - return 0; -} -static PyObject* -__Pyx_CyFunction_repr(__pyx_CyFunctionObject *op) -{ - PyObject *repr; - __Pyx_BEGIN_CRITICAL_SECTION(op); - repr = PyUnicode_FromFormat("", - op->func_qualname, (void *)op); - __Pyx_END_CRITICAL_SECTION(); - return repr; -} -static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) { -#if CYTHON_COMPILING_IN_LIMITED_API - PyObject *f = ((__pyx_CyFunctionObject*)func)->func; - PyCFunction meth; - int flags; - meth = PyCFunction_GetFunction(f); - if (unlikely(!meth)) return NULL; - flags = PyCFunction_GetFlags(f); - if (unlikely(flags < 0)) return NULL; -#else - PyCFunctionObject* f = (PyCFunctionObject*)func; - PyCFunction meth = f->m_ml->ml_meth; - int flags = f->m_ml->ml_flags; -#endif - Py_ssize_t size; - switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) { - case METH_VARARGS: - if (likely(kw == NULL || PyDict_Size(kw) == 0)) - return (*meth)(self, arg); - break; - case METH_VARARGS | METH_KEYWORDS: - return (*(PyCFunctionWithKeywords)(void(*)(void))meth)(self, arg, kw); - case METH_NOARGS: - if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_SIZE - size = PyTuple_GET_SIZE(arg); -#else - size = PyTuple_Size(arg); - if (unlikely(size < 0)) return NULL; -#endif - if (likely(size == 0)) - return (*meth)(self, NULL); - __Pyx_CyFunction_raise_argument_count_error( - (__pyx_CyFunctionObject*)func, - "takes no arguments", size); - return NULL; - } - break; - case METH_O: - if (likely(kw == NULL || PyDict_Size(kw) == 0)) { -#if CYTHON_ASSUME_SAFE_SIZE - size = PyTuple_GET_SIZE(arg); -#else - size = PyTuple_Size(arg); - if (unlikely(size < 0)) return NULL; -#endif - if (likely(size == 1)) { - PyObject *result, *arg0; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - arg0 = PyTuple_GET_ITEM(arg, 0); - #else - arg0 = __Pyx_PySequence_ITEM(arg, 0); if (unlikely(!arg0)) return NULL; - #endif - result = (*meth)(self, arg0); - #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) - Py_DECREF(arg0); - #endif - return result; - } - __Pyx_CyFunction_raise_argument_count_error( - (__pyx_CyFunctionObject*)func, - "takes exactly one argument", size); - return NULL; - } - break; - default: - PyErr_SetString(PyExc_SystemError, "Bad call flags for CyFunction"); - return NULL; - } - __Pyx_CyFunction_raise_type_error( - (__pyx_CyFunctionObject*)func, "takes no keyword arguments"); - return NULL; -} -static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) { - PyObject *self, *result; -#if CYTHON_COMPILING_IN_LIMITED_API - self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)func)->func); - if (unlikely(!self) && PyErr_Occurred()) return NULL; -#else - self = ((PyCFunctionObject*)func)->m_self; -#endif - result = __Pyx_CyFunction_CallMethod(func, self, arg, kw); - return result; -} -static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) { - PyObject *result; - __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *) func; -#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) - __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc); - if (vc) { -#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE - return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw); -#else - (void) &__Pyx_PyVectorcall_FastCallDict; - return PyVectorcall_Call(func, args, kw); -#endif - } -#endif - if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) { - Py_ssize_t argc; - PyObject *new_args; - PyObject *self; -#if CYTHON_ASSUME_SAFE_SIZE - argc = PyTuple_GET_SIZE(args); -#else - argc = PyTuple_Size(args); - if (unlikely(argc < 0)) return NULL; -#endif - new_args = PyTuple_GetSlice(args, 1, argc); - if (unlikely(!new_args)) - return NULL; - self = PyTuple_GetItem(args, 0); - if (unlikely(!self)) { - Py_DECREF(new_args); - PyErr_Format(PyExc_TypeError, - "unbound method %.200S() needs an argument", - cyfunc->func_qualname); - return NULL; - } - result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw); - Py_DECREF(new_args); - } else { - result = __Pyx_CyFunction_Call(func, args, kw); - } - return result; -} -#if CYTHON_METH_FASTCALL && (CYTHON_VECTORCALL || CYTHON_BACKPORT_VECTORCALL) -static CYTHON_INLINE int __Pyx_CyFunction_Vectorcall_CheckArgs(__pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames) -{ - int ret = 0; - if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) { - if (unlikely(nargs < 1)) { - __Pyx_CyFunction_raise_type_error( - cyfunc, "needs an argument"); - return -1; - } - ret = 1; - } - if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) { - __Pyx_CyFunction_raise_type_error( - cyfunc, "takes no keyword arguments"); - return -1; - } - return ret; -} -static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) -{ - __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; -#if CYTHON_BACKPORT_VECTORCALL - Py_ssize_t nargs = (Py_ssize_t)nargsf; -#else - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); -#endif - PyObject *self; -#if CYTHON_COMPILING_IN_LIMITED_API - PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); - if (unlikely(!meth)) return NULL; -#else - PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; -#endif - switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { - case 1: - self = args[0]; - args += 1; - nargs -= 1; - break; - case 0: -#if CYTHON_COMPILING_IN_LIMITED_API - self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); - if (unlikely(!self) && PyErr_Occurred()) return NULL; -#else - self = ((PyCFunctionObject*)cyfunc)->m_self; -#endif - break; - default: - return NULL; - } - if (unlikely(nargs != 0)) { - __Pyx_CyFunction_raise_argument_count_error( - cyfunc, "takes no arguments", nargs); - return NULL; - } - return meth(self, NULL); -} -static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) -{ - __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; -#if CYTHON_BACKPORT_VECTORCALL - Py_ssize_t nargs = (Py_ssize_t)nargsf; -#else - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); -#endif - PyObject *self; -#if CYTHON_COMPILING_IN_LIMITED_API - PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); - if (unlikely(!meth)) return NULL; -#else - PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; -#endif - switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, kwnames)) { - case 1: - self = args[0]; - args += 1; - nargs -= 1; - break; - case 0: -#if CYTHON_COMPILING_IN_LIMITED_API - self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); - if (unlikely(!self) && PyErr_Occurred()) return NULL; -#else - self = ((PyCFunctionObject*)cyfunc)->m_self; -#endif - break; - default: - return NULL; - } - if (unlikely(nargs != 1)) { - __Pyx_CyFunction_raise_argument_count_error( - cyfunc, "takes exactly one argument", nargs); - return NULL; - } - return meth(self, args[0]); -} -static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) -{ - __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; -#if CYTHON_BACKPORT_VECTORCALL - Py_ssize_t nargs = (Py_ssize_t)nargsf; -#else - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); -#endif - PyObject *self; -#if CYTHON_COMPILING_IN_LIMITED_API - PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); - if (unlikely(!meth)) return NULL; -#else - PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; -#endif - switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { - case 1: - self = args[0]; - args += 1; - nargs -= 1; - break; - case 0: -#if CYTHON_COMPILING_IN_LIMITED_API - self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); - if (unlikely(!self) && PyErr_Occurred()) return NULL; -#else - self = ((PyCFunctionObject*)cyfunc)->m_self; -#endif - break; - default: - return NULL; - } - return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))meth)(self, args, nargs, kwnames); -} -static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames) -{ - __pyx_CyFunctionObject *cyfunc = (__pyx_CyFunctionObject *)func; - PyTypeObject *cls = (PyTypeObject *) __Pyx_CyFunction_GetClassObj(cyfunc); -#if CYTHON_BACKPORT_VECTORCALL - Py_ssize_t nargs = (Py_ssize_t)nargsf; -#else - Py_ssize_t nargs = PyVectorcall_NARGS(nargsf); -#endif - PyObject *self; -#if CYTHON_COMPILING_IN_LIMITED_API - PyCFunction meth = PyCFunction_GetFunction(cyfunc->func); - if (unlikely(!meth)) return NULL; -#else - PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth; -#endif - switch (__Pyx_CyFunction_Vectorcall_CheckArgs(cyfunc, nargs, NULL)) { - case 1: - self = args[0]; - args += 1; - nargs -= 1; - break; - case 0: -#if CYTHON_COMPILING_IN_LIMITED_API - self = PyCFunction_GetSelf(((__pyx_CyFunctionObject*)cyfunc)->func); - if (unlikely(!self) && PyErr_Occurred()) return NULL; -#else - self = ((PyCFunctionObject*)cyfunc)->m_self; -#endif - break; - default: - return NULL; - } - return ((__Pyx_PyCMethod)(void(*)(void))meth)(self, cls, args, (size_t)nargs, kwnames); -} -#endif -static PyType_Slot __pyx_CyFunctionType_slots[] = { - {Py_tp_dealloc, (void *)__Pyx_CyFunction_dealloc}, - {Py_tp_repr, (void *)__Pyx_CyFunction_repr}, - {Py_tp_call, (void *)__Pyx_CyFunction_CallAsMethod}, - {Py_tp_traverse, (void *)__Pyx_CyFunction_traverse}, - {Py_tp_clear, (void *)__Pyx_CyFunction_clear}, - {Py_tp_methods, (void *)__pyx_CyFunction_methods}, - {Py_tp_members, (void *)__pyx_CyFunction_members}, - {Py_tp_getset, (void *)__pyx_CyFunction_getsets}, - {Py_tp_descr_get, (void *)__Pyx_PyMethod_New}, - {0, 0}, -}; -static PyType_Spec __pyx_CyFunctionType_spec = { - __PYX_TYPE_MODULE_PREFIX "cython_function_or_method", - sizeof(__pyx_CyFunctionObject), - 0, -#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR - Py_TPFLAGS_METHOD_DESCRIPTOR | -#endif -#if CYTHON_METH_FASTCALL -#if defined(Py_TPFLAGS_HAVE_VECTORCALL) - Py_TPFLAGS_HAVE_VECTORCALL | -#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL) - _Py_TPFLAGS_HAVE_VECTORCALL | -#endif -#endif // CYTHON_METH_FASTCALL -#if PY_VERSION_HEX >= 0x030A0000 - Py_TPFLAGS_IMMUTABLETYPE | -#endif - Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, - __pyx_CyFunctionType_slots -}; -static int __pyx_CyFunction_init(PyObject *module) { - __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module); - mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec( - mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL); - if (unlikely(mstate->__pyx_CyFunctionType == NULL)) { - return -1; - } - return 0; -} -static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) { - __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL); // _PyObject_New(defaults_type); - if (unlikely(!m->defaults)) - return NULL; - return m->defaults; -} -static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) { - __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults_tuple = tuple; - Py_INCREF(tuple); -} -static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *func, PyObject *dict) { - __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->defaults_kwdict = dict; - Py_INCREF(dict); -} -static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, PyObject *dict) { - __pyx_CyFunctionObject *m = (__pyx_CyFunctionObject *) func; - m->func_annotations = dict; - Py_INCREF(dict); -} - -/* CythonFunction */ -static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml, int flags, PyObject* qualname, - PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) { - PyObject *op = __Pyx_CyFunction_Init( - PyObject_GC_New(__pyx_CyFunctionObject, __pyx_mstate_global->__pyx_CyFunctionType), - ml, flags, qualname, closure, module, globals, code - ); - if (likely(op)) { - PyObject_GC_Track(op); - } - return op; -} - -/* ExtTypeTest */ -static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { - __Pyx_TypeName obj_type_name; - __Pyx_TypeName type_name; - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; - } - if (likely(__Pyx_TypeCheck(obj, type))) - return 1; - obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); - type_name = __Pyx_PyType_GetFullyQualifiedName(type); - PyErr_Format(PyExc_TypeError, - "Cannot convert " __Pyx_FMT_TYPENAME " to " __Pyx_FMT_TYPENAME, - obj_type_name, type_name); - __Pyx_DECREF_TypeName(obj_type_name); - __Pyx_DECREF_TypeName(type_name); - return 0; -} - -/* CLineInTraceback */ -#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME -static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) { - PyObject *use_cline; - PyObject *ptype, *pvalue, *ptraceback; -#if CYTHON_COMPILING_IN_CPYTHON - PyObject **cython_runtime_dict; -#endif - CYTHON_MAYBE_UNUSED_VAR(tstate); - if (unlikely(!__pyx_mstate_global->__pyx_cython_runtime)) { - return c_line; - } - __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); -#if CYTHON_COMPILING_IN_CPYTHON - cython_runtime_dict = _PyObject_GetDictPtr(__pyx_mstate_global->__pyx_cython_runtime); - if (likely(cython_runtime_dict)) { - __Pyx_BEGIN_CRITICAL_SECTION(*cython_runtime_dict); - __PYX_PY_DICT_LOOKUP_IF_MODIFIED( - use_cline, *cython_runtime_dict, - __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback)) - Py_XINCREF(use_cline); - __Pyx_END_CRITICAL_SECTION(); - } else -#endif - { - PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback); - if (use_cline_obj) { - use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; - Py_INCREF(use_cline); - Py_DECREF(use_cline_obj); - } else { - PyErr_Clear(); - use_cline = NULL; - } - } - if (!use_cline) { - c_line = 0; - (void) PyObject_SetAttr(__pyx_mstate_global->__pyx_cython_runtime, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False); - } - else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { - c_line = 0; - } - Py_XDECREF(use_cline); - __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); - return c_line; -} -#endif - -/* CodeObjectCache */ -static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { - int start = 0, mid = 0, end = count - 1; - if (end >= 0 && code_line > entries[end].code_line) { - return count; - } - while (start < end) { - mid = start + (end - start) / 2; - if (code_line < entries[mid].code_line) { - end = mid; - } else if (code_line > entries[mid].code_line) { - start = mid + 1; - } else { - return mid; - } - } - if (code_line <= entries[mid].code_line) { - return mid; - } else { - return mid + 1; - } -} -static __Pyx_CachedCodeObjectType *__pyx__find_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line) { - __Pyx_CachedCodeObjectType* code_object; - int pos; - if (unlikely(!code_line) || unlikely(!code_cache->entries)) { - return NULL; - } - pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); - if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) { - return NULL; - } - code_object = code_cache->entries[pos].code_object; - Py_INCREF(code_object); - return code_object; -} -static __Pyx_CachedCodeObjectType *__pyx_find_code_object(int code_line) { -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS - (void)__pyx__find_code_object; - return NULL; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just miss. -#else - struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count); - if (old_count < 0) { - __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); - return NULL; - } -#endif - __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line); -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - __pyx_atomic_decr_acq_rel(&code_cache->accessor_count); -#endif - return result; -#endif -} -static void __pyx__insert_code_object(struct __Pyx_CodeObjectCache *code_cache, int code_line, __Pyx_CachedCodeObjectType* code_object) -{ - int pos, i; - __Pyx_CodeObjectCacheEntry* entries = code_cache->entries; - if (unlikely(!code_line)) { - return; - } - if (unlikely(!entries)) { - entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); - if (likely(entries)) { - code_cache->entries = entries; - code_cache->max_count = 64; - code_cache->count = 1; - entries[0].code_line = code_line; - entries[0].code_object = code_object; - Py_INCREF(code_object); - } - return; - } - pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line); - if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) { - __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object; - entries[pos].code_object = code_object; - Py_INCREF(code_object); - Py_DECREF(tmp); - return; - } - if (code_cache->count == code_cache->max_count) { - int new_max = code_cache->max_count + 64; - entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - code_cache->entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); - if (unlikely(!entries)) { - return; - } - code_cache->entries = entries; - code_cache->max_count = new_max; - } - for (i=code_cache->count; i>pos; i--) { - entries[i] = entries[i-1]; - } - entries[pos].code_line = code_line; - entries[pos].code_object = code_object; - code_cache->count++; - Py_INCREF(code_object); -} -static void __pyx_insert_code_object(int code_line, __Pyx_CachedCodeObjectType* code_object) { -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS - (void)__pyx__insert_code_object; - return; // Most implementation should have atomics. But otherwise, don't make it thread-safe, just fail. -#else - struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache; -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - __pyx_nonatomic_int_type expected = 0; - if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) { - return; - } -#endif - __pyx__insert_code_object(code_cache, code_line, code_object); -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN); -#endif -#endif -} - -/* AddTraceback */ -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION) - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif -#if CYTHON_COMPILING_IN_LIMITED_API -static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict, - PyObject *firstlineno, PyObject *name) { - PyObject *replace = NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL; - if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL; - replace = PyObject_GetAttrString(code, "replace"); - if (likely(replace)) { - PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict); - Py_DECREF(replace); - return result; - } - PyErr_Clear(); - return NULL; -} -static void __Pyx_AddTraceback(const char *funcname, int c_line, - int py_line, const char *filename) { - PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL; - PyObject *replace = NULL, *getframe = NULL, *frame = NULL; - PyObject *exc_type, *exc_value, *exc_traceback; - int success = 0; - if (c_line) { - (void) __pyx_cfilenm; - (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line); - } - PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); - code_object = __pyx_find_code_object(c_line ? -c_line : py_line); - if (!code_object) { - code_object = Py_CompileString("_getframe()", filename, Py_eval_input); - if (unlikely(!code_object)) goto bad; - py_py_line = PyLong_FromLong(py_line); - if (unlikely(!py_py_line)) goto bad; - py_funcname = PyUnicode_FromString(funcname); - if (unlikely(!py_funcname)) goto bad; - dict = PyDict_New(); - if (unlikely(!dict)) goto bad; - { - PyObject *old_code_object = code_object; - code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname); - Py_DECREF(old_code_object); - } - if (unlikely(!code_object)) goto bad; - __pyx_insert_code_object(c_line ? -c_line : py_line, code_object); - } else { - dict = PyDict_New(); - } - getframe = PySys_GetObject("_getframe"); - if (unlikely(!getframe)) goto bad; - if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad; - frame = PyEval_EvalCode(code_object, dict, dict); - if (unlikely(!frame) || frame == Py_None) goto bad; - success = 1; - bad: - PyErr_Restore(exc_type, exc_value, exc_traceback); - Py_XDECREF(code_object); - Py_XDECREF(py_py_line); - Py_XDECREF(py_funcname); - Py_XDECREF(dict); - Py_XDECREF(replace); - if (success) { - PyTraceBack_Here( - (struct _frame*)frame); - } - Py_XDECREF(frame); -} -#else -static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( - const char *funcname, int c_line, - int py_line, const char *filename) { - PyCodeObject *py_code = NULL; - PyObject *py_funcname = NULL; - if (c_line) { - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - funcname = PyUnicode_AsUTF8(py_funcname); - if (!funcname) goto bad; - } - py_code = PyCode_NewEmpty(filename, funcname, py_line); - Py_XDECREF(py_funcname); - return py_code; -bad: - Py_XDECREF(py_funcname); - return NULL; -} -static void __Pyx_AddTraceback(const char *funcname, int c_line, - int py_line, const char *filename) { - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject *ptype, *pvalue, *ptraceback; - if (c_line) { - c_line = __Pyx_CLineForTraceback(tstate, c_line); - } - py_code = __pyx_find_code_object(c_line ? -c_line : py_line); - if (!py_code) { - __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); - py_code = __Pyx_CreateCodeObjectForTraceback( - funcname, c_line, py_line, filename); - if (!py_code) { - /* If the code object creation fails, then we should clear the - fetched exception references and propagate the new exception */ - Py_XDECREF(ptype); - Py_XDECREF(pvalue); - Py_XDECREF(ptraceback); - goto bad; - } - __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); - __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); - } - py_frame = PyFrame_New( - tstate, /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - __Pyx_PyFrame_SetLineNumber(py_frame, py_line); - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} -#endif - -/* CIntFromPyVerify */ -#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) -#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) -#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ - {\ - func_type value = func_value;\ - if (sizeof(target_type) < sizeof(func_type)) {\ - if (unlikely(value != (func_type) (target_type) value)) {\ - func_type zero = 0;\ - if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ - return (target_type) -1;\ - if (is_unsigned && unlikely(value < zero))\ - goto raise_neg_overflow;\ - else\ - goto raise_overflow;\ - }\ - }\ - return (target_type) value;\ - } - -/* CIntFromPy */ -static CYTHON_INLINE size_t __Pyx_PyLong_As_size_t(PyObject *x) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const size_t neg_one = (size_t) -1, const_zero = (size_t) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (unlikely(!PyLong_Check(x))) { - size_t val; - PyObject *tmp = __Pyx_PyNumber_Long(x); - if (!tmp) return (size_t) -1; - val = __Pyx_PyLong_As_size_t(tmp); - Py_DECREF(tmp); - return val; - } - if (is_unsigned) { -#if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 2 * PyLong_SHIFT)) { - return (size_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - } - break; - case 3: - if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 3 * PyLong_SHIFT)) { - return (size_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - } - break; - case 4: - if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) >= 4 * PyLong_SHIFT)) { - return (size_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - } - break; - } - } -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (size_t) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } -#endif - if ((sizeof(size_t) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, unsigned long, PyLong_AsUnsignedLong(x)) -#ifdef HAVE_LONG_LONG - } else if ((sizeof(size_t) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) -#endif - } - } else { -#if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(size_t, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(size_t) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } - } - break; - case 2: - if ((8 * sizeof(size_t) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - return (size_t) ((((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } - } - break; - case -3: - if ((8 * sizeof(size_t) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } - } - break; - case 3: - if ((8 * sizeof(size_t) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - return (size_t) ((((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } - } - break; - case -4: - if ((8 * sizeof(size_t) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { - return (size_t) (((size_t)-1)*(((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } - } - break; - case 4: - if ((8 * sizeof(size_t) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(size_t, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(size_t) - 1 > 4 * PyLong_SHIFT)) { - return (size_t) ((((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]))); - } - } - break; - } - } -#endif - if ((sizeof(size_t) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, long, PyLong_AsLong(x)) -#ifdef HAVE_LONG_LONG - } else if ((sizeof(size_t) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(size_t, PY_LONG_LONG, PyLong_AsLongLong(x)) -#endif - } - } - { - size_t val; - int ret = -1; -#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API - Py_ssize_t bytes_copied = PyLong_AsNativeBytes( - x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); - if (unlikely(bytes_copied == -1)) { - } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { - goto raise_overflow; - } else { - ret = 0; - } -#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)x, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *v; - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (likely(PyLong_CheckExact(x))) { - v = __Pyx_NewRef(x); - } else { - v = PyNumber_Long(x); - if (unlikely(!v)) return (size_t) -1; - assert(PyLong_CheckExact(v)); - } - { - int result = PyObject_RichCompareBool(v, Py_False, Py_LT); - if (unlikely(result < 0)) { - Py_DECREF(v); - return (size_t) -1; - } - is_negative = result == 1; - } - if (is_unsigned && unlikely(is_negative)) { - Py_DECREF(v); - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - Py_DECREF(v); - if (unlikely(!stepval)) - return (size_t) -1; - } else { - stepval = v; - } - v = NULL; - val = (size_t) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(size_t) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - long idigit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - val |= ((size_t) idigit) << bits; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - } - Py_DECREF(shift); shift = NULL; - Py_DECREF(mask); mask = NULL; - { - long idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(size_t) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((size_t) idigit) << bits; - } - if (!is_unsigned) { - if (unlikely(val & (((size_t) 1) << (sizeof(size_t) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif - if (unlikely(ret)) - return (size_t) -1; - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to size_t"); - return (size_t) -1; -} - -/* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 -static __Pyx_TypeName -__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) -{ - PyObject *module = NULL, *name = NULL, *result = NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 - name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_mstate_global->__pyx_n_u_qualname); - #else - name = PyType_GetQualName(tp); - #endif - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; - module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_mstate_global->__pyx_n_u_module); - if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; - if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { - result = name; - name = NULL; - goto done; - } - result = PyUnicode_FromFormat("%U.%U", module, name); - if (unlikely(result == NULL)) goto bad; - done: - Py_XDECREF(name); - Py_XDECREF(module); - return result; - bad: - PyErr_Clear(); - if (name) { - result = name; - name = NULL; - } else { - result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__5); - } - goto done; -} -#endif - -/* PyObjectVectorCallKwBuilder */ -#if CYTHON_VECTORCALL -static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - (void)__Pyx_PyObject_FastCallDict; - if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; - Py_INCREF(key); - args[n] = value; - return 0; -} -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - (void)__Pyx_VectorcallBuilder_AddArgStr; - if (unlikely(!PyUnicode_Check(key))) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - return -1; - } - return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); -} -static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - PyObject *pyKey = PyUnicode_FromString(key); - if (!pyKey) return -1; - return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); -} -#else // CYTHON_VECTORCALL -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { - if (unlikely(!PyUnicode_Check(key))) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - return -1; - } - return PyDict_SetItem(builder, key, value); -} -#endif - -/* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const long neg_one = (long) -1, const_zero = (long) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(long) < sizeof(long)) { - return PyLong_FromLong((long) value); - } else if (sizeof(long) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY - } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif - } - } else { - if (sizeof(long) <= sizeof(long)) { - return PyLong_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif - } - } - { - unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 - if (is_unsigned) { - return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); - } else { - return PyLong_FromNativeBytes(bytes, sizeof(value), -1); - } -#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 - int one = 1; int little = (int)*(unsigned char *)&one; - return _PyLong_FromByteArray(bytes, sizeof(long), - little, !is_unsigned); -#else - int one = 1; int little = (int)*(unsigned char *)&one; - PyObject *from_bytes, *result = NULL, *kwds = NULL; - PyObject *py_bytes = NULL, *order_str = NULL; - from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); - if (!from_bytes) return NULL; - py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); - if (!py_bytes) goto limited_bad; - order_str = PyUnicode_FromString(little ? "little" : "big"); - if (!order_str) goto limited_bad; - { - PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; - if (!is_unsigned) { - kwds = __Pyx_MakeVectorcallBuilderKwds(1); - if (!kwds) goto limited_bad; - if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; - } - result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); - } - limited_bad: - Py_XDECREF(kwds); - Py_XDECREF(order_str); - Py_XDECREF(py_bytes); - Py_XDECREF(from_bytes); - return result; -#endif - } -} - -/* CIntFromPy */ -static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const long neg_one = (long) -1, const_zero = (long) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (unlikely(!PyLong_Check(x))) { - long val; - PyObject *tmp = __Pyx_PyNumber_Long(x); - if (!tmp) return (long) -1; - val = __Pyx_PyLong_As_long(tmp); - Py_DECREF(tmp); - return val; - } - if (is_unsigned) { -#if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } - } - break; - } - } -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } -#endif - if ((sizeof(long) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) -#ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) -#endif - } - } else { -#if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case 2: - if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case -3: - if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case 3: - if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case -4: - if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case 4: - if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - } - } -#endif - if ((sizeof(long) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) -#ifdef HAVE_LONG_LONG - } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) -#endif - } - } - { - long val; - int ret = -1; -#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API - Py_ssize_t bytes_copied = PyLong_AsNativeBytes( - x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); - if (unlikely(bytes_copied == -1)) { - } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { - goto raise_overflow; - } else { - ret = 0; - } -#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)x, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *v; - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (likely(PyLong_CheckExact(x))) { - v = __Pyx_NewRef(x); - } else { - v = PyNumber_Long(x); - if (unlikely(!v)) return (long) -1; - assert(PyLong_CheckExact(v)); - } - { - int result = PyObject_RichCompareBool(v, Py_False, Py_LT); - if (unlikely(result < 0)) { - Py_DECREF(v); - return (long) -1; - } - is_negative = result == 1; - } - if (is_unsigned && unlikely(is_negative)) { - Py_DECREF(v); - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - Py_DECREF(v); - if (unlikely(!stepval)) - return (long) -1; - } else { - stepval = v; - } - v = NULL; - val = (long) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - long idigit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - val |= ((long) idigit) << bits; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - } - Py_DECREF(shift); shift = NULL; - Py_DECREF(mask); mask = NULL; - { - long idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((long) idigit) << bits; - } - if (!is_unsigned) { - if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif - if (unlikely(ret)) - return (long) -1; - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to long"); - return (long) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long) -1; -} - -/* CIntFromPy */ -static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const int neg_one = (int) -1, const_zero = (int) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (unlikely(!PyLong_Check(x))) { - int val; - PyObject *tmp = __Pyx_PyNumber_Long(x); - if (!tmp) return (int) -1; - val = __Pyx_PyLong_As_int(tmp); - Py_DECREF(tmp); - return val; - } - if (is_unsigned) { -#if CYTHON_USE_PYLONG_INTERNALS - if (unlikely(__Pyx_PyLong_IsNeg(x))) { - goto raise_neg_overflow; - } else if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_DigitCount(x)) { - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } - } - break; - } - } -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7 - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } -#endif - if ((sizeof(int) <= sizeof(unsigned long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) -#ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) -#endif - } - } else { -#if CYTHON_USE_PYLONG_INTERNALS - if (__Pyx_PyLong_IsCompact(x)) { - __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x)) - } else { - const digit* digits = __Pyx_PyLong_Digits(x); - assert(__Pyx_PyLong_DigitCount(x) > 1); - switch (__Pyx_PyLong_SignedDigitCount(x)) { - case -2: - if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case 2: - if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case -3: - if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case 3: - if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case -4: - if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case 4: - if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) { - if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - } - } -#endif - if ((sizeof(int) <= sizeof(long))) { - __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) -#ifdef HAVE_LONG_LONG - } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) { - __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) -#endif - } - } - { - int val; - int ret = -1; -#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API - Py_ssize_t bytes_copied = PyLong_AsNativeBytes( - x, &val, sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0)); - if (unlikely(bytes_copied == -1)) { - } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { - goto raise_overflow; - } else { - ret = 0; - } -#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)x, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *v; - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (likely(PyLong_CheckExact(x))) { - v = __Pyx_NewRef(x); - } else { - v = PyNumber_Long(x); - if (unlikely(!v)) return (int) -1; - assert(PyLong_CheckExact(v)); - } - { - int result = PyObject_RichCompareBool(v, Py_False, Py_LT); - if (unlikely(result < 0)) { - Py_DECREF(v); - return (int) -1; - } - is_negative = result == 1; - } - if (is_unsigned && unlikely(is_negative)) { - Py_DECREF(v); - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - Py_DECREF(v); - if (unlikely(!stepval)) - return (int) -1; - } else { - stepval = v; - } - v = NULL; - val = (int) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - long idigit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - val |= ((int) idigit) << bits; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - } - Py_DECREF(shift); shift = NULL; - Py_DECREF(mask); mask = NULL; - { - long idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((int) idigit) << bits; - } - if (!is_unsigned) { - if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif - if (unlikely(ret)) - return (int) -1; - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to int"); - return (int) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to int"); - return (int) -1; -} - -/* FastTypeChecks */ -#if CYTHON_COMPILING_IN_CPYTHON -static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) { - while (a) { - a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*); - if (a == b) - return 1; - } - return b == &PyBaseObject_Type; -} -static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) { - PyObject *mro; - if (a == b) return 1; - mro = a->tp_mro; - if (likely(mro)) { - Py_ssize_t i, n; - n = PyTuple_GET_SIZE(mro); - for (i = 0; i < n; i++) { - if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) - return 1; - } - return 0; - } - return __Pyx_InBases(a, b); -} -static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b) { - PyObject *mro; - if (cls == a || cls == b) return 1; - mro = cls->tp_mro; - if (likely(mro)) { - Py_ssize_t i, n; - n = PyTuple_GET_SIZE(mro); - for (i = 0; i < n; i++) { - PyObject *base = PyTuple_GET_ITEM(mro, i); - if (base == (PyObject *)a || base == (PyObject *)b) - return 1; - } - return 0; - } - return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b); -} -static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { - if (exc_type1) { - return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2); - } else { - return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); - } -} -static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { - Py_ssize_t i, n; - assert(PyExceptionClass_Check(exc_type)); - n = PyTuple_GET_SIZE(tuple); - for (i=0; i= 0x030b0000 - return Py_Version & ~0xFFUL; -#else - static unsigned long __Pyx_cached_runtime_version = 0; - if (__Pyx_cached_runtime_version == 0) { - const char* rt_version = Py_GetVersion(); - unsigned long version = 0; - unsigned long factor = 0x01000000UL; - unsigned int digit = 0; - int i = 0; - while (factor) { - while ('0' <= rt_version[i] && rt_version[i] <= '9') { - digit = digit * 10 + (unsigned int) (rt_version[i] - '0'); - ++i; - } - version += factor * digit; - if (rt_version[i] != '.') - break; - digit = 0; - factor >>= 8; - ++i; - } - __Pyx_cached_runtime_version = version; - } - return __Pyx_cached_runtime_version; -#endif -} - -/* CheckBinaryVersion */ -static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) { - const unsigned long MAJOR_MINOR = 0xFFFF0000UL; - if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR)) - return 0; - if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR))) - return 1; - { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compile time Python version %d.%d " - "of module '%.100s' " - "%s " - "runtime version %d.%d", - (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF), - __Pyx_MODULE_NAME, - (allow_newer) ? "was newer than" : "does not match", - (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF) - ); - return PyErr_WarnEx(NULL, message, 1); - } -} - -/* FunctionExport */ -static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig) { - PyObject *d = 0; - PyObject *cobj = 0; - union { - void (*fp)(void); - void *p; - } tmp; - d = PyObject_GetAttrString(__pyx_m, "__pyx_capi__"); - if (!d) { - PyErr_Clear(); - d = PyDict_New(); - if (!d) - goto bad; - Py_INCREF(d); - if (PyModule_AddObject(__pyx_m, "__pyx_capi__", d) < 0) - goto bad; - } - tmp.fp = f; - cobj = PyCapsule_New(tmp.p, sig, 0); - if (!cobj) - goto bad; - if (PyDict_SetItemString(d, name, cobj) < 0) - goto bad; - Py_DECREF(cobj); - Py_DECREF(d); - return 0; -bad: - Py_XDECREF(cobj); - Py_XDECREF(d); - return -1; -} - -/* NewCodeObj */ -#if CYTHON_COMPILING_IN_LIMITED_API - static PyObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyObject *exception_table = NULL; - PyObject *types_module=NULL, *code_type=NULL, *result=NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 - PyObject *version_info; - PyObject *py_minor_version = NULL; - #endif - long minor_version = 0; - PyObject *type, *value, *traceback; - PyErr_Fetch(&type, &value, &traceback); - #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000 - minor_version = 11; - #else - if (!(version_info = PySys_GetObject("version_info"))) goto end; - if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end; - minor_version = PyLong_AsLong(py_minor_version); - Py_DECREF(py_minor_version); - if (minor_version == -1 && PyErr_Occurred()) goto end; - #endif - if (!(types_module = PyImport_ImportModule("types"))) goto end; - if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end; - if (minor_version <= 7) { - (void)p; - result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOOO", a, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else if (minor_version <= 10) { - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOOO", a,p, k, l, s, f, code, - c, n, v, fn, name, fline, lnos, fv, cell); - } else { - if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end; - result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOOOO", a,p, k, l, s, f, code, - c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell); - } - end: - Py_XDECREF(code_type); - Py_XDECREF(exception_table); - Py_XDECREF(types_module); - if (type) { - PyErr_Restore(type, value, traceback); - } - return result; - } -#elif PY_VERSION_HEX >= 0x030B0000 - static PyCodeObject* __Pyx__PyCode_New(int a, int p, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyCodeObject *result; - result = - #if PY_VERSION_HEX >= 0x030C0000 - PyUnstable_Code_NewWithPosOnlyArgs - #else - PyCode_NewWithPosOnlyArgs - #endif - (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes); - return result; - } -#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY - #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#else - #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#endif -static PyObject* __Pyx_PyCode_New( - const __Pyx_PyCode_New_function_description descr, - PyObject * const *varnames, - PyObject *filename, - PyObject *funcname, - const char *line_table, - PyObject *tuple_dedup_map -) { - PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL, *line_table_bytes = NULL; - Py_ssize_t var_count = (Py_ssize_t) descr.nlocals; - PyObject *varnames_tuple = PyTuple_New(var_count); - if (unlikely(!varnames_tuple)) return NULL; - for (Py_ssize_t i=0; i < var_count; i++) { - Py_INCREF(varnames[i]); - if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0)) goto done; - } - #if CYTHON_COMPILING_IN_LIMITED_API - varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple); - if (!varnames_tuple_dedup) { - if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0)) goto done; - varnames_tuple_dedup = varnames_tuple; - } - #else - varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple); - if (unlikely(!varnames_tuple_dedup)) goto done; - #endif - #if CYTHON_AVOID_BORROWED_REFS - Py_INCREF(varnames_tuple_dedup); - #endif - if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL - && !CYTHON_COMPILING_IN_GRAAL) { - line_table_bytes = PyBytes_FromStringAndSize(line_table, descr.line_table_length); - if (unlikely(!line_table_bytes)) goto done; - Py_ssize_t code_len = (descr.line_table_length * 2 + 4) & ~3; - code_bytes = PyBytes_FromStringAndSize(NULL, code_len); - if (unlikely(!code_bytes)) goto done; - char* c_code_bytes = PyBytes_AsString(code_bytes); - if (unlikely(!c_code_bytes)) goto done; - memset(c_code_bytes, 0, (size_t) code_len); - } - code_obj = (PyObject*) __Pyx__PyCode_New( - (int) descr.argcount, - (int) descr.num_posonly_args, - (int) descr.num_kwonly_args, - (int) descr.nlocals, - 0, - (int) descr.flags, - code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes, - __pyx_mstate_global->__pyx_empty_tuple, - __pyx_mstate_global->__pyx_empty_tuple, - varnames_tuple_dedup, - __pyx_mstate_global->__pyx_empty_tuple, - __pyx_mstate_global->__pyx_empty_tuple, - filename, - funcname, - (int) descr.first_line, - (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table_bytes) ? line_table_bytes : __pyx_mstate_global->__pyx_empty_bytes - ); -done: - Py_XDECREF(code_bytes); - Py_XDECREF(line_table_bytes); - #if CYTHON_AVOID_BORROWED_REFS - Py_XDECREF(varnames_tuple_dedup); - #endif - Py_DECREF(varnames_tuple); - return code_obj; -} - -/* InitStrings */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, const char* const* encoding_names) { - while (t->s) { - PyObject *str; - if (t->is_unicode) { - if (t->intern) { - str = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - str = PyUnicode_Decode(t->s, t->n - 1, encoding_names[t->encoding], NULL); - } else { - str = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - str = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - if (!str) - return -1; - *target = str; - if (PyObject_Hash(str) == -1) - return -1; - ++t; - ++target; - } - return 0; -} - -#include -static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) { - size_t len = strlen(s); - if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) { - PyErr_SetString(PyExc_OverflowError, "byte string is too long"); - return -1; - } - return (Py_ssize_t) len; -} -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { - Py_ssize_t len = __Pyx_ssize_strlen(c_str); - if (unlikely(len < 0)) return NULL; - return __Pyx_PyUnicode_FromStringAndSize(c_str, len); -} -static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) { - Py_ssize_t len = __Pyx_ssize_strlen(c_str); - if (unlikely(len < 0)) return NULL; - return PyByteArray_FromStringAndSize(c_str, len); -} -static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { - Py_ssize_t ignore; - return __Pyx_PyObject_AsStringAndSize(o, &ignore); -} -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 -static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; -#if CYTHON_COMPILING_IN_LIMITED_API - { - const char* result; - Py_ssize_t unicode_length; - CYTHON_MAYBE_UNUSED_VAR(unicode_length); // only for __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - #if __PYX_LIMITED_VERSION_HEX < 0x030A0000 - if (unlikely(PyArg_Parse(o, "s#", &result, length) < 0)) return NULL; - #else - result = PyUnicode_AsUTF8AndSize(o, length); - #endif - #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - unicode_length = PyUnicode_GetLength(o); - if (unlikely(unicode_length < 0)) return NULL; - if (unlikely(unicode_length != *length)) { - PyUnicode_AsASCIIString(o); - return NULL; - } - #endif - return result; - } -#else -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - if (likely(PyUnicode_IS_ASCII(o))) { - *length = PyUnicode_GET_LENGTH(o); - return PyUnicode_AsUTF8(o); - } else { - PyUnicode_AsASCIIString(o); - return NULL; - } -#else - return PyUnicode_AsUTF8AndSize(o, length); -#endif -#endif -} -#endif -static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 - if (PyUnicode_Check(o)) { - return __Pyx_PyUnicode_AsStringAndSize(o, length); - } else -#endif - if (PyByteArray_Check(o)) { -#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))) - *length = PyByteArray_GET_SIZE(o); - return PyByteArray_AS_STRING(o); -#else - *length = PyByteArray_Size(o); - if (*length == -1) return NULL; - return PyByteArray_AsString(o); -#endif - } else - { - char* result; - int r = PyBytes_AsStringAndSize(o, &result, length); - if (unlikely(r < 0)) { - return NULL; - } else { - return result; - } - } -} -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} -static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { - int retval; - if (unlikely(!x)) return -1; - retval = __Pyx_PyObject_IsTrue(x); - Py_DECREF(x); - return retval; -} -static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) { - __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result)); - if (PyLong_Check(result)) { - if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, - "__int__ returned non-int (type " __Pyx_FMT_TYPENAME "). " - "The ability to return an instance of a strict subclass of int is deprecated, " - "and may be removed in a future version of Python.", - result_type_name)) { - __Pyx_DECREF_TypeName(result_type_name); - Py_DECREF(result); - return NULL; - } - __Pyx_DECREF_TypeName(result_type_name); - return result; - } - PyErr_Format(PyExc_TypeError, - "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ")", - result_type_name); - __Pyx_DECREF_TypeName(result_type_name); - Py_DECREF(result); - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) { -#if CYTHON_USE_TYPE_SLOTS - PyNumberMethods *m; -#endif - PyObject *res = NULL; - if (likely(PyLong_Check(x))) - return __Pyx_NewRef(x); -#if CYTHON_USE_TYPE_SLOTS - m = Py_TYPE(x)->tp_as_number; - if (likely(m && m->nb_int)) { - res = m->nb_int(x); - } -#else - if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { - res = PyNumber_Long(x); - } -#endif - if (likely(res)) { - if (unlikely(!PyLong_CheckExact(res))) { - return __Pyx_PyNumber_LongWrongResultType(res); - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject *x; - if (likely(PyLong_CheckExact(b))) { - #if CYTHON_USE_PYLONG_INTERNALS - if (likely(__Pyx_PyLong_IsCompact(b))) { - return __Pyx_PyLong_CompactValue(b); - } else { - const digit* digits = __Pyx_PyLong_Digits(b); - const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b); - switch (size) { - case 2: - if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { - return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case -2: - if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { - return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case 3: - if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { - return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case -3: - if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { - return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case 4: - if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { - return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case -4: - if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { - return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - } - } - #endif - return PyLong_AsSsize_t(b); - } - x = PyNumber_Index(b); - if (!x) return -1; - ival = PyLong_AsSsize_t(x); - Py_DECREF(x); - return ival; -} -static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) { - if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) { - return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o); - } else { - Py_ssize_t ival; - PyObject *x; - x = PyNumber_Index(o); - if (!x) return -1; - ival = PyLong_AsLong(x); - Py_DECREF(x); - return ival; - } -} -static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(int b) { - CYTHON_UNUSED_VAR(b); - return __Pyx_NewRef(Py_None); -} -static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { - return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); -} -static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(size_t ival) { - return PyLong_FromSize_t(ival); -} - - -/* MultiPhaseInitModuleState */ -#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE -#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE -#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000) - #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1 -#else - #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0 -#endif -#endif -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS -#error "Module state with PEP489 requires atomics. Currently that's one of\ - C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics" -#endif -#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE -#define __Pyx_ModuleStateLookup_Lock() -#define __Pyx_ModuleStateLookup_Unlock() -#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000 -static PyMutex __Pyx_ModuleStateLookup_mutex = {0}; -#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex) -#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex) -#elif defined(__cplusplus) && __cplusplus >= 201103L -#include -static std::mutex __Pyx_ModuleStateLookup_mutex; -#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock() -#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock() -#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__) -#include -static mtx_t __Pyx_ModuleStateLookup_mutex; -static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT; -static void __Pyx_ModuleStateLookup_initialize_mutex(void) { - mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain); -} -#define __Pyx_ModuleStateLookup_Lock()\ - call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\ - mtx_lock(&__Pyx_ModuleStateLookup_mutex) -#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex) -#elif defined(HAVE_PTHREAD_H) -#include -static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER; -#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex) -#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex) -#elif defined(_WIN32) -#include // synchapi.h on its own doesn't work -static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT; -#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) -#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex) -#else -#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\ - Requires C standard >= C11, or C++ standard >= C++11,\ - or pthreads, or the Windows 32 API, or Python >= 3.13." -#endif -typedef struct { - int64_t id; - PyObject *module; -} __Pyx_InterpreterIdAndModule; -typedef struct { - char interpreter_id_as_index; - Py_ssize_t count; - Py_ssize_t allocated; - __Pyx_InterpreterIdAndModule table[1]; -} __Pyx_ModuleStateLookupData; -#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32 -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE -static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0; -#endif -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE -static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0; -#else -static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL; -#endif -static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound( - __Pyx_InterpreterIdAndModule* table, - Py_ssize_t count, - int64_t interpreterId) { - __Pyx_InterpreterIdAndModule* begin = table; - __Pyx_InterpreterIdAndModule* end = begin + count; - if (begin->id == interpreterId) { - return begin; - } - while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { - __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2; - if (halfway->id == interpreterId) { - return halfway; - } - if (halfway->id < interpreterId) { - begin = halfway; - } else { - end = halfway; - } - } - for (; begin < end; ++begin) { - if (begin->id >= interpreterId) return begin; - } - return begin; -} -static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED void* dummy) { - int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); - if (interpreter_id == -1) return NULL; -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE - __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); - { - __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); - if (likely(data)) { - __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data); - if (likely(data == new_data)) { - goto read_finished; - } - } - __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); - __Pyx_ModuleStateLookup_Lock(); - __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter); - data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data); - __Pyx_ModuleStateLookup_Unlock(); - } - read_finished:; -#else - __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data; -#endif - __Pyx_InterpreterIdAndModule* found = NULL; - if (unlikely(!data)) goto end; - if (data->interpreter_id_as_index) { - if (interpreter_id < data->count) { - found = data->table+interpreter_id; - } - } else { - found = __Pyx_State_FindModuleStateLookupTableLowerBound( - data->table, data->count, interpreter_id); - } - end: - { - PyObject *result=NULL; - if (found && found->id == interpreter_id) { - result = found->module; - } -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE - __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter); -#endif - return result; - } -} -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE -static void __Pyx_ModuleStateLookup_wait_until_no_readers(void) { - while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0); -} -#else -#define __Pyx_ModuleStateLookup_wait_until_no_readers() -#endif -static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) { - Py_ssize_t to_allocate = (*old_data)->allocated; - while (to_allocate <= interpreter_id) { - if (to_allocate == 0) to_allocate = 1; - else to_allocate *= 2; - } - __Pyx_ModuleStateLookupData *new_data = *old_data; - if (to_allocate != (*old_data)->allocated) { - new_data = (__Pyx_ModuleStateLookupData *)realloc( - *old_data, - sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); - if (!new_data) { - PyErr_NoMemory(); - return -1; - } - for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) { - new_data->table[i].id = i; - new_data->table[i].module = NULL; - } - new_data->allocated = to_allocate; - } - new_data->table[interpreter_id].module = module; - if (new_data->count < interpreter_id+1) { - new_data->count = interpreter_id+1; - } - *old_data = new_data; - return 0; -} -static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) { - __Pyx_InterpreterIdAndModule *read = data->table; - __Pyx_InterpreterIdAndModule *write = data->table; - __Pyx_InterpreterIdAndModule *end = read + data->count; - for (; readmodule) { - write->id = read->id; - write->module = read->module; - ++write; - } - } - data->count = write - data->table; - for (; writeid = 0; - write->module = NULL; - } - data->interpreter_id_as_index = 0; -} -static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED void* dummy) { - int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); - if (interpreter_id == -1) return -1; - int result = 0; - __Pyx_ModuleStateLookup_Lock(); -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE - __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *) - __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); -#else - __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data; -#endif - __Pyx_ModuleStateLookupData *new_data = old_data; - if (!new_data) { - new_data = (__Pyx_ModuleStateLookupData *)calloc(1, sizeof(__Pyx_ModuleStateLookupData)); - if (!new_data) { - result = -1; - PyErr_NoMemory(); - goto end; - } - new_data->allocated = 1; - new_data->interpreter_id_as_index = 1; - } - __Pyx_ModuleStateLookup_wait_until_no_readers(); - if (new_data->interpreter_id_as_index) { - if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) { - result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id); - goto end; - } - __Pyx_State_ConvertFromInterpIdAsIndex(new_data); - } - { - Py_ssize_t insert_at = 0; - { - __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( - new_data->table, new_data->count, interpreter_id); - assert(lower_bound); - insert_at = lower_bound - new_data->table; - if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) { - lower_bound->module = module; - goto end; // already in table, nothing more to do - } - } - if (new_data->count+1 >= new_data->allocated) { - Py_ssize_t to_allocate = (new_data->count+1)*2; - new_data = - (__Pyx_ModuleStateLookupData*)realloc( - new_data, - sizeof(__Pyx_ModuleStateLookupData) + - (to_allocate-1)*sizeof(__Pyx_InterpreterIdAndModule)); - if (!new_data) { - result = -1; - new_data = old_data; - PyErr_NoMemory(); - goto end; - } - new_data->allocated = to_allocate; - } - ++new_data->count; - int64_t last_id = interpreter_id; - PyObject *last_module = module; - for (Py_ssize_t i=insert_at; icount; ++i) { - int64_t current_id = new_data->table[i].id; - new_data->table[i].id = last_id; - last_id = current_id; - PyObject *current_module = new_data->table[i].module; - new_data->table[i].module = last_module; - last_module = current_module; - } - } - end: -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE - __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data); -#else - __Pyx_ModuleStateLookup_data = new_data; -#endif - __Pyx_ModuleStateLookup_Unlock(); - return result; -} -static int __Pyx_State_RemoveModule(CYTHON_UNUSED void* dummy) { - int64_t interpreter_id = PyInterpreterState_GetID(__Pyx_PyInterpreterState_Get()); - if (interpreter_id == -1) return -1; - __Pyx_ModuleStateLookup_Lock(); -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE - __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *) - __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0); -#else - __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data; -#endif - if (data->interpreter_id_as_index) { - if (interpreter_id < data->count) { - data->table[interpreter_id].module = NULL; - } - goto done; - } - { - __Pyx_ModuleStateLookup_wait_until_no_readers(); - __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound( - data->table, data->count, interpreter_id); - if (!lower_bound) goto done; - if (lower_bound->id != interpreter_id) goto done; - __Pyx_InterpreterIdAndModule *end = data->table+data->count; - for (;lower_boundid = (lower_bound+1)->id; - lower_bound->module = (lower_bound+1)->module; - } - } - --data->count; - if (data->count == 0) { - free(data); - data = NULL; - } - done: -#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE - __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data); -#else - __Pyx_ModuleStateLookup_data = data; -#endif - __Pyx_ModuleStateLookup_Unlock(); - return 0; -} -#endif - -/* #### Code section: utility_code_pragmas_end ### */ -#ifdef _MSC_VER -#pragma warning( pop ) -#endif - - - -/* #### Code section: end ### */ -#endif /* Py_PYTHON_H */ diff --git a/src/hunter/vendor/_cymem/cymem.pxd b/src/hunter/vendor/_cymem/cymem.pxd deleted file mode 100644 index b2c2c42..0000000 --- a/src/hunter/vendor/_cymem/cymem.pxd +++ /dev/null @@ -1,32 +0,0 @@ -# cython: language_level=3str -ctypedef void* (*malloc_t)(size_t n) -ctypedef void (*free_t)(void *p) - -cdef class PyMalloc: - cdef malloc_t malloc - cdef void _set(self, malloc_t malloc) - -cdef PyMalloc WrapMalloc(malloc_t malloc) - -cdef class PyFree: - cdef free_t free - cdef void _set(self, free_t free) - -cdef PyFree WrapFree(free_t free) - -cdef class Pool: - cdef readonly size_t size - cdef readonly dict addresses - cdef readonly list refs - cdef readonly PyMalloc pymalloc - cdef readonly PyFree pyfree - - cdef void* alloc(self, size_t number, size_t size) except NULL - cdef void free(self, void* addr) except * - cdef void* realloc(self, void* addr, size_t n) except NULL - - -cdef class Address: - cdef void* ptr - cdef readonly PyMalloc pymalloc - cdef readonly PyFree pyfree diff --git a/src/hunter/vendor/_cymem/cymem.pyx b/src/hunter/vendor/_cymem/cymem.pyx deleted file mode 100644 index b4ecea4..0000000 --- a/src/hunter/vendor/_cymem/cymem.pyx +++ /dev/null @@ -1,151 +0,0 @@ -# cython: embedsignature=True, language_level=3str - -from cpython.mem cimport PyMem_Malloc, PyMem_Free -from cpython.ref cimport Py_INCREF, Py_DECREF -from libc.string cimport memset -from libc.string cimport memcpy -import warnings - -WARN_ZERO_ALLOC = False - -cdef class PyMalloc: - cdef void _set(self, malloc_t malloc): - self.malloc = malloc - -cdef PyMalloc WrapMalloc(malloc_t malloc): - cdef PyMalloc o = PyMalloc() - o._set(malloc) - return o - -cdef class PyFree: - cdef void _set(self, free_t free): - self.free = free - -cdef PyFree WrapFree(free_t free): - cdef PyFree o = PyFree() - o._set(free) - return o - -Default_Malloc = WrapMalloc(PyMem_Malloc) -Default_Free = WrapFree(PyMem_Free) - -cdef class Pool: - """Track allocated memory addresses, and free them all when the Pool is - garbage collected. This provides an easy way to avoid memory leaks, and - removes the need for deallocation functions for complicated structs. - - >>> from cymem.cymem cimport Pool - >>> cdef Pool mem = Pool() - >>> data1 = mem.alloc(10, sizeof(int)) - >>> data2 = mem.alloc(12, sizeof(float)) - - Attributes: - size (size_t): The current size (in bytes) allocated by the pool. - addresses (dict): The currently allocated addresses and their sizes. Read-only. - pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc). - pyfree (PyFree): The free to use (default uses PyMem_Free). - """ - - def __cinit__(self, PyMalloc pymalloc=Default_Malloc, - PyFree pyfree=Default_Free): - self.size = 0 - self.addresses = {} - self.refs = [] - self.pymalloc = pymalloc - self.pyfree = pyfree - - def __dealloc__(self): - cdef size_t addr - if self.addresses is not None: - for addr in self.addresses: - if addr != 0: - self.pyfree.free(addr) - - cdef void* alloc(self, size_t number, size_t elem_size) except NULL: - """Allocate a 0-initialized number*elem_size-byte block of memory, and - remember its address. The block will be freed when the Pool is garbage - collected. Throw warning when allocating zero-length size and - WARN_ZERO_ALLOC was set to True. - """ - if WARN_ZERO_ALLOC and (number == 0 or elem_size == 0): - warnings.warn("Allocating zero bytes") - cdef void* p = self.pymalloc.malloc(number * elem_size) - if p == NULL: - raise MemoryError("Error assigning %d bytes" % (number * elem_size)) - memset(p, 0, number * elem_size) - self.addresses[p] = number * elem_size - self.size += number * elem_size - return p - - cdef void* realloc(self, void* p, size_t new_size) except NULL: - """Resizes the memory block pointed to by p to new_size bytes, returning - a non-NULL pointer to the new block. new_size must be larger than the - original. - - If p is not in the Pool or new_size is 0, a MemoryError is raised. - """ - if p not in self.addresses: - raise ValueError("Pointer %d not found in Pool %s" % (p, self.addresses)) - if new_size == 0: - raise ValueError("Realloc requires new_size > 0") - assert new_size > self.addresses[p] - cdef void* new_ptr = self.alloc(1, new_size) - if new_ptr == NULL: - raise MemoryError("Error reallocating to %d bytes" % new_size) - memcpy(new_ptr, p, self.addresses[p]) - self.free(p) - self.addresses[new_ptr] = new_size - return new_ptr - - cdef void free(self, void* p) except *: - """Frees the memory block pointed to by p, which must have been returned - by a previous call to Pool.alloc. You don't necessarily need to free - memory addresses manually --- you can instead let the Pool be garbage - collected, at which point all the memory will be freed. - - If p is not in Pool.addresses, a KeyError is raised. - """ - self.size -= self.addresses.pop(p) - self.pyfree.free(p) - - def own_pyref(self, object py_ref): - self.refs.append(py_ref) - - -cdef class Address: - """A block of number * size-bytes of 0-initialized memory, tied to a Python - ref-counted object. When the object is garbage collected, the memory is freed. - - >>> from cymem.cymem cimport Address - >>> cdef Address address = Address(10, sizeof(double)) - >>> d10 = address.ptr - - Args: - number (size_t): The number of elements in the memory block. - elem_size (size_t): The size of each element. - - Attributes: - ptr (void*): Pointer to the memory block. - addr (size_t): Read-only size_t cast of the pointer. - pymalloc (PyMalloc): The allocator to use (default uses PyMem_Malloc). - pyfree (PyFree): The free to use (default uses PyMem_Free). - """ - def __cinit__(self, size_t number, size_t elem_size, - PyMalloc pymalloc=Default_Malloc, PyFree pyfree=Default_Free): - self.ptr = NULL - self.pymalloc = pymalloc - self.pyfree = pyfree - - def __init__(self, size_t number, size_t elem_size): - self.ptr = self.pymalloc.malloc(number * elem_size) - if self.ptr == NULL: - raise MemoryError("Error assigning %d bytes" % number * elem_size) - memset(self.ptr, 0, number * elem_size) - - property addr: - def __get__(self): - return self.ptr - - def __dealloc__(self): - if self.ptr != NULL: - self.pyfree.free(self.ptr) From e1c66679a251cf26cdcd7ea01e35bf84cce2fa8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 8 Jul 2025 08:27:32 +0300 Subject: [PATCH 30/80] Add some shims from the FrameType/PyFrameObject* typechecks. Replace some type castings with some others. The Event doesn't need a Tracer instance anymore. --- src/hunter/_event.pxd | 2 +- src/hunter/_event.pyx | 32 ++++++-------------------------- src/hunter/_tracer.pxd | 27 +++++++++++++++++++++++---- src/hunter/_tracer.pyx | 19 ++++++++----------- 4 files changed, 38 insertions(+), 42 deletions(-) diff --git a/src/hunter/_event.pxd b/src/hunter/_event.pxd index 77489a9..07d72b6 100644 --- a/src/hunter/_event.pxd +++ b/src/hunter/_event.pxd @@ -1,4 +1,3 @@ -# cython: language_level=3str cimport cython from ._tracer cimport * @@ -9,6 +8,7 @@ cdef extern from *: @cython.final +@cython.auto_pickle(False) cdef class Event: cdef: readonly FrameType frame diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index 0ce5a84..b9aff86 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -11,15 +11,11 @@ from tokenize import generate_tokens from cpython.pythread cimport PyThread_get_thread_ident from cpython.ref cimport PyObject -from cython cimport auto_pickle - -from ._tracer cimport Tracer from .const import SITE_PACKAGES_PATHS from .const import SYS_PREFIX_PATHS from .util import CYTHON_SUFFIX_RE from .util import LEADING_WHITESPACE_RE -from .util import MISSING from .util import get_func_in_mro from .util import get_main_thread from .util import if_same_code @@ -45,7 +41,6 @@ cdef const PyObject** KIND_NAMES = [ ] -@auto_pickle(False) cdef class Event: """ A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates. @@ -57,23 +52,8 @@ cdef class Event: kind (str): A string like ``'call'``, ``'line'``, ``'return'`` or ``'exception'``. arg: A value that depends on ``kind``. Usually is ``None`` but for ``'return'`` or ``'exception'`` other values may be expected. - tracer (:class:`hunter.tracer.Tracer`): The :class:`~hunter.tracer.Tracer` instance that created the event. - Needed for the ``calls`` and ``depth`` fields. """ - def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, - object threading_support=MISSING): - if tracer is None: - if depth is None: - raise TypeError('Missing argument: depth (required because tracer was not given).') - if calls is None: - raise TypeError('Missing argument: calls (required because tracer was not given).') - if threading_support is MISSING: - raise TypeError('Missing argument: threading_support (required because tracer was not given).') - else: - depth = tracer.depth - calls = tracer.calls - threading_support = tracer.threading_support - + def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): self.arg = arg self.frame = frame self.kind = KIND_NAMES[kind] @@ -117,7 +97,7 @@ cdef class Event: cdef int position if self._instruction is UNSET: - position = PyFrame_GetLasti( self.frame) + position = Hunter_PyFrame_GetLasti(self.frame) co_code = PyCode_GetCode(self.code_getter()) if co_code and position >= 0: self._instruction = co_code[position] @@ -161,7 +141,7 @@ cdef class Event: if self.builtin: self._locals = {} else: - self._locals = PyFrame_GetLocals( self.frame) + self._locals = Hunter_PyFrame_GetLocals(self.frame) return self._locals @property @@ -173,7 +153,7 @@ cdef class Event: if self.builtin: self._locals = {} else: - self._globals = PyFrame_GetGlobals( self.frame) + self._globals = Hunter_PyFrame_GetGlobals(self.frame) return self._globals @property @@ -266,7 +246,7 @@ cdef class Event: cdef inline lineno_getter(self): if self._lineno is UNSET: - self._lineno = PyFrame_GetLineNumber( self.frame) + self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) return self._lineno @property @@ -275,7 +255,7 @@ cdef class Event: cdef inline CodeType code_getter(self): if self._code is UNSET: - return PyFrame_GetCode( self.frame) + return Hunter_PyFrame_GetCode(self.frame) else: return self._code diff --git a/src/hunter/_tracer.pxd b/src/hunter/_tracer.pxd index df5ea60..5b0b1d1 100644 --- a/src/hunter/_tracer.pxd +++ b/src/hunter/_tracer.pxd @@ -7,12 +7,31 @@ from cpython.ref cimport PyObject ctypedef extern FrameType cdef extern from "vendor/_compat.h": - CodeType PyFrame_GetCode(PyFrameObject *frame) - int PyFrame_GetLasti(PyFrameObject *frame) + """ + static inline PyCodeObject* Hunter_PyFrame_GetCode(PyObject* frame) { + return PyFrame_GetCode((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLasti(PyObject* frame) { + return PyFrame_GetLasti((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLineNumber(PyObject* frame) { + return PyFrame_GetLineNumber((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetGlobals(PyObject* frame) { + return PyFrame_GetGlobals((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetLocals(PyObject* frame) { + return PyFrame_GetLocals((PyFrameObject*) frame); + } + """ object PyCode_GetCode(CodeType) object PyCode_GetVarnames(CodeType) - object PyFrame_GetGlobals(PyFrameObject *frame) - object PyFrame_GetLocals(PyFrameObject *frame) + CodeType Hunter_PyFrame_GetCode(FrameType frame) + int Hunter_PyFrame_GetLasti(FrameType frame) + int Hunter_PyFrame_GetLineNumber(FrameType frame) + object Hunter_PyFrame_GetGlobals(FrameType frame) + object Hunter_PyFrame_GetLocals(FrameType frame) + cdef extern from *: void PyEval_SetTrace(Py_tracefunc, PyObject*) diff --git a/src/hunter/_tracer.pyx b/src/hunter/_tracer.pyx index 9c2ca28..570c5ba 100644 --- a/src/hunter/_tracer.pyx +++ b/src/hunter/_tracer.pyx @@ -2,9 +2,7 @@ import threading import traceback -from cpython cimport pystate from cpython.pystate cimport PyThreadState_Get - from ._event cimport Event from ._predicates cimport fast_call @@ -22,9 +20,8 @@ cdef dict KIND_INTS = { 'c_return': 6, } -cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: - if frame.f_trace is not self: - frame.f_trace = self +cdef inline int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: + cdef Tracer self = tracer handler = self.handler @@ -39,8 +36,7 @@ cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg if kind == 3 and self.depth > 0: self.depth -= 1 - cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) - + cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) try: fast_call(handler, event) except Exception as exc: @@ -53,6 +49,7 @@ cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg if kind == 0: self.depth += 1 self.calls += 1 + return 0 cdef class Tracer: @@ -82,9 +79,9 @@ cdef class Tracer: ) def __call__(self, frame, str kind, arg): - trace_func(self, frame, KIND_INTS[kind], arg) + trace_func( self, frame, KIND_INTS[kind], arg) if kind == 0: - PyEval_SetTrace( trace_func, self) + PyEval_SetTrace(trace_func, self) return self def trace(self, predicate): @@ -101,7 +98,7 @@ cdef class Tracer: else: self.previous = (state.c_profileobj) self._previousfunc = state.c_profilefunc - PyEval_SetProfile( trace_func, self) + PyEval_SetProfile(trace_func, self) else: if self.threading_support is None or self.threading_support: self._threading_previous = getattr(threading, '_trace_hook', None) @@ -112,7 +109,7 @@ cdef class Tracer: else: self.previous = (state.c_traceobj) self._previousfunc = state.c_tracefunc - PyEval_SetTrace( trace_func, self) + PyEval_SetTrace(trace_func, self) return self def stop(self): From b78754deefb7d0d1134084470d66054985f10d79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 8 Jul 2025 18:27:37 +0300 Subject: [PATCH 31/80] Disable sysmonitoring support (added in cython 3.1, apparently it causes segfaults). Move around some declarations. --- setup.py | 3 ++- src/hunter/_event.pxd | 33 +++++++++++++++++++++++++++++++-- src/hunter/_tracer.pxd | 29 +---------------------------- src/hunter/_tracer.pyx | 3 ++- 4 files changed, 36 insertions(+), 32 deletions(-) diff --git a/setup.py b/setup.py index e1a3fff..b658d91 100755 --- a/setup.py +++ b/setup.py @@ -22,11 +22,12 @@ except ImportError: Cython = None + # Enable code coverage for C code: we cannot use CFLAGS=-coverage in tox.ini, since that may mess with compiling # dependencies (e.g. numpy). Therefore, we set SETUPPY_CFLAGS=-coverage in tox.ini and copy it to CFLAGS here (after # deps have been safely installed). if 'TOX_ENV_NAME' in os.environ and os.environ.get('SETUPPY_EXT_COVERAGE') == 'yes': - CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_TRACE=1' + CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_TRACE=1 -DCYTHON_USE_SYS_MONITORING=0' LFLAGS = os.environ['LFLAGS'] = '' else: CFLAGS = '' diff --git a/src/hunter/_event.pxd b/src/hunter/_event.pxd index 07d72b6..f55a1bc 100644 --- a/src/hunter/_event.pxd +++ b/src/hunter/_event.pxd @@ -1,10 +1,39 @@ cimport cython -from ._tracer cimport * +ctypedef extern FrameType cdef extern from *: - int PyFrame_GetLineNumber(PyFrameObject *frame) + ctypedef extern class types.CodeType[object PyCodeObject, check_size ignore]: + cdef object co_filename + cdef object co_name + cdef int co_argcount + +cdef extern from "vendor/_compat.h": + """ + static inline PyCodeObject* Hunter_PyFrame_GetCode(PyObject* frame) { + return PyFrame_GetCode((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLasti(PyObject* frame) { + return PyFrame_GetLasti((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLineNumber(PyObject* frame) { + return PyFrame_GetLineNumber((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetGlobals(PyObject* frame) { + return PyFrame_GetGlobals((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetLocals(PyObject* frame) { + return PyFrame_GetLocals((PyFrameObject*) frame); + } + """ + object PyCode_GetCode(CodeType) + object PyCode_GetVarnames(CodeType) + CodeType Hunter_PyFrame_GetCode(FrameType frame) + int Hunter_PyFrame_GetLasti(FrameType frame) + int Hunter_PyFrame_GetLineNumber(FrameType frame) + object Hunter_PyFrame_GetGlobals(FrameType frame) + object Hunter_PyFrame_GetLocals(FrameType frame) @cython.final diff --git a/src/hunter/_tracer.pxd b/src/hunter/_tracer.pxd index 5b0b1d1..1ffd2fd 100644 --- a/src/hunter/_tracer.pxd +++ b/src/hunter/_tracer.pxd @@ -1,37 +1,10 @@ # cython: language_level=3str cimport cython from cpython.pystate cimport Py_tracefunc -from cpython.pystate cimport PyFrameObject from cpython.ref cimport PyObject -ctypedef extern FrameType - -cdef extern from "vendor/_compat.h": - """ - static inline PyCodeObject* Hunter_PyFrame_GetCode(PyObject* frame) { - return PyFrame_GetCode((PyFrameObject*) frame); - } - static inline int Hunter_PyFrame_GetLasti(PyObject* frame) { - return PyFrame_GetLasti((PyFrameObject*) frame); - } - static inline int Hunter_PyFrame_GetLineNumber(PyObject* frame) { - return PyFrame_GetLineNumber((PyFrameObject*) frame); - } - static inline PyObject* Hunter_PyFrame_GetGlobals(PyObject* frame) { - return PyFrame_GetGlobals((PyFrameObject*) frame); - } - static inline PyObject* Hunter_PyFrame_GetLocals(PyObject* frame) { - return PyFrame_GetLocals((PyFrameObject*) frame); - } - """ - object PyCode_GetCode(CodeType) - object PyCode_GetVarnames(CodeType) - CodeType Hunter_PyFrame_GetCode(FrameType frame) - int Hunter_PyFrame_GetLasti(FrameType frame) - int Hunter_PyFrame_GetLineNumber(FrameType frame) - object Hunter_PyFrame_GetGlobals(FrameType frame) - object Hunter_PyFrame_GetLocals(FrameType frame) +ctypedef extern FrameType cdef extern from *: void PyEval_SetTrace(Py_tracefunc, PyObject*) diff --git a/src/hunter/_tracer.pyx b/src/hunter/_tracer.pyx index 570c5ba..1bdb07d 100644 --- a/src/hunter/_tracer.pyx +++ b/src/hunter/_tracer.pyx @@ -3,6 +3,7 @@ import threading import traceback from cpython.pystate cimport PyThreadState_Get +from cpython.pystate cimport PyFrameObject from ._event cimport Event from ._predicates cimport fast_call @@ -20,7 +21,7 @@ cdef dict KIND_INTS = { 'c_return': 6, } -cdef inline int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: +cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: cdef Tracer self = tracer handler = self.handler From 8d25332087d9bde8f6370ae308c9d25cc71daa35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 8 Jul 2025 18:29:55 +0300 Subject: [PATCH 32/80] Add freethreading flag. --- src/hunter/_event.pyx | 2 +- src/hunter/_predicates.pyx | 2 +- src/hunter/_tracer.pyx | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index b9aff86..18623fd 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -1,4 +1,4 @@ -# cython: linetrace=True, language_level=3str, c_string_encoding=ascii +# cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True from functools import partial from linecache import getline from linecache import getlines diff --git a/src/hunter/_predicates.pyx b/src/hunter/_predicates.pyx index 617934d..cd99c96 100644 --- a/src/hunter/_predicates.pyx +++ b/src/hunter/_predicates.pyx @@ -1,4 +1,4 @@ -# cython: linetrace=True, language_level=3str, c_api_binop_methods=True +# cython: linetrace=True, language_level=3str, c_api_binop_methods=True, freethreading_compatible=True from __future__ import absolute_import from collections import deque diff --git a/src/hunter/_tracer.pyx b/src/hunter/_tracer.pyx index 1bdb07d..a843226 100644 --- a/src/hunter/_tracer.pyx +++ b/src/hunter/_tracer.pyx @@ -1,4 +1,4 @@ -# cython: linetrace=True, language_level=3str +# cython: linetrace=True, language_level=3str, freethreading_compatible=True import threading import traceback From eb9a41bb8b320a6205f1c37992bd60f1a31eeb92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 8 Jul 2025 18:33:41 +0300 Subject: [PATCH 33/80] Regen. --- src/hunter/_event.c | 8836 +++++++++++++++++++++----------------- src/hunter/_predicates.c | 237 +- src/hunter/_tracer.c | 1980 ++++----- 3 files changed, 5803 insertions(+), 5250 deletions(-) diff --git a/src/hunter/_event.c b/src/hunter/_event.c index 36a79b0..381a27a 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -1133,11 +1133,27 @@ static CYTHON_INLINE float __PYX_NAN() { #define __PYX_HAVE__hunter___event #define __PYX_HAVE_API__hunter___event /* Early includes */ -#include -#include #include "vendor/_compat.h" -#include "pystate.h" + + static inline PyCodeObject* Hunter_PyFrame_GetCode(PyObject* frame) { + return PyFrame_GetCode((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLasti(PyObject* frame) { + return PyFrame_GetLasti((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLineNumber(PyObject* frame) { + return PyFrame_GetLineNumber((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetGlobals(PyObject* frame) { + return PyFrame_GetGlobals((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetLocals(PyObject* frame) { + return PyFrame_GetLocals((PyFrameObject*) frame); + } + #include "pythread.h" +#include +#include #ifdef _OPENMP #include #endif /* _OPENMP */ @@ -1346,67 +1362,10 @@ static const char *__pyx_filename; static const char* const __pyx_f[] = { "src/hunter/_event.pyx", "src/hunter/_event.pxd", + "", ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", - "src/hunter/_tracer.pxd", - "src/hunter/vendor/_cymem/cymem.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ -/* Profile_config.proto */ -#ifndef CYTHON_PROFILE -#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY - #define CYTHON_PROFILE 0 -#else - #define CYTHON_PROFILE 1 -#endif -#endif -#ifndef CYTHON_TRACE_NOGIL - #define CYTHON_TRACE_NOGIL 0 -#else - #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) - #define CYTHON_TRACE 1 - #endif -#endif -#ifndef CYTHON_TRACE - #define CYTHON_TRACE 0 -#endif -#if CYTHON_PROFILE || CYTHON_TRACE -#if CYTHON_USE_SYS_MONITORING - typedef enum { - __Pyx_Monitoring_PY_START = 0, - __Pyx_Monitoring_PY_RETURN, - __Pyx_Monitoring_PY_UNWIND, - __Pyx_Monitoring_LINE, - __Pyx_Monitoring_RAISE, - __Pyx_Monitoring_RERAISE, - __Pyx_Monitoring_EXCEPTION_HANDLED, - __Pyx_Monitoring_PY_RESUME, - __Pyx_Monitoring_PY_YIELD, - __Pyx_Monitoring_STOP_ITERATION, - } __Pyx_Monitoring_Event_Index; - static const unsigned char __Pyx_MonitoringEventTypes[] = { - PY_MONITORING_EVENT_PY_START, - PY_MONITORING_EVENT_PY_RETURN, - PY_MONITORING_EVENT_PY_UNWIND, - PY_MONITORING_EVENT_LINE, - PY_MONITORING_EVENT_RAISE, - PY_MONITORING_EVENT_RERAISE, - PY_MONITORING_EVENT_EXCEPTION_HANDLED, - PY_MONITORING_EVENT_PY_RESUME, - PY_MONITORING_EVENT_PY_YIELD, - PY_MONITORING_EVENT_STOP_ITERATION, - }; - #define __Pyx_MonitoringEventTypes_CyFunc_count (sizeof(__Pyx_MonitoringEventTypes) - 3) - #define __Pyx_MonitoringEventTypes_CyGen_count (sizeof(__Pyx_MonitoringEventTypes)) -#endif -#endif - -/* NoFastGil.proto */ -#define __Pyx_PyGILState_Ensure PyGILState_Ensure -#define __Pyx_PyGILState_Release PyGILState_Release -#define __Pyx_FastGIL_Remember() -#define __Pyx_FastGIL_Forget() -#define __Pyx_FastGilFuncInit() - /* Atomics.proto */ #include #ifndef CYTHON_ATOMICS @@ -1539,6 +1498,62 @@ static const char* const __pyx_f[] = { __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) #endif +/* Profile_config.proto */ +#ifndef CYTHON_PROFILE +#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY + #define CYTHON_PROFILE 0 +#else + #define CYTHON_PROFILE 1 +#endif +#endif +#ifndef CYTHON_TRACE_NOGIL + #define CYTHON_TRACE_NOGIL 0 +#else + #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE) + #define CYTHON_TRACE 1 + #endif +#endif +#ifndef CYTHON_TRACE + #define CYTHON_TRACE 0 +#endif +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef enum { + __Pyx_Monitoring_PY_START = 0, + __Pyx_Monitoring_PY_RETURN, + __Pyx_Monitoring_PY_UNWIND, + __Pyx_Monitoring_LINE, + __Pyx_Monitoring_RAISE, + __Pyx_Monitoring_RERAISE, + __Pyx_Monitoring_EXCEPTION_HANDLED, + __Pyx_Monitoring_PY_RESUME, + __Pyx_Monitoring_PY_YIELD, + __Pyx_Monitoring_STOP_ITERATION, + } __Pyx_Monitoring_Event_Index; + static const unsigned char __Pyx_MonitoringEventTypes[] = { + PY_MONITORING_EVENT_PY_START, + PY_MONITORING_EVENT_PY_RETURN, + PY_MONITORING_EVENT_PY_UNWIND, + PY_MONITORING_EVENT_LINE, + PY_MONITORING_EVENT_RAISE, + PY_MONITORING_EVENT_RERAISE, + PY_MONITORING_EVENT_EXCEPTION_HANDLED, + PY_MONITORING_EVENT_PY_RESUME, + PY_MONITORING_EVENT_PY_YIELD, + PY_MONITORING_EVENT_STOP_ITERATION, + }; + #define __Pyx_MonitoringEventTypes_CyFunc_count (sizeof(__Pyx_MonitoringEventTypes) - 3) + #define __Pyx_MonitoringEventTypes_CyGen_count (sizeof(__Pyx_MonitoringEventTypes)) +#endif +#endif + +/* NoFastGil.proto */ +#define __Pyx_PyGILState_Ensure PyGILState_Ensure +#define __Pyx_PyGILState_Release PyGILState_Release +#define __Pyx_FastGIL_Remember() +#define __Pyx_FastGIL_Forget() +#define __Pyx_FastGilFuncInit() + /* IncludeStructmemberH.proto */ #include @@ -1571,128 +1586,24 @@ static const char* const __pyx_f[] = { /* #### Code section: type_declarations ### */ /*--- Type declarations ---*/ -struct __pyx_obj_6hunter_7_tracer_Tracer; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool; -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address; struct __pyx_obj_6hunter_6_event_Event; struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines; -/* "_tracer.pxd":7 - * from cpython.ref cimport PyObject +/* "hunter/_event.pxd":4 + * * * ctypedef extern FrameType # <<<<<<<<<<<<<< * - * cdef extern from "vendor/_compat.h": + * cdef extern from *: */ typedef PyObject *FrameType; -/* "vendor/_cymem/cymem.pxd":2 - * # cython: language_level=3str - * ctypedef void* (*malloc_t)(size_t n) # <<<<<<<<<<<<<< - * ctypedef void (*free_t)(void *p) - * -*/ -typedef void *(*__pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t)(size_t); - -/* "vendor/_cymem/cymem.pxd":3 - * # cython: language_level=3str - * ctypedef void* (*malloc_t)(size_t n) - * ctypedef void (*free_t)(void *p) # <<<<<<<<<<<<<< - * - * cdef class PyMalloc: -*/ -typedef void (*__pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t)(void *); - -/* "_tracer.pxd":35 - * - * - * @cython.final # <<<<<<<<<<<<<< - * cdef class Tracer: - * cdef: -*/ -struct __pyx_obj_6hunter_7_tracer_Tracer { - PyObject_HEAD - PyObject *handler; - PyObject *previous; - PyObject *threading_support; - int profiling_mode; - int depth; - int calls; - PyObject *__weakref__; - PyObject *_threading_previous; - Py_tracefunc _previousfunc; -}; - - -/* "vendor/_cymem/cymem.pxd":5 - * ctypedef void (*free_t)(void *p) - * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef malloc_t malloc - * cdef void _set(self, malloc_t malloc) -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t malloc; -}; - - -/* "vendor/_cymem/cymem.pxd":11 - * cdef PyMalloc WrapMalloc(malloc_t malloc) - * - * cdef class PyFree: # <<<<<<<<<<<<<< - * cdef free_t free - * cdef void _set(self, free_t free) -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtab; - __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t free; -}; - - -/* "vendor/_cymem/cymem.pxd":17 - * cdef PyFree WrapFree(free_t free) - * - * cdef class Pool: # <<<<<<<<<<<<<< - * cdef readonly size_t size - * cdef readonly dict addresses -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool { - PyObject_HEAD - struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtab; - size_t size; - PyObject *addresses; - PyObject *refs; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; -}; - - -/* "vendor/_cymem/cymem.pxd":29 - * - * - * cdef class Address: # <<<<<<<<<<<<<< - * cdef void* ptr - * cdef readonly PyMalloc pymalloc -*/ -struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address { - PyObject_HEAD - void *ptr; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *pymalloc; - struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *pyfree; -}; - - -/* "hunter/_event.pxd":11 +/* "hunter/_event.pxd":39 * * * @cython.final # <<<<<<<<<<<<<< + * @cython.auto_pickle(False) * cdef class Event: - * cdef: */ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD @@ -1723,7 +1634,7 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "hunter/_event.pyx":362 +/* "hunter/_event.pyx":344 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< @@ -1747,56 +1658,12 @@ struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines { -/* "vendor/_cymem/cymem.pxd":5 - * ctypedef void (*free_t)(void *p) - * - * cdef class PyMalloc: # <<<<<<<<<<<<<< - * cdef malloc_t malloc - * cdef void _set(self, malloc_t malloc) -*/ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc { - void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_malloc_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc; - - -/* "vendor/_cymem/cymem.pxd":11 - * cdef PyMalloc WrapMalloc(malloc_t malloc) - * - * cdef class PyFree: # <<<<<<<<<<<<<< - * cdef free_t free - * cdef void _set(self, free_t free) -*/ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree { - void (*_set)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree *, __pyx_t_6hunter_6vendor_6_cymem_5cymem_free_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree; - - -/* "vendor/_cymem/cymem.pxd":17 - * cdef PyFree WrapFree(free_t free) - * - * cdef class Pool: # <<<<<<<<<<<<<< - * cdef readonly size_t size - * cdef readonly dict addresses -*/ - -struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool { - void *(*alloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, size_t, size_t); - void (*free)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *); - void *(*realloc)(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *, void *, size_t); -}; -static struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool; - - -/* "hunter/_event.pyx":46 +/* "hunter/_event.pyx":44 * * - * @auto_pickle(False) # <<<<<<<<<<<<<< - * cdef class Event: + * cdef class Event: # <<<<<<<<<<<<<< * """ + * A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates. */ struct __pyx_vtabstruct_6hunter_6_event_Event { @@ -1968,35 +1835,201 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P /* GetBuiltinName.proto */ static PyObject *__Pyx_GetBuiltinName(PyObject *name); -/* Profile.proto */ -#if CYTHON_TRACE - #undef CYTHON_PROFILE_REUSE_FRAME +/* TupleAndListFromArray.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); #endif -#if CYTHON_USE_MODULE_STATE - #undef CYTHON_PROFILE_REUSE_CODEOBJ - #define CYTHON_PROFILE_REUSE_CODEOBJ 0 - #undef CYTHON_PROFILE_REUSE_FRAME +#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); #endif -#ifndef CYTHON_PROFILE_REUSE_CODEOBJ - #define CYTHON_PROFILE_REUSE_CODEOBJ 1 + +/* IncludeStringH.proto */ +#include + +/* BytesEquals.proto */ +static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); + +/* UnicodeEquals.proto */ +static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); + +/* fastcall.proto */ +#if CYTHON_AVOID_BORROWED_REFS + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) +#elif CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) +#else + #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) #endif -#ifndef CYTHON_PROFILE_REUSE_FRAME - #define CYTHON_PROFILE_REUSE_FRAME 0 +#define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) +#define __Pyx_KwValues_VARARGS(args, nargs) NULL +#define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) +#define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) +#if CYTHON_METH_FASTCALL + #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) + #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) + #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) + static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); + #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API + CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); + #else + #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) + #endif +#else + #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS + #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS + #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS + #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS + #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS #endif -#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) - #define __PYX_MONITORING_ABI_SUFFIX "_mon" +#define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) +#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) +#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) #else - #define __PYX_MONITORING_ABI_SUFFIX +#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) #endif -#if CYTHON_PROFILE || CYTHON_TRACE -#if CYTHON_USE_SYS_MONITORING - typedef uint64_t __pyx_monitoring_version_type; - #define __Pyx_TraceDeclarationsFunc\ - PyObject *__pyx_frame_code = NULL;\ - PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyFunc_count];\ - int __pyx_exception_already_reported = 0;\ - const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); - #define __Pyx_TraceDeclarationsGen\ + +/* RaiseDoubleKeywords.proto */ +static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); + +/* ParseKeywords.proto */ +static CYTHON_INLINE int __Pyx_ParseKeywords( + PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], + PyObject *kwds2, PyObject *values[], + Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, + const char* function_name, + int ignore_unknown_kwargs +); + +/* CallCFunction.proto */ +#define __Pyx_CallCFunction(cfunc, self, args)\ + ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) +#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ + ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) +#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ + ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) +#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ + ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) + +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#if !CYTHON_VECTORCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); +#endif +#define __Pyx_BUILD_ASSERT_EXPR(cond)\ + (sizeof(char [1 - 2*!(cond)]) - 1) +#ifndef Py_MEMBER_SIZE +#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) +#endif +#if !CYTHON_VECTORCALL +#if PY_VERSION_HEX >= 0x03080000 + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets() + #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) +#else + static size_t __pyx_pyframe_localsplus_offset = 0; + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets()\ + ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ + (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) + #define __Pyx_PyFrame_GetLocalsplus(frame)\ + (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) +#endif +#endif +#endif + +/* PyObjectCall.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); +#else +#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) +#endif + +/* PyObjectCallMethO.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif + +/* PyObjectFastCall.proto */ +#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) +static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); + +/* UnpackUnboundCMethod.proto */ +typedef struct { + PyObject *type; + PyObject **method_name; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS + __pyx_atomic_int_type initialized; +#endif + PyCFunction func; + PyObject *method; + int flag; +} __Pyx_CachedCFunction; +#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING +static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { +#if !CYTHON_ATOMICS + return 1; +#else + __pyx_nonatomic_int_type expected = 0; + if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { + return 0; + } + return expected; +#endif +} +static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { +#if CYTHON_ATOMICS + __pyx_atomic_store(&cfunc->initialized, 2); +#endif +} +#else +#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 +#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) +#endif + +/* CallUnboundCMethod2.proto */ +CYTHON_UNUSED +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); +#else +#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) +#endif + +/* RaiseArgTupleInvalid.proto */ +static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, + Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); + +/* Profile.proto */ +#if CYTHON_TRACE + #undef CYTHON_PROFILE_REUSE_FRAME +#endif +#if CYTHON_USE_MODULE_STATE + #undef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 0 + #undef CYTHON_PROFILE_REUSE_FRAME +#endif +#ifndef CYTHON_PROFILE_REUSE_CODEOBJ + #define CYTHON_PROFILE_REUSE_CODEOBJ 1 +#endif +#ifndef CYTHON_PROFILE_REUSE_FRAME + #define CYTHON_PROFILE_REUSE_FRAME 0 +#endif +#if CYTHON_USE_SYS_MONITORING && (CYTHON_PROFILE || CYTHON_TRACE) + #define __PYX_MONITORING_ABI_SUFFIX "_mon" +#else + #define __PYX_MONITORING_ABI_SUFFIX +#endif +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_USE_SYS_MONITORING + typedef uint64_t __pyx_monitoring_version_type; + #define __Pyx_TraceDeclarationsFunc\ + PyObject *__pyx_frame_code = NULL;\ + PyMonitoringState __pyx_pymonitoring_state[__Pyx_MonitoringEventTypes_CyFunc_count];\ + int __pyx_exception_already_reported = 0;\ + const int __pyx_sys_monitoring_disabled_in_parallel = 0; CYTHON_UNUSED_VAR(__pyx_sys_monitoring_disabled_in_parallel); + #define __Pyx_TraceDeclarationsGen\ PyObject *__pyx_frame_code = Py_NewRef(__pyx_generator->gi_code);\ PyMonitoringState* __pyx_pymonitoring_state = __pyx_generator->__pyx_pymonitoring_state;\ __pyx_monitoring_version_type __pyx_pymonitoring_version = __pyx_generator->__pyx_pymonitoring_version;\ @@ -2383,266 +2416,85 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define __Pyx_TraceLine(line, offset, nogil, goto_error) if ((1)); else goto_error; #endif -/* RaiseUnexpectedTypeError.proto */ -static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj); - -/* Intern.proto */ -static PyObject* __Pyx_Intern(PyObject* s); - -/* TupleAndListFromArray.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); -#endif -#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_METH_FASTCALL -static CYTHON_INLINE PyObject* __Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n); -#endif +/* PyObjectFormatAndDecref.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); +static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); -/* IncludeStringH.proto */ -#include +/* JoinPyUnicode.proto */ +static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, + Py_UCS4 max_char); -/* BytesEquals.proto */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); +/* RejectKeywords.proto */ +static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); -/* UnicodeEquals.proto */ -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); +/* GetItemInt.proto */ +#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\ + (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\ + __Pyx_GetItemInt_Generic(o, to_py_func(i)))) +#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ + (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, + int wraparound, int boundscheck); +#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ + (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL)) +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, + int wraparound, int boundscheck); +static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, + int is_list, int wraparound, int boundscheck); -/* fastcall.proto */ -#if CYTHON_AVOID_BORROWED_REFS - #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i) -#elif CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i)) +/* PyDictVersioning.proto */ +#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS +#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) +#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) +#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\ + (version_var) = __PYX_GET_DICT_VERSION(dict);\ + (cache_var) = (value); +#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\ + static PY_UINT64_T __pyx_dict_version = 0;\ + static PyObject *__pyx_dict_cached_value = NULL;\ + if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ + (VAR) = __pyx_dict_cached_value;\ + } else {\ + (VAR) = __pyx_dict_cached_value = (LOOKUP);\ + __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ + }\ +} +static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj); +static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj); +static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version); #else - #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i)) +#define __PYX_GET_DICT_VERSION(dict) (0) +#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var) +#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP); #endif -#define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds) -#define __Pyx_KwValues_VARARGS(args, nargs) NULL -#define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s) -#define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw) -#if CYTHON_METH_FASTCALL - #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i]) - #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds) - #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs)) - static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s); - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API - CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues); - #else - #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw) - #endif + +/* GetModuleGlobalName.proto */ +#if CYTHON_USE_DICT_VERSIONS +#define __Pyx_GetModuleGlobalName(var, name) do {\ + static PY_UINT64_T __pyx_dict_version = 0;\ + static PyObject *__pyx_dict_cached_value = NULL;\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ + (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ + __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ +} while(0) +#define __Pyx_GetModuleGlobalNameUncached(var, name) do {\ + PY_UINT64_T __pyx_dict_version;\ + PyObject *__pyx_dict_cached_value;\ + (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ +} while(0) +static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value); #else - #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS - #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS - #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS - #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS - #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS +#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name) +#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name) +static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); #endif -#define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop) -#if CYTHON_METH_FASTCALL || (CYTHON_COMPILING_IN_CPYTHON && CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS) -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start) -#else -#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop) -#endif - -/* RaiseDoubleKeywords.proto */ -static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); - -/* ParseKeywords.proto */ -static CYTHON_INLINE int __Pyx_ParseKeywords( - PyObject *kwds, PyObject *const *kwvalues, PyObject ** const argnames[], - PyObject *kwds2, PyObject *values[], - Py_ssize_t num_pos_args, Py_ssize_t num_kwargs, - const char* function_name, - int ignore_unknown_kwargs -); - -/* CallCFunction.proto */ -#define __Pyx_CallCFunction(cfunc, self, args)\ - ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args) -#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\ - ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs) -#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\ - ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs) -#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\ - ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames) - -/* PyFunctionFastCall.proto */ -#if CYTHON_FAST_PYCALL -#if !CYTHON_VECTORCALL -#define __Pyx_PyFunction_FastCall(func, args, nargs)\ - __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject *const *args, Py_ssize_t nargs, PyObject *kwargs); -#endif -#define __Pyx_BUILD_ASSERT_EXPR(cond)\ - (sizeof(char [1 - 2*!(cond)]) - 1) -#ifndef Py_MEMBER_SIZE -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) -#endif -#if !CYTHON_VECTORCALL -#if PY_VERSION_HEX >= 0x03080000 - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets() - #define __Pyx_PyFrame_GetLocalsplus(frame) ((frame)->f_localsplus) -#else - static size_t __pyx_pyframe_localsplus_offset = 0; - #include "frameobject.h" - #define __Pxy_PyFrame_Initialize_Offsets()\ - ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ - (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) - #define __Pyx_PyFrame_GetLocalsplus(frame)\ - (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) -#endif -#endif -#endif - -/* PyObjectCall.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); -#else -#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) -#endif - -/* PyObjectCallMethO.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); -#endif - -/* PyObjectFastCall.proto */ -#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL) -static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject * const*args, size_t nargs, PyObject *kwargs); - -/* UnpackUnboundCMethod.proto */ -typedef struct { - PyObject *type; - PyObject **method_name; -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS - __pyx_atomic_int_type initialized; -#endif - PyCFunction func; - PyObject *method; - int flag; -} __Pyx_CachedCFunction; -#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING -static CYTHON_INLINE int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) { -#if !CYTHON_ATOMICS - return 1; -#else - __pyx_nonatomic_int_type expected = 0; - if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) { - return 0; - } - return expected; -#endif -} -static CYTHON_INLINE void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) { -#if CYTHON_ATOMICS - __pyx_atomic_store(&cfunc->initialized, 2); -#endif -} -#else -#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2 -#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc) -#endif - -/* CallUnboundCMethod2.proto */ -CYTHON_UNUSED -static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); -#else -#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) -#endif - -/* RaiseArgTupleInvalid.proto */ -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); - -/* ArgTypeTest.proto */ -#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ - ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ - __Pyx__ArgTypeTest(obj, type, name, exact)) -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); - -/* RaiseException.proto */ -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); - -/* PyDictVersioning.proto */ -#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS -#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) -#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) -#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\ - (version_var) = __PYX_GET_DICT_VERSION(dict);\ - (cache_var) = (value); -#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\ - static PY_UINT64_T __pyx_dict_version = 0;\ - static PyObject *__pyx_dict_cached_value = NULL;\ - if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ - (VAR) = __pyx_dict_cached_value;\ - } else {\ - (VAR) = __pyx_dict_cached_value = (LOOKUP);\ - __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ - }\ -} -static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj); -static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj); -static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version); -#else -#define __PYX_GET_DICT_VERSION(dict) (0) -#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var) -#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP); -#endif - -/* GetModuleGlobalName.proto */ -#if CYTHON_USE_DICT_VERSIONS -#define __Pyx_GetModuleGlobalName(var, name) do {\ - static PY_UINT64_T __pyx_dict_version = 0;\ - static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_mstate_global->__pyx_d))) ?\ - (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ - __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ -} while(0) -#define __Pyx_GetModuleGlobalNameUncached(var, name) do {\ - PY_UINT64_T __pyx_dict_version;\ - PyObject *__pyx_dict_cached_value;\ - (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ -} while(0) -static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value); -#else -#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name) -#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name) -static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); -#endif - -/* PyObjectFormatAndDecref.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f); -static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatAndDecref(PyObject* s, PyObject* f); - -/* JoinPyUnicode.proto */ -static PyObject* __Pyx_PyUnicode_Join(PyObject** values, Py_ssize_t value_count, Py_ssize_t result_ulength, - Py_UCS4 max_char); - -/* RejectKeywords.proto */ -static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds); - -/* GetItemInt.proto */ -#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ - __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\ - (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\ - __Pyx_GetItemInt_Generic(o, to_py_func(i)))) -#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ - __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ - (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, - int wraparound, int boundscheck); -#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck, has_gil)\ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ - __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ - (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL)) -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, - int wraparound, int boundscheck); -static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, - int is_list, int wraparound, int boundscheck); /* PyObjectFastCallMethod.proto */ #if CYTHON_VECTORCALL && PY_VERSION_HEX >= 0x03090000 @@ -2804,6 +2656,18 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, /* GetAttr.proto */ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *); +/* GetAttr3.proto */ +static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); + +/* RaiseUnexpectedTypeError.proto */ +static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj); + +/* ArgTypeTest.proto */ +#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ + ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ + __Pyx__ArgTypeTest(obj, type, name, exact)) +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); + /* ListAppend.proto */ #if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { @@ -2828,6 +2692,22 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { /* pep479.proto */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); +/* Import.proto */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); + +/* ImportFrom.proto */ +static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); + +/* RaiseException.proto */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); + +/* HasAttr.proto */ +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 +#define __Pyx_HasAttr(o, n) PyObject_HasAttrWithError(o, n) +#else +static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *); +#endif + /* CallTypeTraverse.proto */ #if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) #define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 @@ -2835,6 +2715,25 @@ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visit, void *arg); #endif +/* TypeImport.proto */ +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 +#define __PYX_HAVE_RT_ImportType_proto_3_1_2 +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L +#include +#endif +#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) +#else +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) +#endif +enum __Pyx_ImportType_CheckSize_3_1_2 { + __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 +}; +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); +#endif + /* LimitedApiGetTypeDict.proto */ #if CYTHON_COMPILING_IN_LIMITED_API static PyObject *__Pyx_GetTypeDict(PyTypeObject *tp); @@ -2864,34 +2763,16 @@ static void* __Pyx_GetVtable(PyTypeObject *type); /* MergeVTables.proto */ static int __Pyx_MergeVtables(PyTypeObject *type); -/* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 -#define __PYX_HAVE_RT_ImportType_proto_3_1_2 -#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L -#include -#endif -#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) -#else -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) -#endif -enum __Pyx_ImportType_CheckSize_3_1_2 { - __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, - __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 -}; -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); -#endif +/* DelItemOnTypeDict.proto */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); +#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k) + +/* SetupReduce.proto */ +static int __Pyx_setup_reduce(PyObject* type_obj); /* ListPack.proto */ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...); -/* Import.proto */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); - -/* ImportFrom.proto */ -static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); - /* FetchSharedCythonModule.proto */ static PyObject *__Pyx_FetchSharedCythonABIModule(void); @@ -3047,9 +2928,6 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, #define __Pyx_HAS_GCC_DIAGNOSTIC #endif -/* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); - /* PyObjectVectorCallKwBuilder.proto */ CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); #if CYTHON_VECTORCALL @@ -3071,6 +2949,12 @@ static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, P /* CIntToPy.proto */ static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value); +/* CIntFromPy.proto */ +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); + +/* CIntFromPy.proto */ +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); + /* CIntToPy.proto */ static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); @@ -3091,9 +2975,6 @@ typedef const char *__Pyx_TypeName; #define __Pyx_DECREF_TypeName(obj) #endif -/* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); - /* PyObjectCall2Args.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); @@ -3260,6 +3141,10 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 /* Module declarations from "cython" */ +/* Module declarations from "types" */ + +/* Module declarations from "cpython.pythread" */ + /* Module declarations from "libc.string" */ /* Module declarations from "libc.stdio" */ @@ -3272,25 +3157,18 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 /* Module declarations from "cpython.object" */ -/* Module declarations from "cpython.pystate" */ - /* Module declarations from "cpython.ref" */ -/* Module declarations from "types" */ - -/* Module declarations from "hunter._tracer" */ - -/* Module declarations from "cpython.pythread" */ - -/* Module declarations from "hunter.vendor._cymem.cymem" */ - /* Module declarations from "hunter._event" */ static PyObject *__pyx_v_6hunter_6_event_UNSET = 0; -static struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *__pyx_v_6hunter_6_event_mem = 0; -static PyObject **__pyx_v_6hunter_6_event_KIND_NAMES; +static PyObject *__pyx_v_6hunter_6_event_CALL = 0; +static PyObject *__pyx_v_6hunter_6_event_EXCEPTION = 0; +static PyObject *__pyx_v_6hunter_6_event_LINE = 0; +static PyObject *__pyx_v_6hunter_6_event_RETURN = 0; +static PyObject const **__pyx_v_6hunter_6_event_KIND_NAMES; static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_event_fast_clone(struct __pyx_obj_6hunter_6_event_Event *); /*proto*/ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_event_fast_detach(struct __pyx_obj_6hunter_6_event_Event *, PyObject *); /*proto*/ -static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject *); /*proto*/ +static PyObject *__pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(struct __pyx_obj_6hunter_6_event_Event *, PyObject *); /*proto*/ /* #### Code section: typeinfo ### */ /* #### Code section: before_global_var ### */ #define __Pyx_MODULE_NAME "hunter._event" @@ -3300,20 +3178,19 @@ int __pyx_module_is_main_hunter___event = 0; /* Implementation of "hunter._event" */ /* #### Code section: global_var ### */ static PyObject *__pyx_builtin_object; -static PyObject *__pyx_builtin_enumerate; -static PyObject *__pyx_builtin_TypeError; /* #### Code section: string_decls ### */ +static const char __pyx_k_[] = ">"; static const char __pyx_k_1[] = "\2301"; static const char __pyx_k_6[] = "\320\004\"\240!\330\010\017\210{\230!\2306\240\021"; static const char __pyx_k_Q[] = "\220Q"; static const char __pyx_k_a[] = "\220a"; static const char __pyx_k_v[] = "v"; -static const char __pyx_k__2[] = ">"; -static const char __pyx_k__3[] = ""; -static const char __pyx_k__4[] = "?"; -static const char __pyx_k__5[] = "."; -static const char __pyx_k__6[] = "\230\001"; -static const char __pyx_k__7[] = "\200\001\330\020\021"; +static const char __pyx_k_1F[] = "\200\001\330\004#\2401\240F\250!"; +static const char __pyx_k__2[] = ""; +static const char __pyx_k__3[] = "?"; +static const char __pyx_k__4[] = "."; +static const char __pyx_k__5[] = "\230\001"; +static const char __pyx_k__6[] = "\200\001\330\020\021"; static const char __pyx_k_eq[] = "__eq__"; static const char __pyx_k_gc[] = "gc"; static const char __pyx_k_py[] = ".py"; @@ -3324,15 +3201,18 @@ static const char __pyx_k_all[] = "__all__"; static const char __pyx_k_arg[] = "arg"; static const char __pyx_k_def[] = "def"; static const char __pyx_k_get[] = "get"; -static const char __pyx_k_mem[] = "mem"; +static const char __pyx_k_new[] = "__new__"; static const char __pyx_k_pop[] = "pop"; static const char __pyx_k_pyc[] = ".pyc"; static const char __pyx_k_pyd[] = ".pyd"; static const char __pyx_k_pyo[] = ".pyo"; static const char __pyx_k_pyx[] = ".pyx"; static const char __pyx_k_sub[] = "sub"; +static const char __pyx_k_CALL[] = "CALL"; +static const char __pyx_k_LINE[] = "LINE"; static const char __pyx_k_call[] = "call"; static const char __pyx_k_code[] = "_code"; +static const char __pyx_k_dict[] = "__dict__"; static const char __pyx_k_file[] = "__file__"; static const char __pyx_k_func[] = "__func__"; static const char __pyx_k_init[] = "__init__"; @@ -3370,13 +3250,16 @@ static const char __pyx_k_limit[] = "limit"; static const char __pyx_k_other[] = "other"; static const char __pyx_k_split[] = "split"; static const char __pyx_k_start[] = "start"; +static const char __pyx_k_state[] = "state"; static const char __pyx_k_throw[] = "throw"; static const char __pyx_k_value[] = "value"; static const char __pyx_k_A_wavQ[] = "\200A\330\010\017\210w\220a\220v\230Q"; +static const char __pyx_k_RETURN[] = "RETURN"; static const char __pyx_k_amount[] = "amount"; static const char __pyx_k_code_2[] = "code"; static const char __pyx_k_dedent[] = "dedent"; static const char __pyx_k_detach[] = "detach"; +static const char __pyx_k_dict_2[] = "_dict"; static const char __pyx_k_enable[] = "enable"; static const char __pyx_k_exists[] = "exists"; static const char __pyx_k_file_2[] = " file"; @@ -3387,14 +3270,15 @@ static const char __pyx_k_locals[] = "locals"; static const char __pyx_k_module[] = " module="; static const char __pyx_k_name_2[] = "__name__"; static const char __pyx_k_object[] = "object"; +static const char __pyx_k_pickle[] = "pickle"; +static const char __pyx_k_reduce[] = "__reduce__"; static const char __pyx_k_return[] = "return"; static const char __pyx_k_source[] = "_source"; static const char __pyx_k_stdlib[] = "_stdlib"; static const char __pyx_k_string[] = ""; static const char __pyx_k_thread[] = "_thread"; -static const char __pyx_k_tracer[] = "tracer"; +static const char __pyx_k_update[] = "update"; static const char __pyx_k_values[] = "values"; -static const char __pyx_k_MISSING[] = "MISSING"; static const char __pyx_k_builtin[] = "builtin"; static const char __pyx_k_disable[] = "disable"; static const char __pyx_k_findall[] = "findall"; @@ -3403,7 +3287,6 @@ static const char __pyx_k_getline[] = "getline"; static const char __pyx_k_globals[] = "globals"; static const char __pyx_k_os_path[] = "os.path"; static const char __pyx_k_partial[] = "partial"; -static const char __pyx_k_strings[] = "strings"; static const char __pyx_k_add_note[] = "add_note"; static const char __pyx_k_basename[] = "basename"; static const char __pyx_k_detached[] = "detached"; @@ -3411,6 +3294,7 @@ static const char __pyx_k_endswith[] = "endswith"; static const char __pyx_k_filename[] = " filename="; static const char __pyx_k_function[] = " function="; static const char __pyx_k_getlines[] = "getlines"; +static const char __pyx_k_getstate[] = "__getstate__"; static const char __pyx_k_lineno_2[] = "lineno"; static const char __pyx_k_lineno_3[] = "_lineno"; static const char __pyx_k_locals_2[] = "_locals"; @@ -3418,15 +3302,16 @@ static const char __pyx_k_module_2[] = "module"; static const char __pyx_k_module_3[] = "__module__"; static const char __pyx_k_module_4[] = ""; static const char __pyx_k_module_5[] = "_module"; +static const char __pyx_k_pyx_type[] = "__pyx_type"; static const char __pyx_k_qualname[] = "__qualname__"; static const char __pyx_k_set_name[] = "__set_name__"; +static const char __pyx_k_setstate[] = "__setstate__"; static const char __pyx_k_splitext[] = "splitext"; static const char __pyx_k_tokenize[] = "tokenize"; +static const char __pyx_k_EXCEPTION[] = "EXCEPTION"; static const char __pyx_k_NO_SOURCE[] = "\077\077? NO SOURCE: "; -static const char __pyx_k_TypeError[] = "TypeError"; static const char __pyx_k_candidate[] = "candidate"; static const char __pyx_k_collector[] = "collector"; -static const char __pyx_k_enumerate[] = "enumerate"; static const char __pyx_k_exception[] = "exception"; static const char __pyx_k_f_globals[] = "f_globals"; static const char __pyx_k_first_arg[] = "first_arg"; @@ -3434,8 +3319,11 @@ static const char __pyx_k_functools[] = "functools"; static const char __pyx_k_globals_2[] = "_globals"; static const char __pyx_k_isenabled[] = "isenabled"; static const char __pyx_k_linecache[] = "linecache"; +static const char __pyx_k_pyx_state[] = "__pyx_state"; +static const char __pyx_k_reduce_ex[] = "__reduce_ex__"; static const char __pyx_k_threadidn[] = "_threadidn"; static const char __pyx_k_threading[] = "threading"; +static const char __pyx_k_A_4wc_a_4q[] = "\200A\330\010\013\2104\210w\220c\230\021\330\014\023\320\023)\250\021\250$\250a\340\014\023\2204\220q"; static const char __pyx_k_Event_kind[] = "__pyx_ptype_7cpython_4type_type); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); - Py_CLEAR(clear_module_state->__pyx_k_); for (int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_slice[i]); } - for (int i=0; i<7; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } - for (int i=0; i<45; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<175; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<8; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } + for (int i=0; i<48; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<194; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_1); Py_CLEAR(clear_module_state->__pyx_int_10); + Py_CLEAR(clear_module_state->__pyx_int_103004196); + Py_CLEAR(clear_module_state->__pyx_int_157141922); + Py_CLEAR(clear_module_state->__pyx_int_235031988); Py_CLEAR(clear_module_state->__pyx_int_neg_1); return 0; } @@ -3884,192 +3798,32 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); - Py_VISIT(traverse_module_state->__pyx_k_); for (int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_slice[i]); } - for (int i=0; i<7; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } - for (int i=0; i<45; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<175; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<8; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } + for (int i=0; i<48; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<194; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_10); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_103004196); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_157141922); + __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_235031988); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_neg_1); return 0; } #endif /* #### Code section: module_code ### */ -/* "hunter/_event.pyx":36 - * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) - * - * cdef inline PyObject** make_kind_names(list strings): # <<<<<<<<<<<<<< - * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) - * cdef object name -*/ - -static CYTHON_INLINE PyObject **__pyx_f_6hunter_6_event_make_kind_names(PyObject *__pyx_v_strings) { - PyObject **__pyx_v_array; - PyObject *__pyx_v_name = 0; - Py_ssize_t __pyx_v_i; - PyObject *__pyx_v_string = NULL; - PyObject **__pyx_r; - __Pyx_TraceDeclarationsFunc - __Pyx_RefNannyDeclarations - Py_ssize_t __pyx_t_1; - void *__pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) - __Pyx_RefNannySetupContext("make_kind_names", 0); - __Pyx_TraceStartFunc("make_kind_names", __pyx_f[0], 36, 0, 0, 0, __PYX_ERR(0, 36, __pyx_L1_error)); - - /* "hunter/_event.pyx":37 - * - * cdef inline PyObject** make_kind_names(list strings): - * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) # <<<<<<<<<<<<<< - * cdef object name - * for i, string in enumerate(strings): -*/ - __Pyx_TraceLine(37,9,0,__PYX_ERR(0, 37, __pyx_L1_error)) - if (unlikely(__pyx_v_strings == Py_None)) { - PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 37, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_PyList_GET_SIZE(__pyx_v_strings); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 37, __pyx_L1_error) - __pyx_t_2 = ((struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_v_6hunter_6_event_mem->__pyx_vtab)->alloc(__pyx_v_6hunter_6_event_mem, __pyx_t_1, (sizeof(PyObject *))); if (unlikely(__pyx_t_2 == ((void *)0))) __PYX_ERR(0, 37, __pyx_L1_error) - __pyx_v_array = ((PyObject **)__pyx_t_2); - - /* "hunter/_event.pyx":39 - * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) - * cdef object name - * for i, string in enumerate(strings): # <<<<<<<<<<<<<< - * name = intern(string) # TODO - * Py_XINCREF( name) -*/ - __Pyx_TraceLine(39,11,0,__PYX_ERR(0, 39, __pyx_L1_error)) - __pyx_t_1 = 0; - __pyx_t_3 = __pyx_v_strings; __Pyx_INCREF(__pyx_t_3); - __pyx_t_4 = 0; - for (;;) { - { - Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3); - #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 39, __pyx_L1_error) - #endif - if (__pyx_t_4 >= __pyx_temp) break; - } - __pyx_t_5 = __Pyx_PyList_GetItemRef(__pyx_t_3, __pyx_t_4); - ++__pyx_t_4; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 39, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_XDECREF_SET(__pyx_v_string, __pyx_t_5); - __pyx_t_5 = 0; - __Pyx_TraceLine(39,11,0,__PYX_ERR(0, 39, __pyx_L1_error)) - __pyx_v_i = __pyx_t_1; - __pyx_t_1 = (__pyx_t_1 + 1); - - /* "hunter/_event.pyx":40 - * cdef object name - * for i, string in enumerate(strings): - * name = intern(string) # TODO # <<<<<<<<<<<<<< - * Py_XINCREF( name) - * array[i] = name -*/ - __Pyx_TraceLine(40,19,0,__PYX_ERR(0, 40, __pyx_L1_error)) - __pyx_t_5 = __Pyx_Intern(__pyx_v_string); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 40, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_XDECREF_SET(__pyx_v_name, __pyx_t_5); - __pyx_t_5 = 0; - - /* "hunter/_event.pyx":41 - * for i, string in enumerate(strings): - * name = intern(string) # TODO - * Py_XINCREF( name) # <<<<<<<<<<<<<< - * array[i] = name - * return array -*/ - __Pyx_TraceLine(41,22,0,__PYX_ERR(0, 41, __pyx_L1_error)) - Py_XINCREF(((PyObject *)__pyx_v_name)); - - /* "hunter/_event.pyx":42 - * name = intern(string) # TODO - * Py_XINCREF( name) - * array[i] = name # <<<<<<<<<<<<<< - * return array - * -*/ - __Pyx_TraceLine(42,27,0,__PYX_ERR(0, 42, __pyx_L1_error)) - (__pyx_v_array[__pyx_v_i]) = ((PyObject *)__pyx_v_name); - - /* "hunter/_event.pyx":39 - * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) - * cdef object name - * for i, string in enumerate(strings): # <<<<<<<<<<<<<< - * name = intern(string) # TODO - * Py_XINCREF( name) -*/ - __Pyx_TraceLine(39,11,0,__PYX_ERR(0, 39, __pyx_L1_error)) - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "hunter/_event.pyx":43 - * Py_XINCREF( name) - * array[i] = name - * return array # <<<<<<<<<<<<<< - * - * -*/ - __Pyx_TraceLine(43,31,0,__PYX_ERR(0, 43, __pyx_L1_error)) - __pyx_r = ((PyObject **)__pyx_v_array); - __Pyx_TraceReturnValue(Py_None, 30, 0, __PYX_ERR(0, 43, __pyx_L1_error)); - goto __pyx_L0; - - /* "hunter/_event.pyx":36 - * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) - * - * cdef inline PyObject** make_kind_names(list strings): # <<<<<<<<<<<<<< - * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) - * cdef object name -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_TraceException(__pyx_lineno, 0, 0); - #if CYTHON_USE_SYS_MONITORING - __Pyx_TraceExceptionUnwind(0, 0); - #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 36, __pyx_L1_error)); - #endif - __Pyx_AddTraceback("hunter._event.make_kind_names", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_name); - __Pyx_XDECREF(__pyx_v_string); - __Pyx_PyMonitoring_ExitScope(0); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "hunter/_event.pyx":61 - * Needed for the ``calls`` and ``depth`` fields. +/* "hunter/_event.pyx":56 + * may be expected. * """ - * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, # <<<<<<<<<<<<<< - * object threading_support=MISSING): - * if tracer is None: + * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): # <<<<<<<<<<<<<< + * self.arg = arg + * self.frame = frame */ /* Python wrapper */ @@ -4078,13 +3832,12 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO FrameType __pyx_v_frame = 0; int __pyx_v_kind; PyObject *__pyx_v_arg = 0; - struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_tracer = 0; - PyObject *__pyx_v_depth = 0; - PyObject *__pyx_v_calls = 0; - PyObject *__pyx_v_threading_support = 0; + int __pyx_v_depth; + int __pyx_v_calls; + int __pyx_v_threading_support; CYTHON_UNUSED Py_ssize_t __pyx_nargs; CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[7] = {0,0,0,0,0,0,0}; + PyObject* values[6] = {0,0,0,0,0,0}; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -4098,95 +3851,69 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO #endif __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs); { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,&__pyx_mstate_global->__pyx_n_u_tracer,&__pyx_mstate_global->__pyx_n_u_depth,&__pyx_mstate_global->__pyx_n_u_calls,&__pyx_mstate_global->__pyx_n_u_threading_support,0}; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,&__pyx_mstate_global->__pyx_n_u_depth,&__pyx_mstate_global->__pyx_n_u_calls,&__pyx_mstate_global->__pyx_n_u_threading_support,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 61, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 56, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 7: - values[6] = __Pyx_ArgRef_VARARGS(__pyx_args, 6); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 61, __pyx_L3_error) - CYTHON_FALLTHROUGH; case 6: values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 61, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 56, __pyx_L3_error) CYTHON_FALLTHROUGH; case 5: values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 61, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 56, __pyx_L3_error) CYTHON_FALLTHROUGH; case 4: values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 61, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 56, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 61, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 56, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 61, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 56, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 61, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 56, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 61, __pyx_L3_error) - if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None)); - if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None)); - if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)Py_None)); - if (!values[6]) values[6] = __Pyx_NewRef(__pyx_mstate_global->__pyx_k_); - for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, i); __PYX_ERR(0, 61, __pyx_L3_error) } + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 56, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 6; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, i); __PYX_ERR(0, 56, __pyx_L3_error) } } + } else if (unlikely(__pyx_nargs != 6)) { + goto __pyx_L5_argtuple_error; } else { - switch (__pyx_nargs) { - case 7: - values[6] = __Pyx_ArgRef_VARARGS(__pyx_args, 6); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 61, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 6: - values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 61, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 5: - values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 61, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 4: - values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 61, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 3: - values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 61, __pyx_L3_error) - values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 61, __pyx_L3_error) - values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 61, __pyx_L3_error) - break; - default: goto __pyx_L5_argtuple_error; - } - if (!values[3]) values[3] = __Pyx_NewRef((PyObject *)((struct __pyx_obj_6hunter_7_tracer_Tracer *)Py_None)); - if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)Py_None)); - if (!values[5]) values[5] = __Pyx_NewRef(((PyObject *)Py_None)); - if (!values[6]) values[6] = __Pyx_NewRef(__pyx_mstate_global->__pyx_k_); + values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 56, __pyx_L3_error) + values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 56, __pyx_L3_error) + values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 56, __pyx_L3_error) + values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 56, __pyx_L3_error) + values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 56, __pyx_L3_error) + values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 56, __pyx_L3_error) } __pyx_v_frame = ((FrameType)values[0]); - __pyx_v_kind = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_kind == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) + __pyx_v_kind = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_kind == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) __pyx_v_arg = values[2]; - __pyx_v_tracer = ((struct __pyx_obj_6hunter_7_tracer_Tracer *)values[3]); - __pyx_v_depth = values[4]; - __pyx_v_calls = values[5]; - __pyx_v_threading_support = values[6]; + __pyx_v_depth = __Pyx_PyLong_As_int(values[3]); if (unlikely((__pyx_v_depth == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) + __pyx_v_calls = __Pyx_PyLong_As_int(values[4]); if (unlikely((__pyx_v_calls == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) + __pyx_v_threading_support = __Pyx_PyObject_IsTrue(values[5]); if (unlikely((__pyx_v_threading_support == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 7, __pyx_nargs); __PYX_ERR(0, 61, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 56, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4197,591 +3924,367 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tracer), __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, 1, "tracer", 0))) __PYX_ERR(0, 61, __pyx_L1_error) - __pyx_r = __pyx_pf_6hunter_6_event_5Event___init__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v_frame, __pyx_v_kind, __pyx_v_arg, __pyx_v_tracer, __pyx_v_depth, __pyx_v_calls, __pyx_v_threading_support); + __pyx_r = __pyx_pf_6hunter_6_event_5Event___init__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v_frame, __pyx_v_kind, __pyx_v_arg, __pyx_v_depth, __pyx_v_calls, __pyx_v_threading_support); /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __pyx_r = -1; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - goto __pyx_L7_cleaned_up; - __pyx_L0:; for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { Py_XDECREF(values[__pyx_temp]); } - __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, FrameType __pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg, struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_tracer, PyObject *__pyx_v_depth, PyObject *__pyx_v_calls, PyObject *__pyx_v_threading_support) { +static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, FrameType __pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg, int __pyx_v_depth, int __pyx_v_calls, int __pyx_v_threading_support) { int __pyx_r; __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - size_t __pyx_t_5; - int __pyx_t_6; + PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceStartFunc("__init__", __pyx_f[0], 61, 0, 0, 0, __PYX_ERR(0, 61, __pyx_L1_error)); - __Pyx_INCREF(__pyx_v_depth); - __Pyx_INCREF(__pyx_v_calls); - __Pyx_INCREF(__pyx_v_threading_support); - - /* "hunter/_event.pyx":63 - * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, - * object threading_support=MISSING): - * if tracer is None: # <<<<<<<<<<<<<< - * if depth is None: - * raise TypeError('Missing argument: depth (required because tracer was not given).') -*/ - __Pyx_TraceLine(63,8,0,__PYX_ERR(0, 63, __pyx_L1_error)) - __pyx_t_1 = (((PyObject *)__pyx_v_tracer) == Py_None); - if (__pyx_t_1) { - - /* "hunter/_event.pyx":64 - * object threading_support=MISSING): - * if tracer is None: - * if depth is None: # <<<<<<<<<<<<<< - * raise TypeError('Missing argument: depth (required because tracer was not given).') - * if calls is None: -*/ - __Pyx_TraceLine(64,12,0,__PYX_ERR(0, 64, __pyx_L1_error)) - __pyx_t_1 = (__pyx_v_depth == Py_None); - if (unlikely(__pyx_t_1)) { - - /* "hunter/_event.pyx":65 - * if tracer is None: - * if depth is None: - * raise TypeError('Missing argument: depth (required because tracer was not given).') # <<<<<<<<<<<<<< - * if calls is None: - * raise TypeError('Missing argument: calls (required because tracer was not given).') -*/ - __Pyx_TraceLine(65,15,0,__PYX_ERR(0, 65, __pyx_L1_error)) - __pyx_t_3 = NULL; - __Pyx_INCREF(__pyx_builtin_TypeError); - __pyx_t_4 = __pyx_builtin_TypeError; - __pyx_t_5 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_Missing_argument_depth_required}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 65, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 65, __pyx_L1_error) - - /* "hunter/_event.pyx":64 - * object threading_support=MISSING): - * if tracer is None: - * if depth is None: # <<<<<<<<<<<<<< - * raise TypeError('Missing argument: depth (required because tracer was not given).') - * if calls is None: -*/ - } - - /* "hunter/_event.pyx":66 - * if depth is None: - * raise TypeError('Missing argument: depth (required because tracer was not given).') - * if calls is None: # <<<<<<<<<<<<<< - * raise TypeError('Missing argument: calls (required because tracer was not given).') - * if threading_support is MISSING: -*/ - __Pyx_TraceLine(66,20,0,__PYX_ERR(0, 66, __pyx_L1_error)) - __pyx_t_1 = (__pyx_v_calls == Py_None); - if (unlikely(__pyx_t_1)) { - - /* "hunter/_event.pyx":67 - * raise TypeError('Missing argument: depth (required because tracer was not given).') - * if calls is None: - * raise TypeError('Missing argument: calls (required because tracer was not given).') # <<<<<<<<<<<<<< - * if threading_support is MISSING: - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') -*/ - __Pyx_TraceLine(67,23,0,__PYX_ERR(0, 67, __pyx_L1_error)) - __pyx_t_4 = NULL; - __Pyx_INCREF(__pyx_builtin_TypeError); - __pyx_t_3 = __pyx_builtin_TypeError; - __pyx_t_5 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_mstate_global->__pyx_kp_u_Missing_argument_calls_required}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 67, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 67, __pyx_L1_error) - - /* "hunter/_event.pyx":66 - * if depth is None: - * raise TypeError('Missing argument: depth (required because tracer was not given).') - * if calls is None: # <<<<<<<<<<<<<< - * raise TypeError('Missing argument: calls (required because tracer was not given).') - * if threading_support is MISSING: -*/ - } - - /* "hunter/_event.pyx":68 - * if calls is None: - * raise TypeError('Missing argument: calls (required because tracer was not given).') - * if threading_support is MISSING: # <<<<<<<<<<<<<< - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') - * else: -*/ - __Pyx_TraceLine(68,28,0,__PYX_ERR(0, 68, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 68, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = (__pyx_v_threading_support == __pyx_t_2); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(__pyx_t_1)) { - - /* "hunter/_event.pyx":69 - * raise TypeError('Missing argument: calls (required because tracer was not given).') - * if threading_support is MISSING: - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') # <<<<<<<<<<<<<< - * else: - * depth = tracer.depth -*/ - __Pyx_TraceLine(69,31,0,__PYX_ERR(0, 69, __pyx_L1_error)) - __pyx_t_3 = NULL; - __Pyx_INCREF(__pyx_builtin_TypeError); - __pyx_t_4 = __pyx_builtin_TypeError; - __pyx_t_5 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u_Missing_argument_threading_suppo}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 69, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 69, __pyx_L1_error) - - /* "hunter/_event.pyx":68 - * if calls is None: - * raise TypeError('Missing argument: calls (required because tracer was not given).') - * if threading_support is MISSING: # <<<<<<<<<<<<<< - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') - * else: -*/ - } - - /* "hunter/_event.pyx":63 - * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, - * object threading_support=MISSING): - * if tracer is None: # <<<<<<<<<<<<<< - * if depth is None: - * raise TypeError('Missing argument: depth (required because tracer was not given).') -*/ - goto __pyx_L3; - } - - /* "hunter/_event.pyx":71 - * raise TypeError('Missing argument: threading_support (required because tracer was not given).') - * else: - * depth = tracer.depth # <<<<<<<<<<<<<< - * calls = tracer.calls - * threading_support = tracer.threading_support -*/ - __Pyx_TraceLine(71,33,0,__PYX_ERR(0, 71, __pyx_L1_error)) - /*else*/ { - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_tracer->depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 71, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF_SET(__pyx_v_depth, __pyx_t_2); - __pyx_t_2 = 0; - - /* "hunter/_event.pyx":72 - * else: - * depth = tracer.depth - * calls = tracer.calls # <<<<<<<<<<<<<< - * threading_support = tracer.threading_support - * -*/ - __Pyx_TraceLine(72,38,0,__PYX_ERR(0, 72, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_tracer->calls); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF_SET(__pyx_v_calls, __pyx_t_2); - __pyx_t_2 = 0; - - /* "hunter/_event.pyx":73 - * depth = tracer.depth - * calls = tracer.calls - * threading_support = tracer.threading_support # <<<<<<<<<<<<<< - * - * self.arg = arg -*/ - __Pyx_TraceLine(73,41,0,__PYX_ERR(0, 73, __pyx_L1_error)) - __pyx_t_2 = __pyx_v_tracer->threading_support; - __Pyx_INCREF(__pyx_t_2); - __Pyx_DECREF_SET(__pyx_v_threading_support, __pyx_t_2); - __pyx_t_2 = 0; - } - __pyx_L3:; + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 56, 0, 0, 0, __PYX_ERR(0, 56, __pyx_L1_error)); - /* "hunter/_event.pyx":75 - * threading_support = tracer.threading_support - * + /* "hunter/_event.pyx":57 + * """ + * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): * self.arg = arg # <<<<<<<<<<<<<< * self.frame = frame * self.kind = KIND_NAMES[kind] */ - __Pyx_TraceLine(75,42,0,__PYX_ERR(0, 75, __pyx_L1_error)) + __Pyx_TraceLine(57,1,0,__PYX_ERR(0, 57, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_arg); __Pyx_GIVEREF(__pyx_v_arg); __Pyx_GOTREF(__pyx_v_self->arg); __Pyx_DECREF(__pyx_v_self->arg); __pyx_v_self->arg = __pyx_v_arg; - /* "hunter/_event.pyx":76 - * + /* "hunter/_event.pyx":58 + * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): * self.arg = arg * self.frame = frame # <<<<<<<<<<<<<< * self.kind = KIND_NAMES[kind] * self.depth = depth */ - __Pyx_TraceLine(76,45,0,__PYX_ERR(0, 76, __pyx_L1_error)) + __Pyx_TraceLine(58,4,0,__PYX_ERR(0, 58, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_frame); __Pyx_GIVEREF(__pyx_v_frame); __Pyx_GOTREF(__pyx_v_self->frame); __Pyx_DECREF(__pyx_v_self->frame); __pyx_v_self->frame = __pyx_v_frame; - /* "hunter/_event.pyx":77 + /* "hunter/_event.pyx":59 * self.arg = arg * self.frame = frame * self.kind = KIND_NAMES[kind] # <<<<<<<<<<<<<< * self.depth = depth * self.calls = calls */ - __Pyx_TraceLine(77,50,0,__PYX_ERR(0, 77, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)(__pyx_v_6hunter_6_event_KIND_NAMES[__pyx_v_kind])); - __Pyx_INCREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); + __Pyx_TraceLine(59,9,0,__PYX_ERR(0, 59, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)(__pyx_v_6hunter_6_event_KIND_NAMES[__pyx_v_kind])); + __Pyx_INCREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->kind); __Pyx_DECREF(__pyx_v_self->kind); - __pyx_v_self->kind = ((PyObject*)__pyx_t_2); - __pyx_t_2 = 0; + __pyx_v_self->kind = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; - /* "hunter/_event.pyx":78 + /* "hunter/_event.pyx":60 * self.frame = frame * self.kind = KIND_NAMES[kind] * self.depth = depth # <<<<<<<<<<<<<< * self.calls = calls * self.threading_support = threading_support */ - __Pyx_TraceLine(78,56,0,__PYX_ERR(0, 78, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyLong_As_int(__pyx_v_depth); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 78, __pyx_L1_error) - __pyx_v_self->depth = __pyx_t_6; + __Pyx_TraceLine(60,13,0,__PYX_ERR(0, 60, __pyx_L1_error)) + __pyx_v_self->depth = __pyx_v_depth; - /* "hunter/_event.pyx":79 + /* "hunter/_event.pyx":61 * self.kind = KIND_NAMES[kind] * self.depth = depth * self.calls = calls # <<<<<<<<<<<<<< * self.threading_support = threading_support * self.detached = False */ - __Pyx_TraceLine(79,59,0,__PYX_ERR(0, 79, __pyx_L1_error)) - __pyx_t_6 = __Pyx_PyLong_As_int(__pyx_v_calls); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 79, __pyx_L1_error) - __pyx_v_self->calls = __pyx_t_6; + __Pyx_TraceLine(61,16,0,__PYX_ERR(0, 61, __pyx_L1_error)) + __pyx_v_self->calls = __pyx_v_calls; - /* "hunter/_event.pyx":80 + /* "hunter/_event.pyx":62 * self.depth = depth * self.calls = calls * self.threading_support = threading_support # <<<<<<<<<<<<<< * self.detached = False * self.builtin = kind > 3 */ - __Pyx_TraceLine(80,62,0,__PYX_ERR(0, 80, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_threading_support); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 80, __pyx_L1_error) - __pyx_v_self->threading_support = __pyx_t_1; + __Pyx_TraceLine(62,19,0,__PYX_ERR(0, 62, __pyx_L1_error)) + __pyx_v_self->threading_support = __pyx_v_threading_support; - /* "hunter/_event.pyx":81 + /* "hunter/_event.pyx":63 * self.calls = calls * self.threading_support = threading_support * self.detached = False # <<<<<<<<<<<<<< * self.builtin = kind > 3 * */ - __Pyx_TraceLine(81,63,0,__PYX_ERR(0, 81, __pyx_L1_error)) + __Pyx_TraceLine(63,22,0,__PYX_ERR(0, 63, __pyx_L1_error)) __pyx_v_self->detached = 0; - /* "hunter/_event.pyx":82 + /* "hunter/_event.pyx":64 * self.threading_support = threading_support * self.detached = False * self.builtin = kind > 3 # <<<<<<<<<<<<<< * * self._code = UNSET */ - __Pyx_TraceLine(82,69,0,__PYX_ERR(0, 82, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyBool_FromLong((__pyx_v_kind > 3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 82, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); + __Pyx_TraceLine(64,28,0,__PYX_ERR(0, 64, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyBool_FromLong((__pyx_v_kind > 3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->builtin); __Pyx_DECREF(__pyx_v_self->builtin); - __pyx_v_self->builtin = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_v_self->builtin = __pyx_t_1; + __pyx_t_1 = 0; - /* "hunter/_event.pyx":84 + /* "hunter/_event.pyx":66 * self.builtin = kind > 3 * * self._code = UNSET # <<<<<<<<<<<<<< * self._filename = UNSET * self._fullsource = UNSET */ - __Pyx_TraceLine(84,71,0,__PYX_ERR(0, 84, __pyx_L1_error)) + __Pyx_TraceLine(66,30,0,__PYX_ERR(0, 66, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_code); __Pyx_DECREF(__pyx_v_self->_code); __pyx_v_self->_code = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":85 + /* "hunter/_event.pyx":67 * * self._code = UNSET * self._filename = UNSET # <<<<<<<<<<<<<< * self._fullsource = UNSET * self._function_object = UNSET */ - __Pyx_TraceLine(85,74,0,__PYX_ERR(0, 85, __pyx_L1_error)) + __Pyx_TraceLine(67,33,0,__PYX_ERR(0, 67, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_filename); __Pyx_DECREF(__pyx_v_self->_filename); __pyx_v_self->_filename = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":86 + /* "hunter/_event.pyx":68 * self._code = UNSET * self._filename = UNSET * self._fullsource = UNSET # <<<<<<<<<<<<<< * self._function_object = UNSET * self._function = UNSET */ - __Pyx_TraceLine(86,77,0,__PYX_ERR(0, 86, __pyx_L1_error)) + __Pyx_TraceLine(68,36,0,__PYX_ERR(0, 68, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_fullsource); __Pyx_DECREF(__pyx_v_self->_fullsource); __pyx_v_self->_fullsource = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":87 + /* "hunter/_event.pyx":69 * self._filename = UNSET * self._fullsource = UNSET * self._function_object = UNSET # <<<<<<<<<<<<<< * self._function = UNSET * self._globals = UNSET */ - __Pyx_TraceLine(87,80,0,__PYX_ERR(0, 87, __pyx_L1_error)) + __Pyx_TraceLine(69,39,0,__PYX_ERR(0, 69, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_function_object); __Pyx_DECREF(__pyx_v_self->_function_object); __pyx_v_self->_function_object = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":88 + /* "hunter/_event.pyx":70 * self._fullsource = UNSET * self._function_object = UNSET * self._function = UNSET # <<<<<<<<<<<<<< * self._globals = UNSET * self._lineno = UNSET */ - __Pyx_TraceLine(88,83,0,__PYX_ERR(0, 88, __pyx_L1_error)) + __Pyx_TraceLine(70,42,0,__PYX_ERR(0, 70, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_function); __Pyx_DECREF(__pyx_v_self->_function); __pyx_v_self->_function = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":89 + /* "hunter/_event.pyx":71 * self._function_object = UNSET * self._function = UNSET * self._globals = UNSET # <<<<<<<<<<<<<< * self._lineno = UNSET * self._locals = UNSET */ - __Pyx_TraceLine(89,86,0,__PYX_ERR(0, 89, __pyx_L1_error)) + __Pyx_TraceLine(71,45,0,__PYX_ERR(0, 71, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_globals); __Pyx_DECREF(__pyx_v_self->_globals); __pyx_v_self->_globals = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":90 + /* "hunter/_event.pyx":72 * self._function = UNSET * self._globals = UNSET * self._lineno = UNSET # <<<<<<<<<<<<<< * self._locals = UNSET * self._module = UNSET */ - __Pyx_TraceLine(90,89,0,__PYX_ERR(0, 90, __pyx_L1_error)) + __Pyx_TraceLine(72,48,0,__PYX_ERR(0, 72, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_lineno); __Pyx_DECREF(__pyx_v_self->_lineno); __pyx_v_self->_lineno = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":91 + /* "hunter/_event.pyx":73 * self._globals = UNSET * self._lineno = UNSET * self._locals = UNSET # <<<<<<<<<<<<<< * self._module = UNSET * self._source = UNSET */ - __Pyx_TraceLine(91,92,0,__PYX_ERR(0, 91, __pyx_L1_error)) + __Pyx_TraceLine(73,51,0,__PYX_ERR(0, 73, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_locals); __Pyx_DECREF(__pyx_v_self->_locals); __pyx_v_self->_locals = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":92 + /* "hunter/_event.pyx":74 * self._lineno = UNSET * self._locals = UNSET * self._module = UNSET # <<<<<<<<<<<<<< * self._source = UNSET * self._stdlib = UNSET */ - __Pyx_TraceLine(92,95,0,__PYX_ERR(0, 92, __pyx_L1_error)) + __Pyx_TraceLine(74,54,0,__PYX_ERR(0, 74, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_module); __Pyx_DECREF(__pyx_v_self->_module); __pyx_v_self->_module = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":93 + /* "hunter/_event.pyx":75 * self._locals = UNSET * self._module = UNSET * self._source = UNSET # <<<<<<<<<<<<<< * self._stdlib = UNSET * self._threadidn = UNSET */ - __Pyx_TraceLine(93,98,0,__PYX_ERR(0, 93, __pyx_L1_error)) + __Pyx_TraceLine(75,57,0,__PYX_ERR(0, 75, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_source); __Pyx_DECREF(__pyx_v_self->_source); __pyx_v_self->_source = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":94 + /* "hunter/_event.pyx":76 * self._module = UNSET * self._source = UNSET * self._stdlib = UNSET # <<<<<<<<<<<<<< * self._threadidn = UNSET * self._threadname = UNSET */ - __Pyx_TraceLine(94,101,0,__PYX_ERR(0, 94, __pyx_L1_error)) + __Pyx_TraceLine(76,60,0,__PYX_ERR(0, 76, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":95 + /* "hunter/_event.pyx":77 * self._source = UNSET * self._stdlib = UNSET * self._threadidn = UNSET # <<<<<<<<<<<<<< * self._threadname = UNSET * self._thread = UNSET */ - __Pyx_TraceLine(95,104,0,__PYX_ERR(0, 95, __pyx_L1_error)) + __Pyx_TraceLine(77,63,0,__PYX_ERR(0, 77, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_threadidn); __Pyx_DECREF(__pyx_v_self->_threadidn); __pyx_v_self->_threadidn = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":96 + /* "hunter/_event.pyx":78 * self._stdlib = UNSET * self._threadidn = UNSET * self._threadname = UNSET # <<<<<<<<<<<<<< * self._thread = UNSET * self._instruction = UNSET */ - __Pyx_TraceLine(96,107,0,__PYX_ERR(0, 96, __pyx_L1_error)) + __Pyx_TraceLine(78,66,0,__PYX_ERR(0, 78, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_threadname); __Pyx_DECREF(__pyx_v_self->_threadname); __pyx_v_self->_threadname = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":97 + /* "hunter/_event.pyx":79 * self._threadidn = UNSET * self._threadname = UNSET * self._thread = UNSET # <<<<<<<<<<<<<< * self._instruction = UNSET * */ - __Pyx_TraceLine(97,110,0,__PYX_ERR(0, 97, __pyx_L1_error)) + __Pyx_TraceLine(79,69,0,__PYX_ERR(0, 79, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_thread); __Pyx_DECREF(__pyx_v_self->_thread); __pyx_v_self->_thread = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":98 + /* "hunter/_event.pyx":80 * self._threadname = UNSET * self._thread = UNSET * self._instruction = UNSET # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(98,113,0,__PYX_ERR(0, 98, __pyx_L1_error)) + __Pyx_TraceLine(80,72,0,__PYX_ERR(0, 80, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_instruction); __Pyx_DECREF(__pyx_v_self->_instruction); __pyx_v_self->_instruction = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":61 - * Needed for the ``calls`` and ``depth`` fields. + /* "hunter/_event.pyx":56 + * may be expected. * """ - * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, # <<<<<<<<<<<<<< - * object threading_support=MISSING): - * if tracer is None: + * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): # <<<<<<<<<<<<<< + * self.arg = arg + * self.frame = frame */ /* function exit code */ __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 61, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 56, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_1); __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 61, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 56, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_XDECREF(__pyx_v_depth); - __Pyx_XDECREF(__pyx_v_calls); - __Pyx_XDECREF(__pyx_v_threading_support); __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "hunter/_event.pyx":100 +/* "hunter/_event.pyx":82 * self._instruction = UNSET * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4818,48 +4321,48 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 100, 0, 0, 0, __PYX_ERR(0, 100, __pyx_L1_error)); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 82, 0, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); - /* "hunter/_event.pyx":101 + /* "hunter/_event.pyx":83 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.kind, self.function, self.module, self.filename, self.lineno * ) */ - __Pyx_TraceLine(101,1,0,__PYX_ERR(0, 101, __pyx_L1_error)) + __Pyx_TraceLine(83,1,0,__PYX_ERR(0, 83, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_event.pyx":102 + /* "hunter/_event.pyx":84 * def __repr__(self): * return '' % ( * self.kind, self.function, self.module, self.filename, self.lineno # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(102,4,0,__PYX_ERR(0, 102, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->kind), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_TraceLine(84,4,0,__PYX_ERR(0, 84, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->kind), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_function_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_function_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_Event_kind; @@ -4872,18 +4375,18 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun __pyx_t_7[7] = __pyx_t_5; __pyx_t_7[8] = __pyx_mstate_global->__pyx_kp_u_lineno; __pyx_t_7[9] = __pyx_t_6; - __pyx_t_7[10] = __pyx_mstate_global->__pyx_kp_u__2; + __pyx_t_7[10] = __pyx_mstate_global->__pyx_kp_u_; - /* "hunter/_event.pyx":101 + /* "hunter/_event.pyx":83 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.kind, self.function, self.module, self.filename, self.lineno * ) */ - __Pyx_TraceLine(101,2,0,__PYX_ERR(0, 101, __pyx_L1_error)) + __Pyx_TraceLine(83,2,0,__PYX_ERR(0, 83, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyUnicode_Join(__pyx_t_7, 11, 12 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 10 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 8 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 101, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -4892,10 +4395,10 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 101, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 83, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":100 + /* "hunter/_event.pyx":82 * self._instruction = UNSET * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4915,7 +4418,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 100, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4926,7 +4429,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun return __pyx_r; } -/* "hunter/_event.pyx":105 +/* "hunter/_event.pyx":87 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -4958,28 +4461,28 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 105, 0, 0, 0, __PYX_ERR(0, 105, __pyx_L1_error)); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 87, 0, 0, 0, __PYX_ERR(0, 87, __pyx_L1_error)); - /* "hunter/_event.pyx":106 + /* "hunter/_event.pyx":88 * * def __eq__(self, other): * return self is other # <<<<<<<<<<<<<< * * def detach(self, value_filter=None): */ - __Pyx_TraceLine(106,1,0,__PYX_ERR(0, 106, __pyx_L1_error)) + __Pyx_TraceLine(88,1,0,__PYX_ERR(0, 88, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = (((PyObject *)__pyx_v_self) == __pyx_v_other); - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 106, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 106, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 88, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":105 + /* "hunter/_event.pyx":87 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -4994,7 +4497,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 105, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 87, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5005,7 +4508,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte return __pyx_r; } -/* "hunter/_event.pyx":108 +/* "hunter/_event.pyx":90 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< @@ -5052,24 +4555,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_value_filter,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 108, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 90, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 108, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "detach", 0) < 0) __PYX_ERR(0, 108, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "detach", 0) < 0) __PYX_ERR(0, 90, __pyx_L3_error) if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); } else { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 108, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; @@ -5080,7 +4583,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("detach", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 108, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("detach", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 90, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5109,27 +4612,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) __Pyx_RefNannySetupContext("detach", 0); - __Pyx_TraceStartFunc("detach", __pyx_f[0], 108, 0, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); + __Pyx_TraceStartFunc("detach", __pyx_f[0], 90, 0, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); - /* "hunter/_event.pyx":109 + /* "hunter/_event.pyx":91 * * def detach(self, value_filter=None): * return fast_detach(self, value_filter) # <<<<<<<<<<<<<< * * def clone(self): */ - __Pyx_TraceLine(109,2,0,__PYX_ERR(0, 109, __pyx_L1_error)) + __Pyx_TraceLine(91,2,0,__PYX_ERR(0, 91, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_self, __pyx_v_value_filter)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 109, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_self, __pyx_v_value_filter)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 2, 0, __PYX_ERR(0, 109, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 2, 0, __PYX_ERR(0, 91, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":108 + /* "hunter/_event.pyx":90 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< @@ -5144,7 +4647,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5155,7 +4658,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte return __pyx_r; } -/* "hunter/_event.pyx":111 +/* "hunter/_event.pyx":93 * return fast_detach(self, value_filter) * * def clone(self): # <<<<<<<<<<<<<< @@ -5213,27 +4716,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) __Pyx_RefNannySetupContext("clone", 0); - __Pyx_TraceStartFunc("clone", __pyx_f[0], 111, 0, 0, 0, __PYX_ERR(0, 111, __pyx_L1_error)); + __Pyx_TraceStartFunc("clone", __pyx_f[0], 93, 0, 0, 0, __PYX_ERR(0, 93, __pyx_L1_error)); - /* "hunter/_event.pyx":112 + /* "hunter/_event.pyx":94 * * def clone(self): * return fast_clone(self) # <<<<<<<<<<<<<< * * cdef inline instruction_getter(self): */ - __Pyx_TraceLine(112,1,0,__PYX_ERR(0, 112, __pyx_L1_error)) + __Pyx_TraceLine(94,1,0,__PYX_ERR(0, 94, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 112, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 112, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 94, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":111 + /* "hunter/_event.pyx":93 * return fast_detach(self, value_filter) * * def clone(self): # <<<<<<<<<<<<<< @@ -5248,7 +4751,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 111, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 93, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.clone", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5259,7 +4762,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter return __pyx_r; } -/* "hunter/_event.pyx":114 +/* "hunter/_event.pyx":96 * return fast_clone(self) * * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< @@ -5280,56 +4783,59 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) __Pyx_RefNannySetupContext("instruction_getter", 0); - __Pyx_TraceStartFunc("instruction_getter", __pyx_f[0], 114, 0, 0, 0, __PYX_ERR(0, 114, __pyx_L1_error)); + __Pyx_TraceStartFunc("instruction_getter", __pyx_f[0], 96, 0, 0, 0, __PYX_ERR(0, 96, __pyx_L1_error)); - /* "hunter/_event.pyx":117 + /* "hunter/_event.pyx":99 * cdef int position * * if self._instruction is UNSET: # <<<<<<<<<<<<<< - * position = PyFrame_GetLasti( self.frame) + * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) */ - __Pyx_TraceLine(117,5,0,__PYX_ERR(0, 117, __pyx_L1_error)) + __Pyx_TraceLine(99,5,0,__PYX_ERR(0, 99, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_instruction == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":118 + /* "hunter/_event.pyx":100 * * if self._instruction is UNSET: - * position = PyFrame_GetLasti( self.frame) # <<<<<<<<<<<<<< + * position = Hunter_PyFrame_GetLasti(self.frame) # <<<<<<<<<<<<<< * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: */ - __Pyx_TraceLine(118,8,0,__PYX_ERR(0, 118, __pyx_L1_error)) - __pyx_v_position = PyFrame_GetLasti(((PyFrameObject *)__pyx_v_self->frame)); + __Pyx_TraceLine(100,10,0,__PYX_ERR(0, 100, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); + __Pyx_INCREF(__pyx_t_2); + __pyx_v_position = Hunter_PyFrame_GetLasti(((FrameType)__pyx_t_2)); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":119 + /* "hunter/_event.pyx":101 * if self._instruction is UNSET: - * position = PyFrame_GetLasti( self.frame) + * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) # <<<<<<<<<<<<<< * if co_code and position >= 0: * self._instruction = co_code[position] */ - __Pyx_TraceLine(119,17,0,__PYX_ERR(0, 119, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 119, __pyx_L1_error) + __Pyx_TraceLine(101,16,0,__PYX_ERR(0, 101, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyCode_GetCode(((PyCodeObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 119, __pyx_L1_error) + __pyx_t_3 = PyCode_GetCode(((PyCodeObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_co_code = __pyx_t_3; __pyx_t_3 = 0; - /* "hunter/_event.pyx":120 - * position = PyFrame_GetLasti( self.frame) + /* "hunter/_event.pyx":102 + * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] * else: */ - __Pyx_TraceLine(120,19,0,__PYX_ERR(0, 120, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_co_code); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 120, __pyx_L1_error) + __Pyx_TraceLine(102,18,0,__PYX_ERR(0, 102, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_co_code); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 102, __pyx_L1_error) if (__pyx_t_4) { } else { __pyx_t_1 = __pyx_t_4; @@ -5340,15 +4846,15 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":121 + /* "hunter/_event.pyx":103 * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: * self._instruction = co_code[position] # <<<<<<<<<<<<<< * else: * self._instruction = None */ - __Pyx_TraceLine(121,27,0,__PYX_ERR(0, 121, __pyx_L1_error)) - __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 121, __pyx_L1_error) + __Pyx_TraceLine(103,26,0,__PYX_ERR(0, 103, __pyx_L1_error)) + __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_instruction); @@ -5356,8 +4862,8 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_v_self->_instruction = __pyx_t_3; __pyx_t_3 = 0; - /* "hunter/_event.pyx":120 - * position = PyFrame_GetLasti( self.frame) + /* "hunter/_event.pyx":102 + * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) * if co_code and position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] @@ -5366,14 +4872,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ goto __pyx_L4; } - /* "hunter/_event.pyx":123 + /* "hunter/_event.pyx":105 * self._instruction = co_code[position] * else: * self._instruction = None # <<<<<<<<<<<<<< * return self._instruction * */ - __Pyx_TraceLine(123,31,0,__PYX_ERR(0, 123, __pyx_L1_error)) + __Pyx_TraceLine(105,30,0,__PYX_ERR(0, 105, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); @@ -5383,30 +4889,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ } __pyx_L4:; - /* "hunter/_event.pyx":117 + /* "hunter/_event.pyx":99 * cdef int position * * if self._instruction is UNSET: # <<<<<<<<<<<<<< - * position = PyFrame_GetLasti( self.frame) + * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) */ } - /* "hunter/_event.pyx":124 + /* "hunter/_event.pyx":106 * else: * self._instruction = None * return self._instruction # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(124,32,0,__PYX_ERR(0, 124, __pyx_L1_error)) + __Pyx_TraceLine(106,31,0,__PYX_ERR(0, 106, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_instruction); __pyx_r = __pyx_v_self->_instruction; - __Pyx_TraceReturnValue(__pyx_r, 32, 0, __PYX_ERR(0, 124, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 31, 0, __PYX_ERR(0, 106, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":114 + /* "hunter/_event.pyx":96 * return fast_clone(self) * * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< @@ -5422,7 +4928,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 114, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 96, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.instruction_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5434,7 +4940,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":126 +/* "hunter/_event.pyx":108 * return self._instruction * * @property # <<<<<<<<<<<<<< @@ -5465,27 +4971,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 126, 0, 0, 0, __PYX_ERR(0, 126, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 108, 0, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); - /* "hunter/_event.pyx":128 + /* "hunter/_event.pyx":110 * @property * def instruction(self): * return self.instruction_getter() # <<<<<<<<<<<<<< * * cdef inline threadid_getter(self): */ - __Pyx_TraceLine(128,1,0,__PYX_ERR(0, 128, __pyx_L1_error)) + __Pyx_TraceLine(110,1,0,__PYX_ERR(0, 110, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 128, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 128, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 110, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":126 + /* "hunter/_event.pyx":108 * return self._instruction * * @property # <<<<<<<<<<<<<< @@ -5500,7 +5006,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 126, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.instruction.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5511,7 +5017,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ return __pyx_r; } -/* "hunter/_event.pyx":130 +/* "hunter/_event.pyx":112 * return self.instruction_getter() * * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< @@ -5534,41 +5040,41 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) __Pyx_RefNannySetupContext("threadid_getter", 0); - __Pyx_TraceStartFunc("threadid_getter", __pyx_f[0], 130, 0, 0, 0, __PYX_ERR(0, 130, __pyx_L1_error)); + __Pyx_TraceStartFunc("threadid_getter", __pyx_f[0], 112, 0, 0, 0, __PYX_ERR(0, 112, __pyx_L1_error)); - /* "hunter/_event.pyx":133 + /* "hunter/_event.pyx":115 * cdef long current * * if self._threadidn is UNSET: # <<<<<<<<<<<<<< * current = PyThread_get_thread_ident() * main = get_main_thread() */ - __Pyx_TraceLine(133,5,0,__PYX_ERR(0, 133, __pyx_L1_error)) + __Pyx_TraceLine(115,5,0,__PYX_ERR(0, 115, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_threadidn == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":134 + /* "hunter/_event.pyx":116 * * if self._threadidn is UNSET: * current = PyThread_get_thread_ident() # <<<<<<<<<<<<<< * main = get_main_thread() * if main is not None and current == main.ident: */ - __Pyx_TraceLine(134,8,0,__PYX_ERR(0, 134, __pyx_L1_error)) + __Pyx_TraceLine(116,8,0,__PYX_ERR(0, 116, __pyx_L1_error)) __pyx_v_current = PyThread_get_thread_ident(); - /* "hunter/_event.pyx":135 + /* "hunter/_event.pyx":117 * if self._threadidn is UNSET: * current = PyThread_get_thread_ident() * main = get_main_thread() # <<<<<<<<<<<<<< * if main is not None and current == main.ident: * self._threadidn = None */ - __Pyx_TraceLine(135,11,0,__PYX_ERR(0, 135, __pyx_L1_error)) + __Pyx_TraceLine(117,11,0,__PYX_ERR(0, 117, __pyx_L1_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 135, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -5587,54 +5093,54 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 135, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_main = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":136 + /* "hunter/_event.pyx":118 * current = PyThread_get_thread_ident() * main = get_main_thread() * if main is not None and current == main.ident: # <<<<<<<<<<<<<< * self._threadidn = None * else: */ - __Pyx_TraceLine(136,15,0,__PYX_ERR(0, 136, __pyx_L1_error)) + __Pyx_TraceLine(118,15,0,__PYX_ERR(0, 118, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_main != Py_None); if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main, __pyx_mstate_global->__pyx_n_u_ident); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main, __pyx_mstate_global->__pyx_n_u_ident); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __pyx_t_6; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":137 + /* "hunter/_event.pyx":119 * main = get_main_thread() * if main is not None and current == main.ident: * self._threadidn = None # <<<<<<<<<<<<<< * else: * self._threadidn = current */ - __Pyx_TraceLine(137,21,0,__PYX_ERR(0, 137, __pyx_L1_error)) + __Pyx_TraceLine(119,21,0,__PYX_ERR(0, 119, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threadidn); __Pyx_DECREF(__pyx_v_self->_threadidn); __pyx_v_self->_threadidn = Py_None; - /* "hunter/_event.pyx":136 + /* "hunter/_event.pyx":118 * current = PyThread_get_thread_ident() * main = get_main_thread() * if main is not None and current == main.ident: # <<<<<<<<<<<<<< @@ -5644,16 +5150,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj goto __pyx_L4; } - /* "hunter/_event.pyx":139 + /* "hunter/_event.pyx":121 * self._threadidn = None * else: * self._threadidn = current # <<<<<<<<<<<<<< * return self._threadidn * */ - __Pyx_TraceLine(139,26,0,__PYX_ERR(0, 139, __pyx_L1_error)) + __Pyx_TraceLine(121,26,0,__PYX_ERR(0, 121, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 139, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_threadidn); @@ -5663,7 +5169,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj } __pyx_L4:; - /* "hunter/_event.pyx":133 + /* "hunter/_event.pyx":115 * cdef long current * * if self._threadidn is UNSET: # <<<<<<<<<<<<<< @@ -5672,21 +5178,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":140 + /* "hunter/_event.pyx":122 * else: * self._threadidn = current * return self._threadidn # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(140,27,0,__PYX_ERR(0, 140, __pyx_L1_error)) + __Pyx_TraceLine(122,27,0,__PYX_ERR(0, 122, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threadidn); __pyx_r = __pyx_v_self->_threadidn; - __Pyx_TraceReturnValue(__pyx_r, 27, 0, __PYX_ERR(0, 140, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 27, 0, __PYX_ERR(0, 122, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":130 + /* "hunter/_event.pyx":112 * return self.instruction_getter() * * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< @@ -5703,7 +5209,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 130, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 112, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadid_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5715,7 +5221,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":142 +/* "hunter/_event.pyx":124 * return self._threadidn * * @property # <<<<<<<<<<<<<< @@ -5746,27 +5252,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 142, 0, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 124, 0, 0, 0, __PYX_ERR(0, 124, __pyx_L1_error)); - /* "hunter/_event.pyx":144 + /* "hunter/_event.pyx":126 * @property * def threadid(self): * return self.threadid_getter() # <<<<<<<<<<<<<< * * cdef inline threadname_getter(self): */ - __Pyx_TraceLine(144,1,0,__PYX_ERR(0, 144, __pyx_L1_error)) + __Pyx_TraceLine(126,1,0,__PYX_ERR(0, 126, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 144, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 126, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 144, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 126, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":142 + /* "hunter/_event.pyx":124 * return self._threadidn * * @property # <<<<<<<<<<<<<< @@ -5781,7 +5287,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 124, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadid.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5792,7 +5298,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":146 +/* "hunter/_event.pyx":128 * return self.threadid_getter() * * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< @@ -5812,42 +5318,42 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) __Pyx_RefNannySetupContext("threadname_getter", 0); - __Pyx_TraceStartFunc("threadname_getter", __pyx_f[0], 146, 0, 0, 0, __PYX_ERR(0, 146, __pyx_L1_error)); + __Pyx_TraceStartFunc("threadname_getter", __pyx_f[0], 128, 0, 0, 0, __PYX_ERR(0, 128, __pyx_L1_error)); - /* "hunter/_event.pyx":147 + /* "hunter/_event.pyx":129 * * cdef inline threadname_getter(self): * if self._threadname is UNSET: # <<<<<<<<<<<<<< * if self._thread is UNSET: * self._thread = current_thread() */ - __Pyx_TraceLine(147,5,0,__PYX_ERR(0, 147, __pyx_L1_error)) + __Pyx_TraceLine(129,5,0,__PYX_ERR(0, 129, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_threadname == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":148 + /* "hunter/_event.pyx":130 * cdef inline threadname_getter(self): * if self._threadname is UNSET: * if self._thread is UNSET: # <<<<<<<<<<<<<< * self._thread = current_thread() * self._threadname = self._thread.name */ - __Pyx_TraceLine(148,10,0,__PYX_ERR(0, 148, __pyx_L1_error)) + __Pyx_TraceLine(130,10,0,__PYX_ERR(0, 130, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_thread == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":149 + /* "hunter/_event.pyx":131 * if self._threadname is UNSET: * if self._thread is UNSET: * self._thread = current_thread() # <<<<<<<<<<<<<< * self._threadname = self._thread.name * return self._threadname */ - __Pyx_TraceLine(149,14,0,__PYX_ERR(0, 149, __pyx_L1_error)) + __Pyx_TraceLine(131,14,0,__PYX_ERR(0, 131, __pyx_L1_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 149, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -5866,7 +5372,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 149, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_GIVEREF(__pyx_t_2); @@ -5875,7 +5381,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_v_self->_thread = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":148 + /* "hunter/_event.pyx":130 * cdef inline threadname_getter(self): * if self._threadname is UNSET: * if self._thread is UNSET: # <<<<<<<<<<<<<< @@ -5884,15 +5390,15 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":150 + /* "hunter/_event.pyx":132 * if self._thread is UNSET: * self._thread = current_thread() * self._threadname = self._thread.name # <<<<<<<<<<<<<< * return self._threadname * */ - __Pyx_TraceLine(150,19,0,__PYX_ERR(0, 150, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->_thread, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 150, __pyx_L1_error) + __Pyx_TraceLine(132,19,0,__PYX_ERR(0, 132, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->_thread, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_threadname); @@ -5900,7 +5406,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_v_self->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":147 + /* "hunter/_event.pyx":129 * * cdef inline threadname_getter(self): * if self._threadname is UNSET: # <<<<<<<<<<<<<< @@ -5909,21 +5415,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":151 + /* "hunter/_event.pyx":133 * self._thread = current_thread() * self._threadname = self._thread.name * return self._threadname # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(151,20,0,__PYX_ERR(0, 151, __pyx_L1_error)) + __Pyx_TraceLine(133,20,0,__PYX_ERR(0, 133, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threadname); __pyx_r = __pyx_v_self->_threadname; - __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 151, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 133, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":146 + /* "hunter/_event.pyx":128 * return self.threadid_getter() * * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< @@ -5940,7 +5446,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 146, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 128, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadname_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5951,7 +5457,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o return __pyx_r; } -/* "hunter/_event.pyx":153 +/* "hunter/_event.pyx":135 * return self._threadname * * @property # <<<<<<<<<<<<<< @@ -5982,27 +5488,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 153, 0, 0, 0, __PYX_ERR(0, 153, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 135, 0, 0, 0, __PYX_ERR(0, 135, __pyx_L1_error)); - /* "hunter/_event.pyx":155 + /* "hunter/_event.pyx":137 * @property * def threadname(self): * return self.threadname_getter() # <<<<<<<<<<<<<< * * cdef inline locals_getter(self): */ - __Pyx_TraceLine(155,1,0,__PYX_ERR(0, 155, __pyx_L1_error)) + __Pyx_TraceLine(137,1,0,__PYX_ERR(0, 137, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 155, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 155, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 137, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":153 + /* "hunter/_event.pyx":135 * return self._threadname * * @property # <<<<<<<<<<<<<< @@ -6017,7 +5523,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 153, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 135, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadname.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6028,7 +5534,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p return __pyx_r; } -/* "hunter/_event.pyx":157 +/* "hunter/_event.pyx":139 * return self.threadname_getter() * * cdef inline locals_getter(self): # <<<<<<<<<<<<<< @@ -6042,44 +5548,45 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) __Pyx_RefNannySetupContext("locals_getter", 0); - __Pyx_TraceStartFunc("locals_getter", __pyx_f[0], 157, 0, 0, 0, __PYX_ERR(0, 157, __pyx_L1_error)); + __Pyx_TraceStartFunc("locals_getter", __pyx_f[0], 139, 0, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); - /* "hunter/_event.pyx":158 + /* "hunter/_event.pyx":140 * * cdef inline locals_getter(self): * if self._locals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} */ - __Pyx_TraceLine(158,5,0,__PYX_ERR(0, 158, __pyx_L1_error)) + __Pyx_TraceLine(140,5,0,__PYX_ERR(0, 140, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_locals == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":159 + /* "hunter/_event.pyx":141 * cdef inline locals_getter(self): * if self._locals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: */ - __Pyx_TraceLine(159,8,0,__PYX_ERR(0, 159, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 159, __pyx_L1_error) + __Pyx_TraceLine(141,8,0,__PYX_ERR(0, 141, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 141, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":160 + /* "hunter/_event.pyx":142 * if self._locals is UNSET: * if self.builtin: * self._locals = {} # <<<<<<<<<<<<<< * else: - * self._locals = PyFrame_GetLocals( self.frame) + * self._locals = Hunter_PyFrame_GetLocals(self.frame) */ - __Pyx_TraceLine(160,11,0,__PYX_ERR(0, 160, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 160, __pyx_L1_error) + __Pyx_TraceLine(142,11,0,__PYX_ERR(0, 142, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_locals); @@ -6087,7 +5594,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 __pyx_v_self->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":159 + /* "hunter/_event.pyx":141 * cdef inline locals_getter(self): * if self._locals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -6097,26 +5604,29 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":162 + /* "hunter/_event.pyx":144 * self._locals = {} * else: - * self._locals = PyFrame_GetLocals( self.frame) # <<<<<<<<<<<<<< + * self._locals = Hunter_PyFrame_GetLocals(self.frame) # <<<<<<<<<<<<<< * return self._locals * */ - __Pyx_TraceLine(162,15,0,__PYX_ERR(0, 162, __pyx_L1_error)) + __Pyx_TraceLine(144,15,0,__PYX_ERR(0, 144, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = PyFrame_GetLocals(((PyFrameObject *)__pyx_v_self->frame)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 162, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); + __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); + __Pyx_INCREF(__pyx_t_2); + __pyx_t_3 = Hunter_PyFrame_GetLocals(((FrameType)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_locals); __Pyx_DECREF(__pyx_v_self->_locals); - __pyx_v_self->_locals = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_v_self->_locals = __pyx_t_3; + __pyx_t_3 = 0; } __pyx_L4:; - /* "hunter/_event.pyx":158 + /* "hunter/_event.pyx":140 * * cdef inline locals_getter(self): * if self._locals is UNSET: # <<<<<<<<<<<<<< @@ -6125,21 +5635,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":163 + /* "hunter/_event.pyx":145 * else: - * self._locals = PyFrame_GetLocals( self.frame) + * self._locals = Hunter_PyFrame_GetLocals(self.frame) * return self._locals # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(163,19,0,__PYX_ERR(0, 163, __pyx_L1_error)) + __Pyx_TraceLine(145,18,0,__PYX_ERR(0, 145, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_locals); __pyx_r = __pyx_v_self->_locals; - __Pyx_TraceReturnValue(__pyx_r, 19, 0, __PYX_ERR(0, 163, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 145, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":157 + /* "hunter/_event.pyx":139 * return self.threadname_getter() * * cdef inline locals_getter(self): # <<<<<<<<<<<<<< @@ -6150,11 +5660,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 157, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.locals_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -6165,7 +5676,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":165 +/* "hunter/_event.pyx":147 * return self._locals * * @property # <<<<<<<<<<<<<< @@ -6196,27 +5707,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 165, 0, 0, 0, __PYX_ERR(0, 165, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 147, 0, 0, 0, __PYX_ERR(0, 147, __pyx_L1_error)); - /* "hunter/_event.pyx":167 + /* "hunter/_event.pyx":149 * @property * def locals(self): * return self.locals_getter() # <<<<<<<<<<<<<< * * cdef inline globals_getter(self): */ - __Pyx_TraceLine(167,1,0,__PYX_ERR(0, 167, __pyx_L1_error)) + __Pyx_TraceLine(149,1,0,__PYX_ERR(0, 149, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_locals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 167, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_locals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 167, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 149, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":165 + /* "hunter/_event.pyx":147 * return self._locals * * @property # <<<<<<<<<<<<<< @@ -6231,7 +5742,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 165, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 147, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.locals.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6242,7 +5753,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":169 +/* "hunter/_event.pyx":151 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< @@ -6256,44 +5767,45 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) __Pyx_RefNannySetupContext("globals_getter", 0); - __Pyx_TraceStartFunc("globals_getter", __pyx_f[0], 169, 0, 0, 0, __PYX_ERR(0, 169, __pyx_L1_error)); + __Pyx_TraceStartFunc("globals_getter", __pyx_f[0], 151, 0, 0, 0, __PYX_ERR(0, 151, __pyx_L1_error)); - /* "hunter/_event.pyx":170 + /* "hunter/_event.pyx":152 * * cdef inline globals_getter(self): * if self._globals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} */ - __Pyx_TraceLine(170,5,0,__PYX_ERR(0, 170, __pyx_L1_error)) + __Pyx_TraceLine(152,5,0,__PYX_ERR(0, 152, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_globals == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":171 + /* "hunter/_event.pyx":153 * cdef inline globals_getter(self): * if self._globals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: */ - __Pyx_TraceLine(171,8,0,__PYX_ERR(0, 171, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 171, __pyx_L1_error) + __Pyx_TraceLine(153,8,0,__PYX_ERR(0, 153, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 153, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":172 + /* "hunter/_event.pyx":154 * if self._globals is UNSET: * if self.builtin: * self._locals = {} # <<<<<<<<<<<<<< * else: - * self._globals = PyFrame_GetGlobals( self.frame) + * self._globals = Hunter_PyFrame_GetGlobals(self.frame) */ - __Pyx_TraceLine(172,11,0,__PYX_ERR(0, 172, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 172, __pyx_L1_error) + __Pyx_TraceLine(154,11,0,__PYX_ERR(0, 154, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_locals); @@ -6301,7 +5813,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ __pyx_v_self->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":171 + /* "hunter/_event.pyx":153 * cdef inline globals_getter(self): * if self._globals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -6311,26 +5823,29 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ goto __pyx_L4; } - /* "hunter/_event.pyx":174 + /* "hunter/_event.pyx":156 * self._locals = {} * else: - * self._globals = PyFrame_GetGlobals( self.frame) # <<<<<<<<<<<<<< + * self._globals = Hunter_PyFrame_GetGlobals(self.frame) # <<<<<<<<<<<<<< * return self._globals * */ - __Pyx_TraceLine(174,15,0,__PYX_ERR(0, 174, __pyx_L1_error)) + __Pyx_TraceLine(156,15,0,__PYX_ERR(0, 156, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = PyFrame_GetGlobals(((PyFrameObject *)__pyx_v_self->frame)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 174, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); + __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); + __Pyx_INCREF(__pyx_t_2); + __pyx_t_3 = Hunter_PyFrame_GetGlobals(((FrameType)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 156, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_globals); __Pyx_DECREF(__pyx_v_self->_globals); - __pyx_v_self->_globals = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_v_self->_globals = __pyx_t_3; + __pyx_t_3 = 0; } __pyx_L4:; - /* "hunter/_event.pyx":170 + /* "hunter/_event.pyx":152 * * cdef inline globals_getter(self): * if self._globals is UNSET: # <<<<<<<<<<<<<< @@ -6339,21 +5854,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ */ } - /* "hunter/_event.pyx":175 + /* "hunter/_event.pyx":157 * else: - * self._globals = PyFrame_GetGlobals( self.frame) + * self._globals = Hunter_PyFrame_GetGlobals(self.frame) * return self._globals # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(175,19,0,__PYX_ERR(0, 175, __pyx_L1_error)) + __Pyx_TraceLine(157,18,0,__PYX_ERR(0, 157, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_globals); __pyx_r = __pyx_v_self->_globals; - __Pyx_TraceReturnValue(__pyx_r, 19, 0, __PYX_ERR(0, 175, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 157, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":169 + /* "hunter/_event.pyx":151 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< @@ -6364,11 +5879,12 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 169, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 151, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.globals_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -6379,7 +5895,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pyx":177 +/* "hunter/_event.pyx":159 * return self._globals * * @property # <<<<<<<<<<<<<< @@ -6410,27 +5926,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 177, 0, 0, 0, __PYX_ERR(0, 177, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 159, 0, 0, 0, __PYX_ERR(0, 159, __pyx_L1_error)); - /* "hunter/_event.pyx":179 + /* "hunter/_event.pyx":161 * @property * def globals(self): * return self.globals_getter() # <<<<<<<<<<<<<< * * cdef inline function_getter(self): */ - __Pyx_TraceLine(179,1,0,__PYX_ERR(0, 179, __pyx_L1_error)) + __Pyx_TraceLine(161,1,0,__PYX_ERR(0, 161, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_globals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 179, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_globals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 179, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 161, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":177 + /* "hunter/_event.pyx":159 * return self._globals * * @property # <<<<<<<<<<<<<< @@ -6445,7 +5961,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 177, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 159, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.globals.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6456,7 +5972,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_event.pyx":181 +/* "hunter/_event.pyx":163 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< @@ -6474,41 +5990,41 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) __Pyx_RefNannySetupContext("function_getter", 0); - __Pyx_TraceStartFunc("function_getter", __pyx_f[0], 181, 0, 0, 0, __PYX_ERR(0, 181, __pyx_L1_error)); + __Pyx_TraceStartFunc("function_getter", __pyx_f[0], 163, 0, 0, 0, __PYX_ERR(0, 163, __pyx_L1_error)); - /* "hunter/_event.pyx":182 + /* "hunter/_event.pyx":164 * * cdef inline function_getter(self): * if self._function is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._function = self.arg.__name__ */ - __Pyx_TraceLine(182,5,0,__PYX_ERR(0, 182, __pyx_L1_error)) + __Pyx_TraceLine(164,5,0,__PYX_ERR(0, 164, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_function == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":183 + /* "hunter/_event.pyx":165 * cdef inline function_getter(self): * if self._function is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._function = self.arg.__name__ * else: */ - __Pyx_TraceLine(183,8,0,__PYX_ERR(0, 183, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 183, __pyx_L1_error) + __Pyx_TraceLine(165,8,0,__PYX_ERR(0, 165, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 165, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":184 + /* "hunter/_event.pyx":166 * if self._function is UNSET: * if self.builtin: * self._function = self.arg.__name__ # <<<<<<<<<<<<<< * else: * self._function = self.code_getter().co_name */ - __Pyx_TraceLine(184,13,0,__PYX_ERR(0, 184, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_name_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 184, __pyx_L1_error) + __Pyx_TraceLine(166,13,0,__PYX_ERR(0, 166, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_name_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 166, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_function); @@ -6516,7 +6032,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj __pyx_v_self->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":183 + /* "hunter/_event.pyx":165 * cdef inline function_getter(self): * if self._function is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -6526,16 +6042,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj goto __pyx_L4; } - /* "hunter/_event.pyx":186 + /* "hunter/_event.pyx":168 * self._function = self.arg.__name__ * else: * self._function = self.code_getter().co_name # <<<<<<<<<<<<<< * return self._function * */ - __Pyx_TraceLine(186,19,0,__PYX_ERR(0, 186, __pyx_L1_error)) + __Pyx_TraceLine(168,19,0,__PYX_ERR(0, 168, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 186, __pyx_L1_error) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 168, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = ((PyCodeObject *)__pyx_t_2)->co_name; __Pyx_INCREF(__pyx_t_3); @@ -6548,7 +6064,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj } __pyx_L4:; - /* "hunter/_event.pyx":182 + /* "hunter/_event.pyx":164 * * cdef inline function_getter(self): * if self._function is UNSET: # <<<<<<<<<<<<<< @@ -6557,21 +6073,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":187 + /* "hunter/_event.pyx":169 * else: * self._function = self.code_getter().co_name * return self._function # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(187,20,0,__PYX_ERR(0, 187, __pyx_L1_error)) + __Pyx_TraceLine(169,20,0,__PYX_ERR(0, 169, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_function); __pyx_r = __pyx_v_self->_function; - __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 187, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 169, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":181 + /* "hunter/_event.pyx":163 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< @@ -6587,7 +6103,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 181, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 163, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.function_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -6598,7 +6114,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":189 +/* "hunter/_event.pyx":171 * return self._function * * @property # <<<<<<<<<<<<<< @@ -6629,27 +6145,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 189, 0, 0, 0, __PYX_ERR(0, 189, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 171, 0, 0, 0, __PYX_ERR(0, 171, __pyx_L1_error)); - /* "hunter/_event.pyx":191 + /* "hunter/_event.pyx":173 * @property * def function(self): * return self.function_getter() # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(191,1,0,__PYX_ERR(0, 191, __pyx_L1_error)) + __Pyx_TraceLine(173,1,0,__PYX_ERR(0, 173, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 191, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 173, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":189 + /* "hunter/_event.pyx":171 * return self._function * * @property # <<<<<<<<<<<<<< @@ -6664,7 +6180,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 189, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 171, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.function.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6675,7 +6191,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":193 +/* "hunter/_event.pyx":175 * return self.function_getter() * * @property # <<<<<<<<<<<<<< @@ -6722,36 +6238,36 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 193, 0, 0, 0, __PYX_ERR(0, 193, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 175, 0, 0, 0, __PYX_ERR(0, 175, __pyx_L1_error)); - /* "hunter/_event.pyx":196 + /* "hunter/_event.pyx":178 * def function_object(self): * cdef CodeType code * if self.builtin: # <<<<<<<<<<<<<< * return self.builtin * elif self._function_object is UNSET: */ - __Pyx_TraceLine(196,3,0,__PYX_ERR(0, 196, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 196, __pyx_L1_error) + __Pyx_TraceLine(178,3,0,__PYX_ERR(0, 178, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 178, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":197 + /* "hunter/_event.pyx":179 * cdef CodeType code * if self.builtin: * return self.builtin # <<<<<<<<<<<<<< * elif self._function_object is UNSET: * code = self.code_getter() */ - __Pyx_TraceLine(197,4,0,__PYX_ERR(0, 197, __pyx_L1_error)) + __Pyx_TraceLine(179,4,0,__PYX_ERR(0, 179, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; - __Pyx_TraceReturnValue(__pyx_r, 4, 0, __PYX_ERR(0, 197, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 4, 0, __PYX_ERR(0, 179, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":196 + /* "hunter/_event.pyx":178 * def function_object(self): * cdef CodeType code * if self.builtin: # <<<<<<<<<<<<<< @@ -6760,54 +6276,54 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":198 + /* "hunter/_event.pyx":180 * if self.builtin: * return self.builtin * elif self._function_object is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * if code.co_name is None: */ - __Pyx_TraceLine(198,10,0,__PYX_ERR(0, 198, __pyx_L1_error)) + __Pyx_TraceLine(180,10,0,__PYX_ERR(0, 180, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_function_object == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":199 + /* "hunter/_event.pyx":181 * return self.builtin * elif self._function_object is UNSET: * code = self.code_getter() # <<<<<<<<<<<<<< * if code.co_name is None: * return None */ - __Pyx_TraceLine(199,14,0,__PYX_ERR(0, 199, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 199, __pyx_L1_error) + __Pyx_TraceLine(181,14,0,__PYX_ERR(0, 181, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_code = ((PyCodeObject *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":200 + /* "hunter/_event.pyx":182 * elif self._function_object is UNSET: * code = self.code_getter() * if code.co_name is None: # <<<<<<<<<<<<<< * return None * # First, try to find the function in globals */ - __Pyx_TraceLine(200,19,0,__PYX_ERR(0, 200, __pyx_L1_error)) + __Pyx_TraceLine(182,19,0,__PYX_ERR(0, 182, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_code->co_name == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":201 + /* "hunter/_event.pyx":183 * code = self.code_getter() * if code.co_name is None: * return None # <<<<<<<<<<<<<< * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) */ - __Pyx_TraceLine(201,20,0,__PYX_ERR(0, 201, __pyx_L1_error)) + __Pyx_TraceLine(183,20,0,__PYX_ERR(0, 183, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; - /* "hunter/_event.pyx":200 + /* "hunter/_event.pyx":182 * elif self._function_object is UNSET: * code = self.code_getter() * if code.co_name is None: # <<<<<<<<<<<<<< @@ -6816,15 +6332,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":203 + /* "hunter/_event.pyx":185 * return None * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) # <<<<<<<<<<<<<< * func = if_same_code(candidate, code) * # If that failed, as will be the case with class and instance methods, try */ - __Pyx_TraceLine(203,24,0,__PYX_ERR(0, 203, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 203, __pyx_L1_error) + __Pyx_TraceLine(185,24,0,__PYX_ERR(0, 185, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); @@ -6834,22 +6350,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_candidate = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":204 + /* "hunter/_event.pyx":186 * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) * func = if_same_code(candidate, code) # <<<<<<<<<<<<<< * # If that failed, as will be the case with class and instance methods, try * # to look up the function from the first argument. In the case of class/instance */ - __Pyx_TraceLine(204,32,0,__PYX_ERR(0, 204, __pyx_L1_error)) + __Pyx_TraceLine(186,32,0,__PYX_ERR(0, 186, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 204, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -6868,20 +6384,20 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 204, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_func = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":209 + /* "hunter/_event.pyx":191 * # methods, this should be the class (or an instance of the class) on which our * # method is defined. * if func is None and code.co_argcount >= 1: # <<<<<<<<<<<<<< * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) */ - __Pyx_TraceLine(209,38,0,__PYX_ERR(0, 209, __pyx_L1_error)) + __Pyx_TraceLine(191,38,0,__PYX_ERR(0, 191, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_func == Py_None); if (__pyx_t_6) { } else { @@ -6893,21 +6409,21 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_L6_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":210 + /* "hunter/_event.pyx":192 * # method is defined. * if func is None and code.co_argcount >= 1: * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) # <<<<<<<<<<<<<< * func = get_func_in_mro(first_arg, code) * # If we still can't find the function, as will be the case with static methods, */ - __Pyx_TraceLine(210,46,0,__PYX_ERR(0, 210, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 210, __pyx_L1_error) + __Pyx_TraceLine(192,46,0,__PYX_ERR(0, 192, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); - __pyx_t_7 = PyCode_GetVarnames(__pyx_v_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 210, __pyx_L1_error) + __pyx_t_7 = PyCode_GetVarnames(__pyx_v_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_GetItemInt(__pyx_t_7, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 210, __pyx_L1_error) + __pyx_t_8 = __Pyx_GetItemInt(__pyx_t_7, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = 0; @@ -6917,22 +6433,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 210, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_first_arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":211 + /* "hunter/_event.pyx":193 * if func is None and code.co_argcount >= 1: * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) # <<<<<<<<<<<<<< * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. */ - __Pyx_TraceLine(211,56,0,__PYX_ERR(0, 211, __pyx_L1_error)) + __Pyx_TraceLine(193,56,0,__PYX_ERR(0, 193, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 211, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -6951,13 +6467,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":209 + /* "hunter/_event.pyx":191 * # methods, this should be the class (or an instance of the class) on which our * # method is defined. * if func is None and code.co_argcount >= 1: # <<<<<<<<<<<<<< @@ -6966,33 +6482,33 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":214 + /* "hunter/_event.pyx":196 * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. * if func is None: # <<<<<<<<<<<<<< * for v in self.globals.values(): * if not isinstance(v, type): */ - __Pyx_TraceLine(214,62,0,__PYX_ERR(0, 214, __pyx_L1_error)) + __Pyx_TraceLine(196,62,0,__PYX_ERR(0, 196, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_func == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":215 + /* "hunter/_event.pyx":197 * # try looking at classes in global scope. * if func is None: * for v in self.globals.values(): # <<<<<<<<<<<<<< * if not isinstance(v, type): * continue */ - __Pyx_TraceLine(215,63,0,__PYX_ERR(0, 215, __pyx_L1_error)) + __Pyx_TraceLine(197,63,0,__PYX_ERR(0, 197, __pyx_L1_error)) __pyx_t_9 = 0; - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 215, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (unlikely(__pyx_t_8 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "values"); - __PYX_ERR(0, 215, __pyx_L1_error) + __PYX_ERR(0, 197, __pyx_L1_error) } - __pyx_t_4 = __Pyx_dict_iterator(__pyx_t_8, 0, __pyx_mstate_global->__pyx_n_u_values, (&__pyx_t_10), (&__pyx_t_11)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 215, __pyx_L1_error) + __pyx_t_4 = __Pyx_dict_iterator(__pyx_t_8, 0, __pyx_mstate_global->__pyx_n_u_values, (&__pyx_t_10), (&__pyx_t_11)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_2); @@ -7001,34 +6517,34 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc while (1) { __pyx_t_12 = __Pyx_dict_iter_next(__pyx_t_2, __pyx_t_10, &__pyx_t_9, NULL, &__pyx_t_4, NULL, __pyx_t_11); if (unlikely(__pyx_t_12 == 0)) break; - if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(0, 215, __pyx_L1_error) + if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_event.pyx":216 + /* "hunter/_event.pyx":198 * if func is None: * for v in self.globals.values(): * if not isinstance(v, type): # <<<<<<<<<<<<<< * continue * func = get_func_in_mro(v, code) */ - __Pyx_TraceLine(216,74,0,__PYX_ERR(0, 216, __pyx_L1_error)) + __Pyx_TraceLine(198,74,0,__PYX_ERR(0, 198, __pyx_L1_error)) __pyx_t_1 = PyType_Check(__pyx_v_v); __pyx_t_6 = (!__pyx_t_1); if (__pyx_t_6) { - /* "hunter/_event.pyx":217 + /* "hunter/_event.pyx":199 * for v in self.globals.values(): * if not isinstance(v, type): * continue # <<<<<<<<<<<<<< * func = get_func_in_mro(v, code) * if func is not None: */ - __Pyx_TraceLine(217,75,0,__PYX_ERR(0, 217, __pyx_L1_error)) + __Pyx_TraceLine(199,75,0,__PYX_ERR(0, 199, __pyx_L1_error)) goto __pyx_L9_continue; - /* "hunter/_event.pyx":216 + /* "hunter/_event.pyx":198 * if func is None: * for v in self.globals.values(): * if not isinstance(v, type): # <<<<<<<<<<<<<< @@ -7037,16 +6553,16 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":218 + /* "hunter/_event.pyx":200 * if not isinstance(v, type): * continue * func = get_func_in_mro(v, code) # <<<<<<<<<<<<<< * if func is not None: * break */ - __Pyx_TraceLine(218,78,0,__PYX_ERR(0, 218, __pyx_L1_error)) + __Pyx_TraceLine(200,78,0,__PYX_ERR(0, 200, __pyx_L1_error)) __pyx_t_8 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 218, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -7065,34 +6581,34 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 218, __pyx_L1_error) + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); } __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_event.pyx":219 + /* "hunter/_event.pyx":201 * continue * func = get_func_in_mro(v, code) * if func is not None: # <<<<<<<<<<<<<< * break * self._function_object = func */ - __Pyx_TraceLine(219,84,0,__PYX_ERR(0, 219, __pyx_L1_error)) + __Pyx_TraceLine(201,84,0,__PYX_ERR(0, 201, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_func != Py_None); if (__pyx_t_6) { - /* "hunter/_event.pyx":220 + /* "hunter/_event.pyx":202 * func = get_func_in_mro(v, code) * if func is not None: * break # <<<<<<<<<<<<<< * self._function_object = func * return self._function_object */ - __Pyx_TraceLine(220,85,0,__PYX_ERR(0, 220, __pyx_L1_error)) + __Pyx_TraceLine(202,85,0,__PYX_ERR(0, 202, __pyx_L1_error)) goto __pyx_L10_break; - /* "hunter/_event.pyx":219 + /* "hunter/_event.pyx":201 * continue * func = get_func_in_mro(v, code) * if func is not None: # <<<<<<<<<<<<<< @@ -7105,7 +6621,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_L10_break:; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":214 + /* "hunter/_event.pyx":196 * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. * if func is None: # <<<<<<<<<<<<<< @@ -7114,21 +6630,21 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":221 + /* "hunter/_event.pyx":203 * if func is not None: * break * self._function_object = func # <<<<<<<<<<<<<< * return self._function_object * */ - __Pyx_TraceLine(221,86,0,__PYX_ERR(0, 221, __pyx_L1_error)) + __Pyx_TraceLine(203,86,0,__PYX_ERR(0, 203, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_func); __Pyx_GIVEREF(__pyx_v_func); __Pyx_GOTREF(__pyx_v_self->_function_object); __Pyx_DECREF(__pyx_v_self->_function_object); __pyx_v_self->_function_object = __pyx_v_func; - /* "hunter/_event.pyx":198 + /* "hunter/_event.pyx":180 * if self.builtin: * return self.builtin * elif self._function_object is UNSET: # <<<<<<<<<<<<<< @@ -7137,21 +6653,21 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":222 + /* "hunter/_event.pyx":204 * break * self._function_object = func * return self._function_object # <<<<<<<<<<<<<< * * cdef inline module_getter(self): */ - __Pyx_TraceLine(222,89,0,__PYX_ERR(0, 222, __pyx_L1_error)) + __Pyx_TraceLine(204,89,0,__PYX_ERR(0, 204, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_function_object); __pyx_r = __pyx_v_self->_function_object; - __Pyx_TraceReturnValue(__pyx_r, 89, 0, __PYX_ERR(0, 222, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 89, 0, __PYX_ERR(0, 204, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":193 + /* "hunter/_event.pyx":175 * return self.function_getter() * * @property # <<<<<<<<<<<<<< @@ -7170,7 +6686,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 193, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 175, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.function_object.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7186,7 +6702,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc return __pyx_r; } -/* "hunter/_event.pyx":224 +/* "hunter/_event.pyx":206 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< @@ -7205,46 +6721,46 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])) __Pyx_RefNannySetupContext("module_getter", 0); - __Pyx_TraceStartFunc("module_getter", __pyx_f[0], 224, 0, 0, 0, __PYX_ERR(0, 224, __pyx_L1_error)); + __Pyx_TraceStartFunc("module_getter", __pyx_f[0], 206, 0, 0, 0, __PYX_ERR(0, 206, __pyx_L1_error)); - /* "hunter/_event.pyx":225 + /* "hunter/_event.pyx":207 * * cdef inline module_getter(self): * if self._module is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * module = self.arg.__module__ */ - __Pyx_TraceLine(225,5,0,__PYX_ERR(0, 225, __pyx_L1_error)) + __Pyx_TraceLine(207,5,0,__PYX_ERR(0, 207, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_module == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":226 + /* "hunter/_event.pyx":208 * cdef inline module_getter(self): * if self._module is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * module = self.arg.__module__ * else: */ - __Pyx_TraceLine(226,8,0,__PYX_ERR(0, 226, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 226, __pyx_L1_error) + __Pyx_TraceLine(208,8,0,__PYX_ERR(0, 208, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 208, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":227 + /* "hunter/_event.pyx":209 * if self._module is UNSET: * if self.builtin: * module = self.arg.__module__ # <<<<<<<<<<<<<< * else: * module = self.globals.get('__name__', '') */ - __Pyx_TraceLine(227,12,0,__PYX_ERR(0, 227, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_module_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 227, __pyx_L1_error) + __Pyx_TraceLine(209,12,0,__PYX_ERR(0, 209, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_module_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":226 + /* "hunter/_event.pyx":208 * cdef inline module_getter(self): * if self._module is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -7254,21 +6770,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":229 + /* "hunter/_event.pyx":211 * module = self.arg.__module__ * else: * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< * if module is None: * module = '?' */ - __Pyx_TraceLine(229,17,0,__PYX_ERR(0, 229, __pyx_L1_error)) + __Pyx_TraceLine(211,17,0,__PYX_ERR(0, 211, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 229, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_v_module = __pyx_t_2; @@ -7276,29 +6792,29 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":230 + /* "hunter/_event.pyx":212 * else: * module = self.globals.get('__name__', '') * if module is None: # <<<<<<<<<<<<<< * module = '?' * self._module = module */ - __Pyx_TraceLine(230,23,0,__PYX_ERR(0, 230, __pyx_L1_error)) + __Pyx_TraceLine(212,23,0,__PYX_ERR(0, 212, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_module == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":231 + /* "hunter/_event.pyx":213 * module = self.globals.get('__name__', '') * if module is None: * module = '?' # <<<<<<<<<<<<<< * self._module = module * return self._module */ - __Pyx_TraceLine(231,25,0,__PYX_ERR(0, 231, __pyx_L1_error)) - __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__4); - __Pyx_DECREF_SET(__pyx_v_module, __pyx_mstate_global->__pyx_kp_u__4); + __Pyx_TraceLine(213,25,0,__PYX_ERR(0, 213, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); + __Pyx_DECREF_SET(__pyx_v_module, __pyx_mstate_global->__pyx_kp_u__3); - /* "hunter/_event.pyx":230 + /* "hunter/_event.pyx":212 * else: * module = self.globals.get('__name__', '') * if module is None: # <<<<<<<<<<<<<< @@ -7307,21 +6823,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":232 + /* "hunter/_event.pyx":214 * if module is None: * module = '?' * self._module = module # <<<<<<<<<<<<<< * return self._module * */ - __Pyx_TraceLine(232,26,0,__PYX_ERR(0, 232, __pyx_L1_error)) + __Pyx_TraceLine(214,26,0,__PYX_ERR(0, 214, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_module); __Pyx_GIVEREF(__pyx_v_module); __Pyx_GOTREF(__pyx_v_self->_module); __Pyx_DECREF(__pyx_v_self->_module); __pyx_v_self->_module = __pyx_v_module; - /* "hunter/_event.pyx":225 + /* "hunter/_event.pyx":207 * * cdef inline module_getter(self): * if self._module is UNSET: # <<<<<<<<<<<<<< @@ -7330,21 +6846,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":233 + /* "hunter/_event.pyx":215 * module = '?' * self._module = module * return self._module # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(233,29,0,__PYX_ERR(0, 233, __pyx_L1_error)) + __Pyx_TraceLine(215,29,0,__PYX_ERR(0, 215, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_module); __pyx_r = __pyx_v_self->_module; - __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(0, 233, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(0, 215, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":224 + /* "hunter/_event.pyx":206 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< @@ -7360,7 +6876,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 224, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 206, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.module_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -7372,7 +6888,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":235 +/* "hunter/_event.pyx":217 * return self._module * * @property # <<<<<<<<<<<<<< @@ -7403,27 +6919,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 235, 0, 0, 0, __PYX_ERR(0, 235, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 217, 0, 0, 0, __PYX_ERR(0, 217, __pyx_L1_error)); - /* "hunter/_event.pyx":237 + /* "hunter/_event.pyx":219 * @property * def module(self): * return self.module_getter() # <<<<<<<<<<<<<< * * cdef inline filename_getter(self): */ - __Pyx_TraceLine(237,1,0,__PYX_ERR(0, 237, __pyx_L1_error)) + __Pyx_TraceLine(219,1,0,__PYX_ERR(0, 219, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 237, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 237, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 219, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":235 + /* "hunter/_event.pyx":217 * return self._module * * @property # <<<<<<<<<<<<<< @@ -7438,7 +6954,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 235, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 217, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.module.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7449,7 +6965,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":239 +/* "hunter/_event.pyx":221 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< @@ -7477,68 +6993,68 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])) __Pyx_RefNannySetupContext("filename_getter", 0); - __Pyx_TraceStartFunc("filename_getter", __pyx_f[0], 239, 0, 0, 0, __PYX_ERR(0, 239, __pyx_L1_error)); + __Pyx_TraceStartFunc("filename_getter", __pyx_f[0], 221, 0, 0, 0, __PYX_ERR(0, 221, __pyx_L1_error)); - /* "hunter/_event.pyx":241 + /* "hunter/_event.pyx":223 * cdef inline filename_getter(self): * cdef CodeType code * if self._filename is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * filename = code.co_filename */ - __Pyx_TraceLine(241,5,0,__PYX_ERR(0, 241, __pyx_L1_error)) + __Pyx_TraceLine(223,5,0,__PYX_ERR(0, 223, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_filename == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":242 + /* "hunter/_event.pyx":224 * cdef CodeType code * if self._filename is UNSET: * code = self.code_getter() # <<<<<<<<<<<<<< * filename = code.co_filename * if not filename: */ - __Pyx_TraceLine(242,9,0,__PYX_ERR(0, 242, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 242, __pyx_L1_error) + __Pyx_TraceLine(224,9,0,__PYX_ERR(0, 224, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_code = ((PyCodeObject *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":243 + /* "hunter/_event.pyx":225 * if self._filename is UNSET: * code = self.code_getter() * filename = code.co_filename # <<<<<<<<<<<<<< * if not filename: * filename = self.globals.get('__file__') */ - __Pyx_TraceLine(243,12,0,__PYX_ERR(0, 243, __pyx_L1_error)) + __Pyx_TraceLine(225,12,0,__PYX_ERR(0, 225, __pyx_L1_error)) __pyx_t_2 = __pyx_v_code->co_filename; __Pyx_INCREF(__pyx_t_2); __pyx_v_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":244 + /* "hunter/_event.pyx":226 * code = self.code_getter() * filename = code.co_filename * if not filename: # <<<<<<<<<<<<<< * filename = self.globals.get('__file__') * if not filename: */ - __Pyx_TraceLine(244,15,0,__PYX_ERR(0, 244, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 244, __pyx_L1_error) + __Pyx_TraceLine(226,15,0,__PYX_ERR(0, 226, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 226, __pyx_L1_error) __pyx_t_3 = (!__pyx_t_1); if (__pyx_t_3) { - /* "hunter/_event.pyx":245 + /* "hunter/_event.pyx":227 * filename = code.co_filename * if not filename: * filename = self.globals.get('__file__') # <<<<<<<<<<<<<< * if not filename: * filename = '?' */ - __Pyx_TraceLine(245,18,0,__PYX_ERR(0, 245, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 245, __pyx_L1_error) + __Pyx_TraceLine(227,18,0,__PYX_ERR(0, 227, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); @@ -7548,13 +7064,13 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__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, 245, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":244 + /* "hunter/_event.pyx":226 * code = self.code_getter() * filename = code.co_filename * if not filename: # <<<<<<<<<<<<<< @@ -7563,30 +7079,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":246 + /* "hunter/_event.pyx":228 * if not filename: * filename = self.globals.get('__file__') * if not filename: # <<<<<<<<<<<<<< * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): */ - __Pyx_TraceLine(246,24,0,__PYX_ERR(0, 246, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 246, __pyx_L1_error) + __Pyx_TraceLine(228,24,0,__PYX_ERR(0, 228, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 228, __pyx_L1_error) __pyx_t_1 = (!__pyx_t_3); if (__pyx_t_1) { - /* "hunter/_event.pyx":247 + /* "hunter/_event.pyx":229 * filename = self.globals.get('__file__') * if not filename: * filename = '?' # <<<<<<<<<<<<<< * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] */ - __Pyx_TraceLine(247,26,0,__PYX_ERR(0, 247, __pyx_L1_error)) - __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__4); - __Pyx_DECREF_SET(__pyx_v_filename, __pyx_mstate_global->__pyx_kp_u__4); + __Pyx_TraceLine(229,26,0,__PYX_ERR(0, 229, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); + __Pyx_DECREF_SET(__pyx_v_filename, __pyx_mstate_global->__pyx_kp_u__3); - /* "hunter/_event.pyx":246 + /* "hunter/_event.pyx":228 * if not filename: * filename = self.globals.get('__file__') * if not filename: # <<<<<<<<<<<<<< @@ -7596,14 +7112,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L5; } - /* "hunter/_event.pyx":248 + /* "hunter/_event.pyx":230 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): */ - __Pyx_TraceLine(248,27,0,__PYX_ERR(0, 248, __pyx_L1_error)) + __Pyx_TraceLine(230,27,0,__PYX_ERR(0, 230, __pyx_L1_error)) __pyx_t_5 = __pyx_v_filename; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0; @@ -7611,27 +7127,27 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_tuple[1]}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 248, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 248, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":249 + /* "hunter/_event.pyx":231 * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) */ - __Pyx_TraceLine(249,34,0,__PYX_ERR(0, 249, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_mstate_global->__pyx_slice[0], 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L1_error) + __Pyx_TraceLine(231,34,0,__PYX_ERR(0, 231, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_mstate_global->__pyx_slice[0], 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":248 + /* "hunter/_event.pyx":230 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< @@ -7641,14 +7157,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L5; } - /* "hunter/_event.pyx":250 + /* "hunter/_event.pyx":232 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ - __Pyx_TraceLine(250,36,0,__PYX_ERR(0, 250, __pyx_L1_error)) + __Pyx_TraceLine(232,36,0,__PYX_ERR(0, 232, __pyx_L1_error)) __pyx_t_5 = __pyx_v_filename; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0; @@ -7656,25 +7172,25 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_tuple[2]}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 250, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 232, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":251 + /* "hunter/_event.pyx":233 * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) # <<<<<<<<<<<<<< * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext */ - __Pyx_TraceLine(251,44,0,__PYX_ERR(0, 251, __pyx_L1_error)) + __Pyx_TraceLine(233,44,0,__PYX_ERR(0, 233, __pyx_L1_error)) __pyx_t_5 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 251, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_sub); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 251, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_sub); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_6 = 1; @@ -7690,24 +7206,24 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_mstate_global->__pyx_kp_u__3, __pyx_v_filename}; + PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_mstate_global->__pyx_kp_u__2, __pyx_v_filename}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_7, __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_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_cybasename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":252 + /* "hunter/_event.pyx":234 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): */ - __Pyx_TraceLine(252,49,0,__PYX_ERR(0, 252, __pyx_L1_error)) + __Pyx_TraceLine(234,49,0,__PYX_ERR(0, 234, __pyx_L1_error)) __pyx_t_2 = __pyx_mstate_global->__pyx_tuple[3]; __Pyx_INCREF(__pyx_t_2); __pyx_t_8 = 0; for (;;) { @@ -7718,35 +7234,35 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_7 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_8); #endif ++__pyx_t_8; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 252, __pyx_L1_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_v_ext, ((PyObject*)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_TraceLine(252,47,0,__PYX_ERR(0, 252, __pyx_L1_error)) + __Pyx_TraceLine(234,47,0,__PYX_ERR(0, 234, __pyx_L1_error)) - /* "hunter/_event.pyx":253 + /* "hunter/_event.pyx":235 * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext # <<<<<<<<<<<<<< * if exists(cyfilename): * filename = cyfilename */ - __Pyx_TraceLine(253,54,0,__PYX_ERR(0, 253, __pyx_L1_error)) - __pyx_t_7 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 253, __pyx_L1_error) + __Pyx_TraceLine(235,54,0,__PYX_ERR(0, 235, __pyx_L1_error)) + __pyx_t_7 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_v_cyfilename, __pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_event.pyx":254 + /* "hunter/_event.pyx":236 * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< * filename = cyfilename * break */ - __Pyx_TraceLine(254,58,0,__PYX_ERR(0, 254, __pyx_L1_error)) + __Pyx_TraceLine(236,58,0,__PYX_ERR(0, 236, __pyx_L1_error)) __pyx_t_5 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 254, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 236, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS @@ -7765,35 +7281,35 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__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_7)) __PYX_ERR(0, 254, __pyx_L1_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 236, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 254, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 236, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":255 + /* "hunter/_event.pyx":237 * cyfilename = cybasename + ext * if exists(cyfilename): * filename = cyfilename # <<<<<<<<<<<<<< * break * */ - __Pyx_TraceLine(255,61,0,__PYX_ERR(0, 255, __pyx_L1_error)) + __Pyx_TraceLine(237,61,0,__PYX_ERR(0, 237, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_cyfilename); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_v_cyfilename); - /* "hunter/_event.pyx":256 + /* "hunter/_event.pyx":238 * if exists(cyfilename): * filename = cyfilename * break # <<<<<<<<<<<<<< * * self._filename = filename */ - __Pyx_TraceLine(256,62,0,__PYX_ERR(0, 256, __pyx_L1_error)) + __Pyx_TraceLine(238,62,0,__PYX_ERR(0, 238, __pyx_L1_error)) goto __pyx_L7_break; - /* "hunter/_event.pyx":254 + /* "hunter/_event.pyx":236 * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< @@ -7802,14 +7318,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":252 + /* "hunter/_event.pyx":234 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): */ - __Pyx_TraceLine(252,47,0,__PYX_ERR(0, 252, __pyx_L1_error)) + __Pyx_TraceLine(234,47,0,__PYX_ERR(0, 234, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L9_for_end; @@ -7818,7 +7334,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L9_for_end; __pyx_L9_for_end:; - /* "hunter/_event.pyx":250 + /* "hunter/_event.pyx":232 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< @@ -7828,21 +7344,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj } __pyx_L5:; - /* "hunter/_event.pyx":258 + /* "hunter/_event.pyx":240 * break * * self._filename = filename # <<<<<<<<<<<<<< * return self._filename * */ - __Pyx_TraceLine(258,63,0,__PYX_ERR(0, 258, __pyx_L1_error)) + __Pyx_TraceLine(240,63,0,__PYX_ERR(0, 240, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_filename); __Pyx_GIVEREF(__pyx_v_filename); __Pyx_GOTREF(__pyx_v_self->_filename); __Pyx_DECREF(__pyx_v_self->_filename); __pyx_v_self->_filename = __pyx_v_filename; - /* "hunter/_event.pyx":241 + /* "hunter/_event.pyx":223 * cdef inline filename_getter(self): * cdef CodeType code * if self._filename is UNSET: # <<<<<<<<<<<<<< @@ -7851,21 +7367,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":259 + /* "hunter/_event.pyx":241 * * self._filename = filename * return self._filename # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(259,66,0,__PYX_ERR(0, 259, __pyx_L1_error)) + __Pyx_TraceLine(241,66,0,__PYX_ERR(0, 241, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_filename); __pyx_r = __pyx_v_self->_filename; - __Pyx_TraceReturnValue(__pyx_r, 66, 0, __PYX_ERR(0, 259, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 66, 0, __PYX_ERR(0, 241, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":239 + /* "hunter/_event.pyx":221 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< @@ -7883,7 +7399,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 239, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 221, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.filename_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -7899,7 +7415,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":261 +/* "hunter/_event.pyx":243 * return self._filename * * @property # <<<<<<<<<<<<<< @@ -7930,27 +7446,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 261, 0, 0, 0, __PYX_ERR(0, 261, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 243, 0, 0, 0, __PYX_ERR(0, 243, __pyx_L1_error)); - /* "hunter/_event.pyx":263 + /* "hunter/_event.pyx":245 * @property * def filename(self): * return self.filename_getter() # <<<<<<<<<<<<<< * * cdef inline lineno_getter(self): */ - __Pyx_TraceLine(263,1,0,__PYX_ERR(0, 263, __pyx_L1_error)) + __Pyx_TraceLine(245,1,0,__PYX_ERR(0, 245, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 263, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 263, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 245, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":261 + /* "hunter/_event.pyx":243 * return self._filename * * @property # <<<<<<<<<<<<<< @@ -7965,7 +7481,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 261, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 243, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.filename.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7976,12 +7492,12 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":265 +/* "hunter/_event.pyx":247 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber( self.frame) + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) */ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { @@ -7990,79 +7506,84 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])) __Pyx_RefNannySetupContext("lineno_getter", 0); - __Pyx_TraceStartFunc("lineno_getter", __pyx_f[0], 265, 0, 0, 0, __PYX_ERR(0, 265, __pyx_L1_error)); + __Pyx_TraceStartFunc("lineno_getter", __pyx_f[0], 247, 0, 0, 0, __PYX_ERR(0, 247, __pyx_L1_error)); - /* "hunter/_event.pyx":266 + /* "hunter/_event.pyx":248 * * cdef inline lineno_getter(self): * if self._lineno is UNSET: # <<<<<<<<<<<<<< - * self._lineno = PyFrame_GetLineNumber( self.frame) + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) * return self._lineno */ - __Pyx_TraceLine(266,5,0,__PYX_ERR(0, 266, __pyx_L1_error)) + __Pyx_TraceLine(248,5,0,__PYX_ERR(0, 248, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_lineno == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":267 + /* "hunter/_event.pyx":249 * cdef inline lineno_getter(self): * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber( self.frame) # <<<<<<<<<<<<<< + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) # <<<<<<<<<<<<<< * return self._lineno * */ - __Pyx_TraceLine(267,9,0,__PYX_ERR(0, 267, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyLong_From_int(PyFrame_GetLineNumber(((PyFrameObject *)__pyx_v_self->frame))); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 267, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); + __Pyx_TraceLine(249,11,0,__PYX_ERR(0, 249, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); + __Pyx_INCREF(__pyx_t_2); + __pyx_t_3 = __Pyx_PyLong_From_int(Hunter_PyFrame_GetLineNumber(((FrameType)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 249, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_lineno); __Pyx_DECREF(__pyx_v_self->_lineno); - __pyx_v_self->_lineno = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_v_self->_lineno = __pyx_t_3; + __pyx_t_3 = 0; - /* "hunter/_event.pyx":266 + /* "hunter/_event.pyx":248 * * cdef inline lineno_getter(self): * if self._lineno is UNSET: # <<<<<<<<<<<<<< - * self._lineno = PyFrame_GetLineNumber( self.frame) + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) * return self._lineno */ } - /* "hunter/_event.pyx":268 + /* "hunter/_event.pyx":250 * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber( self.frame) + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) * return self._lineno # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(268,13,0,__PYX_ERR(0, 268, __pyx_L1_error)) + __Pyx_TraceLine(250,12,0,__PYX_ERR(0, 250, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_lineno); __pyx_r = __pyx_v_self->_lineno; - __Pyx_TraceReturnValue(__pyx_r, 13, 0, __PYX_ERR(0, 268, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 12, 0, __PYX_ERR(0, 250, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":265 + /* "hunter/_event.pyx":247 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber( self.frame) + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) */ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 265, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 247, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.lineno_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -8073,7 +7594,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":270 +/* "hunter/_event.pyx":252 * return self._lineno * * @property # <<<<<<<<<<<<<< @@ -8104,27 +7625,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 270, 0, 0, 0, __PYX_ERR(0, 270, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 252, 0, 0, 0, __PYX_ERR(0, 252, __pyx_L1_error)); - /* "hunter/_event.pyx":272 + /* "hunter/_event.pyx":254 * @property * def lineno(self): * return self.lineno_getter() # <<<<<<<<<<<<<< * * cdef inline CodeType code_getter(self): */ - __Pyx_TraceLine(272,1,0,__PYX_ERR(0, 272, __pyx_L1_error)) + __Pyx_TraceLine(254,1,0,__PYX_ERR(0, 254, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 272, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 254, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":270 + /* "hunter/_event.pyx":252 * return self._lineno * * @property # <<<<<<<<<<<<<< @@ -8139,7 +7660,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 270, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 252, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.lineno.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -8150,12 +7671,12 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":274 +/* "hunter/_event.pyx":256 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: - * return PyFrame_GetCode( self.frame) + * return Hunter_PyFrame_GetCode(self.frame) */ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { @@ -8164,82 +7685,87 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])) __Pyx_RefNannySetupContext("code_getter", 0); - __Pyx_TraceStartFunc("code_getter", __pyx_f[0], 274, 0, 0, 0, __PYX_ERR(0, 274, __pyx_L1_error)); + __Pyx_TraceStartFunc("code_getter", __pyx_f[0], 256, 0, 0, 0, __PYX_ERR(0, 256, __pyx_L1_error)); - /* "hunter/_event.pyx":275 + /* "hunter/_event.pyx":257 * * cdef inline CodeType code_getter(self): * if self._code is UNSET: # <<<<<<<<<<<<<< - * return PyFrame_GetCode( self.frame) + * return Hunter_PyFrame_GetCode(self.frame) * else: */ - __Pyx_TraceLine(275,5,0,__PYX_ERR(0, 275, __pyx_L1_error)) + __Pyx_TraceLine(257,5,0,__PYX_ERR(0, 257, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_code == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":276 + /* "hunter/_event.pyx":258 * cdef inline CodeType code_getter(self): * if self._code is UNSET: - * return PyFrame_GetCode( self.frame) # <<<<<<<<<<<<<< + * return Hunter_PyFrame_GetCode(self.frame) # <<<<<<<<<<<<<< * else: * return self._code */ - __Pyx_TraceLine(276,6,0,__PYX_ERR(0, 276, __pyx_L1_error)) + __Pyx_TraceLine(258,6,0,__PYX_ERR(0, 258, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); - __pyx_t_2 = ((PyObject *)PyFrame_GetCode(((PyFrameObject *)__pyx_v_self->frame))); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 276, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = ((PyCodeObject *)__pyx_t_2); - __pyx_t_2 = 0; - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 6, 0, __PYX_ERR(0, 276, __pyx_L1_error)); + __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); + __Pyx_INCREF(__pyx_t_2); + __pyx_t_3 = ((PyObject *)Hunter_PyFrame_GetCode(((FrameType)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 258, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_r = ((PyCodeObject *)__pyx_t_3); + __pyx_t_3 = 0; + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 6, 0, __PYX_ERR(0, 258, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":275 + /* "hunter/_event.pyx":257 * * cdef inline CodeType code_getter(self): * if self._code is UNSET: # <<<<<<<<<<<<<< - * return PyFrame_GetCode( self.frame) + * return Hunter_PyFrame_GetCode(self.frame) * else: */ } - /* "hunter/_event.pyx":278 - * return PyFrame_GetCode( self.frame) + /* "hunter/_event.pyx":260 + * return Hunter_PyFrame_GetCode(self.frame) * else: * return self._code # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(278,12,0,__PYX_ERR(0, 278, __pyx_L1_error)) + __Pyx_TraceLine(260,11,0,__PYX_ERR(0, 260, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF((PyObject *)__pyx_r); - if (!(likely(((__pyx_v_self->_code) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self->_code, __pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_CodeType))))) __PYX_ERR(0, 278, __pyx_L1_error) + if (!(likely(((__pyx_v_self->_code) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self->_code, __pyx_mstate_global->__pyx_ptype_6hunter_6_event_CodeType))))) __PYX_ERR(0, 260, __pyx_L1_error) __Pyx_INCREF(__pyx_v_self->_code); __pyx_r = ((PyCodeObject *)__pyx_v_self->_code); - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 12, 0, __PYX_ERR(0, 278, __pyx_L1_error)); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 11, 0, __PYX_ERR(0, 260, __pyx_L1_error)); goto __pyx_L0; } - /* "hunter/_event.pyx":274 + /* "hunter/_event.pyx":256 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: - * return PyFrame_GetCode( self.frame) + * return Hunter_PyFrame_GetCode(self.frame) */ /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 274, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 256, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.code_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -8250,7 +7776,7 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":280 +/* "hunter/_event.pyx":262 * return self._code * * @property # <<<<<<<<<<<<<< @@ -8281,27 +7807,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 280, 0, 0, 0, __PYX_ERR(0, 280, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 262, 0, 0, 0, __PYX_ERR(0, 262, __pyx_L1_error)); - /* "hunter/_event.pyx":282 + /* "hunter/_event.pyx":264 * @property * def code(self): * return self.code_getter() # <<<<<<<<<<<<<< * * cdef inline stdlib_getter(self): */ - __Pyx_TraceLine(282,1,0,__PYX_ERR(0, 282, __pyx_L1_error)) + __Pyx_TraceLine(264,1,0,__PYX_ERR(0, 264, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 282, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 282, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 264, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":280 + /* "hunter/_event.pyx":262 * return self._code * * @property # <<<<<<<<<<<<<< @@ -8316,7 +7842,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 280, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 262, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.code.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -8327,7 +7853,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pyx":284 +/* "hunter/_event.pyx":266 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< @@ -8350,71 +7876,71 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])) __Pyx_RefNannySetupContext("stdlib_getter", 0); - __Pyx_TraceStartFunc("stdlib_getter", __pyx_f[0], 284, 0, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); + __Pyx_TraceStartFunc("stdlib_getter", __pyx_f[0], 266, 0, 0, 0, __PYX_ERR(0, 266, __pyx_L1_error)); - /* "hunter/_event.pyx":285 + /* "hunter/_event.pyx":267 * * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: # <<<<<<<<<<<<<< * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: */ - __Pyx_TraceLine(285,5,0,__PYX_ERR(0, 285, __pyx_L1_error)) + __Pyx_TraceLine(267,5,0,__PYX_ERR(0, 267, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_stdlib == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":286 + /* "hunter/_event.pyx":268 * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: * module_parts = self.module.split('.') # <<<<<<<<<<<<<< * if 'pkg_resources' in module_parts: * # skip this over-vendored module */ - __Pyx_TraceLine(286,8,0,__PYX_ERR(0, 286, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 286, __pyx_L1_error) + __Pyx_TraceLine(268,8,0,__PYX_ERR(0, 268, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u__5}; + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_mstate_global->__pyx_kp_u__4}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_split, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 286, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_module_parts = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":287 + /* "hunter/_event.pyx":269 * if self._stdlib is UNSET: * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: # <<<<<<<<<<<<<< * # skip this over-vendored module * self._stdlib = True */ - __Pyx_TraceLine(287,15,0,__PYX_ERR(0, 287, __pyx_L1_error)) - __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_pkg_resources, __pyx_v_module_parts, Py_EQ)); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 287, __pyx_L1_error) + __Pyx_TraceLine(269,15,0,__PYX_ERR(0, 269, __pyx_L1_error)) + __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_pkg_resources, __pyx_v_module_parts, Py_EQ)); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 269, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":289 + /* "hunter/_event.pyx":271 * if 'pkg_resources' in module_parts: * # skip this over-vendored module * self._stdlib = True # <<<<<<<<<<<<<< * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): * # skip namedtuple exec garbage */ - __Pyx_TraceLine(289,16,0,__PYX_ERR(0, 289, __pyx_L1_error)) + __Pyx_TraceLine(271,16,0,__PYX_ERR(0, 271, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":287 + /* "hunter/_event.pyx":269 * if self._stdlib is UNSET: * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: # <<<<<<<<<<<<<< @@ -8424,24 +7950,24 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":290 + /* "hunter/_event.pyx":272 * # skip this over-vendored module * self._stdlib = True * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): # <<<<<<<<<<<<<< * # skip namedtuple exec garbage * self._stdlib = True */ - __Pyx_TraceLine(290,20,0,__PYX_ERR(0, 290, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error) + __Pyx_TraceLine(272,20,0,__PYX_ERR(0, 272, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_string, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 290, __pyx_L1_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_string, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 290, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); @@ -8451,39 +7977,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 290, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_site, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 290, __pyx_L1_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_site, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_1 = __pyx_t_6; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":292 + /* "hunter/_event.pyx":274 * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): * # skip namedtuple exec garbage * self._stdlib = True # <<<<<<<<<<<<<< * elif self.filename.startswith(SITE_PACKAGES_PATHS): * # if in site-packages then definitely not stdlib */ - __Pyx_TraceLine(292,34,0,__PYX_ERR(0, 292, __pyx_L1_error)) + __Pyx_TraceLine(274,34,0,__PYX_ERR(0, 274, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":290 + /* "hunter/_event.pyx":272 * # skip this over-vendored module * self._stdlib = True * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): # <<<<<<<<<<<<<< @@ -8493,19 +8019,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":293 + /* "hunter/_event.pyx":275 * # skip namedtuple exec garbage * self._stdlib = True * elif self.filename.startswith(SITE_PACKAGES_PATHS): # <<<<<<<<<<<<<< * # if in site-packages then definitely not stdlib * self._stdlib = False */ - __Pyx_TraceLine(293,38,0,__PYX_ERR(0, 293, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_TraceLine(275,38,0,__PYX_ERR(0, 275, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 293, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = 0; { @@ -8514,28 +8040,28 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 293, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 293, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":295 + /* "hunter/_event.pyx":277 * elif self.filename.startswith(SITE_PACKAGES_PATHS): * # if in site-packages then definitely not stdlib * self._stdlib = False # <<<<<<<<<<<<<< * elif self.filename.startswith(SYS_PREFIX_PATHS): * self._stdlib = True */ - __Pyx_TraceLine(295,42,0,__PYX_ERR(0, 295, __pyx_L1_error)) + __Pyx_TraceLine(277,42,0,__PYX_ERR(0, 277, __pyx_L1_error)) __Pyx_INCREF(Py_False); __Pyx_GIVEREF(Py_False); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_False; - /* "hunter/_event.pyx":293 + /* "hunter/_event.pyx":275 * # skip namedtuple exec garbage * self._stdlib = True * elif self.filename.startswith(SITE_PACKAGES_PATHS): # <<<<<<<<<<<<<< @@ -8545,19 +8071,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":296 + /* "hunter/_event.pyx":278 * # if in site-packages then definitely not stdlib * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): # <<<<<<<<<<<<<< * self._stdlib = True * else: */ - __Pyx_TraceLine(296,46,0,__PYX_ERR(0, 296, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 296, __pyx_L1_error) + __Pyx_TraceLine(278,46,0,__PYX_ERR(0, 278, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __pyx_t_7; __Pyx_INCREF(__pyx_t_4); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 296, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = 0; { @@ -8566,28 +8092,28 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 296, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 296, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":297 + /* "hunter/_event.pyx":279 * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): * self._stdlib = True # <<<<<<<<<<<<<< * else: * self._stdlib = False */ - __Pyx_TraceLine(297,50,0,__PYX_ERR(0, 297, __pyx_L1_error)) + __Pyx_TraceLine(279,50,0,__PYX_ERR(0, 279, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":296 + /* "hunter/_event.pyx":278 * # if in site-packages then definitely not stdlib * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): # <<<<<<<<<<<<<< @@ -8597,14 +8123,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":299 + /* "hunter/_event.pyx":281 * self._stdlib = True * else: * self._stdlib = False # <<<<<<<<<<<<<< * return self._stdlib * */ - __Pyx_TraceLine(299,55,0,__PYX_ERR(0, 299, __pyx_L1_error)) + __Pyx_TraceLine(281,55,0,__PYX_ERR(0, 281, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_False); __Pyx_GIVEREF(Py_False); @@ -8614,7 +8140,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":285 + /* "hunter/_event.pyx":267 * * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: # <<<<<<<<<<<<<< @@ -8623,21 +8149,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":300 + /* "hunter/_event.pyx":282 * else: * self._stdlib = False * return self._stdlib # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(300,56,0,__PYX_ERR(0, 300, __pyx_L1_error)) + __Pyx_TraceLine(282,56,0,__PYX_ERR(0, 282, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_stdlib); __pyx_r = __pyx_v_self->_stdlib; - __Pyx_TraceReturnValue(__pyx_r, 56, 0, __PYX_ERR(0, 300, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 56, 0, __PYX_ERR(0, 282, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":284 + /* "hunter/_event.pyx":266 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< @@ -8655,7 +8181,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 266, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.stdlib_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -8667,7 +8193,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":302 +/* "hunter/_event.pyx":284 * return self._stdlib * * @property # <<<<<<<<<<<<<< @@ -8698,27 +8224,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 302, 0, 0, 0, __PYX_ERR(0, 302, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 284, 0, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); - /* "hunter/_event.pyx":304 + /* "hunter/_event.pyx":286 * @property * def stdlib(self): * return self.stdlib_getter() # <<<<<<<<<<<<<< * * cdef inline fullsource_getter(self): */ - __Pyx_TraceLine(304,1,0,__PYX_ERR(0, 304, __pyx_L1_error)) + __Pyx_TraceLine(286,1,0,__PYX_ERR(0, 286, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 304, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 304, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 286, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":302 + /* "hunter/_event.pyx":284 * return self._stdlib * * @property # <<<<<<<<<<<<<< @@ -8733,7 +8259,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 302, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.stdlib.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -8744,7 +8270,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":306 +/* "hunter/_event.pyx":288 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< @@ -8796,29 +8322,29 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])) __Pyx_RefNannySetupContext("fullsource_getter", 0); - __Pyx_TraceStartFunc("fullsource_getter", __pyx_f[0], 306, 0, 0, 0, __PYX_ERR(0, 306, __pyx_L1_error)); + __Pyx_TraceStartFunc("fullsource_getter", __pyx_f[0], 288, 0, 0, 0, __PYX_ERR(0, 288, __pyx_L1_error)); - /* "hunter/_event.pyx":310 + /* "hunter/_event.pyx":292 * cdef CodeType code * * if self._fullsource is UNSET: # <<<<<<<<<<<<<< * try: * self._fullsource = None */ - __Pyx_TraceLine(310,5,0,__PYX_ERR(0, 310, __pyx_L1_error)) + __Pyx_TraceLine(292,5,0,__PYX_ERR(0, 292, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_fullsource == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":311 + /* "hunter/_event.pyx":293 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< * self._fullsource = None * code = self.code_getter() */ - __Pyx_TraceLine(311,6,0,__PYX_ERR(0, 311, __pyx_L1_error)) + __Pyx_TraceLine(293,6,0,__PYX_ERR(0, 293, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8828,73 +8354,73 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XGOTREF(__pyx_t_4); /*try:*/ { - /* "hunter/_event.pyx":312 + /* "hunter/_event.pyx":294 * if self._fullsource is UNSET: * try: * self._fullsource = None # <<<<<<<<<<<<<< * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': */ - __Pyx_TraceLine(312,7,0,__PYX_ERR(0, 312, __pyx_L4_error)) + __Pyx_TraceLine(294,7,0,__PYX_ERR(0, 294, __pyx_L4_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_fullsource); __Pyx_DECREF(__pyx_v_self->_fullsource); __pyx_v_self->_fullsource = Py_None; - /* "hunter/_event.pyx":313 + /* "hunter/_event.pyx":295 * try: * self._fullsource = None * code = self.code_getter() # <<<<<<<<<<<<<< * if self.kind == 'call' and code.co_name != '': * lines = [] */ - __Pyx_TraceLine(313,13,0,__PYX_ERR(0, 313, __pyx_L4_error)) - __pyx_t_5 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 313, __pyx_L4_error) + __Pyx_TraceLine(295,13,0,__PYX_ERR(0, 295, __pyx_L4_error)) + __pyx_t_5 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 295, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_code = ((PyCodeObject *)__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_event.pyx":314 + /* "hunter/_event.pyx":296 * self._fullsource = None * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': # <<<<<<<<<<<<<< * lines = [] * try: */ - __Pyx_TraceLine(314,16,0,__PYX_ERR(0, 314, __pyx_L4_error)) - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_self->kind, __pyx_mstate_global->__pyx_n_u_call, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 314, __pyx_L4_error) + __Pyx_TraceLine(296,16,0,__PYX_ERR(0, 296, __pyx_L4_error)) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_self->kind, __pyx_mstate_global->__pyx_n_u_call, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 296, __pyx_L4_error) if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L11_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_code->co_name, __pyx_mstate_global->__pyx_kp_u_module_4, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 314, __pyx_L4_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_code->co_name, __pyx_mstate_global->__pyx_kp_u_module_4, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 296, __pyx_L4_error) __pyx_t_1 = __pyx_t_6; __pyx_L11_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":315 + /* "hunter/_event.pyx":297 * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': * lines = [] # <<<<<<<<<<<<<< * try: * for _, token, _, _, _ in generate_tokens( */ - __Pyx_TraceLine(315,25,0,__PYX_ERR(0, 315, __pyx_L4_error)) - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 315, __pyx_L4_error) + __Pyx_TraceLine(297,25,0,__PYX_ERR(0, 297, __pyx_L4_error)) + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 297, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_lines = ((PyObject*)__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_event.pyx":316 + /* "hunter/_event.pyx":298 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< * for _, token, _, _, _ in generate_tokens( * partial( */ - __Pyx_TraceLine(316,26,0,__PYX_ERR(0, 316, __pyx_L4_error)) + __Pyx_TraceLine(298,26,0,__PYX_ERR(0, 298, __pyx_L4_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8904,97 +8430,97 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XGOTREF(__pyx_t_9); /*try:*/ { - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":299 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, */ - __Pyx_TraceLine(317,34,0,__PYX_ERR(0, 317, __pyx_L13_error)) + __Pyx_TraceLine(299,34,0,__PYX_ERR(0, 299, __pyx_L13_error)) __pyx_t_10 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 317, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_11); - /* "hunter/_event.pyx":318 + /* "hunter/_event.pyx":300 * try: * for _, token, _, _, _ in generate_tokens( * partial( # <<<<<<<<<<<<<< * next, * yield_lines( */ - __Pyx_TraceLine(318,36,0,__PYX_ERR(0, 318, __pyx_L13_error)) + __Pyx_TraceLine(300,36,0,__PYX_ERR(0, 300, __pyx_L13_error)) __pyx_t_13 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 318, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 300, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); - /* "hunter/_event.pyx":319 + /* "hunter/_event.pyx":301 * for _, token, _, _, _ in generate_tokens( * partial( * next, # <<<<<<<<<<<<<< * yield_lines( * self.filename, */ - __Pyx_TraceLine(319,37,0,__PYX_ERR(0, 319, __pyx_L13_error)) - __pyx_t_15 = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 319, __pyx_L13_error) + __Pyx_TraceLine(301,37,0,__PYX_ERR(0, 301, __pyx_L13_error)) + __pyx_t_15 = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 301, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_15); - /* "hunter/_event.pyx":320 + /* "hunter/_event.pyx":302 * partial( * next, * yield_lines( # <<<<<<<<<<<<<< * self.filename, * self.frame.f_globals, */ - __Pyx_TraceLine(320,39,0,__PYX_ERR(0, 320, __pyx_L13_error)) + __Pyx_TraceLine(302,39,0,__PYX_ERR(0, 302, __pyx_L13_error)) __pyx_t_17 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_mstate_global->__pyx_n_u_yield_lines); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 320, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_mstate_global->__pyx_n_u_yield_lines); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_18); - /* "hunter/_event.pyx":321 + /* "hunter/_event.pyx":303 * next, * yield_lines( * self.filename, # <<<<<<<<<<<<<< * self.frame.f_globals, * self.lineno - 1, */ - __Pyx_TraceLine(321,41,0,__PYX_ERR(0, 321, __pyx_L13_error)) - __pyx_t_19 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 321, __pyx_L13_error) + __Pyx_TraceLine(303,41,0,__PYX_ERR(0, 303, __pyx_L13_error)) + __pyx_t_19 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 303, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_19); - /* "hunter/_event.pyx":322 + /* "hunter/_event.pyx":304 * yield_lines( * self.filename, * self.frame.f_globals, # <<<<<<<<<<<<<< * self.lineno - 1, * lines, */ - __Pyx_TraceLine(322,44,0,__PYX_ERR(0, 322, __pyx_L13_error)) - __pyx_t_20 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self->frame), __pyx_mstate_global->__pyx_n_u_f_globals); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 322, __pyx_L13_error) + __Pyx_TraceLine(304,44,0,__PYX_ERR(0, 304, __pyx_L13_error)) + __pyx_t_20 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self->frame), __pyx_mstate_global->__pyx_n_u_f_globals); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 304, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_20); - /* "hunter/_event.pyx":323 + /* "hunter/_event.pyx":305 * self.filename, * self.frame.f_globals, * self.lineno - 1, # <<<<<<<<<<<<<< * lines, * ), */ - __Pyx_TraceLine(323,46,0,__PYX_ERR(0, 323, __pyx_L13_error)) - __pyx_t_21 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 323, __pyx_L13_error) + __Pyx_TraceLine(305,46,0,__PYX_ERR(0, 305, __pyx_L13_error)) + __pyx_t_21 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 305, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_21); - __pyx_t_22 = __Pyx_PyLong_SubtractObjC(__pyx_t_21, __pyx_mstate_global->__pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 323, __pyx_L13_error) + __pyx_t_22 = __Pyx_PyLong_SubtractObjC(__pyx_t_21, __pyx_mstate_global->__pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 305, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_22); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; - /* "hunter/_event.pyx":324 + /* "hunter/_event.pyx":306 * self.frame.f_globals, * self.lineno - 1, * lines, # <<<<<<<<<<<<<< * ), * ) */ - __Pyx_TraceLine(324,49,0,__PYX_ERR(0, 324, __pyx_L13_error)) + __Pyx_TraceLine(306,49,0,__PYX_ERR(0, 306, __pyx_L13_error)) __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_18))) { @@ -9015,7 +8541,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0; __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 320, __pyx_L13_error) + if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_16); } __pyx_t_23 = 1; @@ -9037,7 +8563,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 318, __pyx_L13_error) + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 300, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_12); } __pyx_t_23 = 1; @@ -9058,26 +8584,26 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); } - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":299 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, */ - __Pyx_TraceLine(317,33,0,__PYX_ERR(0, 317, __pyx_L13_error)) + __Pyx_TraceLine(299,33,0,__PYX_ERR(0, 299, __pyx_L13_error)) if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) { __pyx_t_11 = __pyx_t_5; __Pyx_INCREF(__pyx_t_11); __pyx_t_24 = 0; __pyx_t_25 = NULL; } else { - __pyx_t_24 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 317, __pyx_L13_error) + __pyx_t_24 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_25 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_11); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 317, __pyx_L13_error) + __pyx_t_25 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_11); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 299, __pyx_L13_error) } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; for (;;) { @@ -9086,7 +8612,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_11); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 299, __pyx_L13_error) #endif if (__pyx_t_24 >= __pyx_temp) break; } @@ -9096,7 +8622,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_11); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 299, __pyx_L13_error) #endif if (__pyx_t_24 >= __pyx_temp) break; } @@ -9107,13 +8633,13 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o #endif ++__pyx_t_24; } - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 299, __pyx_L13_error) } else { __pyx_t_5 = __pyx_t_25(__pyx_t_11); if (unlikely(!__pyx_t_5)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 299, __pyx_L13_error) PyErr_Clear(); } break; @@ -9126,7 +8652,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o if (unlikely(size != 5)) { if (size > 5) __Pyx_RaiseTooManyValuesError(5); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(0, 317, __pyx_L13_error) + __PYX_ERR(0, 299, __pyx_L13_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -9142,19 +8668,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_INCREF(__pyx_t_15); } else { __pyx_t_12 = __Pyx_PyList_GetItemRef(sequence, 0); - if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_12); __pyx_t_10 = __Pyx_PyList_GetItemRef(sequence, 1); - if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_10); __pyx_t_14 = __Pyx_PyList_GetItemRef(sequence, 2); - if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_14); __pyx_t_16 = __Pyx_PyList_GetItemRef(sequence, 3); - if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_16); __pyx_t_15 = __Pyx_PyList_GetItemRef(sequence, 4); - if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 317, __pyx_L13_error) + if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_15); } #else @@ -9162,7 +8688,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o Py_ssize_t i; PyObject** temps[5] = {&__pyx_t_12,&__pyx_t_10,&__pyx_t_14,&__pyx_t_16,&__pyx_t_15}; for (i=0; i < 5; i++) { - PyObject* item = __Pyx_PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 317, __pyx_L13_error) + PyObject* item = __Pyx_PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_GOTREF(item); *(temps[i]) = item; } @@ -9172,7 +8698,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o } else { Py_ssize_t index = -1; PyObject** temps[5] = {&__pyx_t_12,&__pyx_t_10,&__pyx_t_14,&__pyx_t_16,&__pyx_t_15}; - __pyx_t_13 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 317, __pyx_L13_error) + __pyx_t_13 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 299, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_26 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_13); @@ -9181,7 +8707,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_GOTREF(item); *(temps[index]) = item; } - if (__Pyx_IternextUnpackEndCheck(__pyx_t_26(__pyx_t_13), 5) < 0) __PYX_ERR(0, 317, __pyx_L13_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_26(__pyx_t_13), 5) < 0) __PYX_ERR(0, 299, __pyx_L13_error) __pyx_t_26 = NULL; __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; goto __pyx_L22_unpacking_done; @@ -9189,7 +8715,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __pyx_t_26 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(0, 317, __pyx_L13_error) + __PYX_ERR(0, 299, __pyx_L13_error) __pyx_L22_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_12); @@ -9202,46 +8728,46 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v__, __pyx_t_15); __pyx_t_15 = 0; - __Pyx_TraceLine(317,27,0,__PYX_ERR(0, 317, __pyx_L13_error)) + __Pyx_TraceLine(299,27,0,__PYX_ERR(0, 299, __pyx_L13_error)) - /* "hunter/_event.pyx":328 + /* "hunter/_event.pyx":310 * ) * ): * if token in ('def', 'class', 'lambda'): # <<<<<<<<<<<<<< * self._fullsource = ''.join(lines) * break */ - __Pyx_TraceLine(328,51,0,__PYX_ERR(0, 328, __pyx_L13_error)) + __Pyx_TraceLine(310,51,0,__PYX_ERR(0, 310, __pyx_L13_error)) __Pyx_INCREF(__pyx_v_token); __pyx_t_5 = __pyx_v_token; - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_def, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 328, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_def, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 310, __pyx_L13_error) if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L24_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_class, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 328, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_class, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 310, __pyx_L13_error) if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L24_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_lambda, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 328, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_lambda, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 310, __pyx_L13_error) __pyx_t_1 = __pyx_t_6; __pyx_L24_bool_binop_done:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __pyx_t_1; if (__pyx_t_6) { - /* "hunter/_event.pyx":329 + /* "hunter/_event.pyx":311 * ): * if token in ('def', 'class', 'lambda'): * self._fullsource = ''.join(lines) # <<<<<<<<<<<<<< * break * except TokenError: */ - __Pyx_TraceLine(329,60,0,__PYX_ERR(0, 329, __pyx_L13_error)) - __pyx_t_5 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__3, __pyx_v_lines); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 329, __pyx_L13_error) + __Pyx_TraceLine(311,60,0,__PYX_ERR(0, 311, __pyx_L13_error)) + __pyx_t_5 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__2, __pyx_v_lines); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 311, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __Pyx_GOTREF(__pyx_v_self->_fullsource); @@ -9249,17 +8775,17 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_self->_fullsource = __pyx_t_5; __pyx_t_5 = 0; - /* "hunter/_event.pyx":330 + /* "hunter/_event.pyx":312 * if token in ('def', 'class', 'lambda'): * self._fullsource = ''.join(lines) * break # <<<<<<<<<<<<<< * except TokenError: * pass */ - __Pyx_TraceLine(330,62,0,__PYX_ERR(0, 330, __pyx_L13_error)) + __Pyx_TraceLine(312,62,0,__PYX_ERR(0, 312, __pyx_L13_error)) goto __pyx_L20_break; - /* "hunter/_event.pyx":328 + /* "hunter/_event.pyx":310 * ) * ): * if token in ('def', 'class', 'lambda'): # <<<<<<<<<<<<<< @@ -9268,14 +8794,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":299 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, */ - __Pyx_TraceLine(317,27,0,__PYX_ERR(0, 317, __pyx_L13_error)) + __Pyx_TraceLine(299,27,0,__PYX_ERR(0, 299, __pyx_L13_error)) } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L27_for_end; @@ -9284,7 +8810,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o goto __pyx_L27_for_end; __pyx_L27_for_end:; - /* "hunter/_event.pyx":316 + /* "hunter/_event.pyx":298 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< @@ -9313,16 +8839,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":331 + /* "hunter/_event.pyx":313 * self._fullsource = ''.join(lines) * break * except TokenError: # <<<<<<<<<<<<<< * pass * if self._fullsource is None: */ - __Pyx_TraceLine(331,0,0,__PYX_ERR(0, 331, __pyx_L15_except_error)) + __Pyx_TraceLine(313,0,0,__PYX_ERR(0, 313, __pyx_L15_except_error)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_5, &__pyx_t_15); - __Pyx_GetModuleGlobalName(__pyx_t_16, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 331, __pyx_L15_except_error) + __Pyx_GetModuleGlobalName(__pyx_t_16, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 313, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_27 = __Pyx_PyErr_GivenExceptionMatches(__pyx_t_11, __pyx_t_16); __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; @@ -9334,19 +8860,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_ErrRestore(0,0,0); __Pyx_TraceExceptionDone(); - /* "hunter/_event.pyx":332 + /* "hunter/_event.pyx":314 * break * except TokenError: * pass # <<<<<<<<<<<<<< * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) */ - __Pyx_TraceLine(332,64,0,__PYX_ERR(0, 332, __pyx_L15_except_error)) + __Pyx_TraceLine(314,64,0,__PYX_ERR(0, 314, __pyx_L15_except_error)) goto __pyx_L14_exception_handled; } goto __pyx_L15_except_error; - /* "hunter/_event.pyx":316 + /* "hunter/_event.pyx":298 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< @@ -9367,7 +8893,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_L18_try_end:; } - /* "hunter/_event.pyx":314 + /* "hunter/_event.pyx":296 * self._fullsource = None * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': # <<<<<<<<<<<<<< @@ -9376,33 +8902,33 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":333 + /* "hunter/_event.pyx":315 * except TokenError: * pass * if self._fullsource is None: # <<<<<<<<<<<<<< * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: */ - __Pyx_TraceLine(333,69,0,__PYX_ERR(0, 333, __pyx_L4_error)) + __Pyx_TraceLine(315,69,0,__PYX_ERR(0, 315, __pyx_L4_error)) __pyx_t_6 = (__pyx_v_self->_fullsource == Py_None); if (__pyx_t_6) { - /* "hunter/_event.pyx":334 + /* "hunter/_event.pyx":316 * pass * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) # <<<<<<<<<<<<<< * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' */ - __Pyx_TraceLine(334,73,0,__PYX_ERR(0, 334, __pyx_L4_error)) + __Pyx_TraceLine(316,73,0,__PYX_ERR(0, 316, __pyx_L4_error)) __pyx_t_5 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 334, __pyx_L4_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 316, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_16 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 334, __pyx_L4_error) + __pyx_t_16 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 316, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_16); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 334, __pyx_L4_error) + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 316, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 334, __pyx_L4_error) + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 316, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS @@ -9424,7 +8950,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 334, __pyx_L4_error) + if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 316, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_15); } __Pyx_GIVEREF(__pyx_t_15); @@ -9433,7 +8959,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_self->_fullsource = __pyx_t_15; __pyx_t_15 = 0; - /* "hunter/_event.pyx":333 + /* "hunter/_event.pyx":315 * except TokenError: * pass * if self._fullsource is None: # <<<<<<<<<<<<<< @@ -9442,7 +8968,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":311 + /* "hunter/_event.pyx":293 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< @@ -9471,19 +8997,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":335 + /* "hunter/_event.pyx":317 * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource */ - __Pyx_TraceLine(335,81,0,__PYX_ERR(0, 335, __pyx_L6_except_error)) + __Pyx_TraceLine(317,81,0,__PYX_ERR(0, 317, __pyx_L6_except_error)) __pyx_t_27 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); if (__pyx_t_27) { __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_TraceExceptionHandled(80); - if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_11, &__pyx_t_10) < 0) __PYX_ERR(0, 335, __pyx_L6_except_error) + if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_11, &__pyx_t_10) < 0) __PYX_ERR(0, 317, __pyx_L6_except_error) __Pyx_XGOTREF(__pyx_t_15); __Pyx_XGOTREF(__pyx_t_11); __Pyx_XGOTREF(__pyx_t_10); @@ -9492,17 +9018,17 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_exc = __pyx_t_11; /*try:*/ { - /* "hunter/_event.pyx":336 + /* "hunter/_event.pyx":318 * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' # <<<<<<<<<<<<<< * return self._fullsource * */ - __Pyx_TraceLine(336,86,0,__PYX_ERR(0, 336, __pyx_L36_error)) - __pyx_t_14 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 336, __pyx_L36_error) + __Pyx_TraceLine(318,86,0,__PYX_ERR(0, 318, __pyx_L36_error)) + __pyx_t_14 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 318, __pyx_L36_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 336, __pyx_L36_error) + __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 318, __pyx_L36_error) __Pyx_GOTREF(__pyx_t_16); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_GIVEREF(__pyx_t_16); @@ -9512,14 +9038,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_16 = 0; } - /* "hunter/_event.pyx":335 + /* "hunter/_event.pyx":317 * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource */ - __Pyx_TraceLine(335,80,0,__PYX_ERR(0, 335, __pyx_L36_error)) + __Pyx_TraceLine(317,80,0,__PYX_ERR(0, 317, __pyx_L36_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; @@ -9577,7 +9103,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o } goto __pyx_L6_except_error; - /* "hunter/_event.pyx":311 + /* "hunter/_event.pyx":293 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< @@ -9598,7 +9124,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_L9_try_end:; } - /* "hunter/_event.pyx":310 + /* "hunter/_event.pyx":292 * cdef CodeType code * * if self._fullsource is UNSET: # <<<<<<<<<<<<<< @@ -9607,21 +9133,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":337 + /* "hunter/_event.pyx":319 * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(337,88,0,__PYX_ERR(0, 337, __pyx_L1_error)) + __Pyx_TraceLine(319,88,0,__PYX_ERR(0, 319, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_fullsource); __pyx_r = __pyx_v_self->_fullsource; - __Pyx_TraceReturnValue(__pyx_r, 88, 0, __PYX_ERR(0, 337, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 88, 0, __PYX_ERR(0, 319, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":306 + /* "hunter/_event.pyx":288 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< @@ -9649,7 +9175,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 306, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 288, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -9665,7 +9191,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o return __pyx_r; } -/* "hunter/_event.pyx":339 +/* "hunter/_event.pyx":321 * return self._fullsource * * @property # <<<<<<<<<<<<<< @@ -9696,27 +9222,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 339, 0, 0, 0, __PYX_ERR(0, 339, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 321, 0, 0, 0, __PYX_ERR(0, 321, __pyx_L1_error)); - /* "hunter/_event.pyx":341 + /* "hunter/_event.pyx":323 * @property * def fullsource(self): * return self.fullsource_getter() # <<<<<<<<<<<<<< * * cdef inline source_getter(self): */ - __Pyx_TraceLine(341,1,0,__PYX_ERR(0, 341, __pyx_L1_error)) + __Pyx_TraceLine(323,1,0,__PYX_ERR(0, 323, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 341, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 341, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 323, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":339 + /* "hunter/_event.pyx":321 * return self._fullsource * * @property # <<<<<<<<<<<<<< @@ -9731,7 +9257,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 339, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 321, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.fullsource.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9742,7 +9268,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p return __pyx_r; } -/* "hunter/_event.pyx":343 +/* "hunter/_event.pyx":325 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< @@ -9779,30 +9305,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])) __Pyx_RefNannySetupContext("source_getter", 0); - __Pyx_TraceStartFunc("source_getter", __pyx_f[0], 343, 0, 0, 0, __PYX_ERR(0, 343, __pyx_L1_error)); + __Pyx_TraceStartFunc("source_getter", __pyx_f[0], 325, 0, 0, 0, __PYX_ERR(0, 325, __pyx_L1_error)); - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":326 * * cdef inline source_getter(self): * if self._source is UNSET: # <<<<<<<<<<<<<< * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' */ - __Pyx_TraceLine(344,5,0,__PYX_ERR(0, 344, __pyx_L1_error)) + __Pyx_TraceLine(326,5,0,__PYX_ERR(0, 326, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_source == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":345 + /* "hunter/_event.pyx":327 * cdef inline source_getter(self): * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: */ - __Pyx_TraceLine(345,8,0,__PYX_ERR(0, 345, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 345, __pyx_L1_error) + __Pyx_TraceLine(327,8,0,__PYX_ERR(0, 327, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); @@ -9812,46 +9338,46 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 345, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 345, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 327, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":346 + /* "hunter/_event.pyx":328 * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' # <<<<<<<<<<<<<< * try: * self._source = getline(self.filename, self.lineno, self.globals) */ - __Pyx_TraceLine(346,17,0,__PYX_ERR(0, 346, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_TraceLine(328,17,0,__PYX_ERR(0, 328, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) + __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_6, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 346, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_6, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_NO_SOURCE_not_reading_binary; __pyx_t_7[1] = __pyx_t_3; __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_file_2; __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_7, 3, 34 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 5, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3)); - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_6); @@ -9860,7 +9386,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_v_self->_source = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_event.pyx":345 + /* "hunter/_event.pyx":327 * cdef inline source_getter(self): * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< @@ -9869,14 +9395,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":347 + /* "hunter/_event.pyx":329 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: */ - __Pyx_TraceLine(347,25,0,__PYX_ERR(0, 347, __pyx_L1_error)) + __Pyx_TraceLine(329,25,0,__PYX_ERR(0, 329, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -9886,22 +9412,22 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_XGOTREF(__pyx_t_10); /*try:*/ { - /* "hunter/_event.pyx":348 + /* "hunter/_event.pyx":330 * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: * self._source = getline(self.filename, self.lineno, self.globals) # <<<<<<<<<<<<<< * except Exception as exc: * self._source = f'??? NO SOURCE: {exc!r}' */ - __Pyx_TraceLine(348,29,0,__PYX_ERR(0, 348, __pyx_L5_error)) + __Pyx_TraceLine(330,29,0,__PYX_ERR(0, 330, __pyx_L5_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 348, __pyx_L5_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 348, __pyx_L5_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 348, __pyx_L5_error) + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 330, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_12 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 348, __pyx_L5_error) + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 330, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -9923,7 +9449,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 348, __pyx_L5_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 330, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_6); } __Pyx_GIVEREF(__pyx_t_6); @@ -9932,7 +9458,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_v_self->_source = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_event.pyx":347 + /* "hunter/_event.pyx":329 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< @@ -9953,19 +9479,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":349 + /* "hunter/_event.pyx":331 * try: * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: {exc!r}' * */ - __Pyx_TraceLine(349,37,0,__PYX_ERR(0, 349, __pyx_L7_except_error)) + __Pyx_TraceLine(331,37,0,__PYX_ERR(0, 331, __pyx_L7_except_error)) __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); if (__pyx_t_13) { __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_TraceExceptionHandled(36); - if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_12) < 0) __PYX_ERR(0, 349, __pyx_L7_except_error) + if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_12) < 0) __PYX_ERR(0, 331, __pyx_L7_except_error) __Pyx_XGOTREF(__pyx_t_6); __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_12); @@ -9974,17 +9500,17 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_v_exc = __pyx_t_2; /*try:*/ { - /* "hunter/_event.pyx":350 + /* "hunter/_event.pyx":332 * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: * self._source = f'??? NO SOURCE: {exc!r}' # <<<<<<<<<<<<<< * * return self._source */ - __Pyx_TraceLine(350,42,0,__PYX_ERR(0, 350, __pyx_L16_error)) - __pyx_t_11 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 350, __pyx_L16_error) + __Pyx_TraceLine(332,42,0,__PYX_ERR(0, 332, __pyx_L16_error)) + __pyx_t_11 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 332, __pyx_L16_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_4 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_11); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 350, __pyx_L16_error) + __pyx_t_4 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_11); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 332, __pyx_L16_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_GIVEREF(__pyx_t_4); @@ -9994,14 +9520,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_4 = 0; } - /* "hunter/_event.pyx":349 + /* "hunter/_event.pyx":331 * try: * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: {exc!r}' * */ - __Pyx_TraceLine(349,36,0,__PYX_ERR(0, 349, __pyx_L16_error)) + __Pyx_TraceLine(331,36,0,__PYX_ERR(0, 331, __pyx_L16_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; @@ -10051,7 +9577,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 } goto __pyx_L7_except_error; - /* "hunter/_event.pyx":347 + /* "hunter/_event.pyx":329 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< @@ -10072,7 +9598,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_L10_try_end:; } - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":326 * * cdef inline source_getter(self): * if self._source is UNSET: # <<<<<<<<<<<<<< @@ -10081,21 +9607,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":352 + /* "hunter/_event.pyx":334 * self._source = f'??? NO SOURCE: {exc!r}' * * return self._source # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(352,44,0,__PYX_ERR(0, 352, __pyx_L1_error)) + __Pyx_TraceLine(334,44,0,__PYX_ERR(0, 334, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_source); __pyx_r = __pyx_v_self->_source; - __Pyx_TraceReturnValue(__pyx_r, 44, 0, __PYX_ERR(0, 352, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 44, 0, __PYX_ERR(0, 334, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":343 + /* "hunter/_event.pyx":325 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< @@ -10115,7 +9641,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 343, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 325, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -10127,7 +9653,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":354 +/* "hunter/_event.pyx":336 * return self._source * * @property # <<<<<<<<<<<<<< @@ -10158,27 +9684,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 354, 0, 0, 0, __PYX_ERR(0, 354, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 336, 0, 0, 0, __PYX_ERR(0, 336, __pyx_L1_error)); - /* "hunter/_event.pyx":356 + /* "hunter/_event.pyx":338 * @property * def source(self): * return self.source_getter() # <<<<<<<<<<<<<< * * def __getitem__(self, item): */ - __Pyx_TraceLine(356,1,0,__PYX_ERR(0, 356, __pyx_L1_error)) + __Pyx_TraceLine(338,1,0,__PYX_ERR(0, 338, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 338, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 356, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 338, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":354 + /* "hunter/_event.pyx":336 * return self._source * * @property # <<<<<<<<<<<<<< @@ -10193,7 +9719,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 354, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 336, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.source.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10204,7 +9730,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":358 +/* "hunter/_event.pyx":340 * return self.source_getter() * * def __getitem__(self, item): # <<<<<<<<<<<<<< @@ -10235,27 +9761,27 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])) __Pyx_RefNannySetupContext("__getitem__", 0); - __Pyx_TraceStartFunc("__getitem__", __pyx_f[0], 358, 0, 0, 0, __PYX_ERR(0, 358, __pyx_L1_error)); + __Pyx_TraceStartFunc("__getitem__", __pyx_f[0], 340, 0, 0, 0, __PYX_ERR(0, 340, __pyx_L1_error)); - /* "hunter/_event.pyx":359 + /* "hunter/_event.pyx":341 * * def __getitem__(self, item): * return getattr(self, item) # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(359,1,0,__PYX_ERR(0, 359, __pyx_L1_error)) + __Pyx_TraceLine(341,1,0,__PYX_ERR(0, 341, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetAttr(((PyObject *)__pyx_v_self), __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 359, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetAttr(((PyObject *)__pyx_v_self), __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 359, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 341, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":358 + /* "hunter/_event.pyx":340 * return self.source_getter() * * def __getitem__(self, item): # <<<<<<<<<<<<<< @@ -10270,7 +9796,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 358, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 340, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10281,7 +9807,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pxd":14 +/* "hunter/_event.pxd":43 * cdef class Event: * cdef: * readonly FrameType frame # <<<<<<<<<<<<<< @@ -10311,13 +9837,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 14, 0, 0, 0, __PYX_ERR(1, 14, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 43, 0, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->frame); __pyx_r = ((PyObject *)__pyx_v_self->frame); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 14, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10326,7 +9852,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 14, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.frame.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10337,7 +9863,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":15 +/* "hunter/_event.pxd":44 * cdef: * readonly FrameType frame * readonly str kind # <<<<<<<<<<<<<< @@ -10367,13 +9893,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 15, 0, 0, 0, __PYX_ERR(1, 15, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 44, 0, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->kind); __pyx_r = __pyx_v_self->kind; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 15, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10382,7 +9908,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 15, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.kind.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10393,7 +9919,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pxd":16 +/* "hunter/_event.pxd":45 * readonly FrameType frame * readonly str kind * readonly object arg # <<<<<<<<<<<<<< @@ -10423,13 +9949,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 16, 0, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 45, 0, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->arg); __pyx_r = __pyx_v_self->arg; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10438,7 +9964,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 16, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.arg.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10449,7 +9975,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pxd":17 +/* "hunter/_event.pxd":46 * readonly str kind * readonly object arg * readonly int depth # <<<<<<<<<<<<<< @@ -10480,15 +10006,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 17, 0, 0, 0, __PYX_ERR(1, 17, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 46, 0, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 17, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 17, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10498,7 +10024,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 17, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10509,7 +10035,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":18 +/* "hunter/_event.pxd":47 * readonly object arg * readonly int depth * readonly int calls # <<<<<<<<<<<<<< @@ -10540,15 +10066,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 18, 0, 0, 0, __PYX_ERR(1, 18, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 47, 0, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 18, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 18, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10558,7 +10084,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 18, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10569,7 +10095,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":19 +/* "hunter/_event.pxd":48 * readonly int depth * readonly int calls * readonly bint threading_support # <<<<<<<<<<<<<< @@ -10600,15 +10126,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 19, 0, 0, 0, __PYX_ERR(1, 19, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 48, 0, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 19, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 48, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 19, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10618,7 +10144,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 19, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threading_support.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10629,7 +10155,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str return __pyx_r; } -/* "hunter/_event.pxd":20 +/* "hunter/_event.pxd":49 * readonly int calls * readonly bint threading_support * readonly bint detached # <<<<<<<<<<<<<< @@ -10660,15 +10186,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 20, 0, 0, 0, __PYX_ERR(1, 20, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 49, 0, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 20, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 20, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10678,7 +10204,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 20, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.detached.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10689,7 +10215,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pxd":21 +/* "hunter/_event.pxd":50 * readonly bint threading_support * readonly bint detached * readonly object builtin # <<<<<<<<<<<<<< @@ -10719,13 +10245,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 21, 0, 0, 0, __PYX_ERR(1, 21, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 50, 0, 0, 0, __PYX_ERR(1, 50, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 21, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 50, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10734,7 +10260,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 21, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 50, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.builtin.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10744,48 +10270,512 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "hunter/_event.pyx":362 - * - * - * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< - * limit=10): - * dedent = None +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * cdef tuple state + * cdef object _dict */ /* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, +static PyObject *__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_1yield_lines = {"yield_lines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_1yield_lines, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, +static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_13__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__(PyObject *__pyx_v_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_v_module_globals = 0; - PyObject *__pyx_v_start = 0; - PyObject *__pyx_v_collector = 0; - PyObject *__pyx_v_limit = 0; #if !CYTHON_METH_FASTCALL CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[5] = {0,0,0,0,0}; - int __pyx_lineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_SIZE + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } + const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len < 0)) return NULL; + if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} + __pyx_r = __pyx_pf_6hunter_6_event_5Event_12__reduce_cython__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_6hunter_6_event_5Event_12__reduce_cython__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { + PyObject *__pyx_v_state = 0; + PyObject *__pyx_v__dict = 0; + int __pyx_v_use_setstate; + PyObject *__pyx_r = NULL; + __Pyx_TraceDeclarationsFunc + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + int __pyx_t_6; + int __pyx_t_7; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])) + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[2], 1, 0, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); + + /* "(tree fragment)":5 + * cdef object _dict + * cdef bint use_setstate + * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) # <<<<<<<<<<<<<< + * _dict = getattr(self, '__dict__', None) + * if _dict is not None: +*/ + __Pyx_TraceLine(5,37,0,__PYX_ERR(2, 5, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = PyTuple_New(23); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_INCREF(__pyx_v_self->_code); + __Pyx_GIVEREF(__pyx_v_self->_code); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->_code) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_filename); + __Pyx_GIVEREF(__pyx_v_self->_filename); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->_filename) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_fullsource); + __Pyx_GIVEREF(__pyx_v_self->_fullsource); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_self->_fullsource) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_function); + __Pyx_GIVEREF(__pyx_v_self->_function); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_v_self->_function) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_function_object); + __Pyx_GIVEREF(__pyx_v_self->_function_object); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_v_self->_function_object) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_globals); + __Pyx_GIVEREF(__pyx_v_self->_globals); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_v_self->_globals) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_instruction); + __Pyx_GIVEREF(__pyx_v_self->_instruction); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 6, __pyx_v_self->_instruction) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_lineno); + __Pyx_GIVEREF(__pyx_v_self->_lineno); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 7, __pyx_v_self->_lineno) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_locals); + __Pyx_GIVEREF(__pyx_v_self->_locals); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 8, __pyx_v_self->_locals) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_module); + __Pyx_GIVEREF(__pyx_v_self->_module); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 9, __pyx_v_self->_module) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_source); + __Pyx_GIVEREF(__pyx_v_self->_source); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 10, __pyx_v_self->_source) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_stdlib); + __Pyx_GIVEREF(__pyx_v_self->_stdlib); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 11, __pyx_v_self->_stdlib) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_thread); + __Pyx_GIVEREF(__pyx_v_self->_thread); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 12, __pyx_v_self->_thread) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_threadidn); + __Pyx_GIVEREF(__pyx_v_self->_threadidn); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 13, __pyx_v_self->_threadidn) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->_threadname); + __Pyx_GIVEREF(__pyx_v_self->_threadname); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 14, __pyx_v_self->_threadname) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->arg); + __Pyx_GIVEREF(__pyx_v_self->arg); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 15, __pyx_v_self->arg) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->builtin); + __Pyx_GIVEREF(__pyx_v_self->builtin); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 16, __pyx_v_self->builtin) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_GIVEREF(__pyx_t_1); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 17, __pyx_t_1) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_GIVEREF(__pyx_t_2); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 18, __pyx_t_2) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_GIVEREF(__pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 19, __pyx_t_3) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->frame); + __Pyx_GIVEREF(__pyx_v_self->frame); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 20, ((PyObject *)__pyx_v_self->frame)) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_self->kind); + __Pyx_GIVEREF(__pyx_v_self->kind); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 21, __pyx_v_self->kind) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __Pyx_GIVEREF(__pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 22, __pyx_t_4) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __pyx_t_1 = 0; + __pyx_t_2 = 0; + __pyx_t_3 = 0; + __pyx_t_4 = 0; + __pyx_v_state = ((PyObject*)__pyx_t_5); + __pyx_t_5 = 0; + + /* "(tree fragment)":6 + * cdef bint use_setstate + * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) + * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< + * if _dict is not None: + * state += (_dict,) +*/ + __Pyx_TraceLine(6,50,0,__PYX_ERR(2, 6, __pyx_L1_error)) + __pyx_t_5 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 6, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_v__dict = __pyx_t_5; + __pyx_t_5 = 0; + + /* "(tree fragment)":7 + * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) + * _dict = getattr(self, '__dict__', None) + * if _dict is not None: # <<<<<<<<<<<<<< + * state += (_dict,) + * use_setstate = True +*/ + __Pyx_TraceLine(7,57,0,__PYX_ERR(2, 7, __pyx_L1_error)) + __pyx_t_6 = (__pyx_v__dict != Py_None); + if (__pyx_t_6) { + + /* "(tree fragment)":8 + * _dict = getattr(self, '__dict__', None) + * if _dict is not None: + * state += (_dict,) # <<<<<<<<<<<<<< + * use_setstate = True + * else: +*/ + __Pyx_TraceLine(8,59,0,__PYX_ERR(2, 8, __pyx_L1_error)) + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 8, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_INCREF(__pyx_v__dict); + __Pyx_GIVEREF(__pyx_v__dict); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v__dict) != (0)) __PYX_ERR(2, 8, __pyx_L1_error); + __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 8, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_4)); + __pyx_t_4 = 0; + + /* "(tree fragment)":9 + * if _dict is not None: + * state += (_dict,) + * use_setstate = True # <<<<<<<<<<<<<< + * else: + * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None +*/ + __Pyx_TraceLine(9,61,0,__PYX_ERR(2, 9, __pyx_L1_error)) + __pyx_v_use_setstate = 1; + + /* "(tree fragment)":7 + * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) + * _dict = getattr(self, '__dict__', None) + * if _dict is not None: # <<<<<<<<<<<<<< + * state += (_dict,) + * use_setstate = True +*/ + goto __pyx_L3; + } + + /* "(tree fragment)":11 + * use_setstate = True + * else: + * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None # <<<<<<<<<<<<<< + * if use_setstate: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state +*/ + __Pyx_TraceLine(11,67,0,__PYX_ERR(2, 11, __pyx_L1_error)) + /*else*/ { + __pyx_t_7 = (__pyx_v_self->_code != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_filename != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_fullsource != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_function != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_function_object != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_globals != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_instruction != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_lineno != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_locals != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_module != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_source != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_stdlib != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_thread != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_threadidn != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->_threadname != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->arg != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->builtin != Py_None); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->frame != ((FrameType)Py_None)); + if (!__pyx_t_7) { + } else { + __pyx_t_6 = __pyx_t_7; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_7 = (__pyx_v_self->kind != ((PyObject*)Py_None)); + __pyx_t_6 = __pyx_t_7; + __pyx_L4_bool_binop_done:; + __pyx_v_use_setstate = __pyx_t_6; + } + __pyx_L3:; + + /* "(tree fragment)":12 + * else: + * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None + * if use_setstate: # <<<<<<<<<<<<<< + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state + * else: +*/ + __Pyx_TraceLine(12,158,0,__PYX_ERR(2, 12, __pyx_L1_error)) + if (__pyx_v_use_setstate) { + + /* "(tree fragment)":13 + * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None + * if use_setstate: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state # <<<<<<<<<<<<<< + * else: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) +*/ + __Pyx_TraceLine(13,159,0,__PYX_ERR(2, 13, __pyx_L1_error)) + __Pyx_XDECREF(__pyx_r); + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 13, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 13, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_157141922); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_157141922); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_mstate_global->__pyx_int_157141922) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); + __Pyx_INCREF(Py_None); + __Pyx_GIVEREF(Py_None); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, Py_None) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); + __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 13, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_GIVEREF(__pyx_t_4); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); + __Pyx_GIVEREF(__pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_state); + __Pyx_GIVEREF(__pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); + __pyx_t_4 = 0; + __pyx_t_5 = 0; + __pyx_r = __pyx_t_3; + __pyx_t_3 = 0; + __Pyx_TraceReturnValue(__pyx_r, 159, 0, __PYX_ERR(2, 13, __pyx_L1_error)); + goto __pyx_L0; + + /* "(tree fragment)":12 + * else: + * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None + * if use_setstate: # <<<<<<<<<<<<<< + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state + * else: +*/ + } + + /* "(tree fragment)":15 + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state + * else: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * __pyx_unpickle_Event__set_state(self, __pyx_state) +*/ + __Pyx_TraceLine(15,167,0,__PYX_ERR(2, 15, __pyx_L1_error)) + /*else*/ { + __Pyx_XDECREF(__pyx_r); + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 15, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 15, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_mstate_global->__pyx_int_157141922); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_157141922); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_mstate_global->__pyx_int_157141922) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); + __Pyx_INCREF(__pyx_v_state); + __Pyx_GIVEREF(__pyx_v_state); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 15, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_GIVEREF(__pyx_t_3); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); + __Pyx_GIVEREF(__pyx_t_5); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); + __pyx_t_3 = 0; + __pyx_t_5 = 0; + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; + __Pyx_TraceReturnValue(__pyx_r, 167, 0, __PYX_ERR(2, 15, __pyx_L1_error)); + goto __pyx_L0; + } + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * cdef tuple state + * cdef object _dict +*/ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); + #endif + __Pyx_AddTraceback("hunter._event.Event.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XDECREF(__pyx_v_state); + __Pyx_XDECREF(__pyx_v__dict); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":16 + * else: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * __pyx_unpickle_Event__set_state(self, __pyx_state) +*/ + +/* Python wrapper */ +static PyObject *__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__(PyObject *__pyx_v_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +); /*proto*/ +static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_15__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__(PyObject *__pyx_v_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +) { + PyObject *__pyx_v___pyx_state = 0; + #if !CYTHON_METH_FASTCALL + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + #endif + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[1] = {0}; + int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("yield_lines (wrapper)", 0); + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); #if !CYTHON_METH_FASTCALL #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); @@ -10795,119 +10785,268 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_filename_2,&__pyx_mstate_global->__pyx_n_u_module_globals,&__pyx_mstate_global->__pyx_n_u_start,&__pyx_mstate_global->__pyx_n_u_collector,&__pyx_mstate_global->__pyx_n_u_limit,0}; + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 362, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(2, 16, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { - case 5: - values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 362, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 4: - values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 362, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 3: - values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 362, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 2: - values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 362, __pyx_L3_error) - CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 362, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 16, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "yield_lines", 0) < 0) __PYX_ERR(0, 362, __pyx_L3_error) - if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); - for (Py_ssize_t i = __pyx_nargs; i < 4; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, i); __PYX_ERR(0, 362, __pyx_L3_error) } + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(2, 16, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(2, 16, __pyx_L3_error) } } + } else if (unlikely(__pyx_nargs != 1)) { + goto __pyx_L5_argtuple_error; } else { - switch (__pyx_nargs) { - case 5: - values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 362, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 4: - values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 362, __pyx_L3_error) - values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 362, __pyx_L3_error) - values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 362, __pyx_L3_error) - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 362, __pyx_L3_error) - break; - default: goto __pyx_L5_argtuple_error; - } - if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 16, __pyx_L3_error) } - __pyx_v_filename = values[0]; - __pyx_v_module_globals = values[1]; - __pyx_v_start = values[2]; - __pyx_v_collector = ((PyObject*)values[3]); - __pyx_v_limit = values[4]; + __pyx_v___pyx_state = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 362, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(2, 16, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { Py_XDECREF(values[__pyx_temp]); } - __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("hunter._event.Event.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_collector), (&PyList_Type), 1, "collector", 1))) __PYX_ERR(0, 362, __pyx_L1_error) - __pyx_r = __pyx_pf_6hunter_6_event_yield_lines(__pyx_self, __pyx_v_filename, __pyx_v_module_globals, __pyx_v_start, __pyx_v_collector, __pyx_v_limit); + __pyx_r = __pyx_pf_6hunter_6_event_5Event_14__setstate_cython__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v___pyx_state); /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __pyx_r = NULL; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - goto __pyx_L7_cleaned_up; - __pyx_L0:; for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { Py_XDECREF(values[__pyx_temp]); } - __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_module_globals, PyObject *__pyx_v_start, PyObject *__pyx_v_collector, PyObject *__pyx_v_limit) { - struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope; +static PyObject *__pyx_pf_6hunter_6_event_5Event_14__setstate_cython__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v___pyx_state) { PyObject *__pyx_r = NULL; + __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("yield_lines", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(__pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines, __pyx_mstate_global->__pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)Py_None); - __Pyx_INCREF(Py_None); - __PYX_ERR(0, 362, __pyx_L1_error) - } else { - __Pyx_GOTREF((PyObject *)__pyx_cur_scope); - } - __pyx_cur_scope->__pyx_v_filename = __pyx_v_filename; - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_filename); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_filename); - __pyx_cur_scope->__pyx_v_module_globals = __pyx_v_module_globals; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])) + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[2], 16, 0, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); + + /* "(tree fragment)":17 + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) + * def __setstate_cython__(self, __pyx_state): + * __pyx_unpickle_Event__set_state(self, __pyx_state) # <<<<<<<<<<<<<< +*/ + __Pyx_TraceLine(17,4,0,__PYX_ERR(2, 17, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(2, 17, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 17, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "(tree fragment)":16 + * else: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * __pyx_unpickle_Event__set_state(self, __pyx_state) +*/ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); + #endif + __Pyx_AddTraceback("hunter._event.Event.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} +static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ + +/* "hunter/_event.pyx":344 + * + * + * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< + * limit=10): + * dedent = None +*/ + +/* Python wrapper */ +static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +); /*proto*/ +static PyMethodDef __pyx_mdef_6hunter_6_event_1yield_lines = {"yield_lines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_1yield_lines, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +) { + PyObject *__pyx_v_filename = 0; + PyObject *__pyx_v_module_globals = 0; + PyObject *__pyx_v_start = 0; + PyObject *__pyx_v_collector = 0; + PyObject *__pyx_v_limit = 0; + #if !CYTHON_METH_FASTCALL + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + #endif + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[5] = {0,0,0,0,0}; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("yield_lines (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_SIZE + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + { + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_filename_2,&__pyx_mstate_global->__pyx_n_u_module_globals,&__pyx_mstate_global->__pyx_n_u_start,&__pyx_mstate_global->__pyx_n_u_collector,&__pyx_mstate_global->__pyx_n_u_limit,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 344, __pyx_L3_error) + if (__pyx_kwds_len > 0) { + switch (__pyx_nargs) { + case 5: + values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 344, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 4: + values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 344, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 344, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 344, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 344, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "yield_lines", 0) < 0) __PYX_ERR(0, 344, __pyx_L3_error) + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); + for (Py_ssize_t i = __pyx_nargs; i < 4; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, i); __PYX_ERR(0, 344, __pyx_L3_error) } + } + } else { + switch (__pyx_nargs) { + case 5: + values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 344, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 4: + values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 344, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 344, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 344, __pyx_L3_error) + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 344, __pyx_L3_error) + break; + default: goto __pyx_L5_argtuple_error; + } + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); + } + __pyx_v_filename = values[0]; + __pyx_v_module_globals = values[1]; + __pyx_v_start = values[2]; + __pyx_v_collector = ((PyObject*)values[3]); + __pyx_v_limit = values[4]; + } + goto __pyx_L6_skip; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 344, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; + __pyx_L3_error:; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_collector), (&PyList_Type), 1, "collector", 1))) __PYX_ERR(0, 344, __pyx_L1_error) + __pyx_r = __pyx_pf_6hunter_6_event_yield_lines(__pyx_self, __pyx_v_filename, __pyx_v_module_globals, __pyx_v_start, __pyx_v_collector, __pyx_v_limit); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; + __pyx_L0:; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + __pyx_L7_cleaned_up:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_module_globals, PyObject *__pyx_v_start, PyObject *__pyx_v_collector, PyObject *__pyx_v_limit) { + struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("yield_lines", 0); + __pyx_cur_scope = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(__pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines, __pyx_mstate_global->__pyx_empty_tuple, NULL); + if (unlikely(!__pyx_cur_scope)) { + __pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)Py_None); + __Pyx_INCREF(Py_None); + __PYX_ERR(0, 344, __pyx_L1_error) + } else { + __Pyx_GOTREF((PyObject *)__pyx_cur_scope); + } + __pyx_cur_scope->__pyx_v_filename = __pyx_v_filename; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_filename); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_filename); + __pyx_cur_scope->__pyx_v_module_globals = __pyx_v_module_globals; __Pyx_INCREF(__pyx_cur_scope->__pyx_v_module_globals); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_module_globals); __pyx_cur_scope->__pyx_v_start = __pyx_v_start; @@ -10920,7 +11059,7 @@ static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__ __Pyx_INCREF(__pyx_cur_scope->__pyx_v_limit); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_limit); { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_6_event_2generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_hunter__event); if (unlikely(!gen)) __PYX_ERR(0, 362, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_6_event_2generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_hunter__event); if (unlikely(!gen)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -10962,50 +11101,50 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L7_resume_from_yield; default: /* CPython raises the right error here */ - __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 362, 0, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); + __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 344, 0, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 362, 0, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); + __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 344, 0, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); if (unlikely(__pyx_sent_value != Py_None)) { if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator"); - __PYX_ERR(0, 362, __pyx_L1_error) + __PYX_ERR(0, 344, __pyx_L1_error) } - /* "hunter/_event.pyx":364 + /* "hunter/_event.pyx":346 * def yield_lines(filename, module_globals, start, list collector, * limit=10): * dedent = None # <<<<<<<<<<<<<< * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: */ - __Pyx_TraceLine(364,0,0,__PYX_ERR(0, 364, __pyx_L1_error)) + __Pyx_TraceLine(346,0,0,__PYX_ERR(0, 346, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __pyx_cur_scope->__pyx_v_dedent = Py_None; - /* "hunter/_event.pyx":365 + /* "hunter/_event.pyx":347 * limit=10): * dedent = None * amount = 0 # <<<<<<<<<<<<<< * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: */ - __Pyx_TraceLine(365,0,0,__PYX_ERR(0, 365, __pyx_L1_error)) + __Pyx_TraceLine(347,0,0,__PYX_ERR(0, 347, __pyx_L1_error)) __pyx_cur_scope->__pyx_v_amount = 0; - /* "hunter/_event.pyx":366 + /* "hunter/_event.pyx":348 * dedent = None * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: # <<<<<<<<<<<<<< * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) */ - __Pyx_TraceLine(366,0,0,__PYX_ERR(0, 366, __pyx_L1_error)) + __Pyx_TraceLine(348,0,0,__PYX_ERR(0, 348, __pyx_L1_error)) __pyx_t_2 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS @@ -11024,12 +11163,12 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 366, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } - __pyx_t_3 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error) + __pyx_t_3 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_1, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_t_3, NULL, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_1, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_t_3, NULL, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -11038,9 +11177,9 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_5 = 0; __pyx_t_6 = NULL; } else { - __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 366, __pyx_L1_error) + __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 366, __pyx_L1_error) + __pyx_t_6 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 348, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; for (;;) { @@ -11049,7 +11188,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 366, __pyx_L1_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 348, __pyx_L1_error) #endif if (__pyx_t_5 >= __pyx_temp) break; } @@ -11059,7 +11198,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_3); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 366, __pyx_L1_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 348, __pyx_L1_error) #endif if (__pyx_t_5 >= __pyx_temp) break; } @@ -11070,13 +11209,13 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py #endif ++__pyx_t_5; } - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 348, __pyx_L1_error) } else { __pyx_t_2 = __pyx_t_6(__pyx_t_3); if (unlikely(!__pyx_t_2)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 366, __pyx_L1_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 348, __pyx_L1_error) PyErr_Clear(); } break; @@ -11087,31 +11226,31 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_line, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_TraceLine(366,0,0,__PYX_ERR(0, 366, __pyx_L1_error)) + __Pyx_TraceLine(348,0,0,__PYX_ERR(0, 348, __pyx_L1_error)) - /* "hunter/_event.pyx":367 + /* "hunter/_event.pyx":349 * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: # <<<<<<<<<<<<<< * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' */ - __Pyx_TraceLine(367,0,0,__PYX_ERR(0, 367, __pyx_L1_error)) + __Pyx_TraceLine(349,0,0,__PYX_ERR(0, 349, __pyx_L1_error)) __pyx_t_7 = (__pyx_cur_scope->__pyx_v_dedent == Py_None); if (__pyx_t_7) { - /* "hunter/_event.pyx":368 + /* "hunter/_event.pyx":350 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) # <<<<<<<<<<<<<< * dedent = dedent[0] if dedent else '' * amount = len(dedent) */ - __Pyx_TraceLine(368,0,0,__PYX_ERR(0, 368, __pyx_L1_error)) + __Pyx_TraceLine(350,0,0,__PYX_ERR(0, 350, __pyx_L1_error)) __pyx_t_1 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 368, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_findall); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 368, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_findall); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_4 = 1; @@ -11131,7 +11270,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_dedent); @@ -11139,41 +11278,41 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":369 + /* "hunter/_event.pyx":351 * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' # <<<<<<<<<<<<<< * amount = len(dedent) * elif not line.startswith(dedent): */ - __Pyx_TraceLine(369,0,0,__PYX_ERR(0, 369, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_dedent); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 369, __pyx_L1_error) + __Pyx_TraceLine(351,0,0,__PYX_ERR(0, 351, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_dedent); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 351, __pyx_L1_error) if (__pyx_t_7) { - __pyx_t_9 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_dedent, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 369, __pyx_L1_error) + __pyx_t_9 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_dedent, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_2 = __pyx_t_9; __pyx_t_9 = 0; } else { - __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); - __pyx_t_2 = __pyx_mstate_global->__pyx_kp_u__3; + __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__2); + __pyx_t_2 = __pyx_mstate_global->__pyx_kp_u__2; } __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_dedent); __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_dedent, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":370 + /* "hunter/_event.pyx":352 * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' * amount = len(dedent) # <<<<<<<<<<<<<< * elif not line.startswith(dedent): * break */ - __Pyx_TraceLine(370,0,0,__PYX_ERR(0, 370, __pyx_L1_error)) - __pyx_t_10 = PyObject_Length(__pyx_cur_scope->__pyx_v_dedent); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 370, __pyx_L1_error) + __Pyx_TraceLine(352,0,0,__PYX_ERR(0, 352, __pyx_L1_error)) + __pyx_t_10 = PyObject_Length(__pyx_cur_scope->__pyx_v_dedent); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 352, __pyx_L1_error) __pyx_cur_scope->__pyx_v_amount = __pyx_t_10; - /* "hunter/_event.pyx":367 + /* "hunter/_event.pyx":349 * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: # <<<<<<<<<<<<<< @@ -11183,14 +11322,14 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py goto __pyx_L6; } - /* "hunter/_event.pyx":371 + /* "hunter/_event.pyx":353 * dedent = dedent[0] if dedent else '' * amount = len(dedent) * elif not line.startswith(dedent): # <<<<<<<<<<<<<< * break * collector.append(line) */ - __Pyx_TraceLine(371,0,0,__PYX_ERR(0, 371, __pyx_L1_error)) + __Pyx_TraceLine(353,0,0,__PYX_ERR(0, 353, __pyx_L1_error)) __pyx_t_9 = __pyx_cur_scope->__pyx_v_line; __Pyx_INCREF(__pyx_t_9); __pyx_t_4 = 0; @@ -11198,25 +11337,25 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_cur_scope->__pyx_v_dedent}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 371, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_11 = (!__pyx_t_7); if (__pyx_t_11) { - /* "hunter/_event.pyx":372 + /* "hunter/_event.pyx":354 * amount = len(dedent) * elif not line.startswith(dedent): * break # <<<<<<<<<<<<<< * collector.append(line) * yield line[amount:] */ - __Pyx_TraceLine(372,0,0,__PYX_ERR(0, 372, __pyx_L1_error)) + __Pyx_TraceLine(354,0,0,__PYX_ERR(0, 354, __pyx_L1_error)) goto __pyx_L5_break; - /* "hunter/_event.pyx":371 + /* "hunter/_event.pyx":353 * dedent = dedent[0] if dedent else '' * amount = len(dedent) * elif not line.startswith(dedent): # <<<<<<<<<<<<<< @@ -11226,29 +11365,29 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py } __pyx_L6:; - /* "hunter/_event.pyx":373 + /* "hunter/_event.pyx":355 * elif not line.startswith(dedent): * break * collector.append(line) # <<<<<<<<<<<<<< * yield line[amount:] * */ - __Pyx_TraceLine(373,0,0,__PYX_ERR(0, 373, __pyx_L1_error)) + __Pyx_TraceLine(355,0,0,__PYX_ERR(0, 355, __pyx_L1_error)) if (unlikely(__pyx_cur_scope->__pyx_v_collector == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "append"); - __PYX_ERR(0, 373, __pyx_L1_error) + __PYX_ERR(0, 355, __pyx_L1_error) } - __pyx_t_12 = __Pyx_PyList_Append(__pyx_cur_scope->__pyx_v_collector, __pyx_cur_scope->__pyx_v_line); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(0, 373, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyList_Append(__pyx_cur_scope->__pyx_v_collector, __pyx_cur_scope->__pyx_v_line); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(0, 355, __pyx_L1_error) - /* "hunter/_event.pyx":374 + /* "hunter/_event.pyx":356 * break * collector.append(line) * yield line[amount:] # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(374,0,0,__PYX_ERR(0, 374, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_line, __pyx_cur_scope->__pyx_v_amount, 0, NULL, NULL, NULL, 1, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 374, __pyx_L1_error) + __Pyx_TraceLine(356,0,0,__PYX_ERR(0, 356, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_line, __pyx_cur_scope->__pyx_v_amount, 0, NULL, NULL, NULL, 1, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; @@ -11256,7 +11395,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_cur_scope->__pyx_t_0 = __pyx_t_3; __pyx_cur_scope->__pyx_t_1 = __pyx_t_5; __pyx_cur_scope->__pyx_t_2 = __pyx_t_6; - __Pyx_TraceYield(__pyx_r, 0, __PYX_ERR(0, 374, __pyx_L1_error)); + __Pyx_TraceYield(__pyx_r, 0, __PYX_ERR(0, 356, __pyx_L1_error)); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); __Pyx_Coroutine_ResetAndClearException(__pyx_generator); @@ -11264,22 +11403,22 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L7_resume_from_yield:; - __Pyx_TraceResumeGen("yield_lines", __pyx_f[0], 362, 0, __PYX_ERR(0, 374, __pyx_L1_error)); + __Pyx_TraceResumeGen("yield_lines", __pyx_f[0], 344, 0, __PYX_ERR(0, 356, __pyx_L1_error)); __pyx_t_3 = __pyx_cur_scope->__pyx_t_0; __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_3); __pyx_t_5 = __pyx_cur_scope->__pyx_t_1; __pyx_t_6 = __pyx_cur_scope->__pyx_t_2; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 374, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 356, __pyx_L1_error) - /* "hunter/_event.pyx":366 + /* "hunter/_event.pyx":348 * dedent = None * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: # <<<<<<<<<<<<<< * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) */ - __Pyx_TraceLine(366,0,0,__PYX_ERR(0, 366, __pyx_L1_error)) + __Pyx_TraceLine(348,0,0,__PYX_ERR(0, 348, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L8_for_end; @@ -11288,9 +11427,9 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py goto __pyx_L8_for_end; __pyx_L8_for_end:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); - /* "hunter/_event.pyx":362 + /* "hunter/_event.pyx":344 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< @@ -11325,7 +11464,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py return __pyx_r; } -/* "hunter/_event.pyx":377 +/* "hunter/_event.pyx":359 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< @@ -11356,19 +11495,19 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])) __Pyx_RefNannySetupContext("fast_detach", 0); - __Pyx_TraceStartFunc("fast_detach", __pyx_f[0], 377, 0, 0, 0, __PYX_ERR(0, 377, __pyx_L1_error)); + __Pyx_TraceStartFunc("fast_detach", __pyx_f[0], 359, 0, 0, 0, __PYX_ERR(0, 359, __pyx_L1_error)); - /* "hunter/_event.pyx":378 + /* "hunter/_event.pyx":360 * * cdef inline Event fast_detach(Event self, object value_filter): * event = Event.__new__(Event) # <<<<<<<<<<<<<< * * event._code = self.code_getter() */ - __Pyx_TraceLine(378,5,0,__PYX_ERR(0, 378, __pyx_L1_error)) - __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 378, __pyx_L1_error) + __Pyx_TraceLine(360,5,0,__PYX_ERR(0, 360, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 360, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); __pyx_t_2 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_2); @@ -11376,15 +11515,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":380 + /* "hunter/_event.pyx":362 * event = Event.__new__(Event) * * event._code = self.code_getter() # <<<<<<<<<<<<<< * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() */ - __Pyx_TraceLine(380,11,0,__PYX_ERR(0, 380, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 380, __pyx_L1_error) + __Pyx_TraceLine(362,11,0,__PYX_ERR(0, 362, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_code); @@ -11392,15 +11531,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_code = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":381 + /* "hunter/_event.pyx":363 * * event._code = self.code_getter() * event._filename = self.filename_getter() # <<<<<<<<<<<<<< * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object */ - __Pyx_TraceLine(381,16,0,__PYX_ERR(0, 381, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 381, __pyx_L1_error) + __Pyx_TraceLine(363,16,0,__PYX_ERR(0, 363, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_filename); @@ -11408,15 +11547,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":382 + /* "hunter/_event.pyx":364 * event._code = self.code_getter() * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() # <<<<<<<<<<<<<< * event._function_object = self._function_object * event._function = self.function_getter() */ - __Pyx_TraceLine(382,21,0,__PYX_ERR(0, 382, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 382, __pyx_L1_error) + __Pyx_TraceLine(364,21,0,__PYX_ERR(0, 364, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 364, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_fullsource); @@ -11424,14 +11563,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_fullsource = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":383 + /* "hunter/_event.pyx":365 * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object # <<<<<<<<<<<<<< * event._function = self.function_getter() * event._lineno = self.lineno_getter() */ - __Pyx_TraceLine(383,25,0,__PYX_ERR(0, 383, __pyx_L1_error)) + __Pyx_TraceLine(365,25,0,__PYX_ERR(0, 365, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function_object; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11440,15 +11579,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function_object = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":384 + /* "hunter/_event.pyx":366 * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object * event._function = self.function_getter() # <<<<<<<<<<<<<< * event._lineno = self.lineno_getter() * event._module = self.module_getter() */ - __Pyx_TraceLine(384,30,0,__PYX_ERR(0, 384, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 384, __pyx_L1_error) + __Pyx_TraceLine(366,30,0,__PYX_ERR(0, 366, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_function); @@ -11456,15 +11595,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":385 + /* "hunter/_event.pyx":367 * event._function_object = self._function_object * event._function = self.function_getter() * event._lineno = self.lineno_getter() # <<<<<<<<<<<<<< * event._module = self.module_getter() * event._source = self.source_getter() */ - __Pyx_TraceLine(385,35,0,__PYX_ERR(0, 385, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 385, __pyx_L1_error) + __Pyx_TraceLine(367,35,0,__PYX_ERR(0, 367, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_lineno); @@ -11472,15 +11611,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_lineno = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":386 + /* "hunter/_event.pyx":368 * event._function = self.function_getter() * event._lineno = self.lineno_getter() * event._module = self.module_getter() # <<<<<<<<<<<<<< * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() */ - __Pyx_TraceLine(386,40,0,__PYX_ERR(0, 386, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 386, __pyx_L1_error) + __Pyx_TraceLine(368,40,0,__PYX_ERR(0, 368, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_module); @@ -11488,15 +11627,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":387 + /* "hunter/_event.pyx":369 * event._lineno = self.lineno_getter() * event._module = self.module_getter() * event._source = self.source_getter() # <<<<<<<<<<<<<< * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() */ - __Pyx_TraceLine(387,45,0,__PYX_ERR(0, 387, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 387, __pyx_L1_error) + __Pyx_TraceLine(369,45,0,__PYX_ERR(0, 369, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_source); @@ -11504,15 +11643,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_source = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":388 + /* "hunter/_event.pyx":370 * event._module = self.module_getter() * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() # <<<<<<<<<<<<<< * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() */ - __Pyx_TraceLine(388,50,0,__PYX_ERR(0, 388, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 388, __pyx_L1_error) + __Pyx_TraceLine(370,50,0,__PYX_ERR(0, 370, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_stdlib); @@ -11520,15 +11659,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_stdlib = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":389 + /* "hunter/_event.pyx":371 * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() # <<<<<<<<<<<<<< * event._threadname = self.threadname_getter() * event._instruction = self.instruction_getter() */ - __Pyx_TraceLine(389,55,0,__PYX_ERR(0, 389, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 389, __pyx_L1_error) + __Pyx_TraceLine(371,55,0,__PYX_ERR(0, 371, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_threadidn); @@ -11536,15 +11675,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadidn = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":390 + /* "hunter/_event.pyx":372 * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() # <<<<<<<<<<<<<< * event._instruction = self.instruction_getter() * */ - __Pyx_TraceLine(390,60,0,__PYX_ERR(0, 390, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 390, __pyx_L1_error) + __Pyx_TraceLine(372,60,0,__PYX_ERR(0, 372, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_threadname); @@ -11552,15 +11691,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":391 + /* "hunter/_event.pyx":373 * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() * event._instruction = self.instruction_getter() # <<<<<<<<<<<<<< * * if value_filter: */ - __Pyx_TraceLine(391,65,0,__PYX_ERR(0, 391, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 391, __pyx_L1_error) + __Pyx_TraceLine(373,65,0,__PYX_ERR(0, 373, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 373, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_instruction); @@ -11568,36 +11707,36 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_instruction = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":393 + /* "hunter/_event.pyx":375 * event._instruction = self.instruction_getter() * * if value_filter: # <<<<<<<<<<<<<< * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} */ - __Pyx_TraceLine(393,67,0,__PYX_ERR(0, 393, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_value_filter); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 393, __pyx_L1_error) + __Pyx_TraceLine(375,67,0,__PYX_ERR(0, 375, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_value_filter); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 375, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_event.pyx":394 + /* "hunter/_event.pyx":376 * * if value_filter: * event._globals = {key: value_filter(value) for key, value in self.globals.items()} # <<<<<<<<<<<<<< * event._locals = {key: value_filter(value) for key, value in self.locals.items()} * event.arg = value_filter(self.arg) */ - __Pyx_TraceLine(394,70,0,__PYX_ERR(0, 394, __pyx_L1_error)) + __Pyx_TraceLine(376,70,0,__PYX_ERR(0, 376, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 394, __pyx_L6_error) + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 376, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 394, __pyx_L6_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 376, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_7); if (unlikely(__pyx_t_7 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items"); - __PYX_ERR(0, 394, __pyx_L6_error) + __PYX_ERR(0, 376, __pyx_L6_error) } - __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 394, __pyx_L6_error) + __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 376, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_1); @@ -11606,7 +11745,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e while (1) { __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_5, &__pyx_t_4, &__pyx_t_8, &__pyx_t_7, NULL, __pyx_t_6); if (unlikely(__pyx_t_9 == 0)) break; - if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 394, __pyx_L6_error) + if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 376, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_key, __pyx_t_8); @@ -11633,10 +11772,10 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 394, __pyx_L6_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 376, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_7); } - if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_7genexpr__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 394, __pyx_L6_error) + if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_7genexpr__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 376, __pyx_L6_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11655,25 +11794,25 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":395 + /* "hunter/_event.pyx":377 * if value_filter: * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} # <<<<<<<<<<<<<< * event.arg = value_filter(self.arg) * else: */ - __Pyx_TraceLine(395,84,0,__PYX_ERR(0, 395, __pyx_L1_error)) + __Pyx_TraceLine(377,84,0,__PYX_ERR(0, 377, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 395, __pyx_L12_error) + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 377, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 395, __pyx_L12_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 377, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_7); if (unlikely(__pyx_t_7 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items"); - __PYX_ERR(0, 395, __pyx_L12_error) + __PYX_ERR(0, 377, __pyx_L12_error) } - __pyx_t_10 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_4), (&__pyx_t_6)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 395, __pyx_L12_error) + __pyx_t_10 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_4), (&__pyx_t_6)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 377, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_1); @@ -11682,7 +11821,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e while (1) { __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_4, &__pyx_t_5, &__pyx_t_10, &__pyx_t_7, NULL, __pyx_t_6); if (unlikely(__pyx_t_9 == 0)) break; - if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 395, __pyx_L12_error) + if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 377, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_key, __pyx_t_10); @@ -11709,10 +11848,10 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 395, __pyx_L12_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 377, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_7); } - if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 395, __pyx_L12_error) + if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 377, __pyx_L12_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11731,14 +11870,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":396 + /* "hunter/_event.pyx":378 * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} * event.arg = value_filter(self.arg) # <<<<<<<<<<<<<< * else: * event._globals = {} */ - __Pyx_TraceLine(396,99,0,__PYX_ERR(0, 396, __pyx_L1_error)) + __Pyx_TraceLine(378,99,0,__PYX_ERR(0, 378, __pyx_L1_error)) __pyx_t_1 = NULL; __Pyx_INCREF(__pyx_v_value_filter); __pyx_t_7 = __pyx_v_value_filter; @@ -11759,7 +11898,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 396, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 378, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_GIVEREF(__pyx_t_2); @@ -11768,7 +11907,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":393 + /* "hunter/_event.pyx":375 * event._instruction = self.instruction_getter() * * if value_filter: # <<<<<<<<<<<<<< @@ -11778,16 +11917,16 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e goto __pyx_L3; } - /* "hunter/_event.pyx":398 + /* "hunter/_event.pyx":380 * event.arg = value_filter(self.arg) * else: * event._globals = {} # <<<<<<<<<<<<<< * event._locals = {} * event.arg = None */ - __Pyx_TraceLine(398,102,0,__PYX_ERR(0, 398, __pyx_L1_error)) + __Pyx_TraceLine(380,102,0,__PYX_ERR(0, 380, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 398, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_globals); @@ -11795,15 +11934,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":399 + /* "hunter/_event.pyx":381 * else: * event._globals = {} * event._locals = {} # <<<<<<<<<<<<<< * event.arg = None * */ - __Pyx_TraceLine(399,107,0,__PYX_ERR(0, 399, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 399, __pyx_L1_error) + __Pyx_TraceLine(381,107,0,__PYX_ERR(0, 381, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 381, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_locals); @@ -11811,14 +11950,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":400 + /* "hunter/_event.pyx":382 * event._globals = {} * event._locals = {} * event.arg = None # <<<<<<<<<<<<<< * * event.builtin = self.builtin */ - __Pyx_TraceLine(400,108,0,__PYX_ERR(0, 400, __pyx_L1_error)) + __Pyx_TraceLine(382,108,0,__PYX_ERR(0, 382, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_event->arg); @@ -11827,14 +11966,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e } __pyx_L3:; - /* "hunter/_event.pyx":402 + /* "hunter/_event.pyx":384 * event.arg = None * * event.builtin = self.builtin # <<<<<<<<<<<<<< * event.calls = self.calls * event.depth = self.depth */ - __Pyx_TraceLine(402,114,0,__PYX_ERR(0, 402, __pyx_L1_error)) + __Pyx_TraceLine(384,114,0,__PYX_ERR(0, 384, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->builtin; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11843,46 +11982,46 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->builtin = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":403 + /* "hunter/_event.pyx":385 * * event.builtin = self.builtin * event.calls = self.calls # <<<<<<<<<<<<<< * event.depth = self.depth * event.detached = True */ - __Pyx_TraceLine(403,118,0,__PYX_ERR(0, 403, __pyx_L1_error)) + __Pyx_TraceLine(385,118,0,__PYX_ERR(0, 385, __pyx_L1_error)) __pyx_t_6 = __pyx_v_self->calls; __pyx_v_event->calls = __pyx_t_6; - /* "hunter/_event.pyx":404 + /* "hunter/_event.pyx":386 * event.builtin = self.builtin * event.calls = self.calls * event.depth = self.depth # <<<<<<<<<<<<<< * event.detached = True * event.kind = self.kind */ - __Pyx_TraceLine(404,122,0,__PYX_ERR(0, 404, __pyx_L1_error)) + __Pyx_TraceLine(386,122,0,__PYX_ERR(0, 386, __pyx_L1_error)) __pyx_t_6 = __pyx_v_self->depth; __pyx_v_event->depth = __pyx_t_6; - /* "hunter/_event.pyx":405 + /* "hunter/_event.pyx":387 * event.calls = self.calls * event.depth = self.depth * event.detached = True # <<<<<<<<<<<<<< * event.kind = self.kind * event.threading_support = self.threading_support */ - __Pyx_TraceLine(405,123,0,__PYX_ERR(0, 405, __pyx_L1_error)) + __Pyx_TraceLine(387,123,0,__PYX_ERR(0, 387, __pyx_L1_error)) __pyx_v_event->detached = 1; - /* "hunter/_event.pyx":406 + /* "hunter/_event.pyx":388 * event.depth = self.depth * event.detached = True * event.kind = self.kind # <<<<<<<<<<<<<< * event.threading_support = self.threading_support * */ - __Pyx_TraceLine(406,129,0,__PYX_ERR(0, 406, __pyx_L1_error)) + __Pyx_TraceLine(388,129,0,__PYX_ERR(0, 388, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->kind; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11891,32 +12030,32 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->kind = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":407 + /* "hunter/_event.pyx":389 * event.detached = True * event.kind = self.kind * event.threading_support = self.threading_support # <<<<<<<<<<<<<< * * return event */ - __Pyx_TraceLine(407,133,0,__PYX_ERR(0, 407, __pyx_L1_error)) + __Pyx_TraceLine(389,133,0,__PYX_ERR(0, 389, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->threading_support; __pyx_v_event->threading_support = __pyx_t_3; - /* "hunter/_event.pyx":409 + /* "hunter/_event.pyx":391 * event.threading_support = self.threading_support * * return event # <<<<<<<<<<<<<< * * cdef inline Event fast_clone(Event self): */ - __Pyx_TraceLine(409,134,0,__PYX_ERR(0, 409, __pyx_L1_error)) + __Pyx_TraceLine(391,134,0,__PYX_ERR(0, 391, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_event); __pyx_r = __pyx_v_event; - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 134, 0, __PYX_ERR(0, 409, __pyx_L1_error)); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 134, 0, __PYX_ERR(0, 391, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":377 + /* "hunter/_event.pyx":359 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< @@ -11935,7 +12074,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 377, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 359, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.fast_detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -11951,7 +12090,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e return __pyx_r; } -/* "hunter/_event.pyx":411 +/* "hunter/_event.pyx":393 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< @@ -11971,19 +12110,19 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[45])) __Pyx_RefNannySetupContext("fast_clone", 0); - __Pyx_TraceStartFunc("fast_clone", __pyx_f[0], 411, 0, 0, 0, __PYX_ERR(0, 411, __pyx_L1_error)); + __Pyx_TraceStartFunc("fast_clone", __pyx_f[0], 393, 0, 0, 0, __PYX_ERR(0, 393, __pyx_L1_error)); - /* "hunter/_event.pyx":412 + /* "hunter/_event.pyx":394 * * cdef inline Event fast_clone(Event self): * event = Event.__new__(Event) # <<<<<<<<<<<<<< * event.arg = self.arg * event.builtin = self.builtin */ - __Pyx_TraceLine(412,5,0,__PYX_ERR(0, 412, __pyx_L1_error)) - __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 412, __pyx_L1_error) + __Pyx_TraceLine(394,5,0,__PYX_ERR(0, 394, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 394, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); __pyx_t_2 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_2); @@ -11991,14 +12130,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":413 + /* "hunter/_event.pyx":395 * cdef inline Event fast_clone(Event self): * event = Event.__new__(Event) * event.arg = self.arg # <<<<<<<<<<<<<< * event.builtin = self.builtin * event.calls = self.calls */ - __Pyx_TraceLine(413,10,0,__PYX_ERR(0, 413, __pyx_L1_error)) + __Pyx_TraceLine(395,10,0,__PYX_ERR(0, 395, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->arg; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12007,14 +12146,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":414 + /* "hunter/_event.pyx":396 * event = Event.__new__(Event) * event.arg = self.arg * event.builtin = self.builtin # <<<<<<<<<<<<<< * event.calls = self.calls * event.depth = self.depth */ - __Pyx_TraceLine(414,14,0,__PYX_ERR(0, 414, __pyx_L1_error)) + __Pyx_TraceLine(396,14,0,__PYX_ERR(0, 396, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->builtin; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12023,46 +12162,46 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->builtin = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":415 + /* "hunter/_event.pyx":397 * event.arg = self.arg * event.builtin = self.builtin * event.calls = self.calls # <<<<<<<<<<<<<< * event.depth = self.depth * event.detached = False */ - __Pyx_TraceLine(415,18,0,__PYX_ERR(0, 415, __pyx_L1_error)) + __Pyx_TraceLine(397,18,0,__PYX_ERR(0, 397, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->calls; __pyx_v_event->calls = __pyx_t_3; - /* "hunter/_event.pyx":416 + /* "hunter/_event.pyx":398 * event.builtin = self.builtin * event.calls = self.calls * event.depth = self.depth # <<<<<<<<<<<<<< * event.detached = False * event.frame = self.frame */ - __Pyx_TraceLine(416,22,0,__PYX_ERR(0, 416, __pyx_L1_error)) + __Pyx_TraceLine(398,22,0,__PYX_ERR(0, 398, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->depth; __pyx_v_event->depth = __pyx_t_3; - /* "hunter/_event.pyx":417 + /* "hunter/_event.pyx":399 * event.calls = self.calls * event.depth = self.depth * event.detached = False # <<<<<<<<<<<<<< * event.frame = self.frame * event.kind = self.kind */ - __Pyx_TraceLine(417,23,0,__PYX_ERR(0, 417, __pyx_L1_error)) + __Pyx_TraceLine(399,23,0,__PYX_ERR(0, 399, __pyx_L1_error)) __pyx_v_event->detached = 0; - /* "hunter/_event.pyx":418 + /* "hunter/_event.pyx":400 * event.depth = self.depth * event.detached = False * event.frame = self.frame # <<<<<<<<<<<<<< * event.kind = self.kind * event.threading_support = self.threading_support */ - __Pyx_TraceLine(418,29,0,__PYX_ERR(0, 418, __pyx_L1_error)) + __Pyx_TraceLine(400,29,0,__PYX_ERR(0, 400, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12071,14 +12210,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->frame = ((FrameType)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":419 + /* "hunter/_event.pyx":401 * event.detached = False * event.frame = self.frame * event.kind = self.kind # <<<<<<<<<<<<<< * event.threading_support = self.threading_support * event._code = self._code */ - __Pyx_TraceLine(419,33,0,__PYX_ERR(0, 419, __pyx_L1_error)) + __Pyx_TraceLine(401,33,0,__PYX_ERR(0, 401, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->kind; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12087,25 +12226,25 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->kind = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":420 + /* "hunter/_event.pyx":402 * event.frame = self.frame * event.kind = self.kind * event.threading_support = self.threading_support # <<<<<<<<<<<<<< * event._code = self._code * event._filename = self._filename */ - __Pyx_TraceLine(420,37,0,__PYX_ERR(0, 420, __pyx_L1_error)) + __Pyx_TraceLine(402,37,0,__PYX_ERR(0, 402, __pyx_L1_error)) __pyx_t_4 = __pyx_v_self->threading_support; __pyx_v_event->threading_support = __pyx_t_4; - /* "hunter/_event.pyx":421 + /* "hunter/_event.pyx":403 * event.kind = self.kind * event.threading_support = self.threading_support * event._code = self._code # <<<<<<<<<<<<<< * event._filename = self._filename * event._fullsource = self._fullsource */ - __Pyx_TraceLine(421,41,0,__PYX_ERR(0, 421, __pyx_L1_error)) + __Pyx_TraceLine(403,41,0,__PYX_ERR(0, 403, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_code; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12114,14 +12253,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_code = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":422 + /* "hunter/_event.pyx":404 * event.threading_support = self.threading_support * event._code = self._code * event._filename = self._filename # <<<<<<<<<<<<<< * event._fullsource = self._fullsource * event._function_object = self._function_object */ - __Pyx_TraceLine(422,45,0,__PYX_ERR(0, 422, __pyx_L1_error)) + __Pyx_TraceLine(404,45,0,__PYX_ERR(0, 404, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_filename; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12130,14 +12269,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":423 + /* "hunter/_event.pyx":405 * event._code = self._code * event._filename = self._filename * event._fullsource = self._fullsource # <<<<<<<<<<<<<< * event._function_object = self._function_object * event._function = self._function */ - __Pyx_TraceLine(423,49,0,__PYX_ERR(0, 423, __pyx_L1_error)) + __Pyx_TraceLine(405,49,0,__PYX_ERR(0, 405, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_fullsource; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12146,14 +12285,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_fullsource = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":424 + /* "hunter/_event.pyx":406 * event._filename = self._filename * event._fullsource = self._fullsource * event._function_object = self._function_object # <<<<<<<<<<<<<< * event._function = self._function * event._globals = self._globals */ - __Pyx_TraceLine(424,53,0,__PYX_ERR(0, 424, __pyx_L1_error)) + __Pyx_TraceLine(406,53,0,__PYX_ERR(0, 406, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function_object; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12162,14 +12301,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function_object = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":425 + /* "hunter/_event.pyx":407 * event._fullsource = self._fullsource * event._function_object = self._function_object * event._function = self._function # <<<<<<<<<<<<<< * event._globals = self._globals * event._lineno = self._lineno */ - __Pyx_TraceLine(425,57,0,__PYX_ERR(0, 425, __pyx_L1_error)) + __Pyx_TraceLine(407,57,0,__PYX_ERR(0, 407, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12178,14 +12317,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":426 + /* "hunter/_event.pyx":408 * event._function_object = self._function_object * event._function = self._function * event._globals = self._globals # <<<<<<<<<<<<<< * event._lineno = self._lineno * event._locals = self._locals */ - __Pyx_TraceLine(426,61,0,__PYX_ERR(0, 426, __pyx_L1_error)) + __Pyx_TraceLine(408,61,0,__PYX_ERR(0, 408, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_globals; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12194,14 +12333,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":427 + /* "hunter/_event.pyx":409 * event._function = self._function * event._globals = self._globals * event._lineno = self._lineno # <<<<<<<<<<<<<< * event._locals = self._locals * event._module = self._module */ - __Pyx_TraceLine(427,65,0,__PYX_ERR(0, 427, __pyx_L1_error)) + __Pyx_TraceLine(409,65,0,__PYX_ERR(0, 409, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_lineno; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12210,14 +12349,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_lineno = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":428 + /* "hunter/_event.pyx":410 * event._globals = self._globals * event._lineno = self._lineno * event._locals = self._locals # <<<<<<<<<<<<<< * event._module = self._module * event._source = self._source */ - __Pyx_TraceLine(428,69,0,__PYX_ERR(0, 428, __pyx_L1_error)) + __Pyx_TraceLine(410,69,0,__PYX_ERR(0, 410, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_locals; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12226,14 +12365,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":429 + /* "hunter/_event.pyx":411 * event._lineno = self._lineno * event._locals = self._locals * event._module = self._module # <<<<<<<<<<<<<< * event._source = self._source * event._stdlib = self._stdlib */ - __Pyx_TraceLine(429,73,0,__PYX_ERR(0, 429, __pyx_L1_error)) + __Pyx_TraceLine(411,73,0,__PYX_ERR(0, 411, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_module; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12242,14 +12381,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":430 + /* "hunter/_event.pyx":412 * event._locals = self._locals * event._module = self._module * event._source = self._source # <<<<<<<<<<<<<< * event._stdlib = self._stdlib * event._threadidn = self._threadidn */ - __Pyx_TraceLine(430,77,0,__PYX_ERR(0, 430, __pyx_L1_error)) + __Pyx_TraceLine(412,77,0,__PYX_ERR(0, 412, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_source; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12258,14 +12397,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_source = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":431 + /* "hunter/_event.pyx":413 * event._module = self._module * event._source = self._source * event._stdlib = self._stdlib # <<<<<<<<<<<<<< * event._threadidn = self._threadidn * event._threadname = self._threadname */ - __Pyx_TraceLine(431,81,0,__PYX_ERR(0, 431, __pyx_L1_error)) + __Pyx_TraceLine(413,81,0,__PYX_ERR(0, 413, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_stdlib; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12274,14 +12413,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_stdlib = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":432 + /* "hunter/_event.pyx":414 * event._source = self._source * event._stdlib = self._stdlib * event._threadidn = self._threadidn # <<<<<<<<<<<<<< * event._threadname = self._threadname * event._thread = self._thread */ - __Pyx_TraceLine(432,85,0,__PYX_ERR(0, 432, __pyx_L1_error)) + __Pyx_TraceLine(414,85,0,__PYX_ERR(0, 414, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_threadidn; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12290,14 +12429,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadidn = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":433 + /* "hunter/_event.pyx":415 * event._stdlib = self._stdlib * event._threadidn = self._threadidn * event._threadname = self._threadname # <<<<<<<<<<<<<< * event._thread = self._thread * event._instruction = self._instruction */ - __Pyx_TraceLine(433,89,0,__PYX_ERR(0, 433, __pyx_L1_error)) + __Pyx_TraceLine(415,89,0,__PYX_ERR(0, 415, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_threadname; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12306,14 +12445,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":434 + /* "hunter/_event.pyx":416 * event._threadidn = self._threadidn * event._threadname = self._threadname * event._thread = self._thread # <<<<<<<<<<<<<< * event._instruction = self._instruction * return event */ - __Pyx_TraceLine(434,93,0,__PYX_ERR(0, 434, __pyx_L1_error)) + __Pyx_TraceLine(416,93,0,__PYX_ERR(0, 416, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_thread; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12322,13 +12461,13 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_thread = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":435 + /* "hunter/_event.pyx":417 * event._threadname = self._threadname * event._thread = self._thread * event._instruction = self._instruction # <<<<<<<<<<<<<< * return event */ - __Pyx_TraceLine(435,97,0,__PYX_ERR(0, 435, __pyx_L1_error)) + __Pyx_TraceLine(417,97,0,__PYX_ERR(0, 417, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_instruction; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12337,19 +12476,19 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_instruction = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":436 + /* "hunter/_event.pyx":418 * event._thread = self._thread * event._instruction = self._instruction * return event # <<<<<<<<<<<<<< */ - __Pyx_TraceLine(436,98,0,__PYX_ERR(0, 436, __pyx_L1_error)) + __Pyx_TraceLine(418,98,0,__PYX_ERR(0, 418, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_event); __pyx_r = __pyx_v_event; - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 98, 0, __PYX_ERR(0, 436, __pyx_L1_error)); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 98, 0, __PYX_ERR(0, 418, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":411 + /* "hunter/_event.pyx":393 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< @@ -12365,7 +12504,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 411, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 393, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.fast_clone", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -12376,141 +12515,797 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* #### Code section: module_exttypes ### */ -static struct __pyx_vtabstruct_6hunter_6_event_Event __pyx_vtable_6hunter_6_event_Event; -static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_obj_6hunter_6_event_Event *p; - PyObject *o; - #if CYTHON_COMPILING_IN_LIMITED_API - allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); - o = alloc_func(t, 0); - #else - o = (*t->tp_alloc)(t, 0); - if (unlikely(!o)) return 0; - #endif - p = ((struct __pyx_obj_6hunter_6_event_Event *)o); - p->__pyx_vtab = __pyx_vtabptr_6hunter_6_event_Event; - p->frame = ((FrameType)Py_None); Py_INCREF(Py_None); - p->kind = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->arg = Py_None; Py_INCREF(Py_None); - p->builtin = Py_None; Py_INCREF(Py_None); - p->_code = Py_None; Py_INCREF(Py_None); - p->_filename = Py_None; Py_INCREF(Py_None); - p->_fullsource = Py_None; Py_INCREF(Py_None); - p->_function = Py_None; Py_INCREF(Py_None); - p->_function_object = Py_None; Py_INCREF(Py_None); - p->_globals = Py_None; Py_INCREF(Py_None); - p->_lineno = Py_None; Py_INCREF(Py_None); - p->_locals = Py_None; Py_INCREF(Py_None); - p->_module = Py_None; Py_INCREF(Py_None); - p->_source = Py_None; Py_INCREF(Py_None); - p->_stdlib = Py_None; Py_INCREF(Py_None); - p->_thread = Py_None; Py_INCREF(Py_None); - p->_threadidn = Py_None; Py_INCREF(Py_None); - p->_threadname = Py_None; Py_INCREF(Py_None); - p->_instruction = Py_None; Py_INCREF(Py_None); - return o; -} +/* "(tree fragment)":1 + * def __pyx_unpickle_Event(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< + * cdef object __pyx_PickleError + * cdef object __pyx_result +*/ -static void __pyx_tp_dealloc_6hunter_6_event_Event(PyObject *o) { - struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; - PyObject_GC_UnTrack(o); - Py_CLEAR(p->frame); - Py_CLEAR(p->kind); - Py_CLEAR(p->arg); - Py_CLEAR(p->builtin); - Py_CLEAR(p->_code); - Py_CLEAR(p->_filename); - Py_CLEAR(p->_fullsource); - Py_CLEAR(p->_function); - Py_CLEAR(p->_function_object); - Py_CLEAR(p->_globals); - Py_CLEAR(p->_lineno); - Py_CLEAR(p->_locals); - Py_CLEAR(p->_module); - Py_CLEAR(p->_source); - Py_CLEAR(p->_stdlib); - Py_CLEAR(p->_thread); - Py_CLEAR(p->_threadidn); - Py_CLEAR(p->_threadname); - Py_CLEAR(p->_instruction); - #if CYTHON_USE_TYPE_SLOTS - (*Py_TYPE(o)->tp_free)(o); +/* Python wrapper */ +static PyObject *__pyx_pw_6hunter_6_event_4__pyx_unpickle_Event(PyObject *__pyx_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +); /*proto*/ +static PyMethodDef __pyx_mdef_6hunter_6_event_4__pyx_unpickle_Event = {"__pyx_unpickle_Event", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_4__pyx_unpickle_Event, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_6hunter_6_event_4__pyx_unpickle_Event(PyObject *__pyx_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +) { + PyObject *__pyx_v___pyx_type = 0; + long __pyx_v___pyx_checksum; + PyObject *__pyx_v___pyx_state = 0; + #if !CYTHON_METH_FASTCALL + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + #endif + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[3] = {0,0,0}; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__pyx_unpickle_Event (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_SIZE + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); { - freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); - if (tp_free) tp_free(o); + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(2, 1, __pyx_L3_error) + if (__pyx_kwds_len > 0) { + switch (__pyx_nargs) { + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(2, 1, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(2, 1, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 1, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_Event", 0) < 0) __PYX_ERR(2, 1, __pyx_L3_error) + for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Event", 1, 3, 3, i); __PYX_ERR(2, 1, __pyx_L3_error) } + } + } else if (unlikely(__pyx_nargs != 3)) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 1, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(2, 1, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(2, 1, __pyx_L3_error) + } + __pyx_v___pyx_type = values[0]; + __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(2, 1, __pyx_L3_error) + __pyx_v___pyx_state = values[2]; } - #endif + goto __pyx_L6_skip; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Event", 1, 3, 3, __pyx_nargs); __PYX_ERR(2, 1, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; + __pyx_L3_error:; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + __Pyx_AddTraceback("hunter._event.__pyx_unpickle_Event", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_6hunter_6_event_3__pyx_unpickle_Event(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); + + /* function exit code */ + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + __Pyx_RefNannyFinishContext(); + return __pyx_r; } -static int __pyx_tp_traverse_6hunter_6_event_Event(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; +static PyObject *__pyx_pf_6hunter_6_event_3__pyx_unpickle_Event(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_v___pyx_PickleError = 0; + PyObject *__pyx_v___pyx_result = 0; + PyObject *__pyx_r = NULL; + __Pyx_TraceDeclarationsFunc + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + size_t __pyx_t_4; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Event", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Event", __pyx_f[2], 1, 0, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); + + /* "(tree fragment)":4 + * cdef object __pyx_PickleError + * cdef object __pyx_result + * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): # <<<<<<<<<<<<<< + * from pickle import PickleError as __pyx_PickleError + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum +*/ + __Pyx_TraceLine(4,2,0,__PYX_ERR(2, 4, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[4], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(2, 4, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (__pyx_t_2) { + + /* "(tree fragment)":5 + * cdef object __pyx_result + * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): + * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum + * __pyx_result = Event.__new__(__pyx_type) +*/ + __Pyx_TraceLine(5,9,0,__PYX_ERR(2, 5, __pyx_L1_error)) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_INCREF(__pyx_t_1); + __pyx_v___pyx_PickleError = __pyx_t_1; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + /* "(tree fragment)":6 + * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): + * from pickle import PickleError as __pyx_PickleError + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum # <<<<<<<<<<<<<< + * __pyx_result = Event.__new__(__pyx_type) + * if __pyx_state is not None: +*/ + __Pyx_TraceLine(6,14,0,__PYX_ERR(2, 6, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 6, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 6, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(2, 6, __pyx_L1_error) + + /* "(tree fragment)":4 + * cdef object __pyx_PickleError + * cdef object __pyx_result + * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): # <<<<<<<<<<<<<< + * from pickle import PickleError as __pyx_PickleError + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum +*/ + } + + /* "(tree fragment)":7 + * from pickle import PickleError as __pyx_PickleError + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum + * __pyx_result = Event.__new__(__pyx_type) # <<<<<<<<<<<<<< + * if __pyx_state is not None: + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) +*/ + __Pyx_TraceLine(7,16,0,__PYX_ERR(2, 7, __pyx_L1_error)) + __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); + __Pyx_INCREF(__pyx_t_3); + __pyx_t_4 = 0; { - e = __Pyx_call_type_traverse(o, 1, v, a); - if (e) return e; + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 7, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); } - if (p->frame) { - e = (*v)(((PyObject *)p->frame), a); if (e) return e; + __pyx_v___pyx_result = __pyx_t_1; + __pyx_t_1 = 0; + + /* "(tree fragment)":8 + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum + * __pyx_result = Event.__new__(__pyx_type) + * if __pyx_state is not None: # <<<<<<<<<<<<<< + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) + * return __pyx_result +*/ + __Pyx_TraceLine(8,23,0,__PYX_ERR(2, 8, __pyx_L1_error)) + __pyx_t_2 = (__pyx_v___pyx_state != Py_None); + if (__pyx_t_2) { + + /* "(tree fragment)":9 + * __pyx_result = Event.__new__(__pyx_type) + * if __pyx_state is not None: + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< + * return __pyx_result + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): +*/ + __Pyx_TraceLine(9,28,0,__PYX_ERR(2, 9, __pyx_L1_error)) + if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(2, 9, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "(tree fragment)":8 + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum + * __pyx_result = Event.__new__(__pyx_type) + * if __pyx_state is not None: # <<<<<<<<<<<<<< + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) + * return __pyx_result +*/ } - if (p->arg) { - e = (*v)(p->arg, a); if (e) return e; + + /* "(tree fragment)":10 + * if __pyx_state is not None: + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) + * return __pyx_result # <<<<<<<<<<<<<< + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] +*/ + __Pyx_TraceLine(10,29,0,__PYX_ERR(2, 10, __pyx_L1_error)) + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(__pyx_v___pyx_result); + __pyx_r = __pyx_v___pyx_result; + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(2, 10, __pyx_L1_error)); + goto __pyx_L0; + + /* "(tree fragment)":1 + * def __pyx_unpickle_Event(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< + * cdef object __pyx_PickleError + * cdef object __pyx_result +*/ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); + #endif + __Pyx_AddTraceback("hunter._event.__pyx_unpickle_Event", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XDECREF(__pyx_v___pyx_PickleError); + __Pyx_XDECREF(__pyx_v___pyx_result); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":11 + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) + * return __pyx_result + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): +*/ + +static PyObject *__pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(struct __pyx_obj_6hunter_6_event_Event *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_TraceDeclarationsFunc + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + int __pyx_t_3; + Py_ssize_t __pyx_t_4; + int __pyx_t_5; + PyObject *__pyx_t_6 = NULL; + PyObject *__pyx_t_7 = NULL; + PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[47])) + __Pyx_RefNannySetupContext("__pyx_unpickle_Event__set_state", 0); + __Pyx_TraceStartFunc("__pyx_unpickle_Event__set_state", __pyx_f[2], 11, 0, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); + + /* "(tree fragment)":12 + * return __pyx_result + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] # <<<<<<<<<<<<<< + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): + * __pyx_result.__dict__.update(__pyx_state[23]) +*/ + __Pyx_TraceLine(12,3,0,__PYX_ERR(2, 12, __pyx_L1_error)) + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->builtin) { - e = (*v)(p->builtin, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_code); + __Pyx_DECREF(__pyx_v___pyx_result->_code); + __pyx_v___pyx_result->_code = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_code) { - e = (*v)(p->_code, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_filename); + __Pyx_DECREF(__pyx_v___pyx_result->_filename); + __pyx_v___pyx_result->_filename = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_filename) { - e = (*v)(p->_filename, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_fullsource); + __Pyx_DECREF(__pyx_v___pyx_result->_fullsource); + __pyx_v___pyx_result->_fullsource = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_fullsource) { - e = (*v)(p->_fullsource, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_function); + __Pyx_DECREF(__pyx_v___pyx_result->_function); + __pyx_v___pyx_result->_function = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_function) { - e = (*v)(p->_function, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_function_object); + __Pyx_DECREF(__pyx_v___pyx_result->_function_object); + __pyx_v___pyx_result->_function_object = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_function_object) { - e = (*v)(p->_function_object, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_globals); + __Pyx_DECREF(__pyx_v___pyx_result->_globals); + __pyx_v___pyx_result->_globals = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_globals) { - e = (*v)(p->_globals, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 6, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_instruction); + __Pyx_DECREF(__pyx_v___pyx_result->_instruction); + __pyx_v___pyx_result->_instruction = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_lineno) { - e = (*v)(p->_lineno, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 7, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_lineno); + __Pyx_DECREF(__pyx_v___pyx_result->_lineno); + __pyx_v___pyx_result->_lineno = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_locals) { - e = (*v)(p->_locals, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 8, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_locals); + __Pyx_DECREF(__pyx_v___pyx_result->_locals); + __pyx_v___pyx_result->_locals = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_module) { - e = (*v)(p->_module, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 9, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_module); + __Pyx_DECREF(__pyx_v___pyx_result->_module); + __pyx_v___pyx_result->_module = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_source) { - e = (*v)(p->_source, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 10, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_source); + __Pyx_DECREF(__pyx_v___pyx_result->_source); + __pyx_v___pyx_result->_source = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_stdlib) { - e = (*v)(p->_stdlib, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 11, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_stdlib); + __Pyx_DECREF(__pyx_v___pyx_result->_stdlib); + __pyx_v___pyx_result->_stdlib = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_thread) { - e = (*v)(p->_thread, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 12, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_thread); + __Pyx_DECREF(__pyx_v___pyx_result->_thread); + __pyx_v___pyx_result->_thread = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_threadidn) { - e = (*v)(p->_threadidn, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 13, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_threadidn); + __Pyx_DECREF(__pyx_v___pyx_result->_threadidn); + __pyx_v___pyx_result->_threadidn = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_threadname) { - e = (*v)(p->_threadname, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 14, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->_threadname); + __Pyx_DECREF(__pyx_v___pyx_result->_threadname); + __pyx_v___pyx_result->_threadname = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - if (p->_instruction) { - e = (*v)(p->_instruction, a); if (e) return e; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 15, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->arg); + __Pyx_DECREF(__pyx_v___pyx_result->arg); + __pyx_v___pyx_result->arg = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) } - return 0; -} - -static int __pyx_tp_clear_6hunter_6_event_Event(PyObject *o) { - PyObject* tmp; + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 16, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->builtin); + __Pyx_DECREF(__pyx_v___pyx_result->builtin); + __pyx_v___pyx_result->builtin = __pyx_t_1; + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) + } + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 17, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_v___pyx_result->calls = __pyx_t_2; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) + } + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 18, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_v___pyx_result->depth = __pyx_t_2; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) + } + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 19, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_v___pyx_result->detached = __pyx_t_3; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) + } + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 20, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->frame); + __Pyx_DECREF(__pyx_v___pyx_result->frame); + __pyx_v___pyx_result->frame = ((FrameType)__pyx_t_1); + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) + } + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 21, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (!(likely(PyUnicode_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_1))) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GIVEREF(__pyx_t_1); + __Pyx_GOTREF(__pyx_v___pyx_result->kind); + __Pyx_DECREF(__pyx_v___pyx_result->kind); + __pyx_v___pyx_result->kind = ((PyObject*)__pyx_t_1); + __pyx_t_1 = 0; + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 12, __pyx_L1_error) + } + __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 22, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_v___pyx_result->threading_support = __pyx_t_3; + + /* "(tree fragment)":13 + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< + * __pyx_result.__dict__.update(__pyx_state[23]) +*/ + __Pyx_TraceLine(13,119,0,__PYX_ERR(2, 13, __pyx_L1_error)) + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); + __PYX_ERR(2, 13, __pyx_L1_error) + } + __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(2, 13, __pyx_L1_error) + __pyx_t_5 = (__pyx_t_4 > 23); + if (__pyx_t_5) { + } else { + __pyx_t_3 = __pyx_t_5; + goto __pyx_L4_bool_binop_done; + } + __pyx_t_5 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(2, 13, __pyx_L1_error) + __pyx_t_3 = __pyx_t_5; + __pyx_L4_bool_binop_done:; + if (__pyx_t_3) { + + /* "(tree fragment)":14 + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): + * __pyx_result.__dict__.update(__pyx_state[23]) # <<<<<<<<<<<<<< +*/ + __Pyx_TraceLine(14,128,0,__PYX_ERR(2, 14, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_6 = __pyx_t_7; + __Pyx_INCREF(__pyx_t_6); + if (unlikely(__pyx_v___pyx_state == Py_None)) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); + __PYX_ERR(2, 14, __pyx_L1_error) + } + __pyx_t_8 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 23, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(2, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = 0; + { + PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_8}; + __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 14, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + } + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "(tree fragment)":13 + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< + * __pyx_result.__dict__.update(__pyx_state[23]) +*/ + } + + /* "(tree fragment)":11 + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) + * return __pyx_result + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): +*/ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); + __Pyx_XDECREF(__pyx_t_8); + __Pyx_TraceException(__pyx_lineno, 0, 0); + #if CYTHON_USE_SYS_MONITORING + __Pyx_TraceExceptionUnwind(0, 0); + #else + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); + #endif + __Pyx_AddTraceback("hunter._event.__pyx_unpickle_Event__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = 0; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_PyMonitoring_ExitScope(0); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} +/* #### Code section: module_exttypes ### */ +static struct __pyx_vtabstruct_6hunter_6_event_Event __pyx_vtable_6hunter_6_event_Event; + +static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_6hunter_6_event_Event *p; + PyObject *o; + #if CYTHON_COMPILING_IN_LIMITED_API + allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); + o = alloc_func(t, 0); + #else + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + #endif + p = ((struct __pyx_obj_6hunter_6_event_Event *)o); + p->__pyx_vtab = __pyx_vtabptr_6hunter_6_event_Event; + p->frame = ((FrameType)Py_None); Py_INCREF(Py_None); + p->kind = ((PyObject*)Py_None); Py_INCREF(Py_None); + p->arg = Py_None; Py_INCREF(Py_None); + p->builtin = Py_None; Py_INCREF(Py_None); + p->_code = Py_None; Py_INCREF(Py_None); + p->_filename = Py_None; Py_INCREF(Py_None); + p->_fullsource = Py_None; Py_INCREF(Py_None); + p->_function = Py_None; Py_INCREF(Py_None); + p->_function_object = Py_None; Py_INCREF(Py_None); + p->_globals = Py_None; Py_INCREF(Py_None); + p->_lineno = Py_None; Py_INCREF(Py_None); + p->_locals = Py_None; Py_INCREF(Py_None); + p->_module = Py_None; Py_INCREF(Py_None); + p->_source = Py_None; Py_INCREF(Py_None); + p->_stdlib = Py_None; Py_INCREF(Py_None); + p->_thread = Py_None; Py_INCREF(Py_None); + p->_threadidn = Py_None; Py_INCREF(Py_None); + p->_threadname = Py_None; Py_INCREF(Py_None); + p->_instruction = Py_None; Py_INCREF(Py_None); + return o; +} + +static void __pyx_tp_dealloc_6hunter_6_event_Event(PyObject *o) { + struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; + PyObject_GC_UnTrack(o); + Py_CLEAR(p->frame); + Py_CLEAR(p->kind); + Py_CLEAR(p->arg); + Py_CLEAR(p->builtin); + Py_CLEAR(p->_code); + Py_CLEAR(p->_filename); + Py_CLEAR(p->_fullsource); + Py_CLEAR(p->_function); + Py_CLEAR(p->_function_object); + Py_CLEAR(p->_globals); + Py_CLEAR(p->_lineno); + Py_CLEAR(p->_locals); + Py_CLEAR(p->_module); + Py_CLEAR(p->_source); + Py_CLEAR(p->_stdlib); + Py_CLEAR(p->_thread); + Py_CLEAR(p->_threadidn); + Py_CLEAR(p->_threadname); + Py_CLEAR(p->_instruction); + #if CYTHON_USE_TYPE_SLOTS + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif +} + +static int __pyx_tp_traverse_6hunter_6_event_Event(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; + { + e = __Pyx_call_type_traverse(o, 1, v, a); + if (e) return e; + } + if (p->frame) { + e = (*v)(((PyObject *)p->frame), a); if (e) return e; + } + if (p->arg) { + e = (*v)(p->arg, a); if (e) return e; + } + if (p->builtin) { + e = (*v)(p->builtin, a); if (e) return e; + } + if (p->_code) { + e = (*v)(p->_code, a); if (e) return e; + } + if (p->_filename) { + e = (*v)(p->_filename, a); if (e) return e; + } + if (p->_fullsource) { + e = (*v)(p->_fullsource, a); if (e) return e; + } + if (p->_function) { + e = (*v)(p->_function, a); if (e) return e; + } + if (p->_function_object) { + e = (*v)(p->_function_object, a); if (e) return e; + } + if (p->_globals) { + e = (*v)(p->_globals, a); if (e) return e; + } + if (p->_lineno) { + e = (*v)(p->_lineno, a); if (e) return e; + } + if (p->_locals) { + e = (*v)(p->_locals, a); if (e) return e; + } + if (p->_module) { + e = (*v)(p->_module, a); if (e) return e; + } + if (p->_source) { + e = (*v)(p->_source, a); if (e) return e; + } + if (p->_stdlib) { + e = (*v)(p->_stdlib, a); if (e) return e; + } + if (p->_thread) { + e = (*v)(p->_thread, a); if (e) return e; + } + if (p->_threadidn) { + e = (*v)(p->_threadidn, a); if (e) return e; + } + if (p->_threadname) { + e = (*v)(p->_threadname, a); if (e) return e; + } + if (p->_instruction) { + e = (*v)(p->_instruction, a); if (e) return e; + } + return 0; +} + +static int __pyx_tp_clear_6hunter_6_event_Event(PyObject *o) { + PyObject* tmp; struct __pyx_obj_6hunter_6_event_Event *p = (struct __pyx_obj_6hunter_6_event_Event *)o; tmp = ((PyObject*)p->frame); p->frame = ((FrameType)Py_None); Py_INCREF(Py_None); @@ -12695,6 +13490,8 @@ static PyObject *__pyx_getprop_6hunter_6_event_5Event_builtin(PyObject *o, CYTHO static PyMethodDef __pyx_methods_6hunter_6_event_Event[] = { {"detach", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_7detach, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {"clone", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_9clone, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, + {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; @@ -12729,7 +13526,7 @@ static PyType_Slot __pyx_type_6hunter_6_event_Event_slots[] = { {Py_tp_repr, (void *)__pyx_pw_6hunter_6_event_5Event_3__repr__}, {Py_sq_item, (void *)__pyx_sq_item_6hunter_6_event_Event}, {Py_mp_subscript, (void *)__pyx_pw_6hunter_6_event_5Event_11__getitem__}, - {Py_tp_doc, (void *)PyDoc_STR("\n A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates.\n\n Provides few convenience properties.\n\n Args:\n frame (Frame): A python `Frame `_ object.\n kind (str): A string like ``'call'``, ``'line'``, ``'return'`` or ``'exception'``.\n arg: A value that depends on ``kind``. Usually is ``None`` but for ``'return'`` or ``'exception'`` other values\n may be expected.\n tracer (:class:`hunter.tracer.Tracer`): The :class:`~hunter.tracer.Tracer` instance that created the event.\n Needed for the ``calls`` and ``depth`` fields.\n ")}, + {Py_tp_doc, (void *)PyDoc_STR("\n A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates.\n\n Provides few convenience properties.\n\n Args:\n frame (Frame): A python `Frame `_ object.\n kind (str): A string like ``'call'``, ``'line'``, ``'return'`` or ``'exception'``.\n arg: A value that depends on ``kind``. Usually is ``None`` but for ``'return'`` or ``'exception'`` other values\n may be expected.\n ")}, {Py_tp_traverse, (void *)__pyx_tp_traverse_6hunter_6_event_Event}, {Py_tp_clear, (void *)__pyx_tp_clear_6hunter_6_event_Event}, {Py_tp_richcompare, (void *)__pyx_tp_richcompare_6hunter_6_event_Event}, @@ -12793,7 +13590,7 @@ static PyTypeObject __pyx_type_6hunter_6_event_Event = { 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - PyDoc_STR("\n A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates.\n\n Provides few convenience properties.\n\n Args:\n frame (Frame): A python `Frame `_ object.\n kind (str): A string like ``'call'``, ``'line'``, ``'return'`` or ``'exception'``.\n arg: A value that depends on ``kind``. Usually is ``None`` but for ``'return'`` or ``'exception'`` other values\n may be expected.\n tracer (:class:`hunter.tracer.Tracer`): The :class:`~hunter.tracer.Tracer` instance that created the event.\n Needed for the ``calls`` and ``depth`` fields.\n "), /*tp_doc*/ + PyDoc_STR("\n A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates.\n\n Provides few convenience properties.\n\n Args:\n frame (Frame): A python `Frame `_ object.\n kind (str): A string like ``'call'``, ``'line'``, ``'return'`` or ``'exception'``.\n arg: A value that depends on ``kind``. Usually is ``None`` but for ``'return'`` or ``'exception'`` other values\n may be expected.\n "), /*tp_doc*/ __pyx_tp_traverse_6hunter_6_event_Event, /*tp_traverse*/ __pyx_tp_clear_6hunter_6_event_Event, /*tp_clear*/ __pyx_tp_richcompare_6hunter_6_event_Event, /*tp_richcompare*/ @@ -13053,7 +13850,10 @@ static int __Pyx_modinit_global_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); /*--- Global init code ---*/ __pyx_v_6hunter_6_event_UNSET = Py_None; Py_INCREF(Py_None); - __pyx_v_6hunter_6_event_mem = ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)Py_None); Py_INCREF(Py_None); + __pyx_v_6hunter_6_event_CALL = ((PyObject*)Py_None); Py_INCREF(Py_None); + __pyx_v_6hunter_6_event_EXCEPTION = ((PyObject*)Py_None); Py_INCREF(Py_None); + __pyx_v_6hunter_6_event_LINE = ((PyObject*)Py_None); Py_INCREF(Py_None); + __pyx_v_6hunter_6_event_RETURN = ((PyObject*)Py_None); Py_INCREF(Py_None); __Pyx_RefNannyFinishContext(); return 0; } @@ -13087,11 +13887,23 @@ static int __Pyx_modinit_function_export_code(__pyx_mstatetype *__pyx_mstate) { static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations CYTHON_UNUSED_VAR(__pyx_mstate); + PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #else + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #endif + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(1, 7, __pyx_L1_error) __pyx_vtabptr_6hunter_6_event_Event = &__pyx_vtable_6hunter_6_event_Event; __pyx_vtable_6hunter_6_event_Event.code_getter = (PyCodeObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_code_getter; __pyx_vtable_6hunter_6_event_Event.filename_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_filename_getter; @@ -13107,43 +13919,46 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __pyx_vtable_6hunter_6_event_Event.threadname_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_threadname_getter; __pyx_vtable_6hunter_6_event_Event.instruction_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_instruction_getter; #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event_Event_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event)) __PYX_ERR(0, 46, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event_Event_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event_Event_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event)) __PYX_ERR(0, 44, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event_Event_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = &__pyx_type_6hunter_6_event_Event; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_getattro == PyObject_GenericGetAttr)) { __pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_getattro = PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event, __pyx_vtabptr_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) - if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Event, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event, __pyx_vtabptr_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Event, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 362, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 362, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 344, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 344, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 362, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 344, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro == PyObject_GenericGetAttr)) { __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro = PyObject_GenericGetAttr; } #endif + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); __Pyx_RefNannyFinishContext(); return -1; } @@ -13152,13 +13967,12 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); /*--- Type import code ---*/ - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 @@ -13168,79 +13982,12 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 22, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), - #else - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), - #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) - __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 35, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._tracer", "Tracer", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), - #else - sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(3, 35, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyImport_ImportModule("hunter.vendor._cymem.cymem"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyMalloc", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), - #else - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyMalloc), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc) __PYX_ERR(4, 5, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyMalloc*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyMalloc); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyMalloc)) __PYX_ERR(4, 5, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "PyFree", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), - #else - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_PyFree), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree) __PYX_ERR(4, 11, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_PyFree*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_PyFree); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_PyFree)) __PYX_ERR(4, 11, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "Pool", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), - #else - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool) __PYX_ERR(4, 17, __pyx_L1_error) - __pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool = (struct __pyx_vtabstruct_6hunter_6vendor_6_cymem_5cymem_Pool*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); if (unlikely(!__pyx_vtabptr_6hunter_6vendor_6_cymem_5cymem_Pool)) __PYX_ERR(4, 17, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter.vendor._cymem.cymem", "Address", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), - #else - sizeof(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Address), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Address) __PYX_ERR(4, 29, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); __Pyx_RefNannyFinishContext(); return -1; } @@ -13270,7 +14017,7 @@ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec__event}, #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - {Py_mod_gil, Py_MOD_GIL_USED}, + {Py_mod_gil, Py_MOD_GIL_NOT_USED}, #endif #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, @@ -13443,7 +14190,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__event(PyObject *__pyx_pyinit_modu PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; size_t __pyx_t_5; - PyObject **__pyx_t_6; + static PyObject const *__pyx_t_6[7]; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -13475,7 +14222,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__event(PyObject *__pyx_pyinit_modu __pyx_m = __pyx_t_1; #endif #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_NOT_USED); #endif __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); @@ -13549,15 +14296,15 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); (void)__Pyx_modinit_function_import_code(__pyx_mstate); /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 0, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 1, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "hunter/_event.pyx":2 - * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii + * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True * from functools import partial # <<<<<<<<<<<<<< * from linecache import getline * from linecache import getlines */ - __Pyx_TraceLine(2,3,0,__PYX_ERR(0, 2, __pyx_L1_error)) + __Pyx_TraceLine(2,5,0,__PYX_ERR(0, 2, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2, __pyx_L1_error) @@ -13570,13 +14317,13 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "hunter/_event.pyx":3 - * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii + * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True * from functools import partial * from linecache import getline # <<<<<<<<<<<<<< * from linecache import getlines * from os.path import basename */ - __Pyx_TraceLine(3,6,0,__PYX_ERR(0, 3, __pyx_L1_error)) + __Pyx_TraceLine(3,8,0,__PYX_ERR(0, 3, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) @@ -13595,7 +14342,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from os.path import basename * from os.path import exists */ - __Pyx_TraceLine(4,9,0,__PYX_ERR(0, 4, __pyx_L1_error)) + __Pyx_TraceLine(4,11,0,__PYX_ERR(0, 4, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) @@ -13614,7 +14361,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from os.path import exists * from os.path import splitext */ - __Pyx_TraceLine(5,12,0,__PYX_ERR(0, 5, __pyx_L1_error)) + __Pyx_TraceLine(5,14,0,__PYX_ERR(0, 5, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) @@ -13633,7 +14380,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from os.path import splitext * from threading import current_thread */ - __Pyx_TraceLine(6,15,0,__PYX_ERR(0, 6, __pyx_L1_error)) + __Pyx_TraceLine(6,17,0,__PYX_ERR(0, 6, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) @@ -13652,7 +14399,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from threading import current_thread * from tokenize import TokenError */ - __Pyx_TraceLine(7,18,0,__PYX_ERR(0, 7, __pyx_L1_error)) + __Pyx_TraceLine(7,20,0,__PYX_ERR(0, 7, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) @@ -13671,7 +14418,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from tokenize import TokenError * from tokenize import generate_tokens */ - __Pyx_TraceLine(8,21,0,__PYX_ERR(0, 8, __pyx_L1_error)) + __Pyx_TraceLine(8,23,0,__PYX_ERR(0, 8, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_threading, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) @@ -13690,7 +14437,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from tokenize import generate_tokens * */ - __Pyx_TraceLine(9,24,0,__PYX_ERR(0, 9, __pyx_L1_error)) + __Pyx_TraceLine(9,26,0,__PYX_ERR(0, 9, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) @@ -13709,7 +14456,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * * from cpython.pythread cimport PyThread_get_thread_ident */ - __Pyx_TraceLine(10,27,0,__PYX_ERR(0, 10, __pyx_L1_error)) + __Pyx_TraceLine(10,29,0,__PYX_ERR(0, 10, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 10, __pyx_L1_error) @@ -13721,458 +14468,489 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":20 - * from .vendor._cymem.cymem cimport Pool + /* "hunter/_event.pyx":15 + * from cpython.ref cimport PyObject * * from .const import SITE_PACKAGES_PATHS # <<<<<<<<<<<<<< * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE */ - __Pyx_TraceLine(20,41,0,__PYX_ERR(0, 20, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) + __Pyx_TraceLine(15,35,0,__PYX_ERR(0, 15, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS, __pyx_t_3) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS, __pyx_t_3) < 0) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":21 + /* "hunter/_event.pyx":16 * * from .const import SITE_PACKAGES_PATHS * from .const import SYS_PREFIX_PATHS # <<<<<<<<<<<<<< * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE */ - __Pyx_TraceLine(21,45,0,__PYX_ERR(0, 21, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) + __Pyx_TraceLine(16,39,0,__PYX_ERR(0, 16, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS, __pyx_t_2) < 0) __PYX_ERR(0, 21, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS, __pyx_t_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":22 + /* "hunter/_event.pyx":17 * from .const import SITE_PACKAGES_PATHS * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE # <<<<<<<<<<<<<< * from .util import LEADING_WHITESPACE_RE - * from .util import MISSING + * from .util import get_func_in_mro */ - __Pyx_TraceLine(22,49,0,__PYX_ERR(0, 22, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) + __Pyx_TraceLine(17,42,0,__PYX_ERR(0, 17, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE, __pyx_t_3) < 0) __PYX_ERR(0, 22, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE, __pyx_t_3) < 0) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":23 + /* "hunter/_event.pyx":18 * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE # <<<<<<<<<<<<<< - * from .util import MISSING * from .util import get_func_in_mro + * from .util import get_main_thread */ - __Pyx_TraceLine(23,52,0,__PYX_ERR(0, 23, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) + __Pyx_TraceLine(18,45,0,__PYX_ERR(0, 18, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE, __pyx_t_2) < 0) __PYX_ERR(0, 23, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE, __pyx_t_2) < 0) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":24 + /* "hunter/_event.pyx":19 * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE - * from .util import MISSING # <<<<<<<<<<<<<< - * from .util import get_func_in_mro + * from .util import get_func_in_mro # <<<<<<<<<<<<<< * from .util import get_main_thread + * from .util import if_same_code */ - __Pyx_TraceLine(24,55,0,__PYX_ERR(0, 24, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) + __Pyx_TraceLine(19,48,0,__PYX_ERR(0, 19, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_MISSING, __pyx_t_3) < 0) __PYX_ERR(0, 24, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_func_in_mro, __pyx_t_3) < 0) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":25 + /* "hunter/_event.pyx":20 * from .util import LEADING_WHITESPACE_RE - * from .util import MISSING - * from .util import get_func_in_mro # <<<<<<<<<<<<<< - * from .util import get_main_thread - * from .util import if_same_code -*/ - __Pyx_TraceLine(25,58,0,__PYX_ERR(0, 25, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 25, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_func_in_mro, __pyx_t_2) < 0) __PYX_ERR(0, 25, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "hunter/_event.pyx":26 - * from .util import MISSING * from .util import get_func_in_mro * from .util import get_main_thread # <<<<<<<<<<<<<< * from .util import if_same_code * */ - __Pyx_TraceLine(26,61,0,__PYX_ERR(0, 26, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error) + __Pyx_TraceLine(20,51,0,__PYX_ERR(0, 20, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_main_thread, __pyx_t_3) < 0) __PYX_ERR(0, 26, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_main_thread, __pyx_t_2) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":27 + /* "hunter/_event.pyx":21 * from .util import get_func_in_mro * from .util import get_main_thread * from .util import if_same_code # <<<<<<<<<<<<<< * * __all__ = 'Event', */ - __Pyx_TraceLine(27,64,0,__PYX_ERR(0, 27, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 27, __pyx_L1_error) + __Pyx_TraceLine(21,54,0,__PYX_ERR(0, 21, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_if_same_code, __pyx_t_2) < 0) __PYX_ERR(0, 27, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_if_same_code, __pyx_t_3) < 0) __PYX_ERR(0, 21, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":29 + /* "hunter/_event.pyx":23 * from .util import if_same_code * * __all__ = 'Event', # <<<<<<<<<<<<<< * * cdef object UNSET = object() */ - __Pyx_TraceLine(29,66,0,__PYX_ERR(0, 29, __pyx_L1_error)) - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[4]) < 0) __PYX_ERR(0, 29, __pyx_L1_error) + __Pyx_TraceLine(23,56,0,__PYX_ERR(0, 23, __pyx_L1_error)) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[5]) < 0) __PYX_ERR(0, 23, __pyx_L1_error) - /* "hunter/_event.pyx":31 + /* "hunter/_event.pyx":25 * __all__ = 'Event', * * cdef object UNSET = object() # <<<<<<<<<<<<<< * - * cdef Pool mem = Pool() + * */ - __Pyx_TraceLine(31,69,0,__PYX_ERR(0, 31, __pyx_L1_error)) - __pyx_t_2 = NULL; + __Pyx_TraceLine(25,59,0,__PYX_ERR(0, 25, __pyx_L1_error)) + __pyx_t_3 = NULL; __Pyx_INCREF(__pyx_builtin_object); __pyx_t_4 = __pyx_builtin_object; __pyx_t_5 = 1; { - PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 31, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } __Pyx_XGOTREF(__pyx_v_6hunter_6_event_UNSET); - __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_UNSET, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_UNSET, __pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __pyx_t_2 = 0; - /* "hunter/_event.pyx":33 - * cdef object UNSET = object() + /* "hunter/_event.pyx":28 * - * cdef Pool mem = Pool() # <<<<<<<<<<<<<< - * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) * + * cdef str CALL = 'call' # <<<<<<<<<<<<<< + * cdef str EXCEPTION = 'exception' + * cdef str LINE = 'line' */ - __Pyx_TraceLine(33,72,0,__PYX_ERR(0, 33, __pyx_L1_error)) - __pyx_t_4 = NULL; - __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6vendor_6_cymem_5cymem_Pool); - __pyx_t_5 = 1; - { - PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 33, __pyx_L1_error) - __Pyx_GOTREF((PyObject *)__pyx_t_3); - } - __Pyx_XGOTREF((PyObject *)__pyx_v_6hunter_6_event_mem); - __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_mem, ((struct __pyx_obj_6hunter_6vendor_6_cymem_5cymem_Pool *)__pyx_t_3)); - __Pyx_GIVEREF((PyObject *)__pyx_t_3); - __pyx_t_3 = 0; + __Pyx_TraceLine(28,60,0,__PYX_ERR(0, 28, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_call); + __Pyx_XGOTREF(__pyx_v_6hunter_6_event_CALL); + __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_CALL, __pyx_mstate_global->__pyx_n_u_call); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_call); - /* "hunter/_event.pyx":34 - * - * cdef Pool mem = Pool() - * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) # <<<<<<<<<<<<<< + /* "hunter/_event.pyx":29 * - * cdef inline PyObject** make_kind_names(list strings): + * cdef str CALL = 'call' + * cdef str EXCEPTION = 'exception' # <<<<<<<<<<<<<< + * cdef str LINE = 'line' + * cdef str RETURN = 'return' */ - __Pyx_TraceLine(34,76,0,__PYX_ERR(0, 34, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(7, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_n_u_line, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_n_u_return); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 34, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __pyx_f_6hunter_6_event_make_kind_names(((PyObject*)__pyx_t_3)); if (unlikely(__pyx_t_6 == ((PyObject **)0) && PyErr_Occurred())) __PYX_ERR(0, 34, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_6hunter_6_event_KIND_NAMES = __pyx_t_6; + __Pyx_TraceLine(29,62,0,__PYX_ERR(0, 29, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_exception); + __Pyx_XGOTREF(__pyx_v_6hunter_6_event_EXCEPTION); + __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_EXCEPTION, __pyx_mstate_global->__pyx_n_u_exception); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_exception); - /* "hunter/_event.pyx":36 - * cdef PyObject** KIND_NAMES = make_kind_names(['call', 'exception', 'line', 'return', 'call', 'exception', 'return']) + /* "hunter/_event.pyx":30 + * cdef str CALL = 'call' + * cdef str EXCEPTION = 'exception' + * cdef str LINE = 'line' # <<<<<<<<<<<<<< + * cdef str RETURN = 'return' * - * cdef inline PyObject** make_kind_names(list strings): # <<<<<<<<<<<<<< - * cdef PyObject** array = mem.alloc(len(strings), sizeof(PyObject*)) - * cdef object name */ - __Pyx_TraceLine(36,84,0,__PYX_ERR(0, 36, __pyx_L1_error)) + __Pyx_TraceLine(30,64,0,__PYX_ERR(0, 30, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_line); + __Pyx_XGOTREF(__pyx_v_6hunter_6_event_LINE); + __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_LINE, __pyx_mstate_global->__pyx_n_u_line); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_line); - - /* "hunter/_event.pyx":62 - * """ - * def __init__(self, FrameType frame, int kind, object arg, Tracer tracer=None, object depth=None, object calls=None, - * object threading_support=MISSING): # <<<<<<<<<<<<<< - * if tracer is None: - * if depth is None: + /* "hunter/_event.pyx":31 + * cdef str EXCEPTION = 'exception' + * cdef str LINE = 'line' + * cdef str RETURN = 'return' # <<<<<<<<<<<<<< + * + * cdef const PyObject** KIND_NAMES = [ */ - __Pyx_TraceLine(62,0,0,__PYX_ERR(0, 62, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_MISSING); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 62, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_mstate_global->__pyx_k_ = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + __Pyx_TraceLine(31,66,0,__PYX_ERR(0, 31, __pyx_L1_error)) + __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_return); + __Pyx_XGOTREF(__pyx_v_6hunter_6_event_RETURN); + __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_RETURN, __pyx_mstate_global->__pyx_n_u_return); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_return); - /* "hunter/_event.pyx":108 + /* "hunter/_event.pyx":33 + * cdef str RETURN = 'return' + * + * cdef const PyObject** KIND_NAMES = [ # <<<<<<<<<<<<<< + * CALL, + * EXCEPTION, +*/ + __Pyx_TraceLine(33,69,0,__PYX_ERR(0, 33, __pyx_L1_error)) + __pyx_t_6[0] = ((PyObject *)__pyx_v_6hunter_6_event_CALL); + __pyx_t_6[1] = ((PyObject *)__pyx_v_6hunter_6_event_EXCEPTION); + __pyx_t_6[2] = ((PyObject *)__pyx_v_6hunter_6_event_LINE); + __pyx_t_6[3] = ((PyObject *)__pyx_v_6hunter_6_event_RETURN); + __pyx_t_6[4] = ((PyObject *)__pyx_v_6hunter_6_event_CALL); + __pyx_t_6[5] = ((PyObject *)__pyx_v_6hunter_6_event_EXCEPTION); + __pyx_t_6[6] = ((PyObject *)__pyx_v_6hunter_6_event_RETURN); + __pyx_v_6hunter_6_event_KIND_NAMES = __pyx_t_6; + + /* "hunter/_event.pyx":90 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * */ - __Pyx_TraceLine(108,89,0,__PYX_ERR(0, 108, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_detach, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[5]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_detach, __pyx_t_3) < 0) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceLine(90,96,0,__PYX_ERR(0, 90, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_detach, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[6]); + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_detach, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":111 + /* "hunter/_event.pyx":93 * return fast_detach(self, value_filter) * * def clone(self): # <<<<<<<<<<<<<< * return fast_clone(self) * */ - __Pyx_TraceLine(111,91,0,__PYX_ERR(0, 111, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_clone, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_clone, __pyx_t_3) < 0) __PYX_ERR(0, 111, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceLine(93,98,0,__PYX_ERR(0, 93, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_clone, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_clone, __pyx_t_2) < 0) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":114 + /* "hunter/_event.pyx":96 * return fast_clone(self) * * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< * cdef int position * */ - __Pyx_TraceLine(114,92,0,__PYX_ERR(0, 114, __pyx_L1_error)) + __Pyx_TraceLine(96,99,0,__PYX_ERR(0, 96, __pyx_L1_error)) - /* "hunter/_event.pyx":130 + /* "hunter/_event.pyx":112 * return self.instruction_getter() * * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< * cdef long current * */ - __Pyx_TraceLine(130,94,0,__PYX_ERR(0, 130, __pyx_L1_error)) + __Pyx_TraceLine(112,101,0,__PYX_ERR(0, 112, __pyx_L1_error)) - /* "hunter/_event.pyx":146 + /* "hunter/_event.pyx":128 * return self.threadid_getter() * * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< * if self._threadname is UNSET: * if self._thread is UNSET: */ - __Pyx_TraceLine(146,96,0,__PYX_ERR(0, 146, __pyx_L1_error)) + __Pyx_TraceLine(128,103,0,__PYX_ERR(0, 128, __pyx_L1_error)) - /* "hunter/_event.pyx":157 + /* "hunter/_event.pyx":139 * return self.threadname_getter() * * cdef inline locals_getter(self): # <<<<<<<<<<<<<< * if self._locals is UNSET: * if self.builtin: */ - __Pyx_TraceLine(157,98,0,__PYX_ERR(0, 157, __pyx_L1_error)) + __Pyx_TraceLine(139,105,0,__PYX_ERR(0, 139, __pyx_L1_error)) - /* "hunter/_event.pyx":169 + /* "hunter/_event.pyx":151 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< * if self._globals is UNSET: * if self.builtin: */ - __Pyx_TraceLine(169,100,0,__PYX_ERR(0, 169, __pyx_L1_error)) + __Pyx_TraceLine(151,107,0,__PYX_ERR(0, 151, __pyx_L1_error)) - /* "hunter/_event.pyx":181 + /* "hunter/_event.pyx":163 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< * if self._function is UNSET: * if self.builtin: */ - __Pyx_TraceLine(181,102,0,__PYX_ERR(0, 181, __pyx_L1_error)) + __Pyx_TraceLine(163,109,0,__PYX_ERR(0, 163, __pyx_L1_error)) - /* "hunter/_event.pyx":224 + /* "hunter/_event.pyx":206 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< * if self._module is UNSET: * if self.builtin: */ - __Pyx_TraceLine(224,105,0,__PYX_ERR(0, 224, __pyx_L1_error)) + __Pyx_TraceLine(206,112,0,__PYX_ERR(0, 206, __pyx_L1_error)) - /* "hunter/_event.pyx":239 + /* "hunter/_event.pyx":221 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< * cdef CodeType code * if self._filename is UNSET: */ - __Pyx_TraceLine(239,107,0,__PYX_ERR(0, 239, __pyx_L1_error)) + __Pyx_TraceLine(221,114,0,__PYX_ERR(0, 221, __pyx_L1_error)) - /* "hunter/_event.pyx":265 + /* "hunter/_event.pyx":247 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: - * self._lineno = PyFrame_GetLineNumber( self.frame) + * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) */ - __Pyx_TraceLine(265,109,0,__PYX_ERR(0, 265, __pyx_L1_error)) + __Pyx_TraceLine(247,116,0,__PYX_ERR(0, 247, __pyx_L1_error)) - /* "hunter/_event.pyx":274 + /* "hunter/_event.pyx":256 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: - * return PyFrame_GetCode( self.frame) + * return Hunter_PyFrame_GetCode(self.frame) */ - __Pyx_TraceLine(274,111,0,__PYX_ERR(0, 274, __pyx_L1_error)) + __Pyx_TraceLine(256,118,0,__PYX_ERR(0, 256, __pyx_L1_error)) - /* "hunter/_event.pyx":284 + /* "hunter/_event.pyx":266 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< * if self._stdlib is UNSET: * module_parts = self.module.split('.') */ - __Pyx_TraceLine(284,113,0,__PYX_ERR(0, 284, __pyx_L1_error)) + __Pyx_TraceLine(266,120,0,__PYX_ERR(0, 266, __pyx_L1_error)) - /* "hunter/_event.pyx":306 + /* "hunter/_event.pyx":288 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< * cdef list lines * cdef CodeType code */ - __Pyx_TraceLine(306,115,0,__PYX_ERR(0, 306, __pyx_L1_error)) + __Pyx_TraceLine(288,122,0,__PYX_ERR(0, 288, __pyx_L1_error)) - /* "hunter/_event.pyx":343 + /* "hunter/_event.pyx":325 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): */ - __Pyx_TraceLine(343,117,0,__PYX_ERR(0, 343, __pyx_L1_error)) + __Pyx_TraceLine(325,124,0,__PYX_ERR(0, 325, __pyx_L1_error)) - /* "hunter/_event.pyx":362 + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * cdef tuple state + * cdef object _dict +*/ + __Pyx_TraceLine(1,2,0,__PYX_ERR(2, 1, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(2, 1, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "(tree fragment)":16 + * else: + * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * __pyx_unpickle_Event__set_state(self, __pyx_state) +*/ + __Pyx_TraceLine(16,36,0,__PYX_ERR(2, 16, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 16, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(2, 16, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "hunter/_event.pyx":344 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None */ - __Pyx_TraceLine(362,120,0,__PYX_ERR(0, 362, __pyx_L1_error)) - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_1yield_lines, 0, __pyx_mstate_global->__pyx_n_u_yield_lines, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 362, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[6]); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_t_3) < 0) __PYX_ERR(0, 362, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_TraceLine(344,127,0,__PYX_ERR(0, 344, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_1yield_lines, 0, __pyx_mstate_global->__pyx_n_u_yield_lines, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[7]); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_t_2) < 0) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":377 + /* "hunter/_event.pyx":359 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * */ - __Pyx_TraceLine(377,122,0,__PYX_ERR(0, 377, __pyx_L1_error)) + __Pyx_TraceLine(359,129,0,__PYX_ERR(0, 359, __pyx_L1_error)) - /* "hunter/_event.pyx":411 + /* "hunter/_event.pyx":393 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * event.arg = self.arg */ - __Pyx_TraceLine(411,123,0,__PYX_ERR(0, 411, __pyx_L1_error)) + __Pyx_TraceLine(393,130,0,__PYX_ERR(0, 393, __pyx_L1_error)) + + + /* "(tree fragment)":1 + * def __pyx_unpickle_Event(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< + * cdef object __pyx_PickleError + * cdef object __pyx_result +*/ + __Pyx_TraceLine(1,0,0,__PYX_ERR(2, 1, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_4__pyx_unpickle_Event, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event, __pyx_t_2) < 0) __PYX_ERR(2, 1, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "(tree fragment)":11 + * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) + * return __pyx_result + * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< + * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] + * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): +*/ + __Pyx_TraceLine(11,30,0,__PYX_ERR(2, 11, __pyx_L1_error)) /* "hunter/_event.pyx":1 - * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii # <<<<<<<<<<<<<< + * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True # <<<<<<<<<<<<<< * from functools import partial * from linecache import getline */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(0, 1, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceLine(1,1,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __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; + __Pyx_TraceReturnValue(Py_None, 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -14183,7 +14961,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(0, 0); + __Pyx_TraceExceptionUnwind(1, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._event", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -14214,11 +14992,11 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); typedef struct { const char *s; -#if 179 <= 65535 +#if 302 <= 65535 const unsigned short n; -#elif 179 / 2 < INT_MAX +#elif 302 / 2 < INT_MAX const unsigned int n; -#elif 179 / 2 < LONG_MAX +#elif 302 / 2 < LONG_MAX const unsigned long n; #else const Py_ssize_t n; @@ -14237,29 +15015,32 @@ typedef struct { } __Pyx_StringTabEntry; static const char * const __pyx_string_tab_encodings[] = { 0 }; static const __Pyx_StringTabEntry __pyx_string_tab[] = { + {__pyx_k_, sizeof(__pyx_k_), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_ */ + {__pyx_k_CALL, sizeof(__pyx_k_CALL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_CALL */ {__pyx_k_CYTHON_SUFFIX_RE, sizeof(__pyx_k_CYTHON_SUFFIX_RE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_CYTHON_SUFFIX_RE */ + {__pyx_k_EXCEPTION, sizeof(__pyx_k_EXCEPTION), 0, 1, 1}, /* PyObject cname: __pyx_n_u_EXCEPTION */ {__pyx_k_Event, sizeof(__pyx_k_Event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event */ + {__pyx_k_Event___reduce_cython, sizeof(__pyx_k_Event___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event___reduce_cython */ + {__pyx_k_Event___setstate_cython, sizeof(__pyx_k_Event___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event___setstate_cython */ {__pyx_k_Event_clone, sizeof(__pyx_k_Event_clone), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_clone */ {__pyx_k_Event_detach, sizeof(__pyx_k_Event_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_detach */ {__pyx_k_Event_kind, sizeof(__pyx_k_Event_kind), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Event_kind */ + {__pyx_k_Incompatible_checksums_0x_x_vs_0, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0 */ {__pyx_k_KIND_NAMES, sizeof(__pyx_k_KIND_NAMES), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KIND_NAMES */ {__pyx_k_LEADING_WHITESPACE_RE, sizeof(__pyx_k_LEADING_WHITESPACE_RE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LEADING_WHITESPACE_RE */ - {__pyx_k_MISSING, sizeof(__pyx_k_MISSING), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MISSING */ - {__pyx_k_Missing_argument_calls_required, sizeof(__pyx_k_Missing_argument_calls_required), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Missing_argument_calls_required */ - {__pyx_k_Missing_argument_depth_required, sizeof(__pyx_k_Missing_argument_depth_required), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Missing_argument_depth_required */ - {__pyx_k_Missing_argument_threading_suppo, sizeof(__pyx_k_Missing_argument_threading_suppo), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Missing_argument_threading_suppo */ + {__pyx_k_LINE, sizeof(__pyx_k_LINE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LINE */ {__pyx_k_NO_SOURCE, sizeof(__pyx_k_NO_SOURCE), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_NO_SOURCE */ {__pyx_k_NO_SOURCE_not_reading_binary, sizeof(__pyx_k_NO_SOURCE_not_reading_binary), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_NO_SOURCE_not_reading_binary */ {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ + {__pyx_k_PickleError, sizeof(__pyx_k_PickleError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PickleError */ + {__pyx_k_RETURN, sizeof(__pyx_k_RETURN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_RETURN */ {__pyx_k_SITE_PACKAGES_PATHS, sizeof(__pyx_k_SITE_PACKAGES_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SITE_PACKAGES_PATHS */ {__pyx_k_SYS_PREFIX_PATHS, sizeof(__pyx_k_SYS_PREFIX_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SYS_PREFIX_PATHS */ {__pyx_k_TokenError, sizeof(__pyx_k_TokenError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TokenError */ - {__pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_TypeError */ {__pyx_k_UNSET, sizeof(__pyx_k_UNSET), 0, 1, 1}, /* PyObject cname: __pyx_n_u_UNSET */ {__pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__2 */ {__pyx_k__3, sizeof(__pyx_k__3), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__3 */ {__pyx_k__4, sizeof(__pyx_k__4), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__4 */ - {__pyx_k__5, sizeof(__pyx_k__5), 0, 1, 0}, /* PyObject cname: __pyx_kp_u__5 */ {__pyx_k_add_note, sizeof(__pyx_k_add_note), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_add_note */ {__pyx_k_all, sizeof(__pyx_k_all), 0, 1, 1}, /* PyObject cname: __pyx_n_u_all */ {__pyx_k_amount, sizeof(__pyx_k_amount), 0, 1, 1}, /* PyObject cname: __pyx_n_u_amount */ @@ -14285,10 +15066,11 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_depth, sizeof(__pyx_k_depth), 0, 1, 1}, /* PyObject cname: __pyx_n_u_depth */ {__pyx_k_detach, sizeof(__pyx_k_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_detach */ {__pyx_k_detached, sizeof(__pyx_k_detached), 0, 1, 1}, /* PyObject cname: __pyx_n_u_detached */ + {__pyx_k_dict, sizeof(__pyx_k_dict), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict */ + {__pyx_k_dict_2, sizeof(__pyx_k_dict_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict_2 */ {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ {__pyx_k_endswith, sizeof(__pyx_k_endswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_endswith */ - {__pyx_k_enumerate, sizeof(__pyx_k_enumerate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_enumerate */ {__pyx_k_eq, sizeof(__pyx_k_eq), 0, 1, 1}, /* PyObject cname: __pyx_n_u_eq */ {__pyx_k_exception, sizeof(__pyx_k_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exception */ {__pyx_k_exists, sizeof(__pyx_k_exists), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exists */ @@ -14323,6 +15105,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_getitem, sizeof(__pyx_k_getitem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getitem */ {__pyx_k_getline, sizeof(__pyx_k_getline), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getline */ {__pyx_k_getlines, sizeof(__pyx_k_getlines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getlines */ + {__pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getstate */ {__pyx_k_globals, sizeof(__pyx_k_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals */ {__pyx_k_globals_2, sizeof(__pyx_k_globals_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals_2 */ {__pyx_k_globals_getter, sizeof(__pyx_k_globals_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals_getter */ @@ -14349,8 +15132,6 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_locals_2, sizeof(__pyx_k_locals_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_locals_2 */ {__pyx_k_locals_getter, sizeof(__pyx_k_locals_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_locals_getter */ {__pyx_k_main, sizeof(__pyx_k_main), 0, 1, 1}, /* PyObject cname: __pyx_n_u_main */ - {__pyx_k_make_kind_names, sizeof(__pyx_k_make_kind_names), 0, 1, 1}, /* PyObject cname: __pyx_n_u_make_kind_names */ - {__pyx_k_mem, sizeof(__pyx_k_mem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_mem */ {__pyx_k_module, sizeof(__pyx_k_module), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_module */ {__pyx_k_module_2, sizeof(__pyx_k_module_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_2 */ {__pyx_k_module_3, sizeof(__pyx_k_module_3), 0, 1, 1}, /* PyObject cname: __pyx_n_u_module_3 */ @@ -14361,11 +15142,13 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ {__pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name_2 */ {__pyx_k_namedtuple, sizeof(__pyx_k_namedtuple), 0, 1, 1}, /* PyObject cname: __pyx_n_u_namedtuple */ + {__pyx_k_new, sizeof(__pyx_k_new), 0, 1, 1}, /* PyObject cname: __pyx_n_u_new */ {__pyx_k_next, sizeof(__pyx_k_next), 0, 1, 1}, /* PyObject cname: __pyx_n_u_next */ {__pyx_k_object, sizeof(__pyx_k_object), 0, 1, 1}, /* PyObject cname: __pyx_n_u_object */ {__pyx_k_os_path, sizeof(__pyx_k_os_path), 0, 1, 1}, /* PyObject cname: __pyx_n_u_os_path */ {__pyx_k_other, sizeof(__pyx_k_other), 0, 1, 1}, /* PyObject cname: __pyx_n_u_other */ {__pyx_k_partial, sizeof(__pyx_k_partial), 0, 1, 1}, /* PyObject cname: __pyx_n_u_partial */ + {__pyx_k_pickle, sizeof(__pyx_k_pickle), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pickle */ {__pyx_k_pkg_resources, sizeof(__pyx_k_pkg_resources), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pkg_resources */ {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ {__pyx_k_py, sizeof(__pyx_k_py), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_py */ @@ -14373,13 +15156,25 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_pyd, sizeof(__pyx_k_pyd), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyd */ {__pyx_k_pyo, sizeof(__pyx_k_pyo), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyo */ {__pyx_k_pyx, sizeof(__pyx_k_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyx */ + {__pyx_k_pyx_PickleError, sizeof(__pyx_k_pyx_PickleError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_PickleError */ + {__pyx_k_pyx_checksum, sizeof(__pyx_k_pyx_checksum), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_checksum */ + {__pyx_k_pyx_result, sizeof(__pyx_k_pyx_result), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_result */ + {__pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_state */ + {__pyx_k_pyx_type, sizeof(__pyx_k_pyx_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_type */ + {__pyx_k_pyx_unpickle_Event, sizeof(__pyx_k_pyx_unpickle_Event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Event */ + {__pyx_k_pyx_unpickle_Event__set_state, sizeof(__pyx_k_pyx_unpickle_Event__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Event__set_state */ {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ + {__pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce */ + {__pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_cython */ + {__pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_ex */ {__pyx_k_repr, sizeof(__pyx_k_repr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_repr */ {__pyx_k_return, sizeof(__pyx_k_return), 0, 1, 1}, /* PyObject cname: __pyx_n_u_return */ {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ {__pyx_k_send, sizeof(__pyx_k_send), 0, 1, 1}, /* PyObject cname: __pyx_n_u_send */ {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ + {__pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate */ + {__pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate_cython */ {__pyx_k_site, sizeof(__pyx_k_site), 0, 1, 1}, /* PyObject cname: __pyx_n_u_site */ {__pyx_k_so, sizeof(__pyx_k_so), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_so */ {__pyx_k_source, sizeof(__pyx_k_source), 0, 1, 1}, /* PyObject cname: __pyx_n_u_source */ @@ -14390,10 +15185,11 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_src_hunter__event_pyx, sizeof(__pyx_k_src_hunter__event_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__event_pyx */ {__pyx_k_start, sizeof(__pyx_k_start), 0, 1, 1}, /* PyObject cname: __pyx_n_u_start */ {__pyx_k_startswith, sizeof(__pyx_k_startswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_startswith */ + {__pyx_k_state, sizeof(__pyx_k_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_state */ {__pyx_k_stdlib, sizeof(__pyx_k_stdlib), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib */ {__pyx_k_stdlib_getter, sizeof(__pyx_k_stdlib_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib_getter */ {__pyx_k_string, sizeof(__pyx_k_string), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_string */ - {__pyx_k_strings, sizeof(__pyx_k_strings), 0, 1, 1}, /* PyObject cname: __pyx_n_u_strings */ + {__pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stringsource */ {__pyx_k_sub, sizeof(__pyx_k_sub), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sub */ {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ {__pyx_k_thread, sizeof(__pyx_k_thread), 0, 1, 1}, /* PyObject cname: __pyx_n_u_thread */ @@ -14405,7 +15201,8 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_threadname_getter, sizeof(__pyx_k_threadname_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadname_getter */ {__pyx_k_throw, sizeof(__pyx_k_throw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_throw */ {__pyx_k_tokenize, sizeof(__pyx_k_tokenize), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tokenize */ - {__pyx_k_tracer, sizeof(__pyx_k_tracer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tracer */ + {__pyx_k_update, sizeof(__pyx_k_update), 0, 1, 1}, /* PyObject cname: __pyx_n_u_update */ + {__pyx_k_use_setstate, sizeof(__pyx_k_use_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_use_setstate */ {__pyx_k_util, sizeof(__pyx_k_util), 0, 1, 1}, /* PyObject cname: __pyx_n_u_util */ {__pyx_k_v, sizeof(__pyx_k_v), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v */ {__pyx_k_value, sizeof(__pyx_k_value), 0, 1, 1}, /* PyObject cname: __pyx_n_u_value */ @@ -14421,9 +15218,7 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, c static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); - __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_object); if (!__pyx_builtin_object) __PYX_ERR(0, 31, __pyx_L1_error) - __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 39, __pyx_L1_error) - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 65, __pyx_L1_error) + __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_object); if (!__pyx_builtin_object) __PYX_ERR(0, 25, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; @@ -14435,93 +15230,104 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "hunter/_event.pyx":229 + /* "hunter/_event.pyx":211 * module = self.arg.__module__ * else: * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< * if module is None: * module = '?' */ - __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_kp_u__3); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 229, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_kp_u__2); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 211, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); - /* "hunter/_event.pyx":248 + /* "hunter/_event.pyx":230 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): */ - __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyc, __pyx_mstate_global->__pyx_kp_u_pyo); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 248, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyc, __pyx_mstate_global->__pyx_kp_u_pyo); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]); - /* "hunter/_event.pyx":249 + /* "hunter/_event.pyx":231 * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) */ - __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 249, __pyx_L1_error) + __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 231, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[0]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]); - /* "hunter/_event.pyx":250 + /* "hunter/_event.pyx":232 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ - __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_so, __pyx_mstate_global->__pyx_kp_u_pyd); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 250, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_so, __pyx_mstate_global->__pyx_kp_u_pyd); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 232, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[2]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[2]); - /* "hunter/_event.pyx":252 + /* "hunter/_event.pyx":234 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): */ - __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyx, __pyx_mstate_global->__pyx_kp_u_py); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyx, __pyx_mstate_global->__pyx_kp_u_py); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 234, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[3]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[3]); - /* "hunter/_event.pyx":29 + /* "(tree fragment)":4 + * cdef object __pyx_PickleError + * cdef object __pyx_result + * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): # <<<<<<<<<<<<<< + * from pickle import PickleError as __pyx_PickleError + * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum +*/ + __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_157141922, __pyx_mstate_global->__pyx_int_103004196, __pyx_mstate_global->__pyx_int_235031988); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(2, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); + + /* "hunter/_event.pyx":23 * from .util import if_same_code * * __all__ = 'Event', # <<<<<<<<<<<<<< * * cdef object UNSET = object() */ - __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Event); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(0, 29, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); + __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Event); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(0, 23, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]); - /* "hunter/_event.pyx":108 + /* "hunter/_event.pyx":90 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * */ - __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(0, 108, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]); + __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]); - /* "hunter/_event.pyx":362 + /* "hunter/_event.pyx":344 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None */ - __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(1, ((PyObject*)__pyx_mstate_global->__pyx_int_10)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 362, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]); + __pyx_mstate_global->__pyx_tuple[7] = PyTuple_Pack(1, ((PyObject*)__pyx_mstate_global->__pyx_int_10)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[7])) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[7]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[7]); __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -14537,6 +15343,9 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); __pyx_mstate->__pyx_int_1 = PyLong_FromLong(1); if (unlikely(!__pyx_mstate->__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) __pyx_mstate->__pyx_int_10 = PyLong_FromLong(10); if (unlikely(!__pyx_mstate->__pyx_int_10)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_103004196 = PyLong_FromLong(103004196L); if (unlikely(!__pyx_mstate->__pyx_int_103004196)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_157141922 = PyLong_FromLong(157141922L); if (unlikely(!__pyx_mstate->__pyx_int_157141922)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_mstate->__pyx_int_235031988 = PyLong_FromLong(235031988L); if (unlikely(!__pyx_mstate->__pyx_int_235031988)) __PYX_ERR(0, 1, __pyx_L1_error) __pyx_mstate->__pyx_int_neg_1 = PyLong_FromLong(-1); if (unlikely(!__pyx_mstate->__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error) return 0; __pyx_L1_error:; @@ -14545,7 +15354,7 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { /* #### Code section: init_codeobjects ### */ \ typedef struct { - unsigned int argcount : 4; + unsigned int argcount : 3; unsigned int num_posonly_args : 1; unsigned int num_kwonly_args : 1; unsigned int nlocals : 5; @@ -14568,229 +15377,244 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { PyObject* tuple_dedup_map = PyDict_New(); if (unlikely(!tuple_dedup_map)) return -1; { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 36, 73}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_strings, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_mem, __pyx_mstate->__pyx_n_u_KIND_NAMES}; - __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_make_kind_names, __pyx_k_a_L_6_Qj_Yaq_vQa_q_Qe_q_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {8, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 61, 274}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_tracer, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support}; - __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_LL__rrs_7_Q_vS_iq_vS_iq_A_iq_F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; + const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 56, 176}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support}; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_G1_IQ_HF_AQ_IQ_IQ_L_KuBa_IQ_M, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 100, 28}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 82, 28}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_t_d_4_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_t_d_4_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 105, 11}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 87, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; - __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_uCq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_uCq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 108, 16}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 90, 16}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter}; - __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_detach, __pyx_k_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_detach, __pyx_k_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 111, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 93, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_clone, __pyx_k_A_z, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_clone, __pyx_k_A_z, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 114, 83}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 96, 80}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_instruction_getter, __pyx_k_A_4_S_q_9_Q_nAT_Q_xt9Cq_G1A_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_instruction_getter, __pyx_k_A_4_S_at1_nAT_Q_xt9Cq_G1A_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 126, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 108, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 130, 70}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 112, 70}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadid_getter, __pyx_k_A_4_3a_q_uG5_HCt1_N_N_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadid_getter, __pyx_k_A_4_3a_q_uG5_HCt1_N_N_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 142, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 124, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 146, 51}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 128, 51}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadname_getter, __pyx_k_A_4_Cq_t9Cq_K_Q_t81_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadname_getter, __pyx_k_A_4_Cq_t9Cq_K_Q_t81_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 153, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 135, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 157, 51}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 139, 48}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_locals_getter, __pyx_k_A_4y_1_t1_Kq_K_0_1B_a_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_locals_getter, __pyx_k_A_4y_1_t1_Kq_K_7q_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 165, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 147, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 169, 51}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 151, 48}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_globals_getter, __pyx_k_A_4z_A_t1_Kq_L_2_3DD_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_globals_getter, __pyx_k_A_4z_A_t1_Kq_L_9_a_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 177, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 159, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 181, 51}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 163, 51}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_function_getter, __pyx_k_A_4_Q_t1_M_T_M_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_function_getter, __pyx_k_A_4_Q_t1_M_T_M_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 189, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 171, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 193, 213}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 175, 213}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_code_2, __pyx_mstate->__pyx_n_u_candidate, __pyx_mstate->__pyx_n_u_func_2, __pyx_mstate->__pyx_n_u_first_arg, __pyx_mstate->__pyx_n_u_v}; - __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 224, 72}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 206, 72}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_module_getter, __pyx_k_A_4y_1_t1_T_XT_a_wc_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_module_getter, __pyx_k_A_4y_1_t1_T_XT_a_wc_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 235, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 217, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 239, 157}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 221, 157}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_filename_getter, __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_filename_getter, __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 261, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 243, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 265, 37}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 247, 34}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_lineno_getter, __pyx_k_A_4y_1_0_1B_a_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_lineno_getter, __pyx_k_A_4y_1_7q_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 270, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 252, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 274, 34}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 256, 32}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_code_getter, __pyx_k_A_4wc_4D_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_code_getter, __pyx_k_A_4wc_a_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 280, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 262, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 284, 136}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 266, 136}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_stdlib_getter, __pyx_k_A_4y_1_4wfAQ_s_Kq_Zs_U_g_X___ggj, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_stdlib_getter, __pyx_k_A_4y_1_4wfAQ_s_Kq_Zs_U_g_X___ggj, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 302, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 284, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 306, 212}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 288, 212}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fullsource_getter, __pyx_k_A_4_Cq_O1_t_q_4vS_t4y_1_A_Cwc_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fullsource_getter, __pyx_k_A_4_Cq_O1_t_q_4vS_t4y_1_A_Cwc_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 339, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 321, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 343, 110}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 325, 110}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_source_getter, __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_source_getter, __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 354, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 336, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 358, 13}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 340, 13}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_item}; - __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_getitem, __pyx_k_A_wavQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_getitem, __pyx_k_A_wavQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 2}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; + __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 14, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 44, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 15, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 45, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 46, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 17, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 47, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 18, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 48, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 19, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 49, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 20, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 50, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 21, 2}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; - __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 921}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; + __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_4_4Obbffqqu_v_E_E_I_I_S_S_W_W, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; + __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_1F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 362, 5}; + const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 344, 5}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_filename_2, __pyx_mstate->__pyx_n_u_module_globals, __pyx_mstate->__pyx_n_u_start, __pyx_mstate->__pyx_n_u_collector, __pyx_mstate->__pyx_n_u_limit, __pyx_mstate->__pyx_n_u_dedent, __pyx_mstate->__pyx_n_u_amount, __pyx_mstate->__pyx_n_u_line}; - __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_yield_lines, __pyx_k__7, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_yield_lines, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 359, 311}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_CALL, __pyx_mstate->__pyx_n_u_EXCEPTION, __pyx_mstate->__pyx_n_u_LINE, __pyx_mstate->__pyx_n_u_RETURN, __pyx_mstate->__pyx_n_u_KIND_NAMES}; + __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_detach, __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad; + } + { + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 393, 228}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_CALL, __pyx_mstate->__pyx_n_u_EXCEPTION, __pyx_mstate->__pyx_n_u_LINE, __pyx_mstate->__pyx_n_u_RETURN, __pyx_mstate->__pyx_n_u_KIND_NAMES}; + __pyx_mstate_global->__pyx_codeobj_tab[45] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_clone, __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[45])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 377, 311}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_mem, __pyx_mstate->__pyx_n_u_KIND_NAMES}; - __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_detach, __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 86}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; + __pyx_mstate_global->__pyx_codeobj_tab[46] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Event, __pyx_k_hk_A_1_S_S_U_U_V_5_7_q_a_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[46])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 411, 228}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_mem, __pyx_mstate->__pyx_n_u_KIND_NAMES}; - __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_clone, __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 776}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_CALL, __pyx_mstate->__pyx_n_u_EXCEPTION, __pyx_mstate->__pyx_n_u_LINE, __pyx_mstate->__pyx_n_u_RETURN, __pyx_mstate->__pyx_n_u_KIND_NAMES}; + __pyx_mstate_global->__pyx_codeobj_tab[47] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Event__set_state, __pyx_k_AT_QdR_mmxxyy_J_J_W_W_b_b_c_c_g, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[47])) goto bad; } Py_DECREF(tuple_dedup_map); return 0; @@ -15008,207 +15832,67 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name) { return result; } -/* Profile */ -#if CYTHON_PROFILE || CYTHON_TRACE -#if CYTHON_TRACE && !CYTHON_USE_SYS_MONITORING -static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line) { - int ret; - PyObject *type, *value, *traceback; - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - __Pyx_PyFrame_SetLineNumber(frame, line); - __Pyx_EnterTracing(tstate); - ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); - __Pyx_LeaveTracing(tstate); - if (likely(!ret)) { - __Pyx_ErrRestoreInState(tstate, type, value, traceback); - } else { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); +/* TupleAndListFromArray */ +#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + Py_ssize_t i; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); } - return ret; -} -#endif -CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { - PyCodeObject *py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); - if (likely(py_code)) { - py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + for (i = 0; i < n; i++) { + if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { + Py_DECREF(res); + return NULL; + } + Py_INCREF(src[i]); } - return py_code; -} -#if CYTHON_USE_SYS_MONITORING -CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event) { - int ret; - __pyx_monitoring_version_type version = 0; - ret = PyMonitoring_EnterScope(state_array, &version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyFunc_count); - if (unlikely(ret == -1)) return -1; - return skip_event ? 0 : PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); -} -CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { - int ret; - ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); - if (unlikely(ret == -1)) return -1; - return PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); + return res; } -CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { - int ret; - ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); - if (unlikely(ret == -1)) return -1; - return PyMonitoring_FirePyResumeEvent(&state_array[__Pyx_Monitoring_PY_RESUME], code_obj, offset); +#elif CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { + PyObject *v; + Py_ssize_t i; + for (i = 0; i < length; i++) { + v = dest[i] = src[i]; + Py_INCREF(v); + } } -CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised) { - if (reraised) { - (void) PyMonitoring_FireReraiseEvent(monitoring_state, code_obj, offset); - } else { - (void) PyMonitoring_FireRaiseEvent(monitoring_state, code_obj, offset); +static CYTHON_INLINE PyObject * +__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + if (n <= 0) { + return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); } + res = PyTuple_New(n); + if (unlikely(res == NULL)) return NULL; + __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item, n); + return res; } -#if CYTHON_TRACE -CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset) { - int ret; - PyObject *exc = PyErr_GetRaisedException(); - ret = PyMonitoring_FireLineEvent(monitoring_state, code_obj, offset, line); - if (exc) PyErr_SetRaisedException(exc); - return ret; +static CYTHON_INLINE PyObject * +__Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) +{ + PyObject *res; + if (n <= 0) { + return PyList_New(0); + } + res = PyList_New(n); + if (unlikely(res == NULL)) return NULL; + __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item, n); + return res; } #endif -#else -static int __Pyx_TraceSetupAndCall(PyCodeObject** code, - PyFrameObject** frame, - PyThreadState* tstate, - const char *funcname, - const char *srcfile, - int firstlineno, - int skip_event) { - if (*frame == NULL || !CYTHON_PROFILE_REUSE_FRAME) { - int needs_new_code_obj = (*code == NULL); - if (needs_new_code_obj) { - *code = __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno); - if (*code == NULL) return 0; - } - *frame = PyFrame_New( - tstate, /*PyThreadState *tstate*/ - *code, /*PyCodeObject *code*/ - __pyx_mstate_global->__pyx_d, /*PyObject *globals*/ - 0 /*PyObject *locals*/ - ); - if (needs_new_code_obj && !CYTHON_PROFILE_REUSE_CODEOBJ) - Py_CLEAR(*code); // otherwise the reference is owned externally - if (*frame == NULL) return 0; - if (CYTHON_TRACE && (*frame)->f_trace == NULL) { - Py_INCREF(Py_None); - (*frame)->f_trace = Py_None; - } - } - if (!skip_event) { - PyObject *type, *value, *traceback; - int retval = 1; - __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); - __Pyx_EnterTracing(tstate); - __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); - #if CYTHON_TRACE - if (tstate->c_tracefunc) - retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; - if (retval && tstate->c_profilefunc) - #endif - retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; - __Pyx_LeaveTracing(tstate); - if (unlikely(!retval)) { - Py_XDECREF(type); - Py_XDECREF(value); - Py_XDECREF(traceback); - return -1; - } - __Pyx_ErrRestoreInState(tstate, type, value, traceback); - } - return __Pyx_IsTracing(tstate, 0, 0); -} -#endif -#endif - -/* RaiseUnexpectedTypeError */ -static int -__Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj) -{ - __Pyx_TypeName obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); - PyErr_Format(PyExc_TypeError, "Expected %s, got " __Pyx_FMT_TYPENAME, - expected, obj_type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; -} - -/* Intern */ -static PyObject* __Pyx_Intern(PyObject* s) { - if (unlikely(!PyUnicode_CheckExact(s))) { - __Pyx_RaiseUnexpectedTypeError("str", s); - return NULL; - } - Py_INCREF(s); - PyUnicode_InternInPlace(&s); - return s; -} - -/* TupleAndListFromArray */ -#if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL -static CYTHON_INLINE PyObject * -__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - Py_ssize_t i; - if (n <= 0) { - return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); - } - res = PyTuple_New(n); - if (unlikely(res == NULL)) return NULL; - for (i = 0; i < n; i++) { - if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < 0)) { - Py_DECREF(res); - return NULL; - } - Py_INCREF(src[i]); - } - return res; -} -#elif CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE void __Pyx_copy_object_array(PyObject *const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) { - PyObject *v; - Py_ssize_t i; - for (i = 0; i < length; i++) { - v = dest[i] = src[i]; - Py_INCREF(v); - } -} -static CYTHON_INLINE PyObject * -__Pyx_PyTuple_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - if (n <= 0) { - return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple); - } - res = PyTuple_New(n); - if (unlikely(res == NULL)) return NULL; - __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item, n); - return res; -} -static CYTHON_INLINE PyObject * -__Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n) -{ - PyObject *res; - if (n <= 0) { - return PyList_New(0); - } - res = PyList_New(n); - if (unlikely(res == NULL)) return NULL; - __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item, n); - return res; -} -#endif - -/* BytesEquals */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ - !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) - return PyObject_RichCompareBool(s1, s2, equals); + +/* BytesEquals */ +static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { +#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_GRAAL ||\ + !(CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) + return PyObject_RichCompareBool(s1, s2, equals); #else if (s1 == s2) { return (equals == Py_EQ); @@ -16179,223 +16863,123 @@ static void __Pyx_RaiseArgtupleInvalid( (num_expected == 1) ? "" : "s", num_found); } -/* ArgTypeTest */ -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) -{ - __Pyx_TypeName type_name; - __Pyx_TypeName obj_type_name; - PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; - int from_annotation_subclass = 0; - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; - } - else if (!exact) { - if (likely(__Pyx_TypeCheck(obj, type))) return 1; - } else if (exact == 2) { - if (__Pyx_TypeCheck(obj, type)) { - from_annotation_subclass = 1; - extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; - } +/* Profile */ +#if CYTHON_PROFILE || CYTHON_TRACE +#if CYTHON_TRACE && !CYTHON_USE_SYS_MONITORING +static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int line) { + int ret; + PyObject *type, *value, *traceback; + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + __Pyx_PyFrame_SetLineNumber(frame, line); + __Pyx_EnterTracing(tstate); + ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL); + __Pyx_LeaveTracing(tstate); + if (likely(!ret)) { + __Pyx_ErrRestoreInState(tstate, type, value, traceback); + } else { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); } - type_name = __Pyx_PyType_GetFullyQualifiedName(type); - obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); - PyErr_Format(PyExc_TypeError, - "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME - ", got " __Pyx_FMT_TYPENAME ")" -#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 - "%s%U" -#endif - , name, type_name, obj_type_name -#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 - , (from_annotation_subclass ? ". " : ""), extra_info + return ret; +} #endif - ); -#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 - if (exact == 2 && from_annotation_subclass) { - PyObject *res; - PyObject *vargs[2]; - vargs[0] = PyErr_GetRaisedException(); - vargs[1] = extra_info; - res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); - Py_XDECREF(res); - PyErr_SetRaisedException(vargs[0]); +CYTHON_UNUSED static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) { + PyCodeObject *py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno); + if (likely(py_code)) { + py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS; } -#endif - __Pyx_DECREF_TypeName(type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; + return py_code; } - -/* RaiseException */ -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - PyObject* owned_instance = NULL; - if (tb == Py_None) { - tb = 0; - } else if (tb && !PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto bad; +#if CYTHON_USE_SYS_MONITORING +CYTHON_UNUSED static int __Pyx__TraceStartFunc(PyMonitoringState *state_array, PyObject *code_obj, int offset, int skip_event) { + int ret; + __pyx_monitoring_version_type version = 0; + ret = PyMonitoring_EnterScope(state_array, &version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyFunc_count); + if (unlikely(ret == -1)) return -1; + return skip_event ? 0 : PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceStartGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyStartEvent(&state_array[__Pyx_Monitoring_PY_START], code_obj, offset); +} +CYTHON_UNUSED static int __Pyx__TraceResumeGen(PyMonitoringState *state_array, __pyx_monitoring_version_type *version, PyObject *code_obj, int offset) { + int ret; + ret = PyMonitoring_EnterScope(state_array, version, __Pyx_MonitoringEventTypes, __Pyx_MonitoringEventTypes_CyGen_count); + if (unlikely(ret == -1)) return -1; + return PyMonitoring_FirePyResumeEvent(&state_array[__Pyx_Monitoring_PY_RESUME], code_obj, offset); +} +CYTHON_UNUSED static void __Pyx__TraceException(PyMonitoringState *monitoring_state, PyObject *code_obj, int offset, int reraised) { + if (reraised) { + (void) PyMonitoring_FireReraiseEvent(monitoring_state, code_obj, offset); + } else { + (void) PyMonitoring_FireRaiseEvent(monitoring_state, code_obj, offset); } - if (value == Py_None) - value = 0; - if (PyExceptionInstance_Check(type)) { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto bad; - } - value = type; - type = (PyObject*) Py_TYPE(value); - } else if (PyExceptionClass_Check(type)) { - PyObject *instance_class = NULL; - if (value && PyExceptionInstance_Check(value)) { - instance_class = (PyObject*) Py_TYPE(value); - if (instance_class != type) { - int is_subclass = PyObject_IsSubclass(instance_class, type); - if (!is_subclass) { - instance_class = NULL; - } else if (unlikely(is_subclass == -1)) { - goto bad; - } else { - type = instance_class; - } - } - } - if (!instance_class) { - PyObject *args; - if (!value) - args = PyTuple_New(0); - else if (PyTuple_Check(value)) { - Py_INCREF(value); - args = value; - } else - args = PyTuple_Pack(1, value); - if (!args) - goto bad; - owned_instance = PyObject_Call(type, args, NULL); - Py_DECREF(args); - if (!owned_instance) - goto bad; - value = owned_instance; - if (!PyExceptionInstance_Check(value)) { - PyErr_Format(PyExc_TypeError, - "calling %R should have returned an instance of " - "BaseException, not %R", - type, Py_TYPE(value)); - goto bad; - } +} +#if CYTHON_TRACE +CYTHON_UNUSED static int __Pyx__TraceLine(PyMonitoringState *monitoring_state, PyObject *code_obj, int line, int offset) { + int ret; + PyObject *exc = PyErr_GetRaisedException(); + ret = PyMonitoring_FireLineEvent(monitoring_state, code_obj, offset, line); + if (exc) PyErr_SetRaisedException(exc); + return ret; +} +#endif +#else +static int __Pyx_TraceSetupAndCall(PyCodeObject** code, + PyFrameObject** frame, + PyThreadState* tstate, + const char *funcname, + const char *srcfile, + int firstlineno, + int skip_event) { + if (*frame == NULL || !CYTHON_PROFILE_REUSE_FRAME) { + int needs_new_code_obj = (*code == NULL); + if (needs_new_code_obj) { + *code = __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno); + if (*code == NULL) return 0; } - } else { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto bad; - } - if (cause) { - PyObject *fixed_cause; - if (cause == Py_None) { - fixed_cause = NULL; - } else if (PyExceptionClass_Check(cause)) { - fixed_cause = PyObject_CallObject(cause, NULL); - if (fixed_cause == NULL) - goto bad; - } else if (PyExceptionInstance_Check(cause)) { - fixed_cause = cause; - Py_INCREF(fixed_cause); - } else { - PyErr_SetString(PyExc_TypeError, - "exception causes must derive from " - "BaseException"); - goto bad; + *frame = PyFrame_New( + tstate, /*PyThreadState *tstate*/ + *code, /*PyCodeObject *code*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals*/ + 0 /*PyObject *locals*/ + ); + if (needs_new_code_obj && !CYTHON_PROFILE_REUSE_CODEOBJ) + Py_CLEAR(*code); // otherwise the reference is owned externally + if (*frame == NULL) return 0; + if (CYTHON_TRACE && (*frame)->f_trace == NULL) { + Py_INCREF(Py_None); + (*frame)->f_trace = Py_None; } - PyException_SetCause(value, fixed_cause); } - PyErr_SetObject(type, value); - if (tb) { -#if PY_VERSION_HEX >= 0x030C00A6 - PyException_SetTraceback(value, tb); -#elif CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* tmp_tb = tstate->curexc_traceback; - if (tb != tmp_tb) { - Py_INCREF(tb); - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_tb); + if (!skip_event) { + PyObject *type, *value, *traceback; + int retval = 1; + __Pyx_PyFrame_SetLineNumber(*frame, firstlineno); + __Pyx_EnterTracing(tstate); + __Pyx_ErrFetchInState(tstate, &type, &value, &traceback); + #if CYTHON_TRACE + if (tstate->c_tracefunc) + retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0; + if (retval && tstate->c_profilefunc) + #endif + retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0; + __Pyx_LeaveTracing(tstate); + if (unlikely(!retval)) { + Py_XDECREF(type); + Py_XDECREF(value); + Py_XDECREF(traceback); + return -1; } -#else - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); - Py_INCREF(tb); - PyErr_Restore(tmp_type, tmp_value, tb); - Py_XDECREF(tmp_tb); -#endif - } -bad: - Py_XDECREF(owned_instance); - return; -} - -/* PyDictVersioning */ -#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) { - PyObject *dict = Py_TYPE(obj)->tp_dict; - return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; -} -static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) { - PyObject **dictptr = NULL; - Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; - if (offset) { -#if CYTHON_COMPILING_IN_CPYTHON - dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); -#else - dictptr = _PyObject_GetDictPtr(obj); -#endif + __Pyx_ErrRestoreInState(tstate, type, value, traceback); } - return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; -} -static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) { - PyObject *dict = Py_TYPE(obj)->tp_dict; - if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) - return 0; - return obj_dict_version == __Pyx_get_object_dict_version(obj); + return __Pyx_IsTracing(tstate, 0, 0); } #endif - -/* GetModuleGlobalName */ -#if CYTHON_USE_DICT_VERSIONS -static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value) -#else -static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) -#endif -{ - PyObject *result; -#if CYTHON_COMPILING_IN_LIMITED_API - if (unlikely(!__pyx_m)) { - if (!PyErr_Occurred()) - PyErr_SetNone(PyExc_NameError); - return NULL; - } - result = PyObject_GetAttr(__pyx_m, name); - if (likely(result)) { - return result; - } - PyErr_Clear(); -#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS - if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); - __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return result; - } -#else - result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } - PyErr_Clear(); #endif - return __Pyx_GetBuiltinName(name); -} /* PyObjectFormatAndDecref */ static CYTHON_INLINE PyObject* __Pyx_PyObject_FormatSimpleAndDecref(PyObject* s, PyObject* f) { @@ -16603,6 +17187,68 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i)); } +/* PyDictVersioning */ +#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) { + PyObject *dict = Py_TYPE(obj)->tp_dict; + return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; +} +static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) { + PyObject **dictptr = NULL; + Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; + if (offset) { +#if CYTHON_COMPILING_IN_CPYTHON + dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); +#else + dictptr = _PyObject_GetDictPtr(obj); +#endif + } + return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; +} +static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) { + PyObject *dict = Py_TYPE(obj)->tp_dict; + if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) + return 0; + return obj_dict_version == __Pyx_get_object_dict_version(obj); +} +#endif + +/* GetModuleGlobalName */ +#if CYTHON_USE_DICT_VERSIONS +static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value) +#else +static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) +#endif +{ + PyObject *result; +#if CYTHON_COMPILING_IN_LIMITED_API + if (unlikely(!__pyx_m)) { + if (!PyErr_Occurred()) + PyErr_SetNone(PyExc_NameError); + return NULL; + } + result = PyObject_GetAttr(__pyx_m, name); + if (likely(result)) { + return result; + } + PyErr_Clear(); +#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS + if (unlikely(__Pyx_PyDict_GetItemRef(__pyx_mstate_global->__pyx_d, name, &result) == -1)) PyErr_Clear(); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return result; + } +#else + result = _PyDict_GetItem_KnownHash(__pyx_mstate_global->__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_mstate_global->__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return __Pyx_NewRef(result); + } + PyErr_Clear(); +#endif + return __Pyx_GetBuiltinName(name); +} + /* PyObjectFastCallMethod */ #if !CYTHON_VECTORCALL || PY_VERSION_HEX < 0x03090000 static PyObject *__Pyx_PyObject_FastCallMethod(PyObject *name, PyObject *const *args, size_t nargsf) { @@ -17568,131 +18214,419 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) exc_info->exc_traceback = local_tb; #endif } - #else - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = local_type; - tstate->exc_value = local_value; - tstate->exc_traceback = local_tb; - #endif - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000 - PyErr_SetHandledException(local_value); - Py_XDECREF(local_value); - Py_XDECREF(local_type); - Py_XDECREF(local_tb); + #else + tmp_type = tstate->exc_type; + tmp_value = tstate->exc_value; + tmp_tb = tstate->exc_traceback; + tstate->exc_type = local_type; + tstate->exc_value = local_value; + tstate->exc_traceback = local_tb; + #endif + Py_XDECREF(tmp_type); + Py_XDECREF(tmp_value); + Py_XDECREF(tmp_tb); +#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000 + PyErr_SetHandledException(local_value); + Py_XDECREF(local_value); + Py_XDECREF(local_type); + Py_XDECREF(local_tb); +#else + PyErr_SetExcInfo(local_type, local_value, local_tb); +#endif + return 0; +#if __PYX_LIMITED_VERSION_HEX <= 0x030C0000 +bad: + *type = 0; + *value = 0; + *tb = 0; + Py_XDECREF(local_type); + Py_XDECREF(local_value); + Py_XDECREF(local_tb); + return -1; +#endif +} + +/* SwapException */ +#if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { + PyObject *tmp_type, *tmp_value, *tmp_tb; + #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4 + _PyErr_StackItem *exc_info = tstate->exc_info; + tmp_value = exc_info->exc_value; + exc_info->exc_value = *value; + if (tmp_value == NULL || tmp_value == Py_None) { + Py_XDECREF(tmp_value); + tmp_value = NULL; + tmp_type = NULL; + tmp_tb = NULL; + } else { + tmp_type = (PyObject*) Py_TYPE(tmp_value); + Py_INCREF(tmp_type); + #if CYTHON_COMPILING_IN_CPYTHON + tmp_tb = ((PyBaseExceptionObject*) tmp_value)->traceback; + Py_XINCREF(tmp_tb); + #else + tmp_tb = PyException_GetTraceback(tmp_value); + #endif + } + #elif CYTHON_USE_EXC_INFO_STACK + _PyErr_StackItem *exc_info = tstate->exc_info; + tmp_type = exc_info->exc_type; + tmp_value = exc_info->exc_value; + tmp_tb = exc_info->exc_traceback; + exc_info->exc_type = *type; + exc_info->exc_value = *value; + exc_info->exc_traceback = *tb; + #else + tmp_type = tstate->exc_type; + tmp_value = tstate->exc_value; + tmp_tb = tstate->exc_traceback; + tstate->exc_type = *type; + tstate->exc_value = *value; + tstate->exc_traceback = *tb; + #endif + *type = tmp_type; + *value = tmp_value; + *tb = tmp_tb; +} +#else +static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) { + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_GetExcInfo(&tmp_type, &tmp_value, &tmp_tb); + PyErr_SetExcInfo(*type, *value, *tb); + *type = tmp_type; + *value = tmp_value; + *tb = tmp_tb; +} +#endif + +/* GetAttr */ +static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { +#if CYTHON_USE_TYPE_SLOTS + if (likely(PyUnicode_Check(n))) + return __Pyx_PyObject_GetAttrStr(o, n); +#endif + return PyObject_GetAttr(o, n); +} + +/* GetAttr3 */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 +static PyObject *__Pyx_GetAttr3Default(PyObject *d) { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + if (unlikely(!__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) + return NULL; + __Pyx_PyErr_Clear(); + Py_INCREF(d); + return d; +} +#endif +static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { + PyObject *r; +#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 + int res = PyObject_GetOptionalAttr(o, n, &r); + return (res != 0) ? r : __Pyx_NewRef(d); +#else + #if CYTHON_USE_TYPE_SLOTS + if (likely(PyUnicode_Check(n))) { + r = __Pyx_PyObject_GetAttrStrNoError(o, n); + if (unlikely(!r) && likely(!PyErr_Occurred())) { + r = __Pyx_NewRef(d); + } + return r; + } + #endif + r = PyObject_GetAttr(o, n); + return (likely(r)) ? r : __Pyx_GetAttr3Default(d); +#endif +} + +/* RaiseUnexpectedTypeError */ +static int +__Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj) +{ + __Pyx_TypeName obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + PyErr_Format(PyExc_TypeError, "Expected %s, got " __Pyx_FMT_TYPENAME, + expected, obj_type_name); + __Pyx_DECREF_TypeName(obj_type_name); + return 0; +} + +/* ArgTypeTest */ +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) +{ + __Pyx_TypeName type_name; + __Pyx_TypeName obj_type_name; + PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode; + int from_annotation_subclass = 0; + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); + return 0; + } + else if (!exact) { + if (likely(__Pyx_TypeCheck(obj, type))) return 1; + } else if (exact == 2) { + if (__Pyx_TypeCheck(obj, type)) { + from_annotation_subclass = 1; + extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately; + } + } + type_name = __Pyx_PyType_GetFullyQualifiedName(type); + obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); + PyErr_Format(PyExc_TypeError, + "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME + ", got " __Pyx_FMT_TYPENAME ")" +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + "%s%U" +#endif + , name, type_name, obj_type_name +#if __PYX_LIMITED_VERSION_HEX < 0x030C0000 + , (from_annotation_subclass ? ". " : ""), extra_info +#endif + ); +#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000 + if (exact == 2 && from_annotation_subclass) { + PyObject *res; + PyObject *vargs[2]; + vargs[0] = PyErr_GetRaisedException(); + vargs[1] = extra_info; + res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); + Py_XDECREF(res); + PyErr_SetRaisedException(vargs[0]); + } +#endif + __Pyx_DECREF_TypeName(type_name); + __Pyx_DECREF_TypeName(obj_type_name); + return 0; +} + +/* pep479 */ +static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { + PyObject *exc, *val, *tb, *cur_exc, *new_exc; + __Pyx_PyThreadState_declare + int is_async_stopiteration = 0; + CYTHON_MAYBE_UNUSED_VAR(in_async_gen); + __Pyx_PyThreadState_assign + cur_exc = __Pyx_PyErr_CurrentExceptionType(); + if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) { + if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) { + is_async_stopiteration = 1; + } else { + return; + } + } + __Pyx_GetException(&exc, &val, &tb); + Py_XDECREF(exc); + Py_XDECREF(tb); + new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s", + is_async_stopiteration ? "async generator raised StopAsyncIteration" : + in_async_gen ? "async generator raised StopIteration" : + "generator raised StopIteration"); + if (!new_exc) { + Py_XDECREF(val); + return; + } + PyException_SetCause(new_exc, val); // steals ref to val + PyErr_SetObject(PyExc_RuntimeError, new_exc); +} + +/* Import */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { + PyObject *module = 0; + PyObject *empty_dict = 0; + PyObject *empty_list = 0; + empty_dict = PyDict_New(); + if (unlikely(!empty_dict)) + goto bad; + if (level == -1) { + const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); + if (package_sep != (0)) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); + if (unlikely(!module)) { + if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) + goto bad; + PyErr_Clear(); + } + } + level = 0; + } + if (!module) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); + } +bad: + Py_XDECREF(empty_dict); + Py_XDECREF(empty_list); + return module; +} + +/* ImportFrom */ +static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { + PyObject* value = __Pyx_PyObject_GetAttrStr(module, name); + if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) { + const char* module_name_str = 0; + PyObject* module_name = 0; + PyObject* module_dot = 0; + PyObject* full_name = 0; + PyErr_Clear(); + module_name_str = PyModule_GetName(module); + if (unlikely(!module_name_str)) { goto modbad; } + module_name = PyUnicode_FromString(module_name_str); + if (unlikely(!module_name)) { goto modbad; } + module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__4); + if (unlikely(!module_dot)) { goto modbad; } + full_name = PyUnicode_Concat(module_dot, name); + if (unlikely(!full_name)) { goto modbad; } + #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ + CYTHON_COMPILING_IN_GRAAL + { + PyObject *modules = PyImport_GetModuleDict(); + if (unlikely(!modules)) + goto modbad; + value = PyObject_GetItem(modules, full_name); + } + #else + value = PyImport_GetModule(full_name); + #endif + modbad: + Py_XDECREF(full_name); + Py_XDECREF(module_dot); + Py_XDECREF(module_name); + } + if (unlikely(!value)) { + PyErr_Format(PyExc_ImportError, "cannot import name %S", name); + } + return value; +} + +/* RaiseException */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { + PyObject* owned_instance = NULL; + if (tb == Py_None) { + tb = 0; + } else if (tb && !PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto bad; + } + if (value == Py_None) + value = 0; + if (PyExceptionInstance_Check(type)) { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto bad; + } + value = type; + type = (PyObject*) Py_TYPE(value); + } else if (PyExceptionClass_Check(type)) { + PyObject *instance_class = NULL; + if (value && PyExceptionInstance_Check(value)) { + instance_class = (PyObject*) Py_TYPE(value); + if (instance_class != type) { + int is_subclass = PyObject_IsSubclass(instance_class, type); + if (!is_subclass) { + instance_class = NULL; + } else if (unlikely(is_subclass == -1)) { + goto bad; + } else { + type = instance_class; + } + } + } + if (!instance_class) { + PyObject *args; + if (!value) + args = PyTuple_New(0); + else if (PyTuple_Check(value)) { + Py_INCREF(value); + args = value; + } else + args = PyTuple_Pack(1, value); + if (!args) + goto bad; + owned_instance = PyObject_Call(type, args, NULL); + Py_DECREF(args); + if (!owned_instance) + goto bad; + value = owned_instance; + if (!PyExceptionInstance_Check(value)) { + PyErr_Format(PyExc_TypeError, + "calling %R should have returned an instance of " + "BaseException, not %R", + type, Py_TYPE(value)); + goto bad; + } + } + } else { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto bad; + } + if (cause) { + PyObject *fixed_cause; + if (cause == Py_None) { + fixed_cause = NULL; + } else if (PyExceptionClass_Check(cause)) { + fixed_cause = PyObject_CallObject(cause, NULL); + if (fixed_cause == NULL) + goto bad; + } else if (PyExceptionInstance_Check(cause)) { + fixed_cause = cause; + Py_INCREF(fixed_cause); + } else { + PyErr_SetString(PyExc_TypeError, + "exception causes must derive from " + "BaseException"); + goto bad; + } + PyException_SetCause(value, fixed_cause); + } + PyErr_SetObject(type, value); + if (tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyException_SetTraceback(value, tb); +#elif CYTHON_FAST_THREAD_STATE + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject* tmp_tb = tstate->curexc_traceback; + if (tb != tmp_tb) { + Py_INCREF(tb); + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_tb); + } #else - PyErr_SetExcInfo(local_type, local_value, local_tb); + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); + Py_INCREF(tb); + PyErr_Restore(tmp_type, tmp_value, tb); + Py_XDECREF(tmp_tb); #endif - return 0; -#if __PYX_LIMITED_VERSION_HEX <= 0x030C0000 + } bad: - *type = 0; - *value = 0; - *tb = 0; - Py_XDECREF(local_type); - Py_XDECREF(local_value); - Py_XDECREF(local_tb); - return -1; -#endif + Py_XDECREF(owned_instance); + return; } -/* SwapException */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4 - _PyErr_StackItem *exc_info = tstate->exc_info; - tmp_value = exc_info->exc_value; - exc_info->exc_value = *value; - if (tmp_value == NULL || tmp_value == Py_None) { - Py_XDECREF(tmp_value); - tmp_value = NULL; - tmp_type = NULL; - tmp_tb = NULL; +/* HasAttr */ +#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 +static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { + PyObject *r; + if (unlikely(!PyUnicode_Check(n))) { + PyErr_SetString(PyExc_TypeError, + "hasattr(): attribute name must be string"); + return -1; + } + r = __Pyx_PyObject_GetAttrStrNoError(o, n); + if (!r) { + return (unlikely(PyErr_Occurred())) ? -1 : 0; } else { - tmp_type = (PyObject*) Py_TYPE(tmp_value); - Py_INCREF(tmp_type); - #if CYTHON_COMPILING_IN_CPYTHON - tmp_tb = ((PyBaseExceptionObject*) tmp_value)->traceback; - Py_XINCREF(tmp_tb); - #else - tmp_tb = PyException_GetTraceback(tmp_value); - #endif + Py_DECREF(r); + return 1; } - #elif CYTHON_USE_EXC_INFO_STACK - _PyErr_StackItem *exc_info = tstate->exc_info; - tmp_type = exc_info->exc_type; - tmp_value = exc_info->exc_value; - tmp_tb = exc_info->exc_traceback; - exc_info->exc_type = *type; - exc_info->exc_value = *value; - exc_info->exc_traceback = *tb; - #else - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = *type; - tstate->exc_value = *value; - tstate->exc_traceback = *tb; - #endif - *type = tmp_type; - *value = tmp_value; - *tb = tmp_tb; -} -#else -static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_GetExcInfo(&tmp_type, &tmp_value, &tmp_tb); - PyErr_SetExcInfo(*type, *value, *tb); - *type = tmp_type; - *value = tmp_value; - *tb = tmp_tb; } #endif -/* GetAttr */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { -#if CYTHON_USE_TYPE_SLOTS - if (likely(PyUnicode_Check(n))) - return __Pyx_PyObject_GetAttrStr(o, n); -#endif - return PyObject_GetAttr(o, n); -} - -/* pep479 */ -static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { - PyObject *exc, *val, *tb, *cur_exc, *new_exc; - __Pyx_PyThreadState_declare - int is_async_stopiteration = 0; - CYTHON_MAYBE_UNUSED_VAR(in_async_gen); - __Pyx_PyThreadState_assign - cur_exc = __Pyx_PyErr_CurrentExceptionType(); - if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) { - if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) { - is_async_stopiteration = 1; - } else { - return; - } - } - __Pyx_GetException(&exc, &val, &tb); - Py_XDECREF(exc); - Py_XDECREF(tb); - new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s", - is_async_stopiteration ? "async generator raised StopAsyncIteration" : - in_async_gen ? "async generator raised StopIteration" : - "generator raised StopIteration"); - if (!new_exc) { - Py_XDECREF(val); - return; - } - PyException_SetCause(new_exc, val); // steals ref to val - PyErr_SetObject(PyExc_RuntimeError, new_exc); -} - /* CallTypeTraverse */ #if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) #else @@ -17712,6 +18646,89 @@ static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visi } #endif +/* TypeImport */ +#ifndef __PYX_HAVE_RT_ImportType_3_1_2 +#define __PYX_HAVE_RT_ImportType_3_1_2 +static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) +{ + PyObject *result = 0; + Py_ssize_t basicsize; + Py_ssize_t itemsize; +#if CYTHON_COMPILING_IN_LIMITED_API + PyObject *py_basicsize; + PyObject *py_itemsize; +#endif + result = PyObject_GetAttrString(module, class_name); + if (!result) + goto bad; + if (!PyType_Check(result)) { + PyErr_Format(PyExc_TypeError, + "%.200s.%.200s is not a type object", + module_name, class_name); + goto bad; + } +#if !CYTHON_COMPILING_IN_LIMITED_API + basicsize = ((PyTypeObject *)result)->tp_basicsize; + itemsize = ((PyTypeObject *)result)->tp_itemsize; +#else + if (size == 0) { + return (PyTypeObject *)result; + } + py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); + if (!py_basicsize) + goto bad; + basicsize = PyLong_AsSsize_t(py_basicsize); + Py_DECREF(py_basicsize); + py_basicsize = 0; + if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) + goto bad; + py_itemsize = PyObject_GetAttrString(result, "__itemsize__"); + if (!py_itemsize) + goto bad; + itemsize = PyLong_AsSsize_t(py_itemsize); + Py_DECREF(py_itemsize); + py_itemsize = 0; + if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred()) + goto bad; +#endif + if (itemsize) { + if (size % alignment) { + alignment = size % alignment; + } + if (itemsize < (Py_ssize_t)alignment) + itemsize = (Py_ssize_t)alignment; + } + if ((size_t)(basicsize + itemsize) < size) { + PyErr_Format(PyExc_ValueError, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize+itemsize); + goto bad; + } + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && + ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { + PyErr_Format(PyExc_ValueError, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd-%zd from PyObject", + module_name, class_name, size, basicsize, basicsize+itemsize); + goto bad; + } + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + if (PyErr_WarnFormat(NULL, 0, + "%.200s.%.200s size changed, may indicate binary incompatibility. " + "Expected %zd from C header, got %zd from PyObject", + module_name, class_name, size, basicsize) < 0) { + goto bad; + } + } + return (PyTypeObject *)result; +bad: + Py_XDECREF(result); + return NULL; +} +#endif + /* LimitedApiGetTypeDict */ #if CYTHON_COMPILING_IN_LIMITED_API static Py_ssize_t __Pyx_GetTypeDictOffset(void) { @@ -18171,88 +19188,129 @@ static int __Pyx_MergeVtables(PyTypeObject *type) { return -1; } -/* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_1_2 -#define __PYX_HAVE_RT_ImportType_3_1_2 -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) -{ - PyObject *result = 0; - Py_ssize_t basicsize; - Py_ssize_t itemsize; +/* DelItemOnTypeDict */ +static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) { + int result; + PyObject *tp_dict; #if CYTHON_COMPILING_IN_LIMITED_API - PyObject *py_basicsize; - PyObject *py_itemsize; + tp_dict = __Pyx_GetTypeDict(tp); + if (unlikely(!tp_dict)) return -1; +#else + tp_dict = tp->tp_dict; #endif - result = PyObject_GetAttrString(module, class_name); - if (!result) - goto bad; - if (!PyType_Check(result)) { - PyErr_Format(PyExc_TypeError, - "%.200s.%.200s is not a type object", - module_name, class_name); - goto bad; - } -#if !CYTHON_COMPILING_IN_LIMITED_API - basicsize = ((PyTypeObject *)result)->tp_basicsize; - itemsize = ((PyTypeObject *)result)->tp_itemsize; + result = PyDict_DelItem(tp_dict, k); + if (likely(!result)) PyType_Modified(tp); + return result; +} + +/* SetupReduce */ +static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { + int ret; + PyObject *name_attr; + name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name_2); + if (likely(name_attr)) { + ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); + } else { + ret = -1; + } + if (unlikely(ret < 0)) { + PyErr_Clear(); + ret = 0; + } + Py_XDECREF(name_attr); + return ret; +} +static int __Pyx_setup_reduce(PyObject* type_obj) { + int ret = 0; + PyObject *object_reduce = NULL; + PyObject *object_getstate = NULL; + PyObject *object_reduce_ex = NULL; + PyObject *reduce = NULL; + PyObject *reduce_ex = NULL; + PyObject *reduce_cython = NULL; + PyObject *setstate = NULL; + PyObject *setstate_cython = NULL; + PyObject *getstate = NULL; +#if CYTHON_USE_PYTYPE_LOOKUP + getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_getstate); #else - if (size == 0) { - return (PyTypeObject *)result; + getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_getstate); + if (!getstate && PyErr_Occurred()) { + goto __PYX_BAD; } - py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); - if (!py_basicsize) - goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; - py_itemsize = PyObject_GetAttrString(result, "__itemsize__"); - if (!py_itemsize) - goto bad; - itemsize = PyLong_AsSsize_t(py_itemsize); - Py_DECREF(py_itemsize); - py_itemsize = 0; - if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; #endif - if (itemsize) { - if (size % alignment) { - alignment = size % alignment; + if (getstate) { +#if CYTHON_USE_PYTYPE_LOOKUP + object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); +#else + object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); + if (!object_getstate && PyErr_Occurred()) { + goto __PYX_BAD; + } +#endif + if (object_getstate != getstate) { + goto __PYX_GOOD; } - if (itemsize < (Py_ssize_t)alignment) - itemsize = (Py_ssize_t)alignment; - } - if ((size_t)(basicsize + itemsize) < size) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize+itemsize); - goto bad; - } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && - ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd-%zd from PyObject", - module_name, class_name, size, basicsize, basicsize+itemsize); - goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { - if (PyErr_WarnFormat(NULL, 0, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize) < 0) { - goto bad; +#if CYTHON_USE_PYTYPE_LOOKUP + object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; +#else + object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; +#endif + reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; + if (reduce_ex == object_reduce_ex) { +#if CYTHON_USE_PYTYPE_LOOKUP + object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; +#else + object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; +#endif + reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce); if (unlikely(!reduce)) goto __PYX_BAD; + if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython)) { + reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); + if (likely(reduce_cython)) { + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + } else if (reduce == object_reduce || PyErr_Occurred()) { + goto __PYX_BAD; + } + setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate); + if (!setstate) PyErr_Clear(); + if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython)) { + setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); + if (likely(setstate_cython)) { + ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + } else if (!setstate || PyErr_Occurred()) { + goto __PYX_BAD; + } + } + PyType_Modified((PyTypeObject*)type_obj); } } - return (PyTypeObject *)result; -bad: - Py_XDECREF(result); - return NULL; + goto __PYX_GOOD; +__PYX_BAD: + if (!PyErr_Occurred()) { + __Pyx_TypeName type_obj_name = + __Pyx_PyType_GetFullyQualifiedName((PyTypeObject*)type_obj); + PyErr_Format(PyExc_RuntimeError, + "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); + __Pyx_DECREF_TypeName(type_obj_name); + } + ret = -1; +__PYX_GOOD: +#if !CYTHON_USE_PYTYPE_LOOKUP + Py_XDECREF(object_reduce); + Py_XDECREF(object_reduce_ex); + Py_XDECREF(object_getstate); + Py_XDECREF(getstate); +#endif + Py_XDECREF(reduce); + Py_XDECREF(reduce_ex); + Py_XDECREF(reduce_cython); + Py_XDECREF(setstate); + Py_XDECREF(setstate_cython); + return ret; } -#endif /* ListPack */ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) { @@ -18273,76 +19331,6 @@ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) { return l; } -/* Import */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { - PyObject *module = 0; - PyObject *empty_dict = 0; - PyObject *empty_list = 0; - empty_dict = PyDict_New(); - if (unlikely(!empty_dict)) - goto bad; - if (level == -1) { - const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); - if (package_sep != (0)) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - if (!module) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); - } -bad: - Py_XDECREF(empty_dict); - Py_XDECREF(empty_list); - return module; -} - -/* ImportFrom */ -static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { - PyObject* value = __Pyx_PyObject_GetAttrStr(module, name); - if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) { - const char* module_name_str = 0; - PyObject* module_name = 0; - PyObject* module_dot = 0; - PyObject* full_name = 0; - PyErr_Clear(); - module_name_str = PyModule_GetName(module); - if (unlikely(!module_name_str)) { goto modbad; } - module_name = PyUnicode_FromString(module_name_str); - if (unlikely(!module_name)) { goto modbad; } - module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__5); - if (unlikely(!module_dot)) { goto modbad; } - full_name = PyUnicode_Concat(module_dot, name); - if (unlikely(!full_name)) { goto modbad; } - #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ - CYTHON_COMPILING_IN_GRAAL - { - PyObject *modules = PyImport_GetModuleDict(); - if (unlikely(!modules)) - goto modbad; - value = PyObject_GetItem(modules, full_name); - } - #else - value = PyImport_GetModule(full_name); - #endif - modbad: - Py_XDECREF(full_name); - Py_XDECREF(module_dot); - Py_XDECREF(module_name); - } - if (unlikely(!value)) { - PyErr_Format(PyExc_ImportError, "cannot import name %S", name); - } - return value; -} - /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); @@ -19945,28 +20933,131 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, Py_XDECREF(py_frame); } #endif - -/* CIntFromPyVerify */ -#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) -#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) -#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ - {\ - func_type value = func_value;\ - if (sizeof(target_type) < sizeof(func_type)) {\ - if (unlikely(value != (func_type) (target_type) value)) {\ - func_type zero = 0;\ - if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ - return (target_type) -1;\ - if (is_unsigned && unlikely(value < zero))\ - goto raise_neg_overflow;\ - else\ - goto raise_overflow;\ - }\ - }\ - return (target_type) value;\ + +/* CIntFromPyVerify */ +#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) +#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) +#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ + {\ + func_type value = func_value;\ + if (sizeof(target_type) < sizeof(func_type)) {\ + if (unlikely(value != (func_type) (target_type) value)) {\ + func_type zero = 0;\ + if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ + return (target_type) -1;\ + if (is_unsigned && unlikely(value < zero))\ + goto raise_neg_overflow;\ + else\ + goto raise_overflow;\ + }\ + }\ + return (target_type) value;\ + } + +/* PyObjectVectorCallKwBuilder */ +#if CYTHON_VECTORCALL +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_PyObject_FastCallDict; + if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; + Py_INCREF(key); + args[n] = value; + return 0; +} +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_VectorcallBuilder_AddArgStr; + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); +} +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + PyObject *pyKey = PyUnicode_FromString(key); + if (!pyKey) return -1; + return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); +} +#else // CYTHON_VECTORCALL +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return PyDict_SetItem(builder, key, value); +} +#endif + +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wconversion" +#endif + const int neg_one = (int) -1, const_zero = (int) 0; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic pop +#endif + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(int) < sizeof(long)) { + return PyLong_FromLong((long) value); + } else if (sizeof(int) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(int) <= sizeof(long)) { + return PyLong_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; + return _PyLong_FromByteArray(bytes, sizeof(int), + little, !is_unsigned); +#else + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); + } + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } +} /* CIntFromPy */ static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { @@ -20130,311 +21221,98 @@ static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { } else if (unlikely(bytes_copied > (Py_ssize_t) sizeof(val))) { goto raise_overflow; } else { - ret = 0; - } -#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - ret = _PyLong_AsByteArray((PyLongObject *)x, - bytes, sizeof(val), - is_little, !is_unsigned); -#else - PyObject *v; - PyObject *stepval = NULL, *mask = NULL, *shift = NULL; - int bits, remaining_bits, is_negative = 0; - int chunk_size = (sizeof(long) < 8) ? 30 : 62; - if (likely(PyLong_CheckExact(x))) { - v = __Pyx_NewRef(x); - } else { - v = PyNumber_Long(x); - if (unlikely(!v)) return (int) -1; - assert(PyLong_CheckExact(v)); - } - { - int result = PyObject_RichCompareBool(v, Py_False, Py_LT); - if (unlikely(result < 0)) { - Py_DECREF(v); - return (int) -1; - } - is_negative = result == 1; - } - if (is_unsigned && unlikely(is_negative)) { - Py_DECREF(v); - goto raise_neg_overflow; - } else if (is_negative) { - stepval = PyNumber_Invert(v); - Py_DECREF(v); - if (unlikely(!stepval)) - return (int) -1; - } else { - stepval = v; - } - v = NULL; - val = (int) 0; - mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; - shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; - for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { - PyObject *tmp, *digit; - long idigit; - digit = PyNumber_And(stepval, mask); - if (unlikely(!digit)) goto done; - idigit = PyLong_AsLong(digit); - Py_DECREF(digit); - if (unlikely(idigit < 0)) goto done; - val |= ((int) idigit) << bits; - tmp = PyNumber_Rshift(stepval, shift); - if (unlikely(!tmp)) goto done; - Py_DECREF(stepval); stepval = tmp; - } - Py_DECREF(shift); shift = NULL; - Py_DECREF(mask); mask = NULL; - { - long idigit = PyLong_AsLong(stepval); - if (unlikely(idigit < 0)) goto done; - remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); - if (unlikely(idigit >= (1L << remaining_bits))) - goto raise_overflow; - val |= ((int) idigit) << bits; - } - if (!is_unsigned) { - if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) - goto raise_overflow; - if (is_negative) - val = ~val; - } - ret = 0; - done: - Py_XDECREF(shift); - Py_XDECREF(mask); - Py_XDECREF(stepval); -#endif - if (unlikely(ret)) - return (int) -1; - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to int"); - return (int) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to int"); - return (int) -1; -} - -/* PyObjectVectorCallKwBuilder */ -#if CYTHON_VECTORCALL -static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - (void)__Pyx_PyObject_FastCallDict; - if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; - Py_INCREF(key); - args[n] = value; - return 0; -} -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - (void)__Pyx_VectorcallBuilder_AddArgStr; - if (unlikely(!PyUnicode_Check(key))) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - return -1; - } - return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); -} -static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - PyObject *pyKey = PyUnicode_FromString(key); - if (!pyKey) return -1; - return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); -} -#else // CYTHON_VECTORCALL -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { - if (unlikely(!PyUnicode_Check(key))) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - return -1; - } - return PyDict_SetItem(builder, key, value); -} -#endif - -/* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const int neg_one = (int) -1, const_zero = (int) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(int) < sizeof(long)) { - return PyLong_FromLong((long) value); - } else if (sizeof(int) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY - } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif - } - } else { - if (sizeof(int) <= sizeof(long)) { - return PyLong_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif - } - } - { - unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 - if (is_unsigned) { - return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); - } else { - return PyLong_FromNativeBytes(bytes, sizeof(value), -1); - } -#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 - int one = 1; int little = (int)*(unsigned char *)&one; - return _PyLong_FromByteArray(bytes, sizeof(int), - little, !is_unsigned); -#else - int one = 1; int little = (int)*(unsigned char *)&one; - PyObject *from_bytes, *result = NULL, *kwds = NULL; - PyObject *py_bytes = NULL, *order_str = NULL; - from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); - if (!from_bytes) return NULL; - py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); - if (!py_bytes) goto limited_bad; - order_str = PyUnicode_FromString(little ? "little" : "big"); - if (!order_str) goto limited_bad; - { - PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; - if (!is_unsigned) { - kwds = __Pyx_MakeVectorcallBuilderKwds(1); - if (!kwds) goto limited_bad; - if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; - } - result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); - } - limited_bad: - Py_XDECREF(kwds); - Py_XDECREF(order_str); - Py_XDECREF(py_bytes); - Py_XDECREF(from_bytes); - return result; -#endif - } -} - -/* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const long neg_one = (long) -1, const_zero = (long) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(long) < sizeof(long)) { - return PyLong_FromLong((long) value); - } else if (sizeof(long) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY - } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif - } - } else { - if (sizeof(long) <= sizeof(long)) { - return PyLong_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif - } - } - { - unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 - if (is_unsigned) { - return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); - } else { - return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + ret = 0; } -#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 - int one = 1; int little = (int)*(unsigned char *)&one; - return _PyLong_FromByteArray(bytes, sizeof(long), - little, !is_unsigned); +#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray) + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + ret = _PyLong_AsByteArray((PyLongObject *)x, + bytes, sizeof(val), + is_little, !is_unsigned); #else - int one = 1; int little = (int)*(unsigned char *)&one; - PyObject *from_bytes, *result = NULL, *kwds = NULL; - PyObject *py_bytes = NULL, *order_str = NULL; - from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); - if (!from_bytes) return NULL; - py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); - if (!py_bytes) goto limited_bad; - order_str = PyUnicode_FromString(little ? "little" : "big"); - if (!order_str) goto limited_bad; + PyObject *v; + PyObject *stepval = NULL, *mask = NULL, *shift = NULL; + int bits, remaining_bits, is_negative = 0; + int chunk_size = (sizeof(long) < 8) ? 30 : 62; + if (likely(PyLong_CheckExact(x))) { + v = __Pyx_NewRef(x); + } else { + v = PyNumber_Long(x); + if (unlikely(!v)) return (int) -1; + assert(PyLong_CheckExact(v)); + } { - PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; - if (!is_unsigned) { - kwds = __Pyx_MakeVectorcallBuilderKwds(1); - if (!kwds) goto limited_bad; - if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + int result = PyObject_RichCompareBool(v, Py_False, Py_LT); + if (unlikely(result < 0)) { + Py_DECREF(v); + return (int) -1; } - result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); + is_negative = result == 1; } - limited_bad: - Py_XDECREF(kwds); - Py_XDECREF(order_str); - Py_XDECREF(py_bytes); - Py_XDECREF(from_bytes); - return result; + if (is_unsigned && unlikely(is_negative)) { + Py_DECREF(v); + goto raise_neg_overflow; + } else if (is_negative) { + stepval = PyNumber_Invert(v); + Py_DECREF(v); + if (unlikely(!stepval)) + return (int) -1; + } else { + stepval = v; + } + v = NULL; + val = (int) 0; + mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done; + shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done; + for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) { + PyObject *tmp, *digit; + long idigit; + digit = PyNumber_And(stepval, mask); + if (unlikely(!digit)) goto done; + idigit = PyLong_AsLong(digit); + Py_DECREF(digit); + if (unlikely(idigit < 0)) goto done; + val |= ((int) idigit) << bits; + tmp = PyNumber_Rshift(stepval, shift); + if (unlikely(!tmp)) goto done; + Py_DECREF(stepval); stepval = tmp; + } + Py_DECREF(shift); shift = NULL; + Py_DECREF(mask); mask = NULL; + { + long idigit = PyLong_AsLong(stepval); + if (unlikely(idigit < 0)) goto done; + remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1); + if (unlikely(idigit >= (1L << remaining_bits))) + goto raise_overflow; + val |= ((int) idigit) << bits; + } + if (!is_unsigned) { + if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1)))) + goto raise_overflow; + if (is_negative) + val = ~val; + } + ret = 0; + done: + Py_XDECREF(shift); + Py_XDECREF(mask); + Py_XDECREF(stepval); #endif + if (unlikely(ret)) + return (int) -1; + return val; } +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to int"); + return (int) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to int"); + return (int) -1; } -/* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 -static __Pyx_TypeName -__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) -{ - PyObject *module = NULL, *name = NULL, *result = NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 - name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_mstate_global->__pyx_n_u_qualname); - #else - name = PyType_GetQualName(tp); - #endif - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; - module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_mstate_global->__pyx_n_u_module_3); - if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; - if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { - result = name; - name = NULL; - goto done; - } - result = PyUnicode_FromFormat("%U.%U", module, name); - if (unlikely(result == NULL)) goto bad; - done: - Py_XDECREF(name); - Py_XDECREF(module); - return result; - bad: - PyErr_Clear(); - if (name) { - result = name; - name = NULL; - } else { - result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__4); - } - goto done; -} -#endif - /* CIntFromPy */ static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC @@ -20689,6 +21567,116 @@ static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { return (long) -1; } +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wconversion" +#endif + const long neg_one = (long) -1, const_zero = (long) 0; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic pop +#endif + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(long) < sizeof(long)) { + return PyLong_FromLong((long) value); + } else if (sizeof(long) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(long) <= sizeof(long)) { + return PyLong_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; + return _PyLong_FromByteArray(bytes, sizeof(long), + little, !is_unsigned); +#else + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); + } + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif + } +} + +/* FormatTypeName */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 +static __Pyx_TypeName +__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) +{ + PyObject *module = NULL, *name = NULL, *result = NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_qualname); + #else + name = PyType_GetQualName(tp); + #endif + if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; + module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_module_3); + if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; + if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { + result = name; + name = NULL; + goto done; + } + result = PyUnicode_FromFormat("%U.%U", module, name); + if (unlikely(result == NULL)) goto bad; + done: + Py_XDECREF(name); + Py_XDECREF(module); + return result; + bad: + PyErr_Clear(); + if (name) { + result = name; + name = NULL; + } else { + result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__3); + } + goto done; +} +#endif + /* PyObjectCall2Args */ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { PyObject *args[3] = {NULL, arg1, arg2}; diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index 74aac3d..fb1b437 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -1133,9 +1133,26 @@ static CYTHON_INLINE float __PYX_NAN() { #define __PYX_HAVE__hunter___predicates #define __PYX_HAVE_API__hunter___predicates /* Early includes */ +#include "vendor/_compat.h" + + static inline PyCodeObject* Hunter_PyFrame_GetCode(PyObject* frame) { + return PyFrame_GetCode((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLasti(PyObject* frame) { + return PyFrame_GetLasti((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLineNumber(PyObject* frame) { + return PyFrame_GetLineNumber((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetGlobals(PyObject* frame) { + return PyFrame_GetGlobals((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetLocals(PyObject* frame) { + return PyFrame_GetLocals((PyFrameObject*) frame); + } + #include #include -#include "vendor/_compat.h" #include "pystate.h" #ifdef _OPENMP #include @@ -1347,9 +1364,9 @@ static const char* const __pyx_f[] = { "src/hunter/_predicates.pyx", "", "src/hunter/_predicates.pxd", + "src/hunter/_event.pxd", ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", "src/hunter/_tracer.pxd", - "src/hunter/_event.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ /* Atomics.proto */ @@ -1572,8 +1589,8 @@ static const char* const __pyx_f[] = { /* #### Code section: type_declarations ### */ /*--- Type declarations ---*/ -struct __pyx_obj_6hunter_7_tracer_Tracer; struct __pyx_obj_6hunter_6_event_Event; +struct __pyx_obj_6hunter_7_tracer_Tracer; struct __pyx_obj_6hunter_11_predicates_Query; struct __pyx_obj_6hunter_11_predicates_And; struct __pyx_obj_6hunter_11_predicates_Or; @@ -1590,12 +1607,21 @@ struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_4_genexpr; struct __pyx_obj_6hunter_11_predicates___pyx_scope_struct_5_genexpr; struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event; +/* "_event.pxd":4 + * + * + * ctypedef extern FrameType # <<<<<<<<<<<<<< + * + * cdef extern from *: +*/ +typedef PyObject *FrameType; + /* "_tracer.pxd":7 - * from cpython.ref cimport PyObject + * * * ctypedef extern FrameType # <<<<<<<<<<<<<< * - * cdef extern from "vendor/_compat.h": + * cdef extern from *: */ typedef PyObject *FrameType; @@ -1608,33 +1634,12 @@ typedef PyObject *FrameType; */ typedef PyObject *(*__pyx_t_6hunter_11_predicates_Event_getter_typedef)(struct __pyx_obj_6hunter_6_event_Event *); -/* "_tracer.pxd":35 - * - * - * @cython.final # <<<<<<<<<<<<<< - * cdef class Tracer: - * cdef: -*/ -struct __pyx_obj_6hunter_7_tracer_Tracer { - PyObject_HEAD - PyObject *handler; - PyObject *previous; - PyObject *threading_support; - int profiling_mode; - int depth; - int calls; - PyObject *__weakref__; - PyObject *_threading_previous; - Py_tracefunc _previousfunc; -}; - - -/* "_event.pxd":11 +/* "_event.pxd":39 * * * @cython.final # <<<<<<<<<<<<<< + * @cython.auto_pickle(False) * cdef class Event: - * cdef: */ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD @@ -1665,6 +1670,27 @@ struct __pyx_obj_6hunter_6_event_Event { }; +/* "_tracer.pxd":26 + * + * + * @cython.final # <<<<<<<<<<<<<< + * cdef class Tracer: + * cdef: +*/ +struct __pyx_obj_6hunter_7_tracer_Tracer { + PyObject_HEAD + PyObject *handler; + PyObject *previous; + PyObject *threading_support; + int profiling_mode; + int depth; + int calls; + PyObject *__weakref__; + PyObject *_threading_previous; + Py_tracefunc _previousfunc; +}; + + /* "hunter/_predicates.pxd":7 * * @@ -1894,12 +1920,12 @@ struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__l -/* "_event.pxd":11 +/* "_event.pxd":39 * * * @cython.final # <<<<<<<<<<<<<< + * @cython.auto_pickle(False) * cdef class Event: - * cdef: */ struct __pyx_vtabstruct_6hunter_6_event_Event { @@ -3428,6 +3454,12 @@ static int __Pyx_State_RemoveModule(void*); /* Module declarations from "cython" */ +/* Module declarations from "types" */ + +/* Module declarations from "hunter._event" */ +static struct __pyx_obj_6hunter_6_event_Event *(*__pyx_f_6hunter_6_event_fast_clone)(struct __pyx_obj_6hunter_6_event_Event *); /*proto*/ +static struct __pyx_obj_6hunter_6_event_Event *(*__pyx_f_6hunter_6_event_fast_detach)(struct __pyx_obj_6hunter_6_event_Event *, PyObject *); /*proto*/ + /* Module declarations from "libc.string" */ /* Module declarations from "libc.stdio" */ @@ -3448,10 +3480,6 @@ static int __Pyx_State_RemoveModule(void*); /* Module declarations from "hunter._tracer" */ -/* Module declarations from "hunter._event" */ -static struct __pyx_obj_6hunter_6_event_Event *(*__pyx_f_6hunter_6_event_fast_clone)(struct __pyx_obj_6hunter_6_event_Event *); /*proto*/ -static struct __pyx_obj_6hunter_6_event_Event *(*__pyx_f_6hunter_6_event_fast_detach)(struct __pyx_obj_6hunter_6_event_Event *, PyObject *); /*proto*/ - /* Module declarations from "hunter._predicates" */ static PyObject *__pyx_v_6hunter_11_predicates_ALLOWED_KEYS = 0; static PyObject *__pyx_v_6hunter_11_predicates_ALLOWED_OPERATORS = 0; @@ -4060,10 +4088,11 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif + PyTypeObject *__pyx_ptype_6hunter_6_event_CodeType; + PyTypeObject *__pyx_ptype_6hunter_6_event_Event; PyTypeObject *__pyx_ptype_7cpython_4type_type; PyTypeObject *__pyx_ptype_6hunter_7_tracer_CodeType; PyTypeObject *__pyx_ptype_6hunter_7_tracer_Tracer; - PyTypeObject *__pyx_ptype_6hunter_6_event_Event; PyObject *__pyx_type_6hunter_11_predicates_Query; PyObject *__pyx_type_6hunter_11_predicates_And; PyObject *__pyx_type_6hunter_11_predicates_Or; @@ -4511,10 +4540,11 @@ static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { #if CYTHON_PEP489_MULTI_PHASE_INIT __Pyx_State_RemoveModule(NULL); #endif + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_CodeType); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); - Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Query); Py_CLEAR(clear_module_state->__pyx_type_6hunter_11_predicates_Query); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_And); @@ -4590,10 +4620,11 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void #ifdef __Pyx_FusedFunction_USED Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_CodeType); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_7_tracer_Tracer); - Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Query); Py_VISIT(traverse_module_state->__pyx_type_6hunter_11_predicates_Query); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_And); @@ -32010,9 +32041,34 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); /*--- Type import code ---*/ - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #else + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + #endif + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(3, 7, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 39, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._event", "Event", + #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #elif CYTHON_COMPILING_IN_LIMITED_API + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #else + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + #endif + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(3, 39, __pyx_L1_error) + __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(3, 39, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 9, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_2, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -32020,11 +32076,11 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 22, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 13, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_2, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -32032,10 +32088,10 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(4, 22, __pyx_L1_error) - __pyx_t_2 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 35, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._tracer", "Tracer", + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(5, 13, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 26, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._tracer", "Tracer", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -32043,22 +32099,9 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(4, 35, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 11, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._event", "Event", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), - #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), - #else - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(5, 11, __pyx_L1_error) - __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(5, 11, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(5, 26, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -32106,7 +32149,7 @@ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec__predicates}, #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - {Py_mod_gil, Py_MOD_GIL_USED}, + {Py_mod_gil, Py_MOD_GIL_NOT_USED}, #endif #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, @@ -32309,7 +32352,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__predicates(PyObject *__pyx_pyinit __pyx_m = __pyx_t_1; #endif #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_NOT_USED); #endif __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); @@ -32383,7 +32426,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 8, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 14, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32728,7 +32771,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32751,7 +32794,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32784,7 +32827,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32796,7 +32839,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32829,7 +32872,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32850,7 +32893,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32862,7 +32905,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32883,7 +32926,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32895,7 +32938,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32916,7 +32959,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32928,7 +32971,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32972,7 +33015,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32984,7 +33027,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33005,7 +33048,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33018,7 +33061,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33026,7 +33069,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33039,7 +33082,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33047,7 +33090,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33060,7 +33103,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33068,7 +33111,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33081,7 +33124,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33089,7 +33132,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33102,7 +33145,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33110,7 +33153,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33123,7 +33166,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33131,7 +33174,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33144,20 +33187,20 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 - * # cython: linetrace=True, language_level=3str, c_api_binop_methods=True # <<<<<<<<<<<<<< + * # cython: linetrace=True, language_level=3str, c_api_binop_methods=True, freethreading_compatible=True # <<<<<<<<<<<<<< * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,8,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 8, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 14, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33167,7 +33210,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(8, 0); + __Pyx_TraceExceptionUnwind(14, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index d24d6ff..6089484 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -1135,48 +1135,24 @@ static CYTHON_INLINE float __PYX_NAN() { /* Early includes */ #include #include -#include "vendor/_compat.h" #include "pystate.h" +#include "vendor/_compat.h" - #if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyFloat_FromString(obj) PyFloat_FromString(obj) - #else - #define __Pyx_PyFloat_FromString(obj) PyFloat_FromString(obj, NULL) - #endif - -#include - - #if PY_MAJOR_VERSION <= 2 - #define PyDict_GetItemWithError _PyDict_GetItemWithError - #endif - - - #if PY_VERSION_HEX < 0x030d0000 - static CYTHON_INLINE int __Pyx_PyWeakref_GetRef(PyObject *ref, PyObject **pobj) - { - PyObject *obj = PyWeakref_GetObject(ref); - if (obj == NULL) { - // SystemError if ref is NULL - *pobj = NULL; - return -1; - } - if (obj == Py_None) { - *pobj = NULL; - return 0; - } - Py_INCREF(obj); - *pobj = obj; - return 1; + static inline PyCodeObject* Hunter_PyFrame_GetCode(PyObject* frame) { + return PyFrame_GetCode((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLasti(PyObject* frame) { + return PyFrame_GetLasti((PyFrameObject*) frame); + } + static inline int Hunter_PyFrame_GetLineNumber(PyObject* frame) { + return PyFrame_GetLineNumber((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetGlobals(PyObject* frame) { + return PyFrame_GetGlobals((PyFrameObject*) frame); + } + static inline PyObject* Hunter_PyFrame_GetLocals(PyObject* frame) { + return PyFrame_GetLocals((PyFrameObject*) frame); } - #else - #define __Pyx_PyWeakref_GetRef PyWeakref_GetRef - #endif - -#include "pythread.h" - - #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030600) && !defined(PyContextVar_Get) - #define PyContextVar_Get(var, d, v) ((d) ? ((void)(var), Py_INCREF(d), (v)[0] = (d), 0) : ((v)[0] = NULL, 0) ) - #endif #ifdef _OPENMP #include @@ -1387,11 +1363,8 @@ static const char *__pyx_filename; static const char* const __pyx_f[] = { "src/hunter/_tracer.pyx", "", - ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/contextvars.pxd", "src/hunter/_tracer.pxd", ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", - ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/bool.pxd", - ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/complex.pxd", "src/hunter/_event.pxd", "src/hunter/_predicates.pxd", }; @@ -1625,48 +1598,31 @@ struct __pyx_obj_6hunter_11_predicates_When; struct __pyx_obj_6hunter_11_predicates_From; struct __pyx_obj_6hunter_11_predicates_Backlog; struct __pyx_obj_6hunter_7_tracer_Tracer; -struct __pyx_opt_args_7cpython_11contextvars_get_value; -struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default; -/* "cpython/contextvars.pxd":116 +/* "_event.pxd":4 * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline object get_value(var, default_value=None): # <<<<<<<<<<<<<< - * """Return a new reference to the value of the context variable, - * or the default value of the context variable, -*/ -struct __pyx_opt_args_7cpython_11contextvars_get_value { - int __pyx_n; - PyObject *default_value; -}; - -/* "cpython/contextvars.pxd":134 * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline object get_value_no_default(var, default_value=None): # <<<<<<<<<<<<<< - * """Return a new reference to the value of the context variable, - * or the provided default value if no such value was found. -*/ -struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default { - int __pyx_n; - PyObject *default_value; -}; + * ctypedef extern FrameType # <<<<<<<<<<<<<< + * + * cdef extern from *: +*/ +typedef PyObject *FrameType; /* "hunter/_tracer.pxd":7 - * from cpython.ref cimport PyObject + * * * ctypedef extern FrameType # <<<<<<<<<<<<<< * - * cdef extern from "vendor/_compat.h": + * cdef extern from *: */ typedef PyObject *FrameType; -/* "_event.pxd":11 +/* "_event.pxd":39 * * * @cython.final # <<<<<<<<<<<<<< + * @cython.auto_pickle(False) * cdef class Event: - * cdef: */ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD @@ -1810,7 +1766,7 @@ struct __pyx_obj_6hunter_11_predicates_Backlog { }; -/* "hunter/_tracer.pxd":35 +/* "hunter/_tracer.pxd":26 * * * @cython.final # <<<<<<<<<<<<<< @@ -1832,12 +1788,12 @@ struct __pyx_obj_6hunter_7_tracer_Tracer { -/* "_event.pxd":11 +/* "_event.pxd":39 * * * @cython.final # <<<<<<<<<<<<<< + * @cython.auto_pickle(False) * cdef class Event: - * cdef: */ struct __pyx_vtabstruct_6hunter_6_event_Event { @@ -2411,22 +2367,6 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define __Pyx_TraceLine(line, offset, nogil, goto_error) if ((1)); else goto_error; #endif -/* PyObjectDelAttr.proto */ -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 -#define __Pyx_PyObject_DelAttr(o, n) PyObject_SetAttr(o, n, NULL) -#else -#define __Pyx_PyObject_DelAttr(o, n) PyObject_DelAttr(o, n) -#endif - -/* PyObjectSetAttrStr.proto */ -#if CYTHON_USE_TYPE_SLOTS -#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL) -static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value); -#else -#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_DelAttr(o,n) -#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v) -#endif - /* PyFunctionFastCall.proto */ #if CYTHON_FAST_PYCALL #if !CYTHON_VECTORCALL @@ -2587,6 +2527,11 @@ static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject * static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb); #endif +/* WriteUnraisableException.proto */ +static void __Pyx_WriteUnraisable(const char *name, int clineno, + int lineno, const char *filename, + int full_traceback, int nogil); + /* TupleAndListFromArray.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyList_FromArray(PyObject *const *src, Py_ssize_t n); @@ -2705,11 +2650,6 @@ static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction * static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); -/* WriteUnraisableException.proto */ -static void __Pyx_WriteUnraisable(const char *name, int clineno, - int lineno, const char *filename, - int full_traceback, int nogil); - /* PyObjectCallOneArg.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); @@ -3085,12 +3025,6 @@ static int __Pyx_State_RemoveModule(void*); #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "." -#if !CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComplexObject *__pyx_v_self); /* proto*/ -#endif -#if !CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComplexObject *__pyx_v_self); /* proto*/ -#endif /* Module declarations from "cython" */ @@ -3102,76 +3036,16 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp /* Module declarations from "cpython.type" */ -/* Module declarations from "cpython.version" */ - -/* Module declarations from "cpython.ref" */ - -/* Module declarations from "cpython.exc" */ - -/* Module declarations from "cpython.module" */ - -/* Module declarations from "cpython.mem" */ - -/* Module declarations from "cpython.tuple" */ - -/* Module declarations from "cpython.list" */ - -/* Module declarations from "cpython.sequence" */ - -/* Module declarations from "cpython.mapping" */ - -/* Module declarations from "cpython.iterator" */ - -/* Module declarations from "cpython.number" */ - -/* Module declarations from "__builtin__" */ - -/* Module declarations from "cpython.bool" */ - -/* Module declarations from "cpython.long" */ - -/* Module declarations from "cpython.float" */ - -/* Module declarations from "__builtin__" */ - -/* Module declarations from "cpython.complex" */ - -/* Module declarations from "libc.stddef" */ - -/* Module declarations from "cpython.unicode" */ - -/* Module declarations from "cpython.pyport" */ - -/* Module declarations from "cpython.dict" */ - -/* Module declarations from "cpython.instance" */ - -/* Module declarations from "cpython.function" */ - -/* Module declarations from "cpython.method" */ - -/* Module declarations from "cpython.weakref" */ - -/* Module declarations from "cpython.getargs" */ - -/* Module declarations from "cpython.pythread" */ - -/* Module declarations from "cpython.set" */ - -/* Module declarations from "cpython.buffer" */ - -/* Module declarations from "cpython.bytes" */ - -/* Module declarations from "cpython.pycapsule" */ - -/* Module declarations from "cpython.contextvars" */ - /* Module declarations from "cpython" */ /* Module declarations from "cpython.object" */ /* Module declarations from "cpython.pystate" */ +/* Module declarations from "cpython.ref" */ + +/* Module declarations from "types" */ + /* Module declarations from "types" */ /* Module declarations from "hunter._event" */ @@ -3181,7 +3055,7 @@ static PyObject *(*__pyx_f_6hunter_11_predicates_fast_call)(PyObject *, struct _ /* Module declarations from "hunter._tracer" */ static PyObject *__pyx_v_6hunter_7_tracer_KIND_INTS = 0; -static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6hunter_7_tracer_Tracer *, FrameType, int, PyObject *); /*proto*/ +static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *, PyFrameObject *, int, PyObject *); /*proto*/ /* #### Code section: typeinfo ### */ /* #### Code section: before_global_var ### */ #define __Pyx_MODULE_NAME "hunter._tracer" @@ -3242,10 +3116,10 @@ static const char __pyx_k_hunter[] = "hunter"; static const char __pyx_k_module[] = "__module__"; static const char __pyx_k_reduce[] = "__reduce__"; static const char __pyx_k_return[] = "return"; +static const char __pyx_k_tracer[] = "tracer"; static const char __pyx_k_dealloc[] = "__dealloc__"; static const char __pyx_k_disable[] = "disable"; static const char __pyx_k_exc_val[] = "exc_val"; -static const char __pyx_k_f_trace[] = "f_trace"; static const char __pyx_k_handler[] = "handler="; static const char __pyx_k_stopped[] = ""; static const char __pyx_k_add_note[] = "add_note"; @@ -3286,20 +3160,20 @@ static const char __pyx_k_default_stream[] = "_default_stream"; static const char __pyx_k_hunter__tracer[] = "hunter._tracer"; static const char __pyx_k_profiling_mode[] = "profiling_mode"; static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; -static const char __pyx_k_A_6_Q_5_1_1_3_1_q[] = "\200A\330\010\022\220!\2206\230\027\240\t\250\021\250'\260\034\270Q\330\010\013\2105\220\003\2201\330\014\033\2301\320\0343\260<\270|\3101\330\010\017\210q"; static const char __pyx_k_threading_support[] = "threading_support"; static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines"; static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; static const char __pyx_k_q_Kq_L_Q_1_a_IQ_IQ[] = "\320\004*\320*?\270q\330\010\014\210K\220q\330\010\014\210L\230\001\330\010\014\320\014\035\230Q\330\010\014\320\014#\2401\330\010\014\320\014!\240\021\330\010\014\320\014\036\230a\330\010\014\210I\220Q\330\010\014\210I\220Q"; static const char __pyx_k_threading_support_2[] = ": threading_support="; +static const char __pyx_k_A_v_6gYawlZ_5_1_1L_A_q[] = "\200A\330\010\022\220!\220<\230v\320%6\260g\270Y\300a\300w\310l\320Z[\330\010\013\2105\220\003\2201\330\014\033\2301\230L\250\014\260A\330\010\017\210q"; static const char __pyx_k_Tracer___reduce_cython[] = "Tracer.__reduce_cython__"; static const char __pyx_k_src_hunter__tracer_pxd[] = "src/hunter/_tracer.pxd"; static const char __pyx_k_src_hunter__tracer_pyx[] = "src/hunter/_tracer.pyx"; static const char __pyx_k_Tracer___setstate_cython[] = "Tracer.__setstate_cython__"; static const char __pyx_k_hunter__tracer_Tracer_at_0x[] = "__pyx_ptype_7cpython_4type_type); - Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4bool_bool); - Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_7complex_complex); + Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_CodeType); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event_Event); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_Query); Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_11_predicates_And); @@ -3586,8 +3458,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type); - Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4bool_bool); - Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_7complex_complex); + Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_CodeType); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event_Event); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_Query); Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_11_predicates_And); @@ -3614,332 +3485,16 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void #endif /* #### Code section: module_code ### */ -/* "cpython/complex.pxd":20 - * - * # unavailable in limited API - * @property # <<<<<<<<<<<<<< - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline double real(self) noexcept: -*/ - -#if !CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComplexObject *__pyx_v_self) { - double __pyx_r; - - /* "cpython/complex.pxd":23 - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline double real(self) noexcept: - * return self.cval.real # <<<<<<<<<<<<<< - * - * # unavailable in limited API -*/ - __pyx_r = __pyx_v_self->cval.real; - goto __pyx_L0; - - /* "cpython/complex.pxd":20 - * - * # unavailable in limited API - * @property # <<<<<<<<<<<<<< - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline double real(self) noexcept: -*/ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} -#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ - -/* "cpython/complex.pxd":26 - * - * # unavailable in limited API - * @property # <<<<<<<<<<<<<< - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline double imag(self) noexcept: -*/ - -#if !CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComplexObject *__pyx_v_self) { - double __pyx_r; - - /* "cpython/complex.pxd":29 - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline double imag(self) noexcept: - * return self.cval.imag # <<<<<<<<<<<<<< - * - * # PyTypeObject PyComplex_Type -*/ - __pyx_r = __pyx_v_self->cval.imag; - goto __pyx_L0; - - /* "cpython/complex.pxd":26 - * - * # unavailable in limited API - * @property # <<<<<<<<<<<<<< - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline double imag(self) noexcept: -*/ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} -#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ - -/* "cpython/contextvars.pxd":115 - * - * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< - * cdef inline object get_value(var, default_value=None): - * """Return a new reference to the value of the context variable, -*/ - -#if !CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value(PyObject *__pyx_v_var, struct __pyx_opt_args_7cpython_11contextvars_get_value *__pyx_optional_args) { - - /* "cpython/contextvars.pxd":116 - * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline object get_value(var, default_value=None): # <<<<<<<<<<<<<< - * """Return a new reference to the value of the context variable, - * or the default value of the context variable, -*/ - PyObject *__pyx_v_default_value = ((PyObject *)Py_None); - PyObject *__pyx_v_value; - PyObject *__pyx_v_pyvalue = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_value", 0); - if (__pyx_optional_args) { - if (__pyx_optional_args->__pyx_n > 0) { - __pyx_v_default_value = __pyx_optional_args->default_value; - } - } - - /* "cpython/contextvars.pxd":121 - * or None if no such value or default was found. - * """ - * cdef PyObject *value = NULL # <<<<<<<<<<<<<< - * PyContextVar_Get(var, NULL, &value) - * if value is NULL: -*/ - __pyx_v_value = NULL; - - /* "cpython/contextvars.pxd":122 - * """ - * cdef PyObject *value = NULL - * PyContextVar_Get(var, NULL, &value) # <<<<<<<<<<<<<< - * if value is NULL: - * # context variable does not have a default -*/ - __pyx_t_1 = PyContextVar_Get(__pyx_v_var, NULL, (&__pyx_v_value)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(2, 122, __pyx_L1_error) - - /* "cpython/contextvars.pxd":123 - * cdef PyObject *value = NULL - * PyContextVar_Get(var, NULL, &value) - * if value is NULL: # <<<<<<<<<<<<<< - * # context variable does not have a default - * pyvalue = default_value -*/ - __pyx_t_2 = (__pyx_v_value == NULL); - if (__pyx_t_2) { - - /* "cpython/contextvars.pxd":125 - * if value is NULL: - * # context variable does not have a default - * pyvalue = default_value # <<<<<<<<<<<<<< - * else: - * # value or default value of context variable -*/ - __Pyx_INCREF(__pyx_v_default_value); - __pyx_v_pyvalue = __pyx_v_default_value; - - /* "cpython/contextvars.pxd":123 - * cdef PyObject *value = NULL - * PyContextVar_Get(var, NULL, &value) - * if value is NULL: # <<<<<<<<<<<<<< - * # context variable does not have a default - * pyvalue = default_value -*/ - goto __pyx_L3; - } - - /* "cpython/contextvars.pxd":128 - * else: - * # value or default value of context variable - * pyvalue = value # <<<<<<<<<<<<<< - * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' - * return pyvalue -*/ - /*else*/ { - __pyx_t_3 = ((PyObject *)__pyx_v_value); - __Pyx_INCREF(__pyx_t_3); - __pyx_v_pyvalue = __pyx_t_3; - __pyx_t_3 = 0; - - /* "cpython/contextvars.pxd":129 - * # value or default value of context variable - * pyvalue = value - * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' # <<<<<<<<<<<<<< - * return pyvalue - * -*/ - Py_XDECREF(__pyx_v_value); - } - __pyx_L3:; - - /* "cpython/contextvars.pxd":130 - * pyvalue = value - * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' - * return pyvalue # <<<<<<<<<<<<<< - * - * -*/ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_pyvalue); - __pyx_r = __pyx_v_pyvalue; - goto __pyx_L0; - - /* "cpython/contextvars.pxd":115 - * - * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< - * cdef inline object get_value(var, default_value=None): - * """Return a new reference to the value of the context variable, -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("cpython.contextvars.get_value", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_pyvalue); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} -#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ - -/* "cpython/contextvars.pxd":133 - * - * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< - * cdef inline object get_value_no_default(var, default_value=None): - * """Return a new reference to the value of the context variable, -*/ - -#if !CYTHON_COMPILING_IN_LIMITED_API -static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_default(PyObject *__pyx_v_var, struct __pyx_opt_args_7cpython_11contextvars_get_value_no_default *__pyx_optional_args) { - - /* "cpython/contextvars.pxd":134 - * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") - * cdef inline object get_value_no_default(var, default_value=None): # <<<<<<<<<<<<<< - * """Return a new reference to the value of the context variable, - * or the provided default value if no such value was found. -*/ - PyObject *__pyx_v_default_value = ((PyObject *)Py_None); - PyObject *__pyx_v_value; - PyObject *__pyx_v_pyvalue = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_value_no_default", 0); - if (__pyx_optional_args) { - if (__pyx_optional_args->__pyx_n > 0) { - __pyx_v_default_value = __pyx_optional_args->default_value; - } - } - - /* "cpython/contextvars.pxd":140 - * Ignores the default value of the context variable, if any. - * """ - * cdef PyObject *value = NULL # <<<<<<<<<<<<<< - * PyContextVar_Get(var, default_value, &value) - * # value of context variable or 'default_value' -*/ - __pyx_v_value = NULL; - - /* "cpython/contextvars.pxd":141 - * """ - * cdef PyObject *value = NULL - * PyContextVar_Get(var, default_value, &value) # <<<<<<<<<<<<<< - * # value of context variable or 'default_value' - * pyvalue = value -*/ - __pyx_t_1 = PyContextVar_Get(__pyx_v_var, ((PyObject *)__pyx_v_default_value), (&__pyx_v_value)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(2, 141, __pyx_L1_error) - - /* "cpython/contextvars.pxd":143 - * PyContextVar_Get(var, default_value, &value) - * # value of context variable or 'default_value' - * pyvalue = value # <<<<<<<<<<<<<< - * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' - * return pyvalue -*/ - __pyx_t_2 = ((PyObject *)__pyx_v_value); - __Pyx_INCREF(__pyx_t_2); - __pyx_v_pyvalue = __pyx_t_2; - __pyx_t_2 = 0; - - /* "cpython/contextvars.pxd":144 - * # value of context variable or 'default_value' - * pyvalue = value - * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' # <<<<<<<<<<<<<< - * return pyvalue -*/ - Py_XDECREF(__pyx_v_value); - - /* "cpython/contextvars.pxd":145 - * pyvalue = value - * Py_XDECREF(value) # PyContextVar_Get() returned an owned reference as 'PyObject*' - * return pyvalue # <<<<<<<<<<<<<< -*/ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_pyvalue); - __pyx_r = __pyx_v_pyvalue; - goto __pyx_L0; - - /* "cpython/contextvars.pxd":133 - * - * - * @_cython.c_compile_guard("!CYTHON_COMPILING_IN_LIMITED_API") # <<<<<<<<<<<<<< - * cdef inline object get_value_no_default(var, default_value=None): - * """Return a new reference to the value of the context variable, -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("cpython.contextvars.get_value_no_default", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_pyvalue); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} -#endif /*!(#if !CYTHON_COMPILING_IN_LIMITED_API)*/ - -/* "hunter/_tracer.pyx":25 +/* "hunter/_tracer.pyx":24 * } * - * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: # <<<<<<<<<<<<<< - * if frame.f_trace is not self: - * frame.f_trace = self + * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: # <<<<<<<<<<<<<< + * cdef Tracer self = tracer + * */ -static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self, FrameType __pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg) { +static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrameObject *__pyx_v_frame, int __pyx_v_kind, CYTHON_UNUSED PyObject *__pyx_v_arg) { + struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self = 0; PyObject *__pyx_v_handler = NULL; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; PyObject *__pyx_v_exc = NULL; @@ -3953,12 +3508,12 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; - size_t __pyx_t_8; - PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_8 = NULL; + size_t __pyx_t_9; PyObject *__pyx_t_10 = NULL; PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; - PyObject *__pyx_t_13 = NULL; + PyObject *__pyx_t_12 = NULL; + int __pyx_t_13; PyObject *__pyx_t_14 = NULL; PyObject *__pyx_t_15 = NULL; PyObject *__pyx_t_16 = NULL; @@ -3977,121 +3532,101 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) __Pyx_RefNannySetupContext("trace_func", 0); - __Pyx_TraceStartFunc("trace_func", __pyx_f[0], 25, 0, 0, 0, __PYX_ERR(0, 25, __pyx_L1_error)); + __Pyx_TraceStartFunc("trace_func", __pyx_f[0], 24, 0, 0, 0, __PYX_ERR(0, 24, __pyx_L1_error)); - /* "hunter/_tracer.pyx":26 - * - * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: - * if frame.f_trace is not self: # <<<<<<<<<<<<<< - * frame.f_trace = self + /* "hunter/_tracer.pyx":25 * -*/ - __Pyx_TraceLine(26,4,0,__PYX_ERR(0, 26, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_frame), __pyx_mstate_global->__pyx_n_u_f_trace); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 26, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__pyx_t_1 != ((PyObject *)__pyx_v_self)); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "hunter/_tracer.pyx":27 - * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: - * if frame.f_trace is not self: - * frame.f_trace = self # <<<<<<<<<<<<<< + * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: + * cdef Tracer self = tracer # <<<<<<<<<<<<<< * * handler = self.handler */ - __Pyx_TraceLine(27,7,0,__PYX_ERR(0, 27, __pyx_L1_error)) - if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_frame), __pyx_mstate_global->__pyx_n_u_f_trace, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(0, 27, __pyx_L1_error) - - /* "hunter/_tracer.pyx":26 - * - * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: - * if frame.f_trace is not self: # <<<<<<<<<<<<<< - * frame.f_trace = self - * -*/ - } + __Pyx_TraceLine(25,2,0,__PYX_ERR(0, 25, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_v_tracer); + __Pyx_INCREF(__pyx_t_1); + __pyx_v_self = ((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_t_1); + __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":29 - * frame.f_trace = self + /* "hunter/_tracer.pyx":27 + * cdef Tracer self = tracer * * handler = self.handler # <<<<<<<<<<<<<< * * if handler is None: # the tracer was stopped */ - __Pyx_TraceLine(29,12,0,__PYX_ERR(0, 29, __pyx_L1_error)) + __Pyx_TraceLine(27,6,0,__PYX_ERR(0, 27, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->handler; __Pyx_INCREF(__pyx_t_1); __pyx_v_handler = __pyx_t_1; __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":31 + /* "hunter/_tracer.pyx":29 * handler = self.handler * * if handler is None: # the tracer was stopped # <<<<<<<<<<<<<< * # make sure it's uninstalled even for running threads * if self.profiling_mode: */ - __Pyx_TraceLine(31,16,0,__PYX_ERR(0, 31, __pyx_L1_error)) + __Pyx_TraceLine(29,10,0,__PYX_ERR(0, 29, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_handler == Py_None); if (__pyx_t_2) { - /* "hunter/_tracer.pyx":33 + /* "hunter/_tracer.pyx":31 * if handler is None: # the tracer was stopped * # make sure it's uninstalled even for running threads * if self.profiling_mode: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: */ - __Pyx_TraceLine(33,18,0,__PYX_ERR(0, 33, __pyx_L1_error)) + __Pyx_TraceLine(31,12,0,__PYX_ERR(0, 31, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { - /* "hunter/_tracer.pyx":34 + /* "hunter/_tracer.pyx":32 * # make sure it's uninstalled even for running threads * if self.profiling_mode: * PyEval_SetProfile(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetTrace(NULL, NULL) */ - __Pyx_TraceLine(34,21,0,__PYX_ERR(0, 34, __pyx_L1_error)) + __Pyx_TraceLine(32,15,0,__PYX_ERR(0, 32, __pyx_L1_error)) PyEval_SetProfile(NULL, NULL); - /* "hunter/_tracer.pyx":33 + /* "hunter/_tracer.pyx":31 * if handler is None: # the tracer was stopped * # make sure it's uninstalled even for running threads * if self.profiling_mode: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: */ - goto __pyx_L5; + goto __pyx_L4; } - /* "hunter/_tracer.pyx":36 + /* "hunter/_tracer.pyx":34 * PyEval_SetProfile(NULL, NULL) * else: * PyEval_SetTrace(NULL, NULL) # <<<<<<<<<<<<<< * return 0 * */ - __Pyx_TraceLine(36,25,0,__PYX_ERR(0, 36, __pyx_L1_error)) + __Pyx_TraceLine(34,19,0,__PYX_ERR(0, 34, __pyx_L1_error)) /*else*/ { PyEval_SetTrace(NULL, NULL); } - __pyx_L5:; + __pyx_L4:; - /* "hunter/_tracer.pyx":37 + /* "hunter/_tracer.pyx":35 * else: * PyEval_SetTrace(NULL, NULL) * return 0 # <<<<<<<<<<<<<< * * if kind == 3 and self.depth > 0: */ - __Pyx_TraceLine(37,28,0,__PYX_ERR(0, 37, __pyx_L1_error)) + __Pyx_TraceLine(35,22,0,__PYX_ERR(0, 35, __pyx_L1_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 28, 0, __PYX_ERR(0, 37, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 22, 0, __PYX_ERR(0, 35, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":31 + /* "hunter/_tracer.pyx":29 * handler = self.handler * * if handler is None: # the tracer was stopped # <<<<<<<<<<<<<< @@ -4100,36 +3635,36 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h */ } - /* "hunter/_tracer.pyx":39 + /* "hunter/_tracer.pyx":37 * return 0 * * if kind == 3 and self.depth > 0: # <<<<<<<<<<<<<< * self.depth -= 1 * */ - __Pyx_TraceLine(39,32,0,__PYX_ERR(0, 39, __pyx_L1_error)) + __Pyx_TraceLine(37,26,0,__PYX_ERR(0, 37, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_kind == 3); if (__pyx_t_3) { } else { __pyx_t_2 = __pyx_t_3; - goto __pyx_L7_bool_binop_done; + goto __pyx_L6_bool_binop_done; } __pyx_t_3 = (__pyx_v_self->depth > 0); __pyx_t_2 = __pyx_t_3; - __pyx_L7_bool_binop_done:; + __pyx_L6_bool_binop_done:; if (__pyx_t_2) { - /* "hunter/_tracer.pyx":40 + /* "hunter/_tracer.pyx":38 * * if kind == 3 and self.depth > 0: * self.depth -= 1 # <<<<<<<<<<<<<< * - * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) + * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) */ - __Pyx_TraceLine(40,39,0,__PYX_ERR(0, 40, __pyx_L1_error)) + __Pyx_TraceLine(38,33,0,__PYX_ERR(0, 38, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth - 1); - /* "hunter/_tracer.pyx":39 + /* "hunter/_tracer.pyx":37 * return 0 * * if kind == 3 and self.depth > 0: # <<<<<<<<<<<<<< @@ -4138,280 +3673,278 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h */ } - /* "hunter/_tracer.pyx":42 + /* "hunter/_tracer.pyx":40 * self.depth -= 1 * - * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) # <<<<<<<<<<<<<< - * + * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) # <<<<<<<<<<<<<< * try: + * fast_call(handler, event) */ - __Pyx_TraceLine(42,44,0,__PYX_ERR(0, 42, __pyx_L1_error)) + __Pyx_TraceLine(40,38,0,__PYX_ERR(0, 40, __pyx_L1_error)) __pyx_t_4 = NULL; __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); - __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 42, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_2 = (__pyx_v_arg == NULL); - if (__pyx_t_2) { - __Pyx_INCREF(Py_None); - __pyx_t_7 = Py_None; - } else { - __Pyx_INCREF(((PyObject *)__pyx_v_arg)); - __pyx_t_7 = ((PyObject *)__pyx_v_arg); - } - __pyx_t_8 = 1; + __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 40, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 40, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = 1; { - PyObject *__pyx_callargs[5] = {__pyx_t_4, ((PyObject *)__pyx_v_frame), __pyx_t_6, __pyx_t_7, ((PyObject *)__pyx_v_self)}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_8, (5-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + PyObject *__pyx_callargs[7] = {__pyx_t_4, ((PyObject *)__pyx_v_frame), __pyx_t_6, Py_None, __pyx_t_7, __pyx_t_8, __pyx_v_self->threading_support}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_9, (7-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":44 - * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) + /* "hunter/_tracer.pyx":41 * + * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ - __Pyx_TraceLine(44,54,0,__PYX_ERR(0, 44, __pyx_L1_error)) + __Pyx_TraceLine(41,49,0,__PYX_ERR(0, 41, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11); - __Pyx_XGOTREF(__pyx_t_9); + __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); __Pyx_XGOTREF(__pyx_t_10); __Pyx_XGOTREF(__pyx_t_11); + __Pyx_XGOTREF(__pyx_t_12); /*try:*/ { - /* "hunter/_tracer.pyx":45 - * + /* "hunter/_tracer.pyx":42 + * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: * fast_call(handler, event) # <<<<<<<<<<<<<< * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) */ - __Pyx_TraceLine(45,56,0,__PYX_ERR(0, 45, __pyx_L9_error)) - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 45, __pyx_L9_error) + __Pyx_TraceLine(42,51,0,__PYX_ERR(0, 42, __pyx_L8_error)) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L8_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":44 - * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) + /* "hunter/_tracer.pyx":41 * + * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ } - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L14_try_end; - __pyx_L9_error:; + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + goto __pyx_L13_try_end; + __pyx_L8_error:; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_tracer.pyx":46 + /* "hunter/_tracer.pyx":43 * try: * fast_call(handler, event) * except Exception as exc: # <<<<<<<<<<<<<< * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( */ - __Pyx_TraceLine(46,60,0,__PYX_ERR(0, 46, __pyx_L11_except_error)) - __pyx_t_12 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); - if (__pyx_t_12) { + __Pyx_TraceLine(43,55,0,__PYX_ERR(0, 43, __pyx_L10_except_error)) + __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); + if (__pyx_t_13) { __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_TraceExceptionHandled(59); - if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_7) < 0) __PYX_ERR(0, 46, __pyx_L11_except_error) + __Pyx_TraceExceptionHandled(54); + if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_8) < 0) __PYX_ERR(0, 43, __pyx_L10_except_error) __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_5); - __Pyx_XGOTREF(__pyx_t_7); + __Pyx_XGOTREF(__pyx_t_8); __Pyx_TraceExceptionDone(); __Pyx_INCREF(__pyx_t_5); __pyx_v_exc = __pyx_t_5; /*try:*/ { - /* "hunter/_tracer.pyx":47 + /* "hunter/_tracer.pyx":44 * fast_call(handler, event) * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) # <<<<<<<<<<<<<< * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) */ - __Pyx_TraceLine(47,64,0,__PYX_ERR(0, 47, __pyx_L20_error)) - __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_TraceLine(44,59,0,__PYX_ERR(0, 44, __pyx_L19_error)) + __pyx_t_6 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 44, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 47, __pyx_L20_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 44, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_8 = 1; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_9 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_14))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_14); - assert(__pyx_t_4); + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_14); + assert(__pyx_t_6); PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_14); - __Pyx_INCREF(__pyx_t_4); + __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(__pyx__function); __Pyx_DECREF_SET(__pyx_t_14, __pyx__function); - __pyx_t_8 = 0; + __pyx_t_9 = 0; } #endif { - PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_4, NULL}; - __pyx_t_13 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_13, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 47, __pyx_L20_error) - __pyx_t_6 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_14, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (__pyx_t_8*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_13); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_6, NULL}; + __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_4); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 44, __pyx_L19_error) + __pyx_t_7 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_14, __pyx_callargs+__pyx_t_9, (1-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 47, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_6); + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 44, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_7); } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_tracer.pyx":48 + /* "hunter/_tracer.pyx":45 * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( # <<<<<<<<<<<<<< * handler, exc, event)) * self.stop() */ - __Pyx_TraceLine(48,68,0,__PYX_ERR(0, 48, __pyx_L20_error)) - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 48, __pyx_L20_error) + __Pyx_TraceLine(45,63,0,__PYX_ERR(0, 45, __pyx_L19_error)) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 45, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_14 = __pyx_t_15; __Pyx_INCREF(__pyx_t_14); - /* "hunter/_tracer.pyx":49 + /* "hunter/_tracer.pyx":46 * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) # <<<<<<<<<<<<<< * self.stop() * return 0 */ - __Pyx_TraceLine(49,73,0,__PYX_ERR(0, 49, __pyx_L20_error)) - __pyx_t_13 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 49, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 49, __pyx_L20_error) + __Pyx_TraceLine(46,68,0,__PYX_ERR(0, 46, __pyx_L19_error)) + __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_16 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(((PyObject *)__pyx_v_event)), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 49, __pyx_L20_error) + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_16 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(((PyObject *)__pyx_v_event)), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_17[0] = __pyx_mstate_global->__pyx_kp_u_Disabling_tracer_because_handler; - __pyx_t_17[1] = __pyx_t_13; + __pyx_t_17[1] = __pyx_t_4; __pyx_t_17[2] = __pyx_mstate_global->__pyx_kp_u_failed; - __pyx_t_17[3] = __pyx_t_4; + __pyx_t_17[3] = __pyx_t_6; __pyx_t_17[4] = __pyx_mstate_global->__pyx_kp_u_at; __pyx_t_17[5] = __pyx_t_16; __pyx_t_17[6] = __pyx_mstate_global->__pyx_kp_u_; - /* "hunter/_tracer.pyx":48 + /* "hunter/_tracer.pyx":45 * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( # <<<<<<<<<<<<<< * handler, exc, event)) * self.stop() */ - __Pyx_TraceLine(48,72,0,__PYX_ERR(0, 48, __pyx_L20_error)) - __pyx_t_18 = __Pyx_PyUnicode_Join(__pyx_t_17, 7, 33 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_13) + 9 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + 3, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_13) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16)); - if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 48, __pyx_L20_error) + __Pyx_TraceLine(45,67,0,__PYX_ERR(0, 45, __pyx_L19_error)) + __pyx_t_18 = __Pyx_PyUnicode_Join(__pyx_t_17, 7, 33 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 9 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + 3, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16)); + if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 45, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_8 = 0; + __pyx_t_9 = 0; { PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_18}; - __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_write, __pyx_callargs+__pyx_t_8, (2-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_write, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 48, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_6); + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 45, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_7); } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_tracer.pyx":50 + /* "hunter/_tracer.pyx":47 * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) * self.stop() # <<<<<<<<<<<<<< * return 0 * */ - __Pyx_TraceLine(50,76,0,__PYX_ERR(0, 50, __pyx_L20_error)) + __Pyx_TraceLine(47,71,0,__PYX_ERR(0, 47, __pyx_L19_error)) __pyx_t_15 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_15); - __pyx_t_8 = 0; + __pyx_t_9 = 0; { PyObject *__pyx_callargs[2] = {__pyx_t_15, NULL}; - __pyx_t_6 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_8, (1-__pyx_t_8) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_9, (1-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 50, __pyx_L20_error) - __Pyx_GOTREF(__pyx_t_6); + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 47, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_7); } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_tracer.pyx":51 + /* "hunter/_tracer.pyx":48 * handler, exc, event)) * self.stop() * return 0 # <<<<<<<<<<<<<< * * if kind == 0: */ - __Pyx_TraceLine(51,79,0,__PYX_ERR(0, 51, __pyx_L20_error)) + __Pyx_TraceLine(48,74,0,__PYX_ERR(0, 48, __pyx_L19_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 79, 0, __PYX_ERR(0, 51, __pyx_L20_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 74, 0, __PYX_ERR(0, 48, __pyx_L19_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L19_return; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + goto __pyx_L18_return; } - /* "hunter/_tracer.pyx":46 + /* "hunter/_tracer.pyx":43 * try: * fast_call(handler, event) * except Exception as exc: # <<<<<<<<<<<<<< * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( */ - __Pyx_TraceLine(46,59,0,__PYX_ERR(0, 46, __pyx_L20_error)) + __Pyx_TraceLine(43,54,0,__PYX_ERR(0, 43, __pyx_L19_error)) /*finally:*/ { - __pyx_L20_error:; + __pyx_L19_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionHandled(59); + __Pyx_TraceExceptionHandled(54); __Pyx_PyThreadState_assign __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; - __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_ExceptionSwap(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26); if ( unlikely(__Pyx_GetException(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23) < 0)) __Pyx_ErrFetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); __Pyx_XGOTREF(__pyx_t_21); @@ -4420,7 +3953,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_XGOTREF(__pyx_t_24); __Pyx_XGOTREF(__pyx_t_25); __Pyx_XGOTREF(__pyx_t_26); - __pyx_t_12 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_20 = __pyx_filename; + __pyx_t_13 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_20 = __pyx_filename; { __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; } @@ -4433,74 +3966,74 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h __Pyx_XGIVEREF(__pyx_t_23); __Pyx_ErrRestore(__pyx_t_21, __pyx_t_22, __pyx_t_23); __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; - __pyx_lineno = __pyx_t_12; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20; - __Pyx_TraceException(59, 1, 0); - goto __pyx_L11_except_error; + __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20; + __Pyx_TraceException(54, 1, 0); + goto __pyx_L10_except_error; } - __pyx_L19_return: { + __pyx_L18_return: { __pyx_t_19 = __pyx_r; __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; __pyx_r = __pyx_t_19; - goto __pyx_L12_except_return; + goto __pyx_L11_except_return; } } } - goto __pyx_L11_except_error; + goto __pyx_L10_except_error; - /* "hunter/_tracer.pyx":44 - * cdef Event event = Event(frame, kind, None if arg is NULL else arg, self) + /* "hunter/_tracer.pyx":41 * + * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ - __pyx_L11_except_error:; - __Pyx_XGIVEREF(__pyx_t_9); + __pyx_L10_except_error:; __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); + __Pyx_XGIVEREF(__pyx_t_12); + __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12); goto __pyx_L1_error; - __pyx_L12_except_return:; - __Pyx_XGIVEREF(__pyx_t_9); + __pyx_L11_except_return:; __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); + __Pyx_XGIVEREF(__pyx_t_12); + __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12); goto __pyx_L0; - __pyx_L14_try_end:; + __pyx_L13_try_end:; } - /* "hunter/_tracer.pyx":53 + /* "hunter/_tracer.pyx":50 * return 0 * * if kind == 0: # <<<<<<<<<<<<<< * self.depth += 1 * self.calls += 1 */ - __Pyx_TraceLine(53,83,0,__PYX_ERR(0, 53, __pyx_L1_error)) + __Pyx_TraceLine(50,78,0,__PYX_ERR(0, 50, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_kind == 0); if (__pyx_t_2) { - /* "hunter/_tracer.pyx":54 + /* "hunter/_tracer.pyx":51 * * if kind == 0: * self.depth += 1 # <<<<<<<<<<<<<< * self.calls += 1 - * + * return 0 */ - __Pyx_TraceLine(54,85,0,__PYX_ERR(0, 54, __pyx_L1_error)) + __Pyx_TraceLine(51,80,0,__PYX_ERR(0, 51, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth + 1); - /* "hunter/_tracer.pyx":55 + /* "hunter/_tracer.pyx":52 * if kind == 0: * self.depth += 1 * self.calls += 1 # <<<<<<<<<<<<<< - * + * return 0 * */ - __Pyx_TraceLine(55,88,0,__PYX_ERR(0, 55, __pyx_L1_error)) + __Pyx_TraceLine(52,83,0,__PYX_ERR(0, 52, __pyx_L1_error)) __pyx_v_self->calls = (__pyx_v_self->calls + 1); - /* "hunter/_tracer.pyx":53 + /* "hunter/_tracer.pyx":50 * return 0 * * if kind == 0: # <<<<<<<<<<<<<< @@ -4509,25 +4042,34 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h */ } - /* "hunter/_tracer.pyx":25 + /* "hunter/_tracer.pyx":53 + * self.depth += 1 + * self.calls += 1 + * return 0 # <<<<<<<<<<<<<< + * + * +*/ + __Pyx_TraceLine(53,86,0,__PYX_ERR(0, 53, __pyx_L1_error)) + __pyx_r = 0; + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 86, 0, __PYX_ERR(0, 53, __pyx_L1_error)); + goto __pyx_L0; + + /* "hunter/_tracer.pyx":24 * } * - * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: # <<<<<<<<<<<<<< - * if frame.f_trace is not self: - * frame.f_trace = self + * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: # <<<<<<<<<<<<<< + * cdef Tracer self = tracer + * */ /* function exit code */ - __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 0, 0, __PYX_ERR(0, 25, __pyx_L1_error)); - goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_13); + __Pyx_XDECREF(__pyx_t_8); __Pyx_XDECREF(__pyx_t_14); __Pyx_XDECREF(__pyx_t_15); __Pyx_XDECREF(__pyx_t_16); @@ -4536,11 +4078,12 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 25, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 24, __pyx_L1_error)); #endif - __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; + __Pyx_WriteUnraisable("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); + __pyx_r = 0; __pyx_L0:; + __Pyx_XDECREF((PyObject *)__pyx_v_self); __Pyx_XDECREF(__pyx_v_handler); __Pyx_XDECREF((PyObject *)__pyx_v_event); __Pyx_XDECREF(__pyx_v_exc); @@ -4549,7 +4092,7 @@ static CYTHON_INLINE int __pyx_f_6hunter_7_tracer_trace_func(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_tracer.pyx":59 +/* "hunter/_tracer.pyx":57 * * cdef class Tracer: * def __cinit__(self, threading_support=None, profiling_mode=False): # <<<<<<<<<<<<<< @@ -4580,33 +4123,33 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_threading_support,&__pyx_mstate_global->__pyx_n_u_profiling_mode,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 59, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 57, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 57, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 57, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 59, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 57, __pyx_L3_error) if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_False)); } else { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 57, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 57, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; @@ -4619,7 +4162,7 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 59, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 57, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4650,106 +4193,106 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) __Pyx_RefNannySetupContext("__cinit__", 0); - __Pyx_TraceStartFunc("__cinit__", __pyx_f[0], 59, 0, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); + __Pyx_TraceStartFunc("__cinit__", __pyx_f[0], 57, 0, 0, 0, __PYX_ERR(0, 57, __pyx_L1_error)); - /* "hunter/_tracer.pyx":60 + /* "hunter/_tracer.pyx":58 * cdef class Tracer: * def __cinit__(self, threading_support=None, profiling_mode=False): * self.handler = None # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(60,3,0,__PYX_ERR(0, 60, __pyx_L1_error)) + __Pyx_TraceLine(58,3,0,__PYX_ERR(0, 58, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); __Pyx_DECREF(__pyx_v_self->handler); __pyx_v_self->handler = Py_None; - /* "hunter/_tracer.pyx":61 + /* "hunter/_tracer.pyx":59 * def __cinit__(self, threading_support=None, profiling_mode=False): * self.handler = None * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * self._threading_previous = None */ - __Pyx_TraceLine(61,6,0,__PYX_ERR(0, 61, __pyx_L1_error)) + __Pyx_TraceLine(59,6,0,__PYX_ERR(0, 59, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":62 + /* "hunter/_tracer.pyx":60 * self.handler = None * self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * self._threading_previous = None * self.threading_support = threading_support */ - __Pyx_TraceLine(62,9,0,__PYX_ERR(0, 62, __pyx_L1_error)) + __Pyx_TraceLine(60,9,0,__PYX_ERR(0, 60, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":63 + /* "hunter/_tracer.pyx":61 * self.previous = None * self._previousfunc = NULL * self._threading_previous = None # <<<<<<<<<<<<<< * self.threading_support = threading_support * self.profiling_mode = profiling_mode */ - __Pyx_TraceLine(63,12,0,__PYX_ERR(0, 63, __pyx_L1_error)) + __Pyx_TraceLine(61,12,0,__PYX_ERR(0, 61, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); __pyx_v_self->_threading_previous = Py_None; - /* "hunter/_tracer.pyx":64 + /* "hunter/_tracer.pyx":62 * self._previousfunc = NULL * self._threading_previous = None * self.threading_support = threading_support # <<<<<<<<<<<<<< * self.profiling_mode = profiling_mode * self.depth = 0 */ - __Pyx_TraceLine(64,15,0,__PYX_ERR(0, 64, __pyx_L1_error)) + __Pyx_TraceLine(62,15,0,__PYX_ERR(0, 62, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_threading_support); __Pyx_GIVEREF(__pyx_v_threading_support); __Pyx_GOTREF(__pyx_v_self->threading_support); __Pyx_DECREF(__pyx_v_self->threading_support); __pyx_v_self->threading_support = __pyx_v_threading_support; - /* "hunter/_tracer.pyx":65 + /* "hunter/_tracer.pyx":63 * self._threading_previous = None * self.threading_support = threading_support * self.profiling_mode = profiling_mode # <<<<<<<<<<<<<< * self.depth = 0 * self.calls = 0 */ - __Pyx_TraceLine(65,20,0,__PYX_ERR(0, 65, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_profiling_mode); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 65, __pyx_L1_error) + __Pyx_TraceLine(63,20,0,__PYX_ERR(0, 63, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_profiling_mode); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 63, __pyx_L1_error) __pyx_v_self->profiling_mode = __pyx_t_1; - /* "hunter/_tracer.pyx":66 + /* "hunter/_tracer.pyx":64 * self.threading_support = threading_support * self.profiling_mode = profiling_mode * self.depth = 0 # <<<<<<<<<<<<<< * self.calls = 0 * */ - __Pyx_TraceLine(66,21,0,__PYX_ERR(0, 66, __pyx_L1_error)) + __Pyx_TraceLine(64,21,0,__PYX_ERR(0, 64, __pyx_L1_error)) __pyx_v_self->depth = 0; - /* "hunter/_tracer.pyx":67 + /* "hunter/_tracer.pyx":65 * self.profiling_mode = profiling_mode * self.depth = 0 * self.calls = 0 # <<<<<<<<<<<<<< * * def __dealloc__(self): */ - __Pyx_TraceLine(67,24,0,__PYX_ERR(0, 67, __pyx_L1_error)) + __Pyx_TraceLine(65,24,0,__PYX_ERR(0, 65, __pyx_L1_error)) __pyx_v_self->calls = 0; - /* "hunter/_tracer.pyx":59 + /* "hunter/_tracer.pyx":57 * * cdef class Tracer: * def __cinit__(self, threading_support=None, profiling_mode=False): # <<<<<<<<<<<<<< @@ -4759,14 +4302,14 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ /* function exit code */ __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 57, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 57, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; @@ -4776,7 +4319,7 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ return __pyx_r; } -/* "hunter/_tracer.pyx":69 +/* "hunter/_tracer.pyx":67 * self.calls = 0 * * def __dealloc__(self): # <<<<<<<<<<<<<< @@ -4810,37 +4353,37 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) __Pyx_RefNannySetupContext("__dealloc__", 0); - __Pyx_TraceStartFunc("__dealloc__", __pyx_f[0], 69, 0, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); + __Pyx_TraceStartFunc("__dealloc__", __pyx_f[0], 67, 0, 0, 0, __PYX_ERR(0, 67, __pyx_L1_error)); - /* "hunter/_tracer.pyx":70 + /* "hunter/_tracer.pyx":68 * * def __dealloc__(self): * cdef PyThreadState *state = PyThreadState_Get() # <<<<<<<<<<<<<< * if state.c_traceobj is self: * self.stop() */ - __Pyx_TraceLine(70,3,0,__PYX_ERR(0, 70, __pyx_L1_error)) + __Pyx_TraceLine(68,3,0,__PYX_ERR(0, 68, __pyx_L1_error)) __pyx_v_state = PyThreadState_Get(); - /* "hunter/_tracer.pyx":71 + /* "hunter/_tracer.pyx":69 * def __dealloc__(self): * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: # <<<<<<<<<<<<<< * self.stop() * */ - __Pyx_TraceLine(71,7,0,__PYX_ERR(0, 71, __pyx_L1_error)) + __Pyx_TraceLine(69,7,0,__PYX_ERR(0, 69, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_traceobj == ((PyObject *)__pyx_v_self)); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":72 + /* "hunter/_tracer.pyx":70 * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: * self.stop() # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(72,10,0,__PYX_ERR(0, 72, __pyx_L1_error)) + __Pyx_TraceLine(70,10,0,__PYX_ERR(0, 70, __pyx_L1_error)) __pyx_t_3 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; @@ -4848,12 +4391,12 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":71 + /* "hunter/_tracer.pyx":69 * def __dealloc__(self): * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: # <<<<<<<<<<<<<< @@ -4862,7 +4405,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun */ } - /* "hunter/_tracer.pyx":69 + /* "hunter/_tracer.pyx":67 * self.calls = 0 * * def __dealloc__(self): # <<<<<<<<<<<<<< @@ -4871,7 +4414,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun */ /* function exit code */ - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 67, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); @@ -4880,7 +4423,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 67, __pyx_L1_error)); #endif __Pyx_WriteUnraisable("hunter._tracer.Tracer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); __pyx_L0:; @@ -4888,7 +4431,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun __Pyx_RefNannyFinishContext(); } -/* "hunter/_tracer.pyx":74 +/* "hunter/_tracer.pyx":72 * self.stop() * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4930,51 +4473,51 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 74, 0, 0, 0, __PYX_ERR(0, 74, __pyx_L1_error)); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 72, 0, 0, 0, __PYX_ERR(0, 72, __pyx_L1_error)); - /* "hunter/_tracer.pyx":75 + /* "hunter/_tracer.pyx":73 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * id(self), * self.threading_support, */ - __Pyx_TraceLine(75,1,0,__PYX_ERR(0, 75, __pyx_L1_error)) + __Pyx_TraceLine(73,1,0,__PYX_ERR(0, 73, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_tracer.pyx":76 + /* "hunter/_tracer.pyx":74 * def __repr__(self): * return '' % ( * id(self), # <<<<<<<<<<<<<< * self.threading_support, * '' if self.handler is None else 'handler=', */ - __Pyx_TraceLine(76,4,0,__PYX_ERR(0, 76, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) + __Pyx_TraceLine(74,4,0,__PYX_ERR(0, 74, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 74, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_Format(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Format(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 74, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":77 + /* "hunter/_tracer.pyx":75 * return '' % ( * id(self), * self.threading_support, # <<<<<<<<<<<<<< * '' if self.handler is None else 'handler=', * '' if self.handler is None else repr(self.handler), */ - __Pyx_TraceLine(77,7,0,__PYX_ERR(0, 77, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->threading_support), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) + __Pyx_TraceLine(75,7,0,__PYX_ERR(0, 75, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->threading_support), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "hunter/_tracer.pyx":78 + /* "hunter/_tracer.pyx":76 * id(self), * self.threading_support, * '' if self.handler is None else 'handler=', # <<<<<<<<<<<<<< * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', */ - __Pyx_TraceLine(78,12,0,__PYX_ERR(0, 78, __pyx_L1_error)) + __Pyx_TraceLine(76,12,0,__PYX_ERR(0, 76, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->handler == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_stopped); @@ -4983,18 +4526,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_handler); __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_handler; } - __pyx_t_5 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 78, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":79 + /* "hunter/_tracer.pyx":77 * self.threading_support, * '' if self.handler is None else 'handler=', * '' if self.handler is None else repr(self.handler), # <<<<<<<<<<<<<< * '' if self.previous is None else ', previous=', * '' if self.previous is None else repr(self.previous), */ - __Pyx_TraceLine(79,18,0,__PYX_ERR(0, 79, __pyx_L1_error)) + __Pyx_TraceLine(77,18,0,__PYX_ERR(0, 77, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->handler == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); @@ -5002,24 +4545,24 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h } else { __pyx_t_6 = __pyx_v_self->handler; __Pyx_INCREF(__pyx_t_6); - __pyx_t_7 = PyObject_Repr(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 79, __pyx_L1_error) + __pyx_t_7 = PyObject_Repr(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_t_7; __pyx_t_7 = 0; } - __pyx_t_7 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 79, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":80 + /* "hunter/_tracer.pyx":78 * '' if self.handler is None else 'handler=', * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', # <<<<<<<<<<<<<< * '' if self.previous is None else repr(self.previous), * ) */ - __Pyx_TraceLine(80,27,0,__PYX_ERR(0, 80, __pyx_L1_error)) + __Pyx_TraceLine(78,27,0,__PYX_ERR(0, 78, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->previous == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); @@ -5028,18 +4571,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_previous); __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_previous; } - __pyx_t_6 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 80, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":81 + /* "hunter/_tracer.pyx":79 * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', * '' if self.previous is None else repr(self.previous), # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(81,33,0,__PYX_ERR(0, 81, __pyx_L1_error)) + __Pyx_TraceLine(79,33,0,__PYX_ERR(0, 79, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->previous == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); @@ -5047,13 +4590,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h } else { __pyx_t_8 = __pyx_v_self->previous; __Pyx_INCREF(__pyx_t_8); - __pyx_t_9 = PyObject_Repr(__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L1_error) + __pyx_t_9 = PyObject_Repr(__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_t_9; __pyx_t_9 = 0; } - __pyx_t_9 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_10[0] = __pyx_mstate_global->__pyx_kp_u_hunter__tracer_Tracer_at_0x; @@ -5067,16 +4610,16 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __pyx_t_10[8] = __pyx_t_9; __pyx_t_10[9] = __pyx_mstate_global->__pyx_kp_u__4; - /* "hunter/_tracer.pyx":75 + /* "hunter/_tracer.pyx":73 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * id(self), * self.threading_support, */ - __Pyx_TraceLine(75,2,0,__PYX_ERR(0, 75, __pyx_L1_error)) + __Pyx_TraceLine(73,2,0,__PYX_ERR(0, 73, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_10, 10, 28 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 20 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_7) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_9) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_7) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9)); - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 75, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 73, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -5086,10 +4629,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 75, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 73, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":74 + /* "hunter/_tracer.pyx":72 * self.stop() * * def __repr__(self): # <<<<<<<<<<<<<< @@ -5111,7 +4654,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 74, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 72, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5122,11 +4665,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_tracer.pyx":84 +/* "hunter/_tracer.pyx":82 * ) * * def __call__(self, frame, str kind, arg): # <<<<<<<<<<<<<< - * trace_func(self, frame, KIND_INTS[kind], arg) + * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: */ @@ -5154,38 +4697,38 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 84, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 82, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 84, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 82, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 84, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 82, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 84, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 82, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 84, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 82, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, i); __PYX_ERR(0, 84, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, i); __PYX_ERR(0, 82, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 84, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 82, __pyx_L3_error) values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 84, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 82, __pyx_L3_error) values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 84, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 82, __pyx_L3_error) } __pyx_v_frame = values[0]; __pyx_v_kind = ((PyObject*)values[1]); @@ -5193,7 +4736,7 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 84, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 82, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5204,7 +4747,7 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_kind), (&PyUnicode_Type), 1, "kind", 1))) __PYX_ERR(0, 84, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_kind), (&PyUnicode_Type), 1, "kind", 1))) __PYX_ERR(0, 82, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_6__call__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_frame, __pyx_v_kind, __pyx_v_arg); /* function exit code */ @@ -5231,81 +4774,80 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h PyObject *__pyx_t_1 = NULL; int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceStartFunc("__call__", __pyx_f[0], 84, 0, 0, 0, __PYX_ERR(0, 84, __pyx_L1_error)); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 82, 0, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); - /* "hunter/_tracer.pyx":85 + /* "hunter/_tracer.pyx":83 * * def __call__(self, frame, str kind, arg): - * trace_func(self, frame, KIND_INTS[kind], arg) # <<<<<<<<<<<<<< + * trace_func( self, frame, KIND_INTS[kind], arg) # <<<<<<<<<<<<<< * if kind == 0: - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) */ - __Pyx_TraceLine(85,5,0,__PYX_ERR(0, 85, __pyx_L1_error)) + __Pyx_TraceLine(83,7,0,__PYX_ERR(0, 83, __pyx_L1_error)) if (unlikely(__pyx_v_6hunter_7_tracer_KIND_INTS == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 85, __pyx_L1_error) + __PYX_ERR(0, 83, __pyx_L1_error) } - __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_6hunter_7_tracer_KIND_INTS, __pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_6hunter_7_tracer_KIND_INTS, __pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __pyx_f_6hunter_7_tracer_trace_func(__pyx_v_self, ((FrameType)__pyx_v_frame), __pyx_t_2, ((PyObject *)__pyx_v_arg)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 85, __pyx_L1_error) + (void)(__pyx_f_6hunter_7_tracer_trace_func(((PyObject *)__pyx_v_self), ((PyFrameObject *)__pyx_v_frame), __pyx_t_2, ((PyObject *)__pyx_v_arg))); - /* "hunter/_tracer.pyx":86 + /* "hunter/_tracer.pyx":84 * def __call__(self, frame, str kind, arg): - * trace_func(self, frame, KIND_INTS[kind], arg) + * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: # <<<<<<<<<<<<<< - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) * return self */ - __Pyx_TraceLine(86,11,0,__PYX_ERR(0, 86, __pyx_L1_error)) - __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_v_kind, __pyx_mstate_global->__pyx_int_0, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 86, __pyx_L1_error) - if (__pyx_t_4) { + __Pyx_TraceLine(84,13,0,__PYX_ERR(0, 84, __pyx_L1_error)) + __pyx_t_3 = (__Pyx_PyUnicode_Equals(__pyx_v_kind, __pyx_mstate_global->__pyx_int_0, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 84, __pyx_L1_error) + if (__pyx_t_3) { - /* "hunter/_tracer.pyx":87 - * trace_func(self, frame, KIND_INTS[kind], arg) + /* "hunter/_tracer.pyx":85 + * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: - * PyEval_SetTrace( trace_func, self) # <<<<<<<<<<<<<< + * PyEval_SetTrace(trace_func, self) # <<<<<<<<<<<<<< * return self * */ - __Pyx_TraceLine(87,15,0,__PYX_ERR(0, 87, __pyx_L1_error)) - PyEval_SetTrace(((Py_tracefunc)__pyx_f_6hunter_7_tracer_trace_func), ((PyObject *)__pyx_v_self)); + __Pyx_TraceLine(85,17,0,__PYX_ERR(0, 85, __pyx_L1_error)) + PyEval_SetTrace(__pyx_f_6hunter_7_tracer_trace_func, ((PyObject *)__pyx_v_self)); - /* "hunter/_tracer.pyx":86 + /* "hunter/_tracer.pyx":84 * def __call__(self, frame, str kind, arg): - * trace_func(self, frame, KIND_INTS[kind], arg) + * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: # <<<<<<<<<<<<<< - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) * return self */ } - /* "hunter/_tracer.pyx":88 + /* "hunter/_tracer.pyx":86 * if kind == 0: - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) * return self # <<<<<<<<<<<<<< * * def trace(self, predicate): */ - __Pyx_TraceLine(88,20,0,__PYX_ERR(0, 88, __pyx_L1_error)) + __Pyx_TraceLine(86,21,0,__PYX_ERR(0, 86, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); - __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 88, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 21, 0, __PYX_ERR(0, 86, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":84 + /* "hunter/_tracer.pyx":82 * ) * * def __call__(self, frame, str kind, arg): # <<<<<<<<<<<<<< - * trace_func(self, frame, KIND_INTS[kind], arg) + * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: */ @@ -5316,7 +4858,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 84, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5327,7 +4869,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_tracer.pyx":90 +/* "hunter/_tracer.pyx":88 * return self * * def trace(self, predicate): # <<<<<<<<<<<<<< @@ -5374,32 +4916,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_predicate,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 90, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 88, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 88, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "trace", 0) < 0) __PYX_ERR(0, 90, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "trace", 0) < 0) __PYX_ERR(0, 88, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, i); __PYX_ERR(0, 90, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, i); __PYX_ERR(0, 88, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 88, __pyx_L3_error) } __pyx_v_predicate = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 90, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 88, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5438,72 +4980,72 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) __Pyx_RefNannySetupContext("trace", 0); - __Pyx_TraceStartFunc("trace", __pyx_f[0], 90, 0, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); + __Pyx_TraceStartFunc("trace", __pyx_f[0], 88, 0, 0, 0, __PYX_ERR(0, 88, __pyx_L1_error)); - /* "hunter/_tracer.pyx":91 + /* "hunter/_tracer.pyx":89 * * def trace(self, predicate): * self.handler = predicate # <<<<<<<<<<<<<< * cdef PyThreadState *state = PyThreadState_Get() * */ - __Pyx_TraceLine(91,1,0,__PYX_ERR(0, 91, __pyx_L1_error)) + __Pyx_TraceLine(89,1,0,__PYX_ERR(0, 89, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->handler); __Pyx_DECREF(__pyx_v_self->handler); __pyx_v_self->handler = __pyx_v_predicate; - /* "hunter/_tracer.pyx":92 + /* "hunter/_tracer.pyx":90 * def trace(self, predicate): * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() # <<<<<<<<<<<<<< * * if self.profiling_mode: */ - __Pyx_TraceLine(92,6,0,__PYX_ERR(0, 92, __pyx_L1_error)) + __Pyx_TraceLine(90,6,0,__PYX_ERR(0, 90, __pyx_L1_error)) __pyx_v_state = PyThreadState_Get(); - /* "hunter/_tracer.pyx":94 + /* "hunter/_tracer.pyx":92 * cdef PyThreadState *state = PyThreadState_Get() * * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) */ - __Pyx_TraceLine(94,8,0,__PYX_ERR(0, 94, __pyx_L1_error)) + __Pyx_TraceLine(92,8,0,__PYX_ERR(0, 92, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { - /* "hunter/_tracer.pyx":95 + /* "hunter/_tracer.pyx":93 * * if self.profiling_mode: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) */ - __Pyx_TraceLine(95,14,0,__PYX_ERR(0, 95, __pyx_L1_error)) + __Pyx_TraceLine(93,14,0,__PYX_ERR(0, 93, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 95, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 93, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":96 + /* "hunter/_tracer.pyx":94 * if self.profiling_mode: * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) # <<<<<<<<<<<<<< * threading.setprofile(self) * if state.c_profileobj is NULL: */ - __Pyx_TraceLine(96,22,0,__PYX_ERR(0, 96, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 96, __pyx_L1_error) + __Pyx_TraceLine(94,22,0,__PYX_ERR(0, 94, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_profile_hook, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 96, __pyx_L1_error) + __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_profile_hook, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_4); @@ -5512,18 +5054,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->_threading_previous = __pyx_t_4; __pyx_t_4 = 0; - /* "hunter/_tracer.pyx":97 + /* "hunter/_tracer.pyx":95 * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) # <<<<<<<<<<<<<< * if state.c_profileobj is NULL: * self.previous = None */ - __Pyx_TraceLine(97,27,0,__PYX_ERR(0, 97, __pyx_L1_error)) + __Pyx_TraceLine(95,27,0,__PYX_ERR(0, 95, __pyx_L1_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 97, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = 1; @@ -5543,12 +5085,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 97, __pyx_L1_error) + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_tracer.pyx":95 + /* "hunter/_tracer.pyx":93 * * if self.profiling_mode: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -5557,42 +5099,42 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":98 + /* "hunter/_tracer.pyx":96 * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) * if state.c_profileobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(98,32,0,__PYX_ERR(0, 98, __pyx_L1_error)) + __Pyx_TraceLine(96,32,0,__PYX_ERR(0, 96, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_profileobj == NULL); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":99 + /* "hunter/_tracer.pyx":97 * threading.setprofile(self) * if state.c_profileobj is NULL: * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * else: */ - __Pyx_TraceLine(99,34,0,__PYX_ERR(0, 99, __pyx_L1_error)) + __Pyx_TraceLine(97,34,0,__PYX_ERR(0, 97, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":100 + /* "hunter/_tracer.pyx":98 * if state.c_profileobj is NULL: * self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * else: * self.previous = (state.c_profileobj) */ - __Pyx_TraceLine(100,37,0,__PYX_ERR(0, 100, __pyx_L1_error)) + __Pyx_TraceLine(98,37,0,__PYX_ERR(0, 98, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":98 + /* "hunter/_tracer.pyx":96 * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) * if state.c_profileobj is NULL: # <<<<<<<<<<<<<< @@ -5602,14 +5144,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt goto __pyx_L7; } - /* "hunter/_tracer.pyx":102 + /* "hunter/_tracer.pyx":100 * self._previousfunc = NULL * else: * self.previous = (state.c_profileobj) # <<<<<<<<<<<<<< * self._previousfunc = state.c_profilefunc - * PyEval_SetProfile( trace_func, self) + * PyEval_SetProfile(trace_func, self) */ - __Pyx_TraceLine(102,40,0,__PYX_ERR(0, 102, __pyx_L1_error)) + __Pyx_TraceLine(100,40,0,__PYX_ERR(0, 100, __pyx_L1_error)) /*else*/ { __pyx_t_4 = ((PyObject *)__pyx_v_state->c_profileobj); __Pyx_INCREF(__pyx_t_4); @@ -5619,30 +5161,30 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->previous = __pyx_t_4; __pyx_t_4 = 0; - /* "hunter/_tracer.pyx":103 + /* "hunter/_tracer.pyx":101 * else: * self.previous = (state.c_profileobj) * self._previousfunc = state.c_profilefunc # <<<<<<<<<<<<<< - * PyEval_SetProfile( trace_func, self) + * PyEval_SetProfile(trace_func, self) * else: */ - __Pyx_TraceLine(103,48,0,__PYX_ERR(0, 103, __pyx_L1_error)) + __Pyx_TraceLine(101,48,0,__PYX_ERR(0, 101, __pyx_L1_error)) __pyx_t_8 = __pyx_v_state->c_profilefunc; __pyx_v_self->_previousfunc = __pyx_t_8; } __pyx_L7:; - /* "hunter/_tracer.pyx":104 + /* "hunter/_tracer.pyx":102 * self.previous = (state.c_profileobj) * self._previousfunc = state.c_profilefunc - * PyEval_SetProfile( trace_func, self) # <<<<<<<<<<<<<< + * PyEval_SetProfile(trace_func, self) # <<<<<<<<<<<<<< * else: * if self.threading_support is None or self.threading_support: */ - __Pyx_TraceLine(104,50,0,__PYX_ERR(0, 104, __pyx_L1_error)) - PyEval_SetProfile(((Py_tracefunc)__pyx_f_6hunter_7_tracer_trace_func), ((PyObject *)__pyx_v_self)); + __Pyx_TraceLine(102,50,0,__PYX_ERR(0, 102, __pyx_L1_error)) + PyEval_SetProfile(__pyx_f_6hunter_7_tracer_trace_func, ((PyObject *)__pyx_v_self)); - /* "hunter/_tracer.pyx":94 + /* "hunter/_tracer.pyx":92 * cdef PyThreadState *state = PyThreadState_Get() * * if self.profiling_mode: # <<<<<<<<<<<<<< @@ -5652,14 +5194,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt goto __pyx_L3; } - /* "hunter/_tracer.pyx":106 - * PyEval_SetProfile( trace_func, self) + /* "hunter/_tracer.pyx":104 + * PyEval_SetProfile(trace_func, self) * else: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) */ - __Pyx_TraceLine(106,55,0,__PYX_ERR(0, 106, __pyx_L1_error)) + __Pyx_TraceLine(104,54,0,__PYX_ERR(0, 104, __pyx_L1_error)) /*else*/ { __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { @@ -5667,22 +5209,22 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_1 = __pyx_t_2; goto __pyx_L9_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 106, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 104, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L9_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":107 + /* "hunter/_tracer.pyx":105 * else: * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_trace_hook', None) # <<<<<<<<<<<<<< * threading.settrace(self) * if state.c_traceobj is NULL: */ - __Pyx_TraceLine(107,67,0,__PYX_ERR(0, 107, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 107, __pyx_L1_error) + __Pyx_TraceLine(105,66,0,__PYX_ERR(0, 105, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = __Pyx_GetAttr3(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_trace_hook, Py_None); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 107, __pyx_L1_error) + __pyx_t_6 = __Pyx_GetAttr3(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_trace_hook, Py_None); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_GIVEREF(__pyx_t_6); @@ -5691,18 +5233,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->_threading_previous = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_tracer.pyx":108 + /* "hunter/_tracer.pyx":106 * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) # <<<<<<<<<<<<<< * if state.c_traceobj is NULL: * self.previous = None */ - __Pyx_TraceLine(108,72,0,__PYX_ERR(0, 108, __pyx_L1_error)) + __Pyx_TraceLine(106,71,0,__PYX_ERR(0, 106, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 108, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = 1; @@ -5722,13 +5264,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__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_6)) __PYX_ERR(0, 108, __pyx_L1_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "hunter/_tracer.pyx":106 - * PyEval_SetProfile( trace_func, self) + /* "hunter/_tracer.pyx":104 + * PyEval_SetProfile(trace_func, self) * else: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_trace_hook', None) @@ -5736,42 +5278,42 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":109 + /* "hunter/_tracer.pyx":107 * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) * if state.c_traceobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(109,77,0,__PYX_ERR(0, 109, __pyx_L1_error)) + __Pyx_TraceLine(107,76,0,__PYX_ERR(0, 107, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_traceobj == NULL); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":110 + /* "hunter/_tracer.pyx":108 * threading.settrace(self) * if state.c_traceobj is NULL: * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * else: */ - __Pyx_TraceLine(110,79,0,__PYX_ERR(0, 110, __pyx_L1_error)) + __Pyx_TraceLine(108,78,0,__PYX_ERR(0, 108, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":111 + /* "hunter/_tracer.pyx":109 * if state.c_traceobj is NULL: * self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * else: * self.previous = (state.c_traceobj) */ - __Pyx_TraceLine(111,82,0,__PYX_ERR(0, 111, __pyx_L1_error)) + __Pyx_TraceLine(109,81,0,__PYX_ERR(0, 109, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":109 + /* "hunter/_tracer.pyx":107 * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) * if state.c_traceobj is NULL: # <<<<<<<<<<<<<< @@ -5781,14 +5323,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt goto __pyx_L11; } - /* "hunter/_tracer.pyx":113 + /* "hunter/_tracer.pyx":111 * self._previousfunc = NULL * else: * self.previous = (state.c_traceobj) # <<<<<<<<<<<<<< * self._previousfunc = state.c_tracefunc - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) */ - __Pyx_TraceLine(113,85,0,__PYX_ERR(0, 113, __pyx_L1_error)) + __Pyx_TraceLine(111,84,0,__PYX_ERR(0, 111, __pyx_L1_error)) /*else*/ { __pyx_t_6 = ((PyObject *)__pyx_v_state->c_traceobj); __Pyx_INCREF(__pyx_t_6); @@ -5798,46 +5340,46 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->previous = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_tracer.pyx":114 + /* "hunter/_tracer.pyx":112 * else: * self.previous = (state.c_traceobj) * self._previousfunc = state.c_tracefunc # <<<<<<<<<<<<<< - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) * return self */ - __Pyx_TraceLine(114,93,0,__PYX_ERR(0, 114, __pyx_L1_error)) + __Pyx_TraceLine(112,92,0,__PYX_ERR(0, 112, __pyx_L1_error)) __pyx_t_8 = __pyx_v_state->c_tracefunc; __pyx_v_self->_previousfunc = __pyx_t_8; } __pyx_L11:; - /* "hunter/_tracer.pyx":115 + /* "hunter/_tracer.pyx":113 * self.previous = (state.c_traceobj) * self._previousfunc = state.c_tracefunc - * PyEval_SetTrace( trace_func, self) # <<<<<<<<<<<<<< + * PyEval_SetTrace(trace_func, self) # <<<<<<<<<<<<<< * return self * */ - __Pyx_TraceLine(115,95,0,__PYX_ERR(0, 115, __pyx_L1_error)) - PyEval_SetTrace(((Py_tracefunc)__pyx_f_6hunter_7_tracer_trace_func), ((PyObject *)__pyx_v_self)); + __Pyx_TraceLine(113,94,0,__PYX_ERR(0, 113, __pyx_L1_error)) + PyEval_SetTrace(__pyx_f_6hunter_7_tracer_trace_func, ((PyObject *)__pyx_v_self)); } __pyx_L3:; - /* "hunter/_tracer.pyx":116 + /* "hunter/_tracer.pyx":114 * self._previousfunc = state.c_tracefunc - * PyEval_SetTrace( trace_func, self) + * PyEval_SetTrace(trace_func, self) * return self # <<<<<<<<<<<<<< * * def stop(self): */ - __Pyx_TraceLine(116,100,0,__PYX_ERR(0, 116, __pyx_L1_error)) + __Pyx_TraceLine(114,98,0,__PYX_ERR(0, 114, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); - __Pyx_TraceReturnValue(__pyx_r, 100, 0, __PYX_ERR(0, 116, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 98, 0, __PYX_ERR(0, 114, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":90 + /* "hunter/_tracer.pyx":88 * return self * * def trace(self, predicate): # <<<<<<<<<<<<<< @@ -5855,7 +5397,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 88, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.trace", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5866,7 +5408,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt return __pyx_r; } -/* "hunter/_tracer.pyx":118 +/* "hunter/_tracer.pyx":116 * return self * * def stop(self): # <<<<<<<<<<<<<< @@ -5932,51 +5474,51 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) __Pyx_RefNannySetupContext("stop", 0); - __Pyx_TraceStartFunc("stop", __pyx_f[0], 118, 0, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); + __Pyx_TraceStartFunc("stop", __pyx_f[0], 116, 0, 0, 0, __PYX_ERR(0, 116, __pyx_L1_error)); - /* "hunter/_tracer.pyx":119 + /* "hunter/_tracer.pyx":117 * * def stop(self): * if self.handler is not None: # <<<<<<<<<<<<<< * if self.profiling_mode: * if self.previous is None: */ - __Pyx_TraceLine(119,5,0,__PYX_ERR(0, 119, __pyx_L1_error)) + __Pyx_TraceLine(117,5,0,__PYX_ERR(0, 117, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->handler != Py_None); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":120 + /* "hunter/_tracer.pyx":118 * def stop(self): * if self.handler is not None: * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.previous is None: * PyEval_SetProfile(NULL, NULL) */ - __Pyx_TraceLine(120,7,0,__PYX_ERR(0, 120, __pyx_L1_error)) + __Pyx_TraceLine(118,7,0,__PYX_ERR(0, 118, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { - /* "hunter/_tracer.pyx":121 + /* "hunter/_tracer.pyx":119 * if self.handler is not None: * if self.profiling_mode: * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: */ - __Pyx_TraceLine(121,13,0,__PYX_ERR(0, 121, __pyx_L1_error)) + __Pyx_TraceLine(119,13,0,__PYX_ERR(0, 119, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->previous == Py_None); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":122 + /* "hunter/_tracer.pyx":120 * if self.profiling_mode: * if self.previous is None: * PyEval_SetProfile(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetProfile(self._previousfunc, self.previous) */ - __Pyx_TraceLine(122,15,0,__PYX_ERR(0, 122, __pyx_L1_error)) + __Pyx_TraceLine(120,15,0,__PYX_ERR(0, 120, __pyx_L1_error)) PyEval_SetProfile(NULL, NULL); - /* "hunter/_tracer.pyx":121 + /* "hunter/_tracer.pyx":119 * if self.handler is not None: * if self.profiling_mode: * if self.previous is None: # <<<<<<<<<<<<<< @@ -5986,27 +5528,27 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt goto __pyx_L5; } - /* "hunter/_tracer.pyx":124 + /* "hunter/_tracer.pyx":122 * PyEval_SetProfile(NULL, NULL) * else: * PyEval_SetProfile(self._previousfunc, self.previous) # <<<<<<<<<<<<<< * self.handler = self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(124,19,0,__PYX_ERR(0, 124, __pyx_L1_error)) + __Pyx_TraceLine(122,19,0,__PYX_ERR(0, 122, __pyx_L1_error)) /*else*/ { PyEval_SetProfile(__pyx_v_self->_previousfunc, ((PyObject *)__pyx_v_self->previous)); } __pyx_L5:; - /* "hunter/_tracer.pyx":125 + /* "hunter/_tracer.pyx":123 * else: * PyEval_SetProfile(self._previousfunc, self.previous) * self.handler = self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: */ - __Pyx_TraceLine(125,25,0,__PYX_ERR(0, 125, __pyx_L1_error)) + __Pyx_TraceLine(123,25,0,__PYX_ERR(0, 123, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -6018,47 +5560,47 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":126 + /* "hunter/_tracer.pyx":124 * PyEval_SetProfile(self._previousfunc, self.previous) * self.handler = self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) */ - __Pyx_TraceLine(126,30,0,__PYX_ERR(0, 126, __pyx_L1_error)) + __Pyx_TraceLine(124,30,0,__PYX_ERR(0, 124, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":127 + /* "hunter/_tracer.pyx":125 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.setprofile(self._threading_previous) * self._threading_previous = None */ - __Pyx_TraceLine(127,37,0,__PYX_ERR(0, 127, __pyx_L1_error)) + __Pyx_TraceLine(125,37,0,__PYX_ERR(0, 125, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L7_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 127, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 125, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L7_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":128 + /* "hunter/_tracer.pyx":126 * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) # <<<<<<<<<<<<<< * self._threading_previous = None * else: */ - __Pyx_TraceLine(128,43,0,__PYX_ERR(0, 128, __pyx_L1_error)) + __Pyx_TraceLine(126,43,0,__PYX_ERR(0, 126, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 128, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 126, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 128, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 126, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = 1; @@ -6078,26 +5620,26 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 128, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 126, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":129 + /* "hunter/_tracer.pyx":127 * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) * self._threading_previous = None # <<<<<<<<<<<<<< * else: * if self.previous is None: */ - __Pyx_TraceLine(129,46,0,__PYX_ERR(0, 129, __pyx_L1_error)) + __Pyx_TraceLine(127,46,0,__PYX_ERR(0, 127, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); __pyx_v_self->_threading_previous = Py_None; - /* "hunter/_tracer.pyx":127 + /* "hunter/_tracer.pyx":125 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -6106,7 +5648,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":120 + /* "hunter/_tracer.pyx":118 * def stop(self): * if self.handler is not None: * if self.profiling_mode: # <<<<<<<<<<<<<< @@ -6116,29 +5658,29 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt goto __pyx_L4; } - /* "hunter/_tracer.pyx":131 + /* "hunter/_tracer.pyx":129 * self._threading_previous = None * else: * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetTrace(NULL, NULL) * else: */ - __Pyx_TraceLine(131,49,0,__PYX_ERR(0, 131, __pyx_L1_error)) + __Pyx_TraceLine(129,49,0,__PYX_ERR(0, 129, __pyx_L1_error)) /*else*/ { __pyx_t_1 = (__pyx_v_self->previous == Py_None); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":132 + /* "hunter/_tracer.pyx":130 * else: * if self.previous is None: * PyEval_SetTrace(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetTrace(self._previousfunc, self.previous) */ - __Pyx_TraceLine(132,55,0,__PYX_ERR(0, 132, __pyx_L1_error)) + __Pyx_TraceLine(130,55,0,__PYX_ERR(0, 130, __pyx_L1_error)) PyEval_SetTrace(NULL, NULL); - /* "hunter/_tracer.pyx":131 + /* "hunter/_tracer.pyx":129 * self._threading_previous = None * else: * if self.previous is None: # <<<<<<<<<<<<<< @@ -6148,27 +5690,27 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt goto __pyx_L9; } - /* "hunter/_tracer.pyx":134 + /* "hunter/_tracer.pyx":132 * PyEval_SetTrace(NULL, NULL) * else: * PyEval_SetTrace(self._previousfunc, self.previous) # <<<<<<<<<<<<<< * self.handler = self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(134,59,0,__PYX_ERR(0, 134, __pyx_L1_error)) + __Pyx_TraceLine(132,59,0,__PYX_ERR(0, 132, __pyx_L1_error)) /*else*/ { PyEval_SetTrace(__pyx_v_self->_previousfunc, ((PyObject *)__pyx_v_self->previous)); } __pyx_L9:; - /* "hunter/_tracer.pyx":135 + /* "hunter/_tracer.pyx":133 * else: * PyEval_SetTrace(self._previousfunc, self.previous) * self.handler = self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: */ - __Pyx_TraceLine(135,65,0,__PYX_ERR(0, 135, __pyx_L1_error)) + __Pyx_TraceLine(133,65,0,__PYX_ERR(0, 133, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -6180,47 +5722,47 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":136 + /* "hunter/_tracer.pyx":134 * PyEval_SetTrace(self._previousfunc, self.previous) * self.handler = self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) */ - __Pyx_TraceLine(136,70,0,__PYX_ERR(0, 136, __pyx_L1_error)) + __Pyx_TraceLine(134,70,0,__PYX_ERR(0, 134, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":137 + /* "hunter/_tracer.pyx":135 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.settrace(self._threading_previous) * self._threading_previous = None */ - __Pyx_TraceLine(137,77,0,__PYX_ERR(0, 137, __pyx_L1_error)) + __Pyx_TraceLine(135,77,0,__PYX_ERR(0, 135, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L11_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 137, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 135, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L11_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":138 + /* "hunter/_tracer.pyx":136 * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) # <<<<<<<<<<<<<< * self._threading_previous = None * */ - __Pyx_TraceLine(138,83,0,__PYX_ERR(0, 138, __pyx_L1_error)) + __Pyx_TraceLine(136,83,0,__PYX_ERR(0, 136, __pyx_L1_error)) __pyx_t_6 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 138, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 138, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_7 = 1; @@ -6240,26 +5782,26 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 138, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":139 + /* "hunter/_tracer.pyx":137 * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) * self._threading_previous = None # <<<<<<<<<<<<<< * * def __enter__(self): */ - __Pyx_TraceLine(139,86,0,__PYX_ERR(0, 139, __pyx_L1_error)) + __Pyx_TraceLine(137,86,0,__PYX_ERR(0, 137, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); __pyx_v_self->_threading_previous = Py_None; - /* "hunter/_tracer.pyx":137 + /* "hunter/_tracer.pyx":135 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -6270,7 +5812,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt } __pyx_L4:; - /* "hunter/_tracer.pyx":119 + /* "hunter/_tracer.pyx":117 * * def stop(self): * if self.handler is not None: # <<<<<<<<<<<<<< @@ -6279,7 +5821,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":118 + /* "hunter/_tracer.pyx":116 * return self * * def stop(self): # <<<<<<<<<<<<<< @@ -6289,7 +5831,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 116, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); @@ -6300,7 +5842,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 116, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.stop", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6311,7 +5853,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt return __pyx_r; } -/* "hunter/_tracer.pyx":141 +/* "hunter/_tracer.pyx":139 * self._threading_previous = None * * def __enter__(self): # <<<<<<<<<<<<<< @@ -6370,23 +5912,23 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) __Pyx_RefNannySetupContext("__enter__", 0); - __Pyx_TraceStartFunc("__enter__", __pyx_f[0], 141, 0, 0, 0, __PYX_ERR(0, 141, __pyx_L1_error)); + __Pyx_TraceStartFunc("__enter__", __pyx_f[0], 139, 0, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); - /* "hunter/_tracer.pyx":142 + /* "hunter/_tracer.pyx":140 * * def __enter__(self): * return self # <<<<<<<<<<<<<< * * def __exit__(self, exc_type, exc_val, exc_tb): */ - __Pyx_TraceLine(142,1,0,__PYX_ERR(0, 142, __pyx_L1_error)) + __Pyx_TraceLine(140,1,0,__PYX_ERR(0, 140, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 140, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":141 + /* "hunter/_tracer.pyx":139 * self._threading_previous = None * * def __enter__(self): # <<<<<<<<<<<<<< @@ -6400,7 +5942,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 141, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__enter__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6411,7 +5953,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_tracer.pyx":144 +/* "hunter/_tracer.pyx":142 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< @@ -6459,38 +6001,38 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_exc_type,&__pyx_mstate_global->__pyx_n_u_exc_val,&__pyx_mstate_global->__pyx_n_u_exc_tb,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 144, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 142, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 144, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 142, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 144, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 142, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 144, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 142, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__exit__", 0) < 0) __PYX_ERR(0, 144, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__exit__", 0) < 0) __PYX_ERR(0, 142, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, i); __PYX_ERR(0, 144, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, i); __PYX_ERR(0, 142, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 144, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 142, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 144, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 142, __pyx_L3_error) values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 144, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 142, __pyx_L3_error) } __pyx_v_exc_type = values[0]; __pyx_v_exc_val = values[1]; @@ -6498,7 +6040,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 144, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 142, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -6531,14 +6073,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) __Pyx_RefNannySetupContext("__exit__", 0); - __Pyx_TraceStartFunc("__exit__", __pyx_f[0], 144, 0, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); + __Pyx_TraceStartFunc("__exit__", __pyx_f[0], 142, 0, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); - /* "hunter/_tracer.pyx":145 + /* "hunter/_tracer.pyx":143 * * def __exit__(self, exc_type, exc_val, exc_tb): * self.stop() # <<<<<<<<<<<<<< */ - __Pyx_TraceLine(145,1,0,__PYX_ERR(0, 145, __pyx_L1_error)) + __Pyx_TraceLine(143,1,0,__PYX_ERR(0, 143, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; @@ -6546,12 +6088,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":144 + /* "hunter/_tracer.pyx":142 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< @@ -6560,7 +6102,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); @@ -6569,7 +6111,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6580,7 +6122,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_tracer.pxd":38 +/* "hunter/_tracer.pxd":29 * cdef class Tracer: * cdef: * readonly object handler # <<<<<<<<<<<<<< @@ -6612,11 +6154,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 38, 0, 0, 0, __PYX_ERR(3, 38, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 29, 0, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->handler); __pyx_r = __pyx_v_self->handler; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 38, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6625,7 +6167,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 38, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.handler.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6636,7 +6178,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx return __pyx_r; } -/* "hunter/_tracer.pxd":39 +/* "hunter/_tracer.pxd":30 * cdef: * readonly object handler * readonly object previous # <<<<<<<<<<<<<< @@ -6668,11 +6210,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 39, 0, 0, 0, __PYX_ERR(3, 39, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 30, 0, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->previous); __pyx_r = __pyx_v_self->previous; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 39, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6681,7 +6223,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 39, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.previous.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6692,7 +6234,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py return __pyx_r; } -/* "hunter/_tracer.pxd":40 +/* "hunter/_tracer.pxd":31 * readonly object handler * readonly object previous * readonly object threading_support # <<<<<<<<<<<<<< @@ -6724,11 +6266,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 40, 0, 0, 0, __PYX_ERR(3, 40, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 31, 0, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->threading_support); __pyx_r = __pyx_v_self->threading_support; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 40, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6737,7 +6279,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 40, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.threading_support.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6748,7 +6290,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s return __pyx_r; } -/* "hunter/_tracer.pxd":41 +/* "hunter/_tracer.pxd":32 * readonly object previous * readonly object threading_support * readonly bint profiling_mode # <<<<<<<<<<<<<< @@ -6781,13 +6323,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 41, 0, 0, 0, __PYX_ERR(3, 41, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 32, 0, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 41, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 41, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6797,7 +6339,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 41, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.profiling_mode.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6808,7 +6350,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru return __pyx_r; } -/* "hunter/_tracer.pxd":42 +/* "hunter/_tracer.pxd":33 * readonly object threading_support * readonly bint profiling_mode * readonly int depth # <<<<<<<<<<<<<< @@ -6841,13 +6383,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 42, 0, 0, 0, __PYX_ERR(3, 42, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 33, 0, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 42, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 33, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 42, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6857,7 +6399,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 42, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6868,7 +6410,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_tracer.pxd":43 +/* "hunter/_tracer.pxd":34 * readonly bint profiling_mode * readonly int depth * readonly int calls # <<<<<<<<<<<<<< @@ -6901,13 +6443,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 43, 0, 0, 0, __PYX_ERR(3, 43, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 34, 0, 0, 0, __PYX_ERR(2, 34, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 43, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 34, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 43, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 34, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6917,7 +6459,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 43, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 34, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6928,7 +6470,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_tracer.pxd":47 +/* "hunter/_tracer.pxd":38 * object __weakref__ * * readonly object _threading_previous # <<<<<<<<<<<<<< @@ -6959,11 +6501,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[3], 47, 0, 0, 0, __PYX_ERR(3, 47, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 38, 0, 0, 0, __PYX_ERR(2, 38, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threading_previous); __pyx_r = __pyx_v_self->_threading_previous; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(3, 47, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 38, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6972,7 +6514,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(3, 47, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 38, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer._threading_previous.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7355,9 +6897,9 @@ static PyMemberDef __pyx_type_6hunter_7_tracer_Tracer_members[] = { }; #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 #if defined(__GNUC__) || defined(__clang__) -#warning "src/hunter/_tracer.pxd:45:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9." +#warning "src/hunter/_tracer.pxd:36:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9." #elif defined(_MSC_VER) -#pragma message("src/hunter/_tracer.pxd:45:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9.") +#pragma message("src/hunter/_tracer.pxd:36:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9.") #endif #endif static PyType_Slot __pyx_type_6hunter_7_tracer_Tracer_slots[] = { @@ -7514,7 +7056,7 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 22, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 @@ -7524,28 +7066,28 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(3, 22, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(2, 13, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 58, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 56, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = &__pyx_type_6hunter_7_tracer_Tracer; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro == PyObject_GenericGetAttr)) { __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Tracer, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Tracer, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) #if CYTHON_USE_TYPE_SLOTS if (__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset == 0) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset = offsetof(struct __pyx_obj_6hunter_7_tracer_Tracer, __weakref__); #endif - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7559,12 +7101,13 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannyDeclarations CYTHON_UNUSED_VAR(__pyx_mstate); PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); /*--- Type import code ---*/ - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 9, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 @@ -7574,35 +7117,22 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 8, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyLongObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyLongObject), - #elif CYTHON_COMPILING_IN_LIMITED_API - 0, 0, - #else - sizeof(PyLongObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyLongObject), - #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 16, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", + __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyComplexObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - 0, 0, + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), #else - sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyComplexObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 16, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 11, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._event", "Event", + __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(4, 7, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 39, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._event", "Event", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7610,12 +7140,13 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(7, 11, __pyx_L1_error) - __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(7, 11, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(4, 39, __pyx_L1_error) + __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(4, 39, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Query", + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = PyImport_ImportModule("hunter._predicates"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 7, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Query", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7623,8 +7154,8 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(8, 7, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "And", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(5, 7, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "And", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7632,8 +7163,8 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(8, 22, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Or", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(5, 22, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Or", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7641,8 +7172,8 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(8, 28, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Not", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(5, 28, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Not", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7650,8 +7181,8 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(8, 34, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "When", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(5, 34, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "When", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7659,8 +7190,8 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(8, 40, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "From", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(5, 40, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "From", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7668,8 +7199,8 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(8, 47, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._predicates", "Backlog", + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(5, 47, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Backlog", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), #elif CYTHON_COMPILING_IN_LIMITED_API @@ -7677,12 +7208,13 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(8, 57, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(5, 57, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); __Pyx_RefNannyFinishContext(); return -1; } @@ -7724,7 +7256,7 @@ static PyModuleDef_Slot __pyx_moduledef_slots[] = { {Py_mod_create, (void*)__pyx_pymod_create}, {Py_mod_exec, (void*)__pyx_pymod_exec__tracer}, #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - {Py_mod_gil, Py_MOD_GIL_USED}, + {Py_mod_gil, Py_MOD_GIL_NOT_USED}, #endif #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED}, @@ -7925,7 +7457,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec__tracer(PyObject *__pyx_pyinit_mod __pyx_m = __pyx_t_1; #endif #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING - PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED); + PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_NOT_USED); #endif __pyx_mstate = __pyx_mstate_global; CYTHON_UNUSED_VAR(__pyx_t_1); @@ -8002,7 +7534,7 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); __Pyx_TraceStartFunc("PyInit__tracer", __pyx_f[0], 1, 1, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "hunter/_tracer.pyx":2 - * # cython: linetrace=True, language_level=3str + * # cython: linetrace=True, language_level=3str, freethreading_compatible=True * import threading # <<<<<<<<<<<<<< * import traceback * @@ -8014,11 +7546,11 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_tracer.pyx":3 - * # cython: linetrace=True, language_level=3str + * # cython: linetrace=True, language_level=3str, freethreading_compatible=True * import threading * import traceback # <<<<<<<<<<<<<< * - * from cpython cimport pystate + * from cpython.pystate cimport PyThreadState_Get */ __Pyx_TraceLine(3,4,0,__PYX_ERR(0, 3, __pyx_L1_error)) __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_traceback, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) @@ -8026,110 +7558,110 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_traceback, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":11 + /* "hunter/_tracer.pyx":10 * from ._predicates cimport fast_call * * import hunter # <<<<<<<<<<<<<< * * __all__ = 'Tracer', */ - __Pyx_TraceLine(11,9,0,__PYX_ERR(0, 11, __pyx_L1_error)) - __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_hunter, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 11, __pyx_L1_error) + __Pyx_TraceLine(10,9,0,__PYX_ERR(0, 10, __pyx_L1_error)) + __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_mstate_global->__pyx_n_u_hunter, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_hunter, __pyx_t_2) < 0) __PYX_ERR(0, 11, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_hunter, __pyx_t_2) < 0) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":13 + /* "hunter/_tracer.pyx":12 * import hunter * * __all__ = 'Tracer', # <<<<<<<<<<<<<< * * cdef dict KIND_INTS = { */ - __Pyx_TraceLine(13,11,0,__PYX_ERR(0, 13, __pyx_L1_error)) - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[0]) < 0) __PYX_ERR(0, 13, __pyx_L1_error) + __Pyx_TraceLine(12,11,0,__PYX_ERR(0, 12, __pyx_L1_error)) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[0]) < 0) __PYX_ERR(0, 12, __pyx_L1_error) - /* "hunter/_tracer.pyx":16 + /* "hunter/_tracer.pyx":15 * * cdef dict KIND_INTS = { * 'call': 0, # <<<<<<<<<<<<<< * 'exception': 1, * 'line': 2, */ - __Pyx_TraceLine(16,13,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) + __Pyx_TraceLine(15,13,0,__PYX_ERR(0, 15, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_int_0) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_int_1) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_line, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_int_3) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_call, __pyx_mstate_global->__pyx_int_4) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_exception, __pyx_mstate_global->__pyx_int_5) < 0) __PYX_ERR(0, 16, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_return, __pyx_mstate_global->__pyx_int_6) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_call, __pyx_mstate_global->__pyx_int_0) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exception, __pyx_mstate_global->__pyx_int_1) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_line, __pyx_mstate_global->__pyx_int_2) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_return, __pyx_mstate_global->__pyx_int_3) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_call, __pyx_mstate_global->__pyx_int_4) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_exception, __pyx_mstate_global->__pyx_int_5) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_c_return, __pyx_mstate_global->__pyx_int_6) < 0) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_XGOTREF(__pyx_v_6hunter_7_tracer_KIND_INTS); __Pyx_DECREF_SET(__pyx_v_6hunter_7_tracer_KIND_INTS, ((PyObject*)__pyx_t_2)); __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":25 + /* "hunter/_tracer.pyx":24 * } * - * cdef inline int trace_func(Tracer self, FrameType frame, int kind, PyObject* arg) except -1: # <<<<<<<<<<<<<< - * if frame.f_trace is not self: - * frame.f_trace = self + * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: # <<<<<<<<<<<<<< + * cdef Tracer self = tracer + * */ - __Pyx_TraceLine(25,27,0,__PYX_ERR(0, 25, __pyx_L1_error)) + __Pyx_TraceLine(24,27,0,__PYX_ERR(0, 24, __pyx_L1_error)) - /* "hunter/_tracer.pyx":90 + /* "hunter/_tracer.pyx":88 * return self * * def trace(self, predicate): # <<<<<<<<<<<<<< * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() */ - __Pyx_TraceLine(90,40,0,__PYX_ERR(0, 90, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_trace, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_TraceLine(88,40,0,__PYX_ERR(0, 88, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_trace, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_trace, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_trace, __pyx_t_2) < 0) __PYX_ERR(0, 88, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":118 + /* "hunter/_tracer.pyx":116 * return self * * def stop(self): # <<<<<<<<<<<<<< * if self.handler is not None: * if self.profiling_mode: */ - __Pyx_TraceLine(118,41,0,__PYX_ERR(0, 118, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_stop, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) + __Pyx_TraceLine(116,41,0,__PYX_ERR(0, 116, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_stop, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_stop, __pyx_t_2) < 0) __PYX_ERR(0, 118, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_stop, __pyx_t_2) < 0) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":141 + /* "hunter/_tracer.pyx":139 * self._threading_previous = None * * def __enter__(self): # <<<<<<<<<<<<<< * return self * */ - __Pyx_TraceLine(141,42,0,__PYX_ERR(0, 141, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___enter, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) + __Pyx_TraceLine(139,42,0,__PYX_ERR(0, 139, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___enter, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_enter, __pyx_t_2) < 0) __PYX_ERR(0, 141, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_enter, __pyx_t_2) < 0) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":144 + /* "hunter/_tracer.pyx":142 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< * self.stop() */ - __Pyx_TraceLine(144,43,0,__PYX_ERR(0, 144, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___exit, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_TraceLine(142,43,0,__PYX_ERR(0, 142, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___exit, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_exit, __pyx_t_2) < 0) __PYX_ERR(0, 144, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_exit, __pyx_t_2) < 0) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":1 @@ -8156,7 +7688,7 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "hunter/_tracer.pyx":1 - * # cython: linetrace=True, language_level=3str # <<<<<<<<<<<<<< + * # cython: linetrace=True, language_level=3str, freethreading_compatible=True # <<<<<<<<<<<<<< * import threading * import traceback */ @@ -8267,7 +7799,6 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_exc_val, sizeof(__pyx_k_exc_val), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_val */ {__pyx_k_exception, sizeof(__pyx_k_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exception */ {__pyx_k_exit, sizeof(__pyx_k_exit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exit */ - {__pyx_k_f_trace, sizeof(__pyx_k_f_trace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f_trace */ {__pyx_k_failed, sizeof(__pyx_k_failed), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_failed */ {__pyx_k_file, sizeof(__pyx_k_file), 0, 1, 1}, /* PyObject cname: __pyx_n_u_file */ {__pyx_k_frame, sizeof(__pyx_k_frame), 0, 1, 1}, /* PyObject cname: __pyx_n_u_frame */ @@ -8324,6 +7855,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_trace_func, sizeof(__pyx_k_trace_func), 0, 1, 1}, /* PyObject cname: __pyx_n_u_trace_func */ {__pyx_k_trace_hook, sizeof(__pyx_k_trace_hook), 0, 1, 1}, /* PyObject cname: __pyx_n_u_trace_hook */ {__pyx_k_traceback, sizeof(__pyx_k_traceback), 0, 1, 1}, /* PyObject cname: __pyx_n_u_traceback */ + {__pyx_k_tracer, sizeof(__pyx_k_tracer), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tracer */ {__pyx_k_write, sizeof(__pyx_k_write), 0, 1, 1}, /* PyObject cname: __pyx_n_u_write */ {__pyx_k_x, sizeof(__pyx_k_x), 0, 1, 1}, /* PyObject cname: __pyx_n_u_x */ {0, 0, 0, 0, 0} @@ -8335,7 +7867,7 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, c static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); - __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_id); if (!__pyx_builtin_id) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_id); if (!__pyx_builtin_id) __PYX_ERR(0, 74, __pyx_L1_error) __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) return 0; __pyx_L1_error:; @@ -8348,14 +7880,14 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "hunter/_tracer.pyx":13 + /* "hunter/_tracer.pyx":12 * import hunter * * __all__ = 'Tracer', # <<<<<<<<<<<<<< * * cdef dict KIND_INTS = { */ - __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Tracer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Tracer); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); __Pyx_RefNannyFinishContext(); @@ -8408,82 +7940,82 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { PyObject* tuple_dedup_map = PyDict_New(); if (unlikely(!tuple_dedup_map)) return -1; { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 25, 208}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_KIND_INTS}; - __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace_func, __pyx_k_ZZ_uIWA_d_xs_4q_QfA_1F_q_uCr_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 24, 201}; + PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_tracer, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_KIND_INTS}; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace_func, __pyx_k_z_d_xs_4q_QfA_1F_q_uCr_T_Ja_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 59, 68}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 57, 68}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_profiling_mode}; __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_cinit, __pyx_k_q_Kq_L_Q_1_a_IQ_IQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 69, 30}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 67, 30}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state}; __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_dealloc, __pyx_k_A_5Q_5_C_1_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 74, 83}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 72, 83}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_aq_4y_Q_is_D_Q_j_Q_j_T_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 84, 49}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 82, 52}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg}; - __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_6_Q_5_1_1_3_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_v_6gYawlZ_5_1_1L_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 90, 238}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 88, 232}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicate, __pyx_mstate->__pyx_n_u_state}; __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace, __pyx_k_A_Kq_5Q_4q_t_c_c_Q_7_Oq_AQ_uN_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 118, 204}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 116, 204}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_stop, __pyx_k_A_4y_q_t1_4z_A_QfA_Qd_d_Kt_q_Q_4, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 141, 7}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 139, 7}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_enter, __pyx_k_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 144, 9}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 142, 9}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_exc_type, __pyx_mstate->__pyx_n_u_exc_val, __pyx_mstate->__pyx_n_u_exc_tb}; __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_exit, __pyx_k_A_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 38, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 29, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 39, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 30, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 40, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 31, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 41, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 32, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 42, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 33, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 34, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 47, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 38, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; } @@ -8831,16 +8363,6 @@ static int __Pyx_TraceSetupAndCall(PyCodeObject** code, #endif #endif -/* PyObjectSetAttrStr */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) { - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_setattro)) - return tp->tp_setattro(obj, attr_name, value); - return PyObject_SetAttr(obj, attr_name, value); -} -#endif - /* PyFunctionFastCall */ #if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na, @@ -9522,6 +9044,42 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, } #endif +/* WriteUnraisableException */ +static void __Pyx_WriteUnraisable(const char *name, int clineno, + int lineno, const char *filename, + int full_traceback, int nogil) { + PyObject *old_exc, *old_val, *old_tb; + PyObject *ctx; + __Pyx_PyThreadState_declare + PyGILState_STATE state; + if (nogil) + state = PyGILState_Ensure(); + else state = (PyGILState_STATE)0; + CYTHON_UNUSED_VAR(clineno); + CYTHON_UNUSED_VAR(lineno); + CYTHON_UNUSED_VAR(filename); + CYTHON_MAYBE_UNUSED_VAR(nogil); + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&old_exc, &old_val, &old_tb); + if (full_traceback) { + Py_XINCREF(old_exc); + Py_XINCREF(old_val); + Py_XINCREF(old_tb); + __Pyx_ErrRestore(old_exc, old_val, old_tb); + PyErr_PrintEx(0); + } + ctx = PyUnicode_FromString(name); + __Pyx_ErrRestore(old_exc, old_val, old_tb); + if (!ctx) { + PyErr_WriteUnraisable(Py_None); + } else { + PyErr_WriteUnraisable(ctx); + Py_DECREF(ctx); + } + if (nogil) + PyGILState_Release(state); +} + /* TupleAndListFromArray */ #if !CYTHON_COMPILING_IN_CPYTHON && CYTHON_METH_FASTCALL static CYTHON_INLINE PyObject * @@ -10310,42 +9868,6 @@ static void __Pyx_RaiseArgtupleInvalid( (num_expected == 1) ? "" : "s", num_found); } -/* WriteUnraisableException */ -static void __Pyx_WriteUnraisable(const char *name, int clineno, - int lineno, const char *filename, - int full_traceback, int nogil) { - PyObject *old_exc, *old_val, *old_tb; - PyObject *ctx; - __Pyx_PyThreadState_declare - PyGILState_STATE state; - if (nogil) - state = PyGILState_Ensure(); - else state = (PyGILState_STATE)0; - CYTHON_UNUSED_VAR(clineno); - CYTHON_UNUSED_VAR(lineno); - CYTHON_UNUSED_VAR(filename); - CYTHON_MAYBE_UNUSED_VAR(nogil); - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&old_exc, &old_val, &old_tb); - if (full_traceback) { - Py_XINCREF(old_exc); - Py_XINCREF(old_val); - Py_XINCREF(old_tb); - __Pyx_ErrRestore(old_exc, old_val, old_tb); - PyErr_PrintEx(0); - } - ctx = PyUnicode_FromString(name); - __Pyx_ErrRestore(old_exc, old_val, old_tb); - if (!ctx) { - PyErr_WriteUnraisable(Py_None); - } else { - PyErr_WriteUnraisable(ctx); - Py_DECREF(ctx); - } - if (nogil) - PyGILState_Release(state); -} - /* PyObjectCallOneArg */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { PyObject *args[2] = {NULL, arg}; From 9e02aaab5caa081156a01b2b4a729204a6df396e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 8 Jul 2025 18:43:49 +0300 Subject: [PATCH 34/80] Add actions for freethreaded pythons. --- .github/workflows/github-actions.yml | 609 +++++++++++------- .../.github/workflows/github-actions.yml | 17 +- tox.ini | 3 +- 3 files changed, 396 insertions(+), 233 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 6d8321f..094b3c1 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -19,148 +19,8 @@ jobs: toxpython: 'python3.11' tox_env: 'docs' os: 'ubuntu-latest' - - name: 'py38-pure-cover (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py38-pure-cover (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py38-pure-cover (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'py38-pure-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py38-pure-nocov (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py38-pure-nocov (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-pure-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py38-pure-nocov (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'py38-pure-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py38-cython-cover (ubuntu/x86_64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'py38-cython-cover (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'py38-cython-cover (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'py38-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'py38-cython-nocov (ubuntu/x86_64/manylinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp38-*manylinux*' - artifact: 'ubuntu-cp38-x86_64-manylinux' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (ubuntu/x86_64/musllinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: 'cp38-*musllinux*' - artifact: 'ubuntu-cp38-x86_64-musllinux' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (ubuntu/aarch64/manylinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp38-*manylinux*' - artifact: 'ubuntu-cp38-aarch64-manylinux' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (ubuntu/aarch64/musllinux)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'aarch64' - cibw_build: 'cp38-*musllinux*' - artifact: 'ubuntu-cp38-aarch64-musllinux' - os: 'ubuntu-latest' - - name: 'py38-cython-nocov (windows/AMD64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: 'cp38-*' - artifact: 'windows-cp38-AMD64-default' - os: 'windows-latest' - - name: 'py38-cython-nocov (windows/x86)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'x86' - tox_env: 'py38-cython-nocov' - cibw_arch: 'x86' - cibw_build: 'cp38-*' - artifact: 'windows-cp38-x86-default' - os: 'windows-latest' - - name: 'py38-cython-nocov (macos/arm64)' - python: '3.8' - toxpython: 'python3.8' - python_arch: 'arm64' - tox_env: 'py38-cython-nocov' - cibw_arch: 'arm64' - cibw_build: 'cp38-*' - artifact: 'macos-cp38-arm64-default' - os: 'macos-latest' - name: 'py39-pure-cover (ubuntu/x86_64)' + artifact: 'py39-pure-ubuntu-x86_64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' @@ -170,6 +30,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py39-pure-cover (windows/AMD64)' + artifact: 'py39-pure-windows-AMD64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' @@ -179,6 +40,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py39-pure-cover (macos/arm64)' + artifact: 'py39-pure-macos-arm64' python: '3.9' toxpython: 'python3.9' python_arch: 'arm64' @@ -188,6 +50,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py39-pure-nocov (ubuntu/x86_64)' + artifact: 'py39-pure-ubuntu-x86_64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' @@ -196,6 +59,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py39-pure-nocov (windows/AMD64)' + artifact: 'py39-pure-windows-AMD64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' @@ -204,6 +68,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py39-pure-nocov (macos/arm64)' + artifact: 'py39-pure-macos-arm64' python: '3.9' toxpython: 'python3.9' python_arch: 'arm64' @@ -212,6 +77,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py39-cython-cover (ubuntu/x86_64)' + artifact: 'py39-cython-ubuntu-x86_64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' @@ -221,6 +87,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py39-cython-cover (windows/AMD64)' + artifact: 'py39-cython-windows-AMD64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' @@ -230,6 +97,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py39-cython-cover (macos/arm64)' + artifact: 'py39-cython-macos-arm64' python: '3.9' toxpython: 'python3.9' python_arch: 'arm64' @@ -239,69 +107,77 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py39-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py39-cython-ubuntu-x86_64-manylinux' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp39-*manylinux*' - artifact: 'ubuntu-cp39-x86_64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py39-cython-ubuntu-x86_64-musllinux' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp39-*musllinux*' - artifact: 'ubuntu-cp39-x86_64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py39-cython-ubuntu-aarch64-manylinux' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp39-*manylinux*' - artifact: 'ubuntu-cp39-aarch64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py39-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py39-cython-ubuntu-aarch64-musllinux' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp39-*musllinux*' - artifact: 'ubuntu-cp39-aarch64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py39-cython-nocov (windows/AMD64)' + artifact: 'py39-cython-windows-AMD64' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp39-*' - artifact: 'windows-cp39-AMD64-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py39-cython-nocov (windows/x86)' + artifact: 'py39-cython-windows-x86' python: '3.9' toxpython: 'python3.9' python_arch: 'x86' tox_env: 'py39-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp39-*' - artifact: 'windows-cp39-x86-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py39-cython-nocov (macos/arm64)' + artifact: 'py39-cython-macos-arm64' python: '3.9' toxpython: 'python3.9' python_arch: 'arm64' tox_env: 'py39-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp39-*' - artifact: 'macos-cp39-arm64-default' + cibw_ft: 'false' os: 'macos-latest' - name: 'py310-pure-cover (ubuntu/x86_64)' + artifact: 'py310-pure-ubuntu-x86_64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' @@ -311,6 +187,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py310-pure-cover (windows/AMD64)' + artifact: 'py310-pure-windows-AMD64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' @@ -320,6 +197,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py310-pure-cover (macos/arm64)' + artifact: 'py310-pure-macos-arm64' python: '3.10' toxpython: 'python3.10' python_arch: 'arm64' @@ -329,6 +207,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py310-pure-nocov (ubuntu/x86_64)' + artifact: 'py310-pure-ubuntu-x86_64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' @@ -337,6 +216,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py310-pure-nocov (windows/AMD64)' + artifact: 'py310-pure-windows-AMD64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' @@ -345,6 +225,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py310-pure-nocov (macos/arm64)' + artifact: 'py310-pure-macos-arm64' python: '3.10' toxpython: 'python3.10' python_arch: 'arm64' @@ -353,6 +234,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py310-cython-cover (ubuntu/x86_64)' + artifact: 'py310-cython-ubuntu-x86_64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' @@ -362,6 +244,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py310-cython-cover (windows/AMD64)' + artifact: 'py310-cython-windows-AMD64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' @@ -371,6 +254,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py310-cython-cover (macos/arm64)' + artifact: 'py310-cython-macos-arm64' python: '3.10' toxpython: 'python3.10' python_arch: 'arm64' @@ -380,69 +264,77 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py310-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py310-cython-ubuntu-x86_64-manylinux' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp310-*manylinux*' - artifact: 'ubuntu-cp310-x86_64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py310-cython-ubuntu-x86_64-musllinux' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp310-*musllinux*' - artifact: 'ubuntu-cp310-x86_64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py310-cython-ubuntu-aarch64-manylinux' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp310-*manylinux*' - artifact: 'ubuntu-cp310-aarch64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py310-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py310-cython-ubuntu-aarch64-musllinux' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp310-*musllinux*' - artifact: 'ubuntu-cp310-aarch64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py310-cython-nocov (windows/AMD64)' + artifact: 'py310-cython-windows-AMD64' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp310-*' - artifact: 'windows-cp310-AMD64-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py310-cython-nocov (windows/x86)' + artifact: 'py310-cython-windows-x86' python: '3.10' toxpython: 'python3.10' python_arch: 'x86' tox_env: 'py310-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp310-*' - artifact: 'windows-cp310-x86-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py310-cython-nocov (macos/arm64)' + artifact: 'py310-cython-macos-arm64' python: '3.10' toxpython: 'python3.10' python_arch: 'arm64' tox_env: 'py310-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp310-*' - artifact: 'macos-cp310-arm64-default' + cibw_ft: 'false' os: 'macos-latest' - name: 'py311-pure-cover (ubuntu/x86_64)' + artifact: 'py311-pure-ubuntu-x86_64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' @@ -452,6 +344,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py311-pure-cover (windows/AMD64)' + artifact: 'py311-pure-windows-AMD64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' @@ -461,6 +354,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py311-pure-cover (macos/arm64)' + artifact: 'py311-pure-macos-arm64' python: '3.11' toxpython: 'python3.11' python_arch: 'arm64' @@ -470,6 +364,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py311-pure-nocov (ubuntu/x86_64)' + artifact: 'py311-pure-ubuntu-x86_64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' @@ -478,6 +373,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py311-pure-nocov (windows/AMD64)' + artifact: 'py311-pure-windows-AMD64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' @@ -486,6 +382,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py311-pure-nocov (macos/arm64)' + artifact: 'py311-pure-macos-arm64' python: '3.11' toxpython: 'python3.11' python_arch: 'arm64' @@ -494,6 +391,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py311-cython-cover (ubuntu/x86_64)' + artifact: 'py311-cython-ubuntu-x86_64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' @@ -503,6 +401,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py311-cython-cover (windows/AMD64)' + artifact: 'py311-cython-windows-AMD64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' @@ -512,6 +411,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py311-cython-cover (macos/arm64)' + artifact: 'py311-cython-macos-arm64' python: '3.11' toxpython: 'python3.11' python_arch: 'arm64' @@ -521,69 +421,77 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py311-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py311-cython-ubuntu-x86_64-manylinux' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp311-*manylinux*' - artifact: 'ubuntu-cp311-x86_64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py311-cython-ubuntu-x86_64-musllinux' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp311-*musllinux*' - artifact: 'ubuntu-cp311-x86_64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py311-cython-ubuntu-aarch64-manylinux' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp311-*manylinux*' - artifact: 'ubuntu-cp311-aarch64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py311-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py311-cython-ubuntu-aarch64-musllinux' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp311-*musllinux*' - artifact: 'ubuntu-cp311-aarch64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py311-cython-nocov (windows/AMD64)' + artifact: 'py311-cython-windows-AMD64' python: '3.11' toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp311-*' - artifact: 'windows-cp311-AMD64-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py311-cython-nocov (windows/x86)' + artifact: 'py311-cython-windows-x86' python: '3.11' toxpython: 'python3.11' python_arch: 'x86' tox_env: 'py311-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp311-*' - artifact: 'windows-cp311-x86-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py311-cython-nocov (macos/arm64)' + artifact: 'py311-cython-macos-arm64' python: '3.11' toxpython: 'python3.11' python_arch: 'arm64' tox_env: 'py311-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp311-*' - artifact: 'macos-cp311-arm64-default' + cibw_ft: 'false' os: 'macos-latest' - name: 'py312-pure-cover (ubuntu/x86_64)' + artifact: 'py312-pure-ubuntu-x86_64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' @@ -593,6 +501,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py312-pure-cover (windows/AMD64)' + artifact: 'py312-pure-windows-AMD64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' @@ -602,6 +511,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py312-pure-cover (macos/arm64)' + artifact: 'py312-pure-macos-arm64' python: '3.12' toxpython: 'python3.12' python_arch: 'arm64' @@ -611,6 +521,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py312-pure-nocov (ubuntu/x86_64)' + artifact: 'py312-pure-ubuntu-x86_64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' @@ -619,6 +530,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py312-pure-nocov (windows/AMD64)' + artifact: 'py312-pure-windows-AMD64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' @@ -627,6 +539,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py312-pure-nocov (macos/arm64)' + artifact: 'py312-pure-macos-arm64' python: '3.12' toxpython: 'python3.12' python_arch: 'arm64' @@ -635,6 +548,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py312-cython-cover (ubuntu/x86_64)' + artifact: 'py312-cython-ubuntu-x86_64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' @@ -644,6 +558,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'py312-cython-cover (windows/AMD64)' + artifact: 'py312-cython-windows-AMD64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' @@ -653,6 +568,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'py312-cython-cover (macos/arm64)' + artifact: 'py312-cython-macos-arm64' python: '3.12' toxpython: 'python3.12' python_arch: 'arm64' @@ -662,171 +578,391 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'py312-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py312-cython-ubuntu-x86_64-manylinux' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp312-*manylinux*' - artifact: 'ubuntu-cp312-x86_64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py312-cython-ubuntu-x86_64-musllinux' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp312-*musllinux*' - artifact: 'ubuntu-cp312-x86_64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py312-cython-ubuntu-aarch64-manylinux' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp312-*manylinux*' - artifact: 'ubuntu-cp312-aarch64-manylinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py312-cython-ubuntu-aarch64-musllinux' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp312-*musllinux*' - artifact: 'ubuntu-cp312-aarch64-musllinux' + cibw_ft: 'false' os: 'ubuntu-latest' - name: 'py312-cython-nocov (windows/AMD64)' + artifact: 'py312-cython-windows-AMD64' python: '3.12' toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp312-*' - artifact: 'windows-cp312-AMD64-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py312-cython-nocov (windows/x86)' + artifact: 'py312-cython-windows-x86' python: '3.12' toxpython: 'python3.12' python_arch: 'x86' tox_env: 'py312-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp312-*' - artifact: 'windows-cp312-x86-default' + cibw_ft: 'false' os: 'windows-latest' - name: 'py312-cython-nocov (macos/arm64)' + artifact: 'py312-cython-macos-arm64' python: '3.12' toxpython: 'python3.12' python_arch: 'arm64' tox_env: 'py312-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp312-*' - artifact: 'macos-cp312-arm64-default' + cibw_ft: 'false' os: 'macos-latest' - - name: 'pypy38-pure-cover (ubuntu/x86_64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-pure-cover (ubuntu/x86_64)' + artifact: 'py313-pure-ubuntu-x86_64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-pure-cover' + tox_env: 'py313-pure-cover' cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'pypy38-pure-cover (windows/AMD64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-pure-cover (windows/AMD64)' + artifact: 'py313-pure-windows-AMD64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-pure-cover' + tox_env: 'py313-pure-cover' cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-pure-cover (macos/arm64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-pure-cover (macos/arm64)' + artifact: 'py313-pure-macos-arm64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'arm64' - tox_env: 'pypy38-pure-cover' + tox_env: 'py313-pure-cover' cover: true cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'pypy38-pure-nocov (ubuntu/x86_64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-pure-nocov (ubuntu/x86_64)' + artifact: 'py313-pure-ubuntu-x86_64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-pure-nocov' + tox_env: 'py313-pure-nocov' cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'pypy38-pure-nocov (windows/AMD64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-pure-nocov (windows/AMD64)' + artifact: 'py313-pure-windows-AMD64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-pure-nocov' + tox_env: 'py313-pure-nocov' cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-pure-nocov (macos/arm64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-pure-nocov (macos/arm64)' + artifact: 'py313-pure-macos-arm64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'arm64' - tox_env: 'pypy38-pure-nocov' + tox_env: 'py313-pure-nocov' cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'pypy38-cython-cover (ubuntu/x86_64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-cython-cover (ubuntu/x86_64)' + artifact: 'py313-cython-ubuntu-x86_64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-cython-cover' + tox_env: 'py313-cython-cover' cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'pypy38-cython-cover (windows/AMD64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-cython-cover (windows/AMD64)' + artifact: 'py313-cython-windows-AMD64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-cython-cover' + tox_env: 'py313-cython-cover' cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'pypy38-cython-cover (macos/arm64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-cython-cover (macos/arm64)' + artifact: 'py313-cython-macos-arm64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'arm64' - tox_env: 'pypy38-cython-cover' + tox_env: 'py313-cython-cover' cover: true cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'pypy38-cython-nocov (ubuntu/x86_64/manylinux)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py313-cython-ubuntu-x86_64-manylinux' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-cython-nocov' + tox_env: 'py313-cython-nocov' cibw_arch: 'x86_64' - cibw_build: false + cibw_build: 'cp313-*manylinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py313-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py313-cython-ubuntu-x86_64-musllinux' + python: '3.13' + toxpython: 'python3.13' + python_arch: 'x64' + tox_env: 'py313-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp313-*musllinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py313-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py313-cython-ubuntu-aarch64-manylinux' + python: '3.13' + toxpython: 'python3.13' + python_arch: 'x64' + tox_env: 'py313-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp313-*manylinux*' + cibw_ft: 'false' os: 'ubuntu-latest' - - name: 'pypy38-cython-nocov (windows/AMD64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py313-cython-ubuntu-aarch64-musllinux' + python: '3.13' + toxpython: 'python3.13' python_arch: 'x64' - tox_env: 'pypy38-cython-nocov' + tox_env: 'py313-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp313-*musllinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py313-cython-nocov (windows/AMD64)' + artifact: 'py313-cython-windows-AMD64' + python: '3.13' + toxpython: 'python3.13' + python_arch: 'x64' + tox_env: 'py313-cython-nocov' cibw_arch: 'AMD64' - cibw_build: false + cibw_build: 'cp313-*' + cibw_ft: 'false' os: 'windows-latest' - - name: 'pypy38-cython-nocov (macos/arm64)' - python: 'pypy-3.8' - toxpython: 'pypy3.8' + - name: 'py313-cython-nocov (windows/x86)' + artifact: 'py313-cython-windows-x86' + python: '3.13' + toxpython: 'python3.13' + python_arch: 'x86' + tox_env: 'py313-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp313-*' + cibw_ft: 'false' + os: 'windows-latest' + - name: 'py313-cython-nocov (macos/arm64)' + artifact: 'py313-cython-macos-arm64' + python: '3.13' + toxpython: 'python3.13' python_arch: 'arm64' - tox_env: 'pypy38-cython-nocov' + tox_env: 'py313-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp313-*' + cibw_ft: 'false' + os: 'macos-latest' + - name: 'py313-ft-pure-cover (ubuntu/x86_64)' + artifact: 'py313-ft-pure-ubuntu-x86_64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py313-ft-pure-cover (windows/AMD64)' + artifact: 'py313-ft-pure-windows-AMD64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py313-ft-pure-cover (macos/arm64)' + artifact: 'py313-ft-pure-macos-arm64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'arm64-freethreaded' + tox_env: 'py313-ft-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py313-ft-pure-nocov (ubuntu/x86_64)' + artifact: 'py313-ft-pure-ubuntu-x86_64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py313-ft-pure-nocov (windows/AMD64)' + artifact: 'py313-ft-pure-windows-AMD64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py313-ft-pure-nocov (macos/arm64)' + artifact: 'py313-ft-pure-macos-arm64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'arm64-freethreaded' + tox_env: 'py313-ft-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py313-ft-cython-cover (ubuntu/x86_64)' + artifact: 'py313-ft-cython-ubuntu-x86_64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py313-ft-cython-cover (windows/AMD64)' + artifact: 'py313-ft-cython-windows-AMD64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py313-ft-cython-cover (macos/arm64)' + artifact: 'py313-ft-cython-macos-arm64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'arm64-freethreaded' + tox_env: 'py313-ft-cython-cover' + cover: true cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' + - name: 'py313-ft-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py313-ft-cython-ubuntu-x86_64-manylinux' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp313t-*manylinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py313-ft-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py313-ft-cython-ubuntu-x86_64-musllinux' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp313t-*musllinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py313-ft-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py313-ft-cython-ubuntu-aarch64-manylinux' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp313t-*manylinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py313-ft-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py313-ft-cython-ubuntu-aarch64-musllinux' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp313t-*musllinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py313-ft-cython-nocov (windows/AMD64)' + artifact: 'py313-ft-cython-windows-AMD64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x64-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp313t-*' + cibw_ft: 'true' + os: 'windows-latest' + - name: 'py313-ft-cython-nocov (windows/x86)' + artifact: 'py313-ft-cython-windows-x86' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'x86-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp313t-*' + cibw_ft: 'true' + os: 'windows-latest' + - name: 'py313-ft-cython-nocov (macos/arm64)' + artifact: 'py313-ft-cython-macos-arm64' + python: '3.13' + toxpython: 'python3.13t' + python_arch: 'arm64-freethreaded' + tox_env: 'py313-ft-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp313t-*' + cibw_ft: 'true' + os: 'macos-latest' - name: 'pypy39-pure-cover (ubuntu/x86_64)' + artifact: 'pypy39-pure-ubuntu-x86_64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -836,6 +972,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy39-pure-cover (windows/AMD64)' + artifact: 'pypy39-pure-windows-AMD64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -845,6 +982,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy39-pure-cover (macos/arm64)' + artifact: 'pypy39-pure-macos-arm64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'arm64' @@ -854,6 +992,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy39-pure-nocov (ubuntu/x86_64)' + artifact: 'pypy39-pure-ubuntu-x86_64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -862,6 +1001,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy39-pure-nocov (windows/AMD64)' + artifact: 'pypy39-pure-windows-AMD64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -870,6 +1010,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy39-pure-nocov (macos/arm64)' + artifact: 'pypy39-pure-macos-arm64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'arm64' @@ -878,6 +1019,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy39-cython-cover (ubuntu/x86_64)' + artifact: 'pypy39-cython-ubuntu-x86_64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -887,6 +1029,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy39-cython-cover (windows/AMD64)' + artifact: 'pypy39-cython-windows-AMD64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -896,6 +1039,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy39-cython-cover (macos/arm64)' + artifact: 'pypy39-cython-macos-arm64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'arm64' @@ -905,6 +1049,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy39-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'pypy39-cython-ubuntu-x86_64-manylinux' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -913,6 +1058,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy39-cython-nocov (windows/AMD64)' + artifact: 'pypy39-cython-windows-AMD64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'x64' @@ -921,6 +1067,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy39-cython-nocov (macos/arm64)' + artifact: 'pypy39-cython-macos-arm64' python: 'pypy-3.9' toxpython: 'pypy3.9' python_arch: 'arm64' @@ -929,6 +1076,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy310-pure-cover (ubuntu/x86_64)' + artifact: 'pypy310-pure-ubuntu-x86_64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -938,6 +1086,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy310-pure-cover (windows/AMD64)' + artifact: 'pypy310-pure-windows-AMD64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -947,6 +1096,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy310-pure-cover (macos/arm64)' + artifact: 'pypy310-pure-macos-arm64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'arm64' @@ -956,6 +1106,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy310-pure-nocov (ubuntu/x86_64)' + artifact: 'pypy310-pure-ubuntu-x86_64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -964,6 +1115,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy310-pure-nocov (windows/AMD64)' + artifact: 'pypy310-pure-windows-AMD64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -972,6 +1124,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy310-pure-nocov (macos/arm64)' + artifact: 'pypy310-pure-macos-arm64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'arm64' @@ -980,6 +1133,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy310-cython-cover (ubuntu/x86_64)' + artifact: 'pypy310-cython-ubuntu-x86_64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -989,6 +1143,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy310-cython-cover (windows/AMD64)' + artifact: 'pypy310-cython-windows-AMD64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -998,6 +1153,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy310-cython-cover (macos/arm64)' + artifact: 'pypy310-cython-macos-arm64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'arm64' @@ -1007,6 +1163,7 @@ jobs: cibw_build: false os: 'macos-latest' - name: 'pypy310-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'pypy310-cython-ubuntu-x86_64-manylinux' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -1015,6 +1172,7 @@ jobs: cibw_build: false os: 'ubuntu-latest' - name: 'pypy310-cython-nocov (windows/AMD64)' + artifact: 'pypy310-cython-windows-AMD64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'x64' @@ -1023,6 +1181,7 @@ jobs: cibw_build: false os: 'windows-latest' - name: 'pypy310-cython-nocov (macos/arm64)' + artifact: 'pypy310-cython-macos-arm64' python: 'pypy-3.10' toxpython: 'pypy3.10' python_arch: 'arm64' @@ -1061,6 +1220,7 @@ jobs: TOXPYTHON: '${{ matrix.toxpython }}' CIBW_ARCHS: '${{ matrix.cibw_arch }}' CIBW_BUILD: '${{ matrix.cibw_build }}' + CIBW_FREE_THREADED_SUPPORT: '${{ matrix.cibw_ft }}' CIBW_BUILD_VERBOSITY: '3' CIBW_TEST_REQUIRES: > tox @@ -1078,7 +1238,7 @@ jobs: !matrix.cibw_build run: > tox -e ${{ matrix.tox_env }} -v - - uses: codecov/codecov-action@v3 + - uses: codecov/codecov-action@v5 if: matrix.cover with: verbose: true @@ -1090,15 +1250,16 @@ jobs: uses: actions/upload-artifact@v4 if: matrix.cibw_build with: - name: '${{ matrix.artifact }}' - if-no-files-found: error - compression-level: 0 + name: wheel-${{ matrix.artifact }} path: wheelhouse/*.whl finish: needs: test if: ${{ always() }} runs-on: ubuntu-latest steps: - - uses: codecov/codecov-action@v3 + - uses: actions/upload-artifact/merge@v4 + with: + name: all-wheels + - uses: codecov/codecov-action@v5 with: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 1c54435..66c8bde 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -21,14 +21,15 @@ jobs: os: 'ubuntu-latest' {% for env in tox_environments %} {% set prefix = env.split('-')[0] -%} +{% set nogil = 'ft' in env %} {% if prefix.startswith('pypy') %} {% set python %}pypy-{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% set cpython %}pp{{ prefix[4:5] }}{% endset %} -{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} +{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{{ 't' if nogil else '' }}{% endset %} {% else %} {% set python %}{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} {% set cpython %}cp{{ prefix[2:] }}{% endset %} -{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} +{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{{ 't' if nogil else '' }}{% endset %} {% endif %} {% for os, python_arch, cibw_arch, wheel_arch, include_cover in [ ['ubuntu', 'x64', 'x86_64', '*manylinux*', True], @@ -43,17 +44,18 @@ jobs: {% set wheel_suffix = env.endswith('cython-nocov') and wheel_arch.strip('*') %} {% set name_suffix = '/' + wheel_suffix if wheel_suffix else '' %} - name: '{{ env }} ({{ os }}/{{ cibw_arch }}{{ name_suffix }})' + artifact: '{{ env.rsplit('-', 1)[0] }}-{{ os }}-{{ cibw_arch }}{{ name_suffix.replace('/', '-') }}' python: '{{ python }}' toxpython: '{{ toxpython }}' - python_arch: '{{ python_arch }}' + python_arch: '{{ python_arch }}{% if nogil %}-freethreaded{% endif %}' tox_env: '{{ env }}' {% if 'cover' in env %} cover: true {% endif %} cibw_arch: '{{ cibw_arch }}' {% if env.endswith('cython-nocov') and not prefix.startswith('pypy') %} - cibw_build: '{{ cpython }}-{{ wheel_arch }}' - artifact: '{{ os }}-{{ cpython }}-{{ cibw_arch }}-{{ wheel_arch.strip("*") or "default" }}' + cibw_build: '{{ cpython }}{% if nogil %}t{% endif %}-{{ wheel_arch }}' + cibw_ft: '{% if nogil %}true{% else %}false{% endif %}' {% else %} cibw_build: false {% endif %} @@ -92,6 +94,7 @@ jobs: TOXPYTHON: '{{ '${{ matrix.toxpython }}' }}' CIBW_ARCHS: '{{ '${{ matrix.cibw_arch }}' }}' CIBW_BUILD: '{{ '${{ matrix.cibw_build }}' }}' + CIBW_FREE_THREADED_SUPPORT: '{{ '${{ matrix.cibw_ft }}' }}' CIBW_BUILD_VERBOSITY: '3' CIBW_TEST_REQUIRES: > tox @@ -121,9 +124,7 @@ jobs: uses: actions/upload-artifact@v4 if: matrix.cibw_build with: - name: '{{ '${{ matrix.artifact }}' }}' - if-no-files-found: error - compression-level: 0 + name: {{ 'wheel-${{ matrix.artifact }}' }} path: wheelhouse/*.whl finish: needs: test diff --git a/tox.ini b/tox.ini index 0c3590b..075735a 100644 --- a/tox.ini +++ b/tox.ini @@ -14,7 +14,7 @@ envlist = clean, check, docs, - {py39,py310,py311,py312,py313,pypy39,pypy310}-{pure,cython}-{cover,nocov}, + {py39,py310,py311,py312,py313,py313-ft,pypy39,pypy310}-{pure,cython}-{cover,nocov}, report ignore_basepython_conflict = true @@ -27,6 +27,7 @@ basepython = py311: {env:TOXPYTHON:python3.11} py312: {env:TOXPYTHON:python3.12} py313: {env:TOXPYTHON:python3.13} + py313ft: {env:TOXPYTHON:python3.13t} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests From ef1ee661fe8111bce8a4d857f7f54f1f570955e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 02:58:46 +0300 Subject: [PATCH 35/80] Add back the f_trace patch (but simpler). --- src/hunter/_tracer.pyx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/hunter/_tracer.pyx b/src/hunter/_tracer.pyx index a843226..11abe60 100644 --- a/src/hunter/_tracer.pyx +++ b/src/hunter/_tracer.pyx @@ -23,7 +23,9 @@ cdef dict KIND_INTS = { cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: cdef Tracer self = tracer + cdef FrameType frame_object = frame + frame_object.f_trace = self handler = self.handler if handler is None: # the tracer was stopped From ce89422e81c6c64435e23e62e49829d322df5dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 02:59:39 +0300 Subject: [PATCH 36/80] Handle new opcode RETURN_CONST from python3.13. --- docs/cookbook.rst | 12 ++++++------ src/hunter/actions.py | 6 ++++-- tests/test_cookbook.py | 4 ++-- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/docs/cookbook.rst b/docs/cookbook.rst index be73b93..19d1385 100644 --- a/docs/cookbook.rst +++ b/docs/cookbook.rst @@ -255,7 +255,7 @@ If you can't simply review all the sourcecode then runtime analysis is one way t elif event.depth < self.depth and event.kind == 'return': # stop if function returned op = event.instruction op = op if isinstance(op, int) else ord(op) - if op == RETURN_VALUE: + if op in RETURN_OPCODES: self.output("{BRIGHT}{fore(BLUE)}{} tracing {} on {}{RESET}\n", ">" * 46, event.function, self.exc) for event in self.events: @@ -285,7 +285,7 @@ The most basic implementation that only measures timings looks like this: .. code-block:: python from hunter.actions import Action - from hunter.actions import RETURN_VALUE + from hunter.actions import RETURN_OPCODES class ProfileAction(Action): def __init__(self): @@ -321,7 +321,7 @@ This means that we have to store the exception for a little while, and do the ch .. code-block:: python from hunter.actions import Action - from hunter.actions import RETURN_VALUE + from hunter.actions import RETURN_OPCODES class ProfileAction(Action): def __init__(self): @@ -342,7 +342,7 @@ This means that we have to store the exception for a little while, and do the ch self.timings[frame_id] = start_time, event.arg elif event.kind == 'return': delta = current_time - start_time - if event.instruction == RETURN_VALUE: + if event.instruction in RETURN_OPCODES: # exception was discarded print(f'{event.function} returned: {event.arg}. Duration: {delta:.4f}s\n') else: @@ -362,7 +362,7 @@ Behold, a `ProfileAction` that works in any mode: .. code-block:: python from hunter.actions import ColorStreamAction - from hunter.actions import RETURN_VALUE + from hunter.actions import RETURN_OPCODES class ProfileAction(ColorStreamAction): # using ColorStreamAction brings this more in line with the other actions @@ -405,7 +405,7 @@ Behold, a `ProfileAction` that works in any mode: self.timings[frame_id] = start_time, event.arg elif event.kind == 'return': delta = current_time - start_time - if event.instruction == RETURN_VALUE: + if event.instruction in RETURN_OPCODES: # exception was discarded self.output( '{fore(BLUE)}{} returned: {}. Duration: {:.4f}s{RESET}\n', diff --git a/src/hunter/actions.py b/src/hunter/actions.py index c59c965..359505c 100644 --- a/src/hunter/actions.py +++ b/src/hunter/actions.py @@ -721,7 +721,9 @@ def __call__(self, event): del self.stored_reprs[scope_key] -RETURN_VALUE = opcode.opmap['RETURN_VALUE'] +RETURN_OPCODES = (opcode.opmap['RETURN_VALUE'],) +if 'RETURN_CONST' in opcode.opmap: + RETURN_OPCODES += (opcode.opmap['RETURN_CONST'],) class ErrorSnooper(CodePrinter): @@ -790,7 +792,7 @@ def __call__(self, event): detached_event = event.detach(self.try_repr) self.events.append(detached_event) if event.depth == self.origin.depth - 1: # stop if the same function returned (depth is -1) - if event.instruction == RETURN_VALUE: + if event.instruction in RETURN_OPCODES: self.dump_events() self.output( '{BRIGHT}{fore(BLACK)}{} function exit{RESET}\n', diff --git a/tests/test_cookbook.py b/tests/test_cookbook.py index 69218af..982f657 100644 --- a/tests/test_cookbook.py +++ b/tests/test_cookbook.py @@ -9,7 +9,7 @@ import pytest import hunter -from hunter.actions import RETURN_VALUE +from hunter.actions import RETURN_OPCODES from hunter.actions import ColorStreamAction from hunter.util import safe_repr @@ -117,7 +117,7 @@ def __call__(self, event): self.timings[frame_id] = start_time, event.arg elif event.kind == 'return': delta = current_time - start_time - if event.instruction == RETURN_VALUE: + if event.instruction in RETURN_OPCODES: # exception was discarded self.output( '{fore(BLUE)}{} returned: {}. Duration: {:.4f}s{RESET}\n', From fad8b5b73e9de9a696b95d835fd11893068b6241 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 03:10:47 +0300 Subject: [PATCH 37/80] Regen. --- src/hunter/_event.c | 2 +- src/hunter/_predicates.c | 56 +-- src/hunter/_tracer.c | 918 +++++++++++++++++++++------------------ 3 files changed, 515 insertions(+), 461 deletions(-) diff --git a/src/hunter/_event.c b/src/hunter/_event.c index 381a27a..361fc09 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -14879,7 +14879,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Event__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,36,0,__PYX_ERR(2, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,37,0,__PYX_ERR(2, 16, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(2, 16, __pyx_L1_error) diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index fb1b437..c6d2c29 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -32426,7 +32426,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 14, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 8, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32771,7 +32771,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32794,7 +32794,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32806,7 +32806,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32827,7 +32827,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32860,7 +32860,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32872,7 +32872,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32926,7 +32926,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32938,7 +32938,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32959,7 +32959,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32971,7 +32971,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33015,7 +33015,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33027,7 +33027,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33048,7 +33048,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33061,7 +33061,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33069,7 +33069,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33090,7 +33090,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33103,7 +33103,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33111,7 +33111,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33124,7 +33124,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33132,7 +33132,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33145,7 +33145,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33153,7 +33153,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33166,7 +33166,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33187,7 +33187,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 @@ -33195,12 +33195,12 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,8,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 14, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 8, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33210,7 +33210,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(14, 0); + __Pyx_TraceExceptionUnwind(8, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index 6089484..fdaf63e 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -2367,6 +2367,22 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name); #define __Pyx_TraceLine(line, offset, nogil, goto_error) if ((1)); else goto_error; #endif +/* PyObjectDelAttr.proto */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 +#define __Pyx_PyObject_DelAttr(o, n) PyObject_SetAttr(o, n, NULL) +#else +#define __Pyx_PyObject_DelAttr(o, n) PyObject_DelAttr(o, n) +#endif + +/* PyObjectSetAttrStr.proto */ +#if CYTHON_USE_TYPE_SLOTS +#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL) +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value); +#else +#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_DelAttr(o,n) +#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v) +#endif + /* PyFunctionFastCall.proto */ #if CYTHON_FAST_PYCALL #if !CYTHON_VECTORCALL @@ -3120,6 +3136,7 @@ static const char __pyx_k_tracer[] = "tracer"; static const char __pyx_k_dealloc[] = "__dealloc__"; static const char __pyx_k_disable[] = "disable"; static const char __pyx_k_exc_val[] = "exc_val"; +static const char __pyx_k_f_trace[] = "f_trace"; static const char __pyx_k_handler[] = "handler="; static const char __pyx_k_stopped[] = ""; static const char __pyx_k_add_note[] = "add_note"; @@ -3172,8 +3189,8 @@ static const char __pyx_k_src_hunter__tracer_pyx[] = "src/hunter/_tracer.pyx"; static const char __pyx_k_Tracer___setstate_cython[] = "Tracer.__setstate_cython__"; static const char __pyx_k_hunter__tracer_Tracer_at_0x[] = "__pyx_type_6hunter_7_tracer_Tracer); for (int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } for (int i=0; i<18; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<98; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<99; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_0); Py_CLEAR(clear_module_state->__pyx_int_1); Py_CLEAR(clear_module_state->__pyx_int_2); @@ -3472,7 +3490,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void Py_VISIT(traverse_module_state->__pyx_type_6hunter_7_tracer_Tracer); for (int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } for (int i=0; i<18; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<98; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<99; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_0); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_2); @@ -3490,11 +3508,12 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void * * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: # <<<<<<<<<<<<<< * cdef Tracer self = tracer - * + * cdef FrameType frame_object = frame */ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrameObject *__pyx_v_frame, int __pyx_v_kind, CYTHON_UNUSED PyObject *__pyx_v_arg) { struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self = 0; + FrameType __pyx_v_frame_object = 0; PyObject *__pyx_v_handler = NULL; struct __pyx_obj_6hunter_6_event_Event *__pyx_v_event = 0; PyObject *__pyx_v_exc = NULL; @@ -3538,8 +3557,8 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: * cdef Tracer self = tracer # <<<<<<<<<<<<<< + * cdef FrameType frame_object = frame * - * handler = self.handler */ __Pyx_TraceLine(25,2,0,__PYX_ERR(0, 25, __pyx_L1_error)) __pyx_t_1 = ((PyObject *)__pyx_v_tracer); @@ -3547,51 +3566,74 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_v_self = ((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":27 + /* "hunter/_tracer.pyx":26 + * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: * cdef Tracer self = tracer + * cdef FrameType frame_object = frame # <<<<<<<<<<<<<< + * + * frame_object.f_trace = self +*/ + __Pyx_TraceLine(26,5,0,__PYX_ERR(0, 26, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_v_frame); + __Pyx_INCREF(__pyx_t_1); + __pyx_v_frame_object = ((FrameType)__pyx_t_1); + __pyx_t_1 = 0; + + /* "hunter/_tracer.pyx":28 + * cdef FrameType frame_object = frame + * + * frame_object.f_trace = self # <<<<<<<<<<<<<< + * handler = self.handler + * +*/ + __Pyx_TraceLine(28,7,0,__PYX_ERR(0, 28, __pyx_L1_error)) + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_frame_object), __pyx_mstate_global->__pyx_n_u_f_trace, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(0, 28, __pyx_L1_error) + + /* "hunter/_tracer.pyx":29 * + * frame_object.f_trace = self * handler = self.handler # <<<<<<<<<<<<<< * * if handler is None: # the tracer was stopped */ - __Pyx_TraceLine(27,6,0,__PYX_ERR(0, 27, __pyx_L1_error)) + __Pyx_TraceLine(29,12,0,__PYX_ERR(0, 29, __pyx_L1_error)) __pyx_t_1 = __pyx_v_self->handler; __Pyx_INCREF(__pyx_t_1); __pyx_v_handler = __pyx_t_1; __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":29 + /* "hunter/_tracer.pyx":31 * handler = self.handler * * if handler is None: # the tracer was stopped # <<<<<<<<<<<<<< * # make sure it's uninstalled even for running threads * if self.profiling_mode: */ - __Pyx_TraceLine(29,10,0,__PYX_ERR(0, 29, __pyx_L1_error)) + __Pyx_TraceLine(31,16,0,__PYX_ERR(0, 31, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_handler == Py_None); if (__pyx_t_2) { - /* "hunter/_tracer.pyx":31 + /* "hunter/_tracer.pyx":33 * if handler is None: # the tracer was stopped * # make sure it's uninstalled even for running threads * if self.profiling_mode: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: */ - __Pyx_TraceLine(31,12,0,__PYX_ERR(0, 31, __pyx_L1_error)) + __Pyx_TraceLine(33,18,0,__PYX_ERR(0, 33, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { - /* "hunter/_tracer.pyx":32 + /* "hunter/_tracer.pyx":34 * # make sure it's uninstalled even for running threads * if self.profiling_mode: * PyEval_SetProfile(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetTrace(NULL, NULL) */ - __Pyx_TraceLine(32,15,0,__PYX_ERR(0, 32, __pyx_L1_error)) + __Pyx_TraceLine(34,21,0,__PYX_ERR(0, 34, __pyx_L1_error)) PyEval_SetProfile(NULL, NULL); - /* "hunter/_tracer.pyx":31 + /* "hunter/_tracer.pyx":33 * if handler is None: # the tracer was stopped * # make sure it's uninstalled even for running threads * if self.profiling_mode: # <<<<<<<<<<<<<< @@ -3601,32 +3643,32 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame goto __pyx_L4; } - /* "hunter/_tracer.pyx":34 + /* "hunter/_tracer.pyx":36 * PyEval_SetProfile(NULL, NULL) * else: * PyEval_SetTrace(NULL, NULL) # <<<<<<<<<<<<<< * return 0 * */ - __Pyx_TraceLine(34,19,0,__PYX_ERR(0, 34, __pyx_L1_error)) + __Pyx_TraceLine(36,25,0,__PYX_ERR(0, 36, __pyx_L1_error)) /*else*/ { PyEval_SetTrace(NULL, NULL); } __pyx_L4:; - /* "hunter/_tracer.pyx":35 + /* "hunter/_tracer.pyx":37 * else: * PyEval_SetTrace(NULL, NULL) * return 0 # <<<<<<<<<<<<<< * * if kind == 3 and self.depth > 0: */ - __Pyx_TraceLine(35,22,0,__PYX_ERR(0, 35, __pyx_L1_error)) + __Pyx_TraceLine(37,28,0,__PYX_ERR(0, 37, __pyx_L1_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 22, 0, __PYX_ERR(0, 35, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 28, 0, __PYX_ERR(0, 37, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":29 + /* "hunter/_tracer.pyx":31 * handler = self.handler * * if handler is None: # the tracer was stopped # <<<<<<<<<<<<<< @@ -3635,14 +3677,14 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame */ } - /* "hunter/_tracer.pyx":37 + /* "hunter/_tracer.pyx":39 * return 0 * * if kind == 3 and self.depth > 0: # <<<<<<<<<<<<<< * self.depth -= 1 * */ - __Pyx_TraceLine(37,26,0,__PYX_ERR(0, 37, __pyx_L1_error)) + __Pyx_TraceLine(39,32,0,__PYX_ERR(0, 39, __pyx_L1_error)) __pyx_t_3 = (__pyx_v_kind == 3); if (__pyx_t_3) { } else { @@ -3654,17 +3696,17 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_L6_bool_binop_done:; if (__pyx_t_2) { - /* "hunter/_tracer.pyx":38 + /* "hunter/_tracer.pyx":40 * * if kind == 3 and self.depth > 0: * self.depth -= 1 # <<<<<<<<<<<<<< * * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) */ - __Pyx_TraceLine(38,33,0,__PYX_ERR(0, 38, __pyx_L1_error)) + __Pyx_TraceLine(40,39,0,__PYX_ERR(0, 40, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth - 1); - /* "hunter/_tracer.pyx":37 + /* "hunter/_tracer.pyx":39 * return 0 * * if kind == 3 and self.depth > 0: # <<<<<<<<<<<<<< @@ -3673,22 +3715,22 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame */ } - /* "hunter/_tracer.pyx":40 + /* "hunter/_tracer.pyx":42 * self.depth -= 1 * * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) # <<<<<<<<<<<<<< * try: * fast_call(handler, event) */ - __Pyx_TraceLine(40,38,0,__PYX_ERR(0, 40, __pyx_L1_error)) + __Pyx_TraceLine(42,44,0,__PYX_ERR(0, 42, __pyx_L1_error)) __pyx_t_4 = NULL; __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); - __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 40, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 40, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 40, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = 1; { @@ -3699,20 +3741,20 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 40, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); } __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":41 + /* "hunter/_tracer.pyx":43 * * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ - __Pyx_TraceLine(41,49,0,__PYX_ERR(0, 41, __pyx_L1_error)) + __Pyx_TraceLine(43,55,0,__PYX_ERR(0, 43, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -3722,19 +3764,19 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XGOTREF(__pyx_t_12); /*try:*/ { - /* "hunter/_tracer.pyx":42 + /* "hunter/_tracer.pyx":44 * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: * fast_call(handler, event) # <<<<<<<<<<<<<< * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) */ - __Pyx_TraceLine(42,51,0,__PYX_ERR(0, 42, __pyx_L8_error)) - __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L8_error) + __Pyx_TraceLine(44,57,0,__PYX_ERR(0, 44, __pyx_L8_error)) + __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L8_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":41 + /* "hunter/_tracer.pyx":43 * * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< @@ -3755,19 +3797,19 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_tracer.pyx":43 + /* "hunter/_tracer.pyx":45 * try: * fast_call(handler, event) * except Exception as exc: # <<<<<<<<<<<<<< * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( */ - __Pyx_TraceLine(43,55,0,__PYX_ERR(0, 43, __pyx_L10_except_error)) + __Pyx_TraceLine(45,61,0,__PYX_ERR(0, 45, __pyx_L10_except_error)) __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); if (__pyx_t_13) { __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_TraceExceptionHandled(54); - if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_8) < 0) __PYX_ERR(0, 43, __pyx_L10_except_error) + __Pyx_TraceExceptionHandled(60); + if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_8) < 0) __PYX_ERR(0, 45, __pyx_L10_except_error) __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_5); __Pyx_XGOTREF(__pyx_t_8); @@ -3776,23 +3818,23 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_v_exc = __pyx_t_5; /*try:*/ { - /* "hunter/_tracer.pyx":44 + /* "hunter/_tracer.pyx":46 * fast_call(handler, event) * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) # <<<<<<<<<<<<<< * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) */ - __Pyx_TraceLine(44,59,0,__PYX_ERR(0, 44, __pyx_L19_error)) + __Pyx_TraceLine(46,65,0,__PYX_ERR(0, 46, __pyx_L19_error)) __pyx_t_6 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L19_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 44, __pyx_L19_error) + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L19_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 44, __pyx_L19_error) + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_9 = 1; @@ -3809,48 +3851,48 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame #endif { PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_6, NULL}; - __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L19_error) + __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 44, __pyx_L19_error) + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 46, __pyx_L19_error) __pyx_t_7 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_14, __pyx_callargs+__pyx_t_9, (1-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4); __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 44, __pyx_L19_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_7); } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_tracer.pyx":45 + /* "hunter/_tracer.pyx":47 * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( # <<<<<<<<<<<<<< * handler, exc, event)) * self.stop() */ - __Pyx_TraceLine(45,63,0,__PYX_ERR(0, 45, __pyx_L19_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L19_error) + __Pyx_TraceLine(47,69,0,__PYX_ERR(0, 47, __pyx_L19_error)) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 47, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 45, __pyx_L19_error) + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 47, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_14 = __pyx_t_15; __Pyx_INCREF(__pyx_t_14); - /* "hunter/_tracer.pyx":46 + /* "hunter/_tracer.pyx":48 * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) # <<<<<<<<<<<<<< * self.stop() * return 0 */ - __Pyx_TraceLine(46,68,0,__PYX_ERR(0, 46, __pyx_L19_error)) - __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_TraceLine(48,74,0,__PYX_ERR(0, 48, __pyx_L19_error)) + __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 48, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 46, __pyx_L19_error) + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 48, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_16 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(((PyObject *)__pyx_v_event)), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 46, __pyx_L19_error) + __pyx_t_16 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(((PyObject *)__pyx_v_event)), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 48, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_17[0] = __pyx_mstate_global->__pyx_kp_u_Disabling_tracer_because_handler; __pyx_t_17[1] = __pyx_t_4; @@ -3860,16 +3902,16 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_t_17[5] = __pyx_t_16; __pyx_t_17[6] = __pyx_mstate_global->__pyx_kp_u_; - /* "hunter/_tracer.pyx":45 + /* "hunter/_tracer.pyx":47 * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( # <<<<<<<<<<<<<< * handler, exc, event)) * self.stop() */ - __Pyx_TraceLine(45,67,0,__PYX_ERR(0, 45, __pyx_L19_error)) + __Pyx_TraceLine(47,73,0,__PYX_ERR(0, 47, __pyx_L19_error)) __pyx_t_18 = __Pyx_PyUnicode_Join(__pyx_t_17, 7, 33 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 9 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + 3, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16)); - if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 45, __pyx_L19_error) + if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 47, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_18); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -3881,19 +3923,19 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 45, __pyx_L19_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 47, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_7); } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_tracer.pyx":47 + /* "hunter/_tracer.pyx":49 * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) * self.stop() # <<<<<<<<<<<<<< * return 0 * */ - __Pyx_TraceLine(47,71,0,__PYX_ERR(0, 47, __pyx_L19_error)) + __Pyx_TraceLine(49,77,0,__PYX_ERR(0, 49, __pyx_L19_error)) __pyx_t_15 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_15); __pyx_t_9 = 0; @@ -3901,41 +3943,41 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame PyObject *__pyx_callargs[2] = {__pyx_t_15, NULL}; __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_9, (1-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 47, __pyx_L19_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 49, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_7); } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_tracer.pyx":48 + /* "hunter/_tracer.pyx":50 * handler, exc, event)) * self.stop() * return 0 # <<<<<<<<<<<<<< * * if kind == 0: */ - __Pyx_TraceLine(48,74,0,__PYX_ERR(0, 48, __pyx_L19_error)) + __Pyx_TraceLine(50,80,0,__PYX_ERR(0, 50, __pyx_L19_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 74, 0, __PYX_ERR(0, 48, __pyx_L19_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 80, 0, __PYX_ERR(0, 50, __pyx_L19_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L18_return; } - /* "hunter/_tracer.pyx":43 + /* "hunter/_tracer.pyx":45 * try: * fast_call(handler, event) * except Exception as exc: # <<<<<<<<<<<<<< * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( */ - __Pyx_TraceLine(43,54,0,__PYX_ERR(0, 43, __pyx_L19_error)) + __Pyx_TraceLine(45,60,0,__PYX_ERR(0, 45, __pyx_L19_error)) /*finally:*/ { __pyx_L19_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionHandled(54); + __Pyx_TraceExceptionHandled(60); __Pyx_PyThreadState_assign __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; @@ -3967,7 +4009,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_ErrRestore(__pyx_t_21, __pyx_t_22, __pyx_t_23); __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20; - __Pyx_TraceException(54, 1, 0); + __Pyx_TraceException(60, 1, 0); goto __pyx_L10_except_error; } __pyx_L18_return: { @@ -3980,7 +4022,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame } goto __pyx_L10_except_error; - /* "hunter/_tracer.pyx":41 + /* "hunter/_tracer.pyx":43 * * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< @@ -4002,38 +4044,38 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_L13_try_end:; } - /* "hunter/_tracer.pyx":50 + /* "hunter/_tracer.pyx":52 * return 0 * * if kind == 0: # <<<<<<<<<<<<<< * self.depth += 1 * self.calls += 1 */ - __Pyx_TraceLine(50,78,0,__PYX_ERR(0, 50, __pyx_L1_error)) + __Pyx_TraceLine(52,84,0,__PYX_ERR(0, 52, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_kind == 0); if (__pyx_t_2) { - /* "hunter/_tracer.pyx":51 + /* "hunter/_tracer.pyx":53 * * if kind == 0: * self.depth += 1 # <<<<<<<<<<<<<< * self.calls += 1 * return 0 */ - __Pyx_TraceLine(51,80,0,__PYX_ERR(0, 51, __pyx_L1_error)) + __Pyx_TraceLine(53,86,0,__PYX_ERR(0, 53, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth + 1); - /* "hunter/_tracer.pyx":52 + /* "hunter/_tracer.pyx":54 * if kind == 0: * self.depth += 1 * self.calls += 1 # <<<<<<<<<<<<<< * return 0 * */ - __Pyx_TraceLine(52,83,0,__PYX_ERR(0, 52, __pyx_L1_error)) + __Pyx_TraceLine(54,89,0,__PYX_ERR(0, 54, __pyx_L1_error)) __pyx_v_self->calls = (__pyx_v_self->calls + 1); - /* "hunter/_tracer.pyx":50 + /* "hunter/_tracer.pyx":52 * return 0 * * if kind == 0: # <<<<<<<<<<<<<< @@ -4042,16 +4084,16 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame */ } - /* "hunter/_tracer.pyx":53 + /* "hunter/_tracer.pyx":55 * self.depth += 1 * self.calls += 1 * return 0 # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(53,86,0,__PYX_ERR(0, 53, __pyx_L1_error)) + __Pyx_TraceLine(55,92,0,__PYX_ERR(0, 55, __pyx_L1_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 86, 0, __PYX_ERR(0, 53, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 92, 0, __PYX_ERR(0, 55, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":24 @@ -4059,7 +4101,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: # <<<<<<<<<<<<<< * cdef Tracer self = tracer - * + * cdef FrameType frame_object = frame */ /* function exit code */ @@ -4084,6 +4126,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_r = 0; __pyx_L0:; __Pyx_XDECREF((PyObject *)__pyx_v_self); + __Pyx_XDECREF(__pyx_v_frame_object); __Pyx_XDECREF(__pyx_v_handler); __Pyx_XDECREF((PyObject *)__pyx_v_event); __Pyx_XDECREF(__pyx_v_exc); @@ -4092,7 +4135,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame return __pyx_r; } -/* "hunter/_tracer.pyx":57 +/* "hunter/_tracer.pyx":59 * * cdef class Tracer: * def __cinit__(self, threading_support=None, profiling_mode=False): # <<<<<<<<<<<<<< @@ -4123,33 +4166,33 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_threading_support,&__pyx_mstate_global->__pyx_n_u_profiling_mode,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 57, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 59, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 57, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 57, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 57, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__cinit__", 0) < 0) __PYX_ERR(0, 59, __pyx_L3_error) if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_False)); } else { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 57, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 57, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; @@ -4162,7 +4205,7 @@ static int __pyx_pw_6hunter_7_tracer_6Tracer_1__cinit__(PyObject *__pyx_v_self, } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 57, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 59, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4193,106 +4236,106 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) __Pyx_RefNannySetupContext("__cinit__", 0); - __Pyx_TraceStartFunc("__cinit__", __pyx_f[0], 57, 0, 0, 0, __PYX_ERR(0, 57, __pyx_L1_error)); + __Pyx_TraceStartFunc("__cinit__", __pyx_f[0], 59, 0, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); - /* "hunter/_tracer.pyx":58 + /* "hunter/_tracer.pyx":60 * cdef class Tracer: * def __cinit__(self, threading_support=None, profiling_mode=False): * self.handler = None # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(58,3,0,__PYX_ERR(0, 58, __pyx_L1_error)) + __Pyx_TraceLine(60,3,0,__PYX_ERR(0, 60, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); __Pyx_DECREF(__pyx_v_self->handler); __pyx_v_self->handler = Py_None; - /* "hunter/_tracer.pyx":59 + /* "hunter/_tracer.pyx":61 * def __cinit__(self, threading_support=None, profiling_mode=False): * self.handler = None * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * self._threading_previous = None */ - __Pyx_TraceLine(59,6,0,__PYX_ERR(0, 59, __pyx_L1_error)) + __Pyx_TraceLine(61,6,0,__PYX_ERR(0, 61, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":60 + /* "hunter/_tracer.pyx":62 * self.handler = None * self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * self._threading_previous = None * self.threading_support = threading_support */ - __Pyx_TraceLine(60,9,0,__PYX_ERR(0, 60, __pyx_L1_error)) + __Pyx_TraceLine(62,9,0,__PYX_ERR(0, 62, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":61 + /* "hunter/_tracer.pyx":63 * self.previous = None * self._previousfunc = NULL * self._threading_previous = None # <<<<<<<<<<<<<< * self.threading_support = threading_support * self.profiling_mode = profiling_mode */ - __Pyx_TraceLine(61,12,0,__PYX_ERR(0, 61, __pyx_L1_error)) + __Pyx_TraceLine(63,12,0,__PYX_ERR(0, 63, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); __pyx_v_self->_threading_previous = Py_None; - /* "hunter/_tracer.pyx":62 + /* "hunter/_tracer.pyx":64 * self._previousfunc = NULL * self._threading_previous = None * self.threading_support = threading_support # <<<<<<<<<<<<<< * self.profiling_mode = profiling_mode * self.depth = 0 */ - __Pyx_TraceLine(62,15,0,__PYX_ERR(0, 62, __pyx_L1_error)) + __Pyx_TraceLine(64,15,0,__PYX_ERR(0, 64, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_threading_support); __Pyx_GIVEREF(__pyx_v_threading_support); __Pyx_GOTREF(__pyx_v_self->threading_support); __Pyx_DECREF(__pyx_v_self->threading_support); __pyx_v_self->threading_support = __pyx_v_threading_support; - /* "hunter/_tracer.pyx":63 + /* "hunter/_tracer.pyx":65 * self._threading_previous = None * self.threading_support = threading_support * self.profiling_mode = profiling_mode # <<<<<<<<<<<<<< * self.depth = 0 * self.calls = 0 */ - __Pyx_TraceLine(63,20,0,__PYX_ERR(0, 63, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_profiling_mode); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 63, __pyx_L1_error) + __Pyx_TraceLine(65,20,0,__PYX_ERR(0, 65, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_profiling_mode); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 65, __pyx_L1_error) __pyx_v_self->profiling_mode = __pyx_t_1; - /* "hunter/_tracer.pyx":64 + /* "hunter/_tracer.pyx":66 * self.threading_support = threading_support * self.profiling_mode = profiling_mode * self.depth = 0 # <<<<<<<<<<<<<< * self.calls = 0 * */ - __Pyx_TraceLine(64,21,0,__PYX_ERR(0, 64, __pyx_L1_error)) + __Pyx_TraceLine(66,21,0,__PYX_ERR(0, 66, __pyx_L1_error)) __pyx_v_self->depth = 0; - /* "hunter/_tracer.pyx":65 + /* "hunter/_tracer.pyx":67 * self.profiling_mode = profiling_mode * self.depth = 0 * self.calls = 0 # <<<<<<<<<<<<<< * * def __dealloc__(self): */ - __Pyx_TraceLine(65,24,0,__PYX_ERR(0, 65, __pyx_L1_error)) + __Pyx_TraceLine(67,24,0,__PYX_ERR(0, 67, __pyx_L1_error)) __pyx_v_self->calls = 0; - /* "hunter/_tracer.pyx":57 + /* "hunter/_tracer.pyx":59 * * cdef class Tracer: * def __cinit__(self, threading_support=None, profiling_mode=False): # <<<<<<<<<<<<<< @@ -4302,14 +4345,14 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ /* function exit code */ __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 57, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 57, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; @@ -4319,7 +4362,7 @@ static int __pyx_pf_6hunter_7_tracer_6Tracer___cinit__(struct __pyx_obj_6hunter_ return __pyx_r; } -/* "hunter/_tracer.pyx":67 +/* "hunter/_tracer.pyx":69 * self.calls = 0 * * def __dealloc__(self): # <<<<<<<<<<<<<< @@ -4353,37 +4396,37 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) __Pyx_RefNannySetupContext("__dealloc__", 0); - __Pyx_TraceStartFunc("__dealloc__", __pyx_f[0], 67, 0, 0, 0, __PYX_ERR(0, 67, __pyx_L1_error)); + __Pyx_TraceStartFunc("__dealloc__", __pyx_f[0], 69, 0, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); - /* "hunter/_tracer.pyx":68 + /* "hunter/_tracer.pyx":70 * * def __dealloc__(self): * cdef PyThreadState *state = PyThreadState_Get() # <<<<<<<<<<<<<< * if state.c_traceobj is self: * self.stop() */ - __Pyx_TraceLine(68,3,0,__PYX_ERR(0, 68, __pyx_L1_error)) + __Pyx_TraceLine(70,3,0,__PYX_ERR(0, 70, __pyx_L1_error)) __pyx_v_state = PyThreadState_Get(); - /* "hunter/_tracer.pyx":69 + /* "hunter/_tracer.pyx":71 * def __dealloc__(self): * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: # <<<<<<<<<<<<<< * self.stop() * */ - __Pyx_TraceLine(69,7,0,__PYX_ERR(0, 69, __pyx_L1_error)) + __Pyx_TraceLine(71,7,0,__PYX_ERR(0, 71, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_traceobj == ((PyObject *)__pyx_v_self)); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":70 + /* "hunter/_tracer.pyx":72 * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: * self.stop() # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(70,10,0,__PYX_ERR(0, 70, __pyx_L1_error)) + __Pyx_TraceLine(72,10,0,__PYX_ERR(0, 72, __pyx_L1_error)) __pyx_t_3 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; @@ -4391,12 +4434,12 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 72, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":69 + /* "hunter/_tracer.pyx":71 * def __dealloc__(self): * cdef PyThreadState *state = PyThreadState_Get() * if state.c_traceobj is self: # <<<<<<<<<<<<<< @@ -4405,7 +4448,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun */ } - /* "hunter/_tracer.pyx":67 + /* "hunter/_tracer.pyx":69 * self.calls = 0 * * def __dealloc__(self): # <<<<<<<<<<<<<< @@ -4414,7 +4457,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun */ /* function exit code */ - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 67, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); @@ -4423,7 +4466,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 67, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 69, __pyx_L1_error)); #endif __Pyx_WriteUnraisable("hunter._tracer.Tracer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); __pyx_L0:; @@ -4431,7 +4474,7 @@ static void __pyx_pf_6hunter_7_tracer_6Tracer_2__dealloc__(struct __pyx_obj_6hun __Pyx_RefNannyFinishContext(); } -/* "hunter/_tracer.pyx":72 +/* "hunter/_tracer.pyx":74 * self.stop() * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4473,51 +4516,51 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 72, 0, 0, 0, __PYX_ERR(0, 72, __pyx_L1_error)); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 74, 0, 0, 0, __PYX_ERR(0, 74, __pyx_L1_error)); - /* "hunter/_tracer.pyx":73 + /* "hunter/_tracer.pyx":75 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * id(self), * self.threading_support, */ - __Pyx_TraceLine(73,1,0,__PYX_ERR(0, 73, __pyx_L1_error)) + __Pyx_TraceLine(75,1,0,__PYX_ERR(0, 75, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_tracer.pyx":74 + /* "hunter/_tracer.pyx":76 * def __repr__(self): * return '' % ( * id(self), # <<<<<<<<<<<<<< * self.threading_support, * '' if self.handler is None else 'handler=', */ - __Pyx_TraceLine(74,4,0,__PYX_ERR(0, 74, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 74, __pyx_L1_error) + __Pyx_TraceLine(76,4,0,__PYX_ERR(0, 76, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_Format(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 74, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Format(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":75 + /* "hunter/_tracer.pyx":77 * return '' % ( * id(self), * self.threading_support, # <<<<<<<<<<<<<< * '' if self.handler is None else 'handler=', * '' if self.handler is None else repr(self.handler), */ - __Pyx_TraceLine(75,7,0,__PYX_ERR(0, 75, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->threading_support), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 75, __pyx_L1_error) + __Pyx_TraceLine(77,7,0,__PYX_ERR(0, 77, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_v_self->threading_support), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "hunter/_tracer.pyx":76 + /* "hunter/_tracer.pyx":78 * id(self), * self.threading_support, * '' if self.handler is None else 'handler=', # <<<<<<<<<<<<<< * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', */ - __Pyx_TraceLine(76,12,0,__PYX_ERR(0, 76, __pyx_L1_error)) + __Pyx_TraceLine(78,12,0,__PYX_ERR(0, 78, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->handler == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_stopped); @@ -4526,18 +4569,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_handler); __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_handler; } - __pyx_t_5 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":77 + /* "hunter/_tracer.pyx":79 * self.threading_support, * '' if self.handler is None else 'handler=', * '' if self.handler is None else repr(self.handler), # <<<<<<<<<<<<<< * '' if self.previous is None else ', previous=', * '' if self.previous is None else repr(self.previous), */ - __Pyx_TraceLine(77,18,0,__PYX_ERR(0, 77, __pyx_L1_error)) + __Pyx_TraceLine(79,18,0,__PYX_ERR(0, 79, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->handler == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); @@ -4545,24 +4588,24 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h } else { __pyx_t_6 = __pyx_v_self->handler; __Pyx_INCREF(__pyx_t_6); - __pyx_t_7 = PyObject_Repr(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_7 = PyObject_Repr(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_t_7; __pyx_t_7 = 0; } - __pyx_t_7 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":78 + /* "hunter/_tracer.pyx":80 * '' if self.handler is None else 'handler=', * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', # <<<<<<<<<<<<<< * '' if self.previous is None else repr(self.previous), * ) */ - __Pyx_TraceLine(78,27,0,__PYX_ERR(0, 78, __pyx_L1_error)) + __Pyx_TraceLine(80,27,0,__PYX_ERR(0, 80, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->previous == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); @@ -4571,18 +4614,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_previous); __pyx_t_3 = __pyx_mstate_global->__pyx_kp_u_previous; } - __pyx_t_6 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 78, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":79 + /* "hunter/_tracer.pyx":81 * '' if self.handler is None else repr(self.handler), * '' if self.previous is None else ', previous=', * '' if self.previous is None else repr(self.previous), # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(79,33,0,__PYX_ERR(0, 79, __pyx_L1_error)) + __Pyx_TraceLine(81,33,0,__PYX_ERR(0, 81, __pyx_L1_error)) __pyx_t_4 = (__pyx_v_self->previous == Py_None); if (__pyx_t_4) { __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); @@ -4590,13 +4633,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h } else { __pyx_t_8 = __pyx_v_self->previous; __Pyx_INCREF(__pyx_t_8); - __pyx_t_9 = PyObject_Repr(__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 79, __pyx_L1_error) + __pyx_t_9 = PyObject_Repr(__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_t_9; __pyx_t_9 = 0; } - __pyx_t_9 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 79, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyUnicode_Unicode(__pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_10[0] = __pyx_mstate_global->__pyx_kp_u_hunter__tracer_Tracer_at_0x; @@ -4610,16 +4653,16 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __pyx_t_10[8] = __pyx_t_9; __pyx_t_10[9] = __pyx_mstate_global->__pyx_kp_u__4; - /* "hunter/_tracer.pyx":73 + /* "hunter/_tracer.pyx":75 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * id(self), * self.threading_support, */ - __Pyx_TraceLine(73,2,0,__PYX_ERR(0, 73, __pyx_L1_error)) + __Pyx_TraceLine(75,2,0,__PYX_ERR(0, 75, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_10, 10, 28 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_2) + 20 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_7) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_9) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_2) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_7) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9)); - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 73, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -4629,10 +4672,10 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 73, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 75, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":72 + /* "hunter/_tracer.pyx":74 * self.stop() * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4654,7 +4697,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 72, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 74, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4665,7 +4708,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_4__repr__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_tracer.pyx":82 +/* "hunter/_tracer.pyx":84 * ) * * def __call__(self, frame, str kind, arg): # <<<<<<<<<<<<<< @@ -4697,38 +4740,38 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 82, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 84, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 82, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 84, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 82, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 84, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 82, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 84, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 82, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__call__", 0) < 0) __PYX_ERR(0, 84, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, i); __PYX_ERR(0, 82, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, i); __PYX_ERR(0, 84, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 82, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 84, __pyx_L3_error) values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 82, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 84, __pyx_L3_error) values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 82, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 84, __pyx_L3_error) } __pyx_v_frame = values[0]; __pyx_v_kind = ((PyObject*)values[1]); @@ -4736,7 +4779,7 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 82, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__call__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 84, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4747,7 +4790,7 @@ static PyObject *__pyx_pw_6hunter_7_tracer_6Tracer_7__call__(PyObject *__pyx_v_s __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_kind), (&PyUnicode_Type), 1, "kind", 1))) __PYX_ERR(0, 82, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_kind), (&PyUnicode_Type), 1, "kind", 1))) __PYX_ERR(0, 84, __pyx_L1_error) __pyx_r = __pyx_pf_6hunter_7_tracer_6Tracer_6__call__(((struct __pyx_obj_6hunter_7_tracer_Tracer *)__pyx_v_self), __pyx_v_frame, __pyx_v_kind, __pyx_v_arg); /* function exit code */ @@ -4779,48 +4822,48 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) __Pyx_RefNannySetupContext("__call__", 0); - __Pyx_TraceStartFunc("__call__", __pyx_f[0], 82, 0, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); + __Pyx_TraceStartFunc("__call__", __pyx_f[0], 84, 0, 0, 0, __PYX_ERR(0, 84, __pyx_L1_error)); - /* "hunter/_tracer.pyx":83 + /* "hunter/_tracer.pyx":85 * * def __call__(self, frame, str kind, arg): * trace_func( self, frame, KIND_INTS[kind], arg) # <<<<<<<<<<<<<< * if kind == 0: * PyEval_SetTrace(trace_func, self) */ - __Pyx_TraceLine(83,7,0,__PYX_ERR(0, 83, __pyx_L1_error)) + __Pyx_TraceLine(85,7,0,__PYX_ERR(0, 85, __pyx_L1_error)) if (unlikely(__pyx_v_6hunter_7_tracer_KIND_INTS == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 83, __pyx_L1_error) + __PYX_ERR(0, 85, __pyx_L1_error) } - __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_6hunter_7_tracer_KIND_INTS, __pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 83, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_6hunter_7_tracer_KIND_INTS, __pyx_v_kind); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 83, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; (void)(__pyx_f_6hunter_7_tracer_trace_func(((PyObject *)__pyx_v_self), ((PyFrameObject *)__pyx_v_frame), __pyx_t_2, ((PyObject *)__pyx_v_arg))); - /* "hunter/_tracer.pyx":84 + /* "hunter/_tracer.pyx":86 * def __call__(self, frame, str kind, arg): * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: # <<<<<<<<<<<<<< * PyEval_SetTrace(trace_func, self) * return self */ - __Pyx_TraceLine(84,13,0,__PYX_ERR(0, 84, __pyx_L1_error)) - __pyx_t_3 = (__Pyx_PyUnicode_Equals(__pyx_v_kind, __pyx_mstate_global->__pyx_int_0, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 84, __pyx_L1_error) + __Pyx_TraceLine(86,13,0,__PYX_ERR(0, 86, __pyx_L1_error)) + __pyx_t_3 = (__Pyx_PyUnicode_Equals(__pyx_v_kind, __pyx_mstate_global->__pyx_int_0, Py_EQ)); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 86, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_tracer.pyx":85 + /* "hunter/_tracer.pyx":87 * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: * PyEval_SetTrace(trace_func, self) # <<<<<<<<<<<<<< * return self * */ - __Pyx_TraceLine(85,17,0,__PYX_ERR(0, 85, __pyx_L1_error)) + __Pyx_TraceLine(87,17,0,__PYX_ERR(0, 87, __pyx_L1_error)) PyEval_SetTrace(__pyx_f_6hunter_7_tracer_trace_func, ((PyObject *)__pyx_v_self)); - /* "hunter/_tracer.pyx":84 + /* "hunter/_tracer.pyx":86 * def __call__(self, frame, str kind, arg): * trace_func( self, frame, KIND_INTS[kind], arg) * if kind == 0: # <<<<<<<<<<<<<< @@ -4829,21 +4872,21 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h */ } - /* "hunter/_tracer.pyx":86 + /* "hunter/_tracer.pyx":88 * if kind == 0: * PyEval_SetTrace(trace_func, self) * return self # <<<<<<<<<<<<<< * * def trace(self, predicate): */ - __Pyx_TraceLine(86,21,0,__PYX_ERR(0, 86, __pyx_L1_error)) + __Pyx_TraceLine(88,21,0,__PYX_ERR(0, 88, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); - __Pyx_TraceReturnValue(__pyx_r, 21, 0, __PYX_ERR(0, 86, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 21, 0, __PYX_ERR(0, 88, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":82 + /* "hunter/_tracer.pyx":84 * ) * * def __call__(self, frame, str kind, arg): # <<<<<<<<<<<<<< @@ -4858,7 +4901,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 84, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4869,7 +4912,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_6__call__(struct __pyx_obj_6h return __pyx_r; } -/* "hunter/_tracer.pyx":88 +/* "hunter/_tracer.pyx":90 * return self * * def trace(self, predicate): # <<<<<<<<<<<<<< @@ -4916,32 +4959,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_predicate,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 88, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 90, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 88, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "trace", 0) < 0) __PYX_ERR(0, 88, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "trace", 0) < 0) __PYX_ERR(0, 90, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, i); __PYX_ERR(0, 88, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, i); __PYX_ERR(0, 90, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 88, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) } __pyx_v_predicate = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 88, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("trace", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 90, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4980,72 +5023,72 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) __Pyx_RefNannySetupContext("trace", 0); - __Pyx_TraceStartFunc("trace", __pyx_f[0], 88, 0, 0, 0, __PYX_ERR(0, 88, __pyx_L1_error)); + __Pyx_TraceStartFunc("trace", __pyx_f[0], 90, 0, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); - /* "hunter/_tracer.pyx":89 + /* "hunter/_tracer.pyx":91 * * def trace(self, predicate): * self.handler = predicate # <<<<<<<<<<<<<< * cdef PyThreadState *state = PyThreadState_Get() * */ - __Pyx_TraceLine(89,1,0,__PYX_ERR(0, 89, __pyx_L1_error)) + __Pyx_TraceLine(91,1,0,__PYX_ERR(0, 91, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_predicate); __Pyx_GIVEREF(__pyx_v_predicate); __Pyx_GOTREF(__pyx_v_self->handler); __Pyx_DECREF(__pyx_v_self->handler); __pyx_v_self->handler = __pyx_v_predicate; - /* "hunter/_tracer.pyx":90 + /* "hunter/_tracer.pyx":92 * def trace(self, predicate): * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() # <<<<<<<<<<<<<< * * if self.profiling_mode: */ - __Pyx_TraceLine(90,6,0,__PYX_ERR(0, 90, __pyx_L1_error)) + __Pyx_TraceLine(92,6,0,__PYX_ERR(0, 92, __pyx_L1_error)) __pyx_v_state = PyThreadState_Get(); - /* "hunter/_tracer.pyx":92 + /* "hunter/_tracer.pyx":94 * cdef PyThreadState *state = PyThreadState_Get() * * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) */ - __Pyx_TraceLine(92,8,0,__PYX_ERR(0, 92, __pyx_L1_error)) + __Pyx_TraceLine(94,8,0,__PYX_ERR(0, 94, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { - /* "hunter/_tracer.pyx":93 + /* "hunter/_tracer.pyx":95 * * if self.profiling_mode: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) */ - __Pyx_TraceLine(93,14,0,__PYX_ERR(0, 93, __pyx_L1_error)) + __Pyx_TraceLine(95,14,0,__PYX_ERR(0, 95, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 93, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 95, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":94 + /* "hunter/_tracer.pyx":96 * if self.profiling_mode: * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) # <<<<<<<<<<<<<< * threading.setprofile(self) * if state.c_profileobj is NULL: */ - __Pyx_TraceLine(94,22,0,__PYX_ERR(0, 94, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) + __Pyx_TraceLine(96,22,0,__PYX_ERR(0, 96, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_profile_hook, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 94, __pyx_L1_error) + __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_profile_hook, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_4); @@ -5054,18 +5097,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->_threading_previous = __pyx_t_4; __pyx_t_4 = 0; - /* "hunter/_tracer.pyx":95 + /* "hunter/_tracer.pyx":97 * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) # <<<<<<<<<<<<<< * if state.c_profileobj is NULL: * self.previous = None */ - __Pyx_TraceLine(95,27,0,__PYX_ERR(0, 95, __pyx_L1_error)) + __Pyx_TraceLine(97,27,0,__PYX_ERR(0, 97, __pyx_L1_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 95, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 95, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = 1; @@ -5085,12 +5128,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 95, __pyx_L1_error) + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_tracer.pyx":93 + /* "hunter/_tracer.pyx":95 * * if self.profiling_mode: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -5099,42 +5142,42 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":96 + /* "hunter/_tracer.pyx":98 * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) * if state.c_profileobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(96,32,0,__PYX_ERR(0, 96, __pyx_L1_error)) + __Pyx_TraceLine(98,32,0,__PYX_ERR(0, 98, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_profileobj == NULL); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":97 + /* "hunter/_tracer.pyx":99 * threading.setprofile(self) * if state.c_profileobj is NULL: * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * else: */ - __Pyx_TraceLine(97,34,0,__PYX_ERR(0, 97, __pyx_L1_error)) + __Pyx_TraceLine(99,34,0,__PYX_ERR(0, 99, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":98 + /* "hunter/_tracer.pyx":100 * if state.c_profileobj is NULL: * self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * else: * self.previous = (state.c_profileobj) */ - __Pyx_TraceLine(98,37,0,__PYX_ERR(0, 98, __pyx_L1_error)) + __Pyx_TraceLine(100,37,0,__PYX_ERR(0, 100, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":96 + /* "hunter/_tracer.pyx":98 * self._threading_previous = getattr(threading, '_profile_hook', None) * threading.setprofile(self) * if state.c_profileobj is NULL: # <<<<<<<<<<<<<< @@ -5144,14 +5187,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt goto __pyx_L7; } - /* "hunter/_tracer.pyx":100 + /* "hunter/_tracer.pyx":102 * self._previousfunc = NULL * else: * self.previous = (state.c_profileobj) # <<<<<<<<<<<<<< * self._previousfunc = state.c_profilefunc * PyEval_SetProfile(trace_func, self) */ - __Pyx_TraceLine(100,40,0,__PYX_ERR(0, 100, __pyx_L1_error)) + __Pyx_TraceLine(102,40,0,__PYX_ERR(0, 102, __pyx_L1_error)) /*else*/ { __pyx_t_4 = ((PyObject *)__pyx_v_state->c_profileobj); __Pyx_INCREF(__pyx_t_4); @@ -5161,30 +5204,30 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->previous = __pyx_t_4; __pyx_t_4 = 0; - /* "hunter/_tracer.pyx":101 + /* "hunter/_tracer.pyx":103 * else: * self.previous = (state.c_profileobj) * self._previousfunc = state.c_profilefunc # <<<<<<<<<<<<<< * PyEval_SetProfile(trace_func, self) * else: */ - __Pyx_TraceLine(101,48,0,__PYX_ERR(0, 101, __pyx_L1_error)) + __Pyx_TraceLine(103,48,0,__PYX_ERR(0, 103, __pyx_L1_error)) __pyx_t_8 = __pyx_v_state->c_profilefunc; __pyx_v_self->_previousfunc = __pyx_t_8; } __pyx_L7:; - /* "hunter/_tracer.pyx":102 + /* "hunter/_tracer.pyx":104 * self.previous = (state.c_profileobj) * self._previousfunc = state.c_profilefunc * PyEval_SetProfile(trace_func, self) # <<<<<<<<<<<<<< * else: * if self.threading_support is None or self.threading_support: */ - __Pyx_TraceLine(102,50,0,__PYX_ERR(0, 102, __pyx_L1_error)) + __Pyx_TraceLine(104,50,0,__PYX_ERR(0, 104, __pyx_L1_error)) PyEval_SetProfile(__pyx_f_6hunter_7_tracer_trace_func, ((PyObject *)__pyx_v_self)); - /* "hunter/_tracer.pyx":92 + /* "hunter/_tracer.pyx":94 * cdef PyThreadState *state = PyThreadState_Get() * * if self.profiling_mode: # <<<<<<<<<<<<<< @@ -5194,14 +5237,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt goto __pyx_L3; } - /* "hunter/_tracer.pyx":104 + /* "hunter/_tracer.pyx":106 * PyEval_SetProfile(trace_func, self) * else: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) */ - __Pyx_TraceLine(104,54,0,__PYX_ERR(0, 104, __pyx_L1_error)) + __Pyx_TraceLine(106,54,0,__PYX_ERR(0, 106, __pyx_L1_error)) /*else*/ { __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { @@ -5209,22 +5252,22 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_1 = __pyx_t_2; goto __pyx_L9_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 104, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 106, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L9_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":105 + /* "hunter/_tracer.pyx":107 * else: * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_trace_hook', None) # <<<<<<<<<<<<<< * threading.settrace(self) * if state.c_traceobj is NULL: */ - __Pyx_TraceLine(105,66,0,__PYX_ERR(0, 105, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 105, __pyx_L1_error) + __Pyx_TraceLine(107,66,0,__PYX_ERR(0, 107, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = __Pyx_GetAttr3(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_trace_hook, Py_None); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 105, __pyx_L1_error) + __pyx_t_6 = __Pyx_GetAttr3(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_trace_hook, Py_None); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_GIVEREF(__pyx_t_6); @@ -5233,18 +5276,18 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->_threading_previous = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_tracer.pyx":106 + /* "hunter/_tracer.pyx":108 * if self.threading_support is None or self.threading_support: * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) # <<<<<<<<<<<<<< * if state.c_traceobj is NULL: * self.previous = None */ - __Pyx_TraceLine(106,71,0,__PYX_ERR(0, 106, __pyx_L1_error)) + __Pyx_TraceLine(108,71,0,__PYX_ERR(0, 108, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 106, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 106, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = 1; @@ -5264,12 +5307,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__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_6)) __PYX_ERR(0, 106, __pyx_L1_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "hunter/_tracer.pyx":104 + /* "hunter/_tracer.pyx":106 * PyEval_SetProfile(trace_func, self) * else: * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -5278,42 +5321,42 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":107 + /* "hunter/_tracer.pyx":109 * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) * if state.c_traceobj is NULL: # <<<<<<<<<<<<<< * self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(107,76,0,__PYX_ERR(0, 107, __pyx_L1_error)) + __Pyx_TraceLine(109,76,0,__PYX_ERR(0, 109, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_state->c_traceobj == NULL); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":108 + /* "hunter/_tracer.pyx":110 * threading.settrace(self) * if state.c_traceobj is NULL: * self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * else: */ - __Pyx_TraceLine(108,78,0,__PYX_ERR(0, 108, __pyx_L1_error)) + __Pyx_TraceLine(110,78,0,__PYX_ERR(0, 110, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->previous); __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":109 + /* "hunter/_tracer.pyx":111 * if state.c_traceobj is NULL: * self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * else: * self.previous = (state.c_traceobj) */ - __Pyx_TraceLine(109,81,0,__PYX_ERR(0, 109, __pyx_L1_error)) + __Pyx_TraceLine(111,81,0,__PYX_ERR(0, 111, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":107 + /* "hunter/_tracer.pyx":109 * self._threading_previous = getattr(threading, '_trace_hook', None) * threading.settrace(self) * if state.c_traceobj is NULL: # <<<<<<<<<<<<<< @@ -5323,14 +5366,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt goto __pyx_L11; } - /* "hunter/_tracer.pyx":111 + /* "hunter/_tracer.pyx":113 * self._previousfunc = NULL * else: * self.previous = (state.c_traceobj) # <<<<<<<<<<<<<< * self._previousfunc = state.c_tracefunc * PyEval_SetTrace(trace_func, self) */ - __Pyx_TraceLine(111,84,0,__PYX_ERR(0, 111, __pyx_L1_error)) + __Pyx_TraceLine(113,84,0,__PYX_ERR(0, 113, __pyx_L1_error)) /*else*/ { __pyx_t_6 = ((PyObject *)__pyx_v_state->c_traceobj); __Pyx_INCREF(__pyx_t_6); @@ -5340,46 +5383,46 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt __pyx_v_self->previous = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_tracer.pyx":112 + /* "hunter/_tracer.pyx":114 * else: * self.previous = (state.c_traceobj) * self._previousfunc = state.c_tracefunc # <<<<<<<<<<<<<< * PyEval_SetTrace(trace_func, self) * return self */ - __Pyx_TraceLine(112,92,0,__PYX_ERR(0, 112, __pyx_L1_error)) + __Pyx_TraceLine(114,92,0,__PYX_ERR(0, 114, __pyx_L1_error)) __pyx_t_8 = __pyx_v_state->c_tracefunc; __pyx_v_self->_previousfunc = __pyx_t_8; } __pyx_L11:; - /* "hunter/_tracer.pyx":113 + /* "hunter/_tracer.pyx":115 * self.previous = (state.c_traceobj) * self._previousfunc = state.c_tracefunc * PyEval_SetTrace(trace_func, self) # <<<<<<<<<<<<<< * return self * */ - __Pyx_TraceLine(113,94,0,__PYX_ERR(0, 113, __pyx_L1_error)) + __Pyx_TraceLine(115,94,0,__PYX_ERR(0, 115, __pyx_L1_error)) PyEval_SetTrace(__pyx_f_6hunter_7_tracer_trace_func, ((PyObject *)__pyx_v_self)); } __pyx_L3:; - /* "hunter/_tracer.pyx":114 + /* "hunter/_tracer.pyx":116 * self._previousfunc = state.c_tracefunc * PyEval_SetTrace(trace_func, self) * return self # <<<<<<<<<<<<<< * * def stop(self): */ - __Pyx_TraceLine(114,98,0,__PYX_ERR(0, 114, __pyx_L1_error)) + __Pyx_TraceLine(116,98,0,__PYX_ERR(0, 116, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); - __Pyx_TraceReturnValue(__pyx_r, 98, 0, __PYX_ERR(0, 114, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 98, 0, __PYX_ERR(0, 116, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":88 + /* "hunter/_tracer.pyx":90 * return self * * def trace(self, predicate): # <<<<<<<<<<<<<< @@ -5397,7 +5440,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 88, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.trace", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5408,7 +5451,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8trace(struct __pyx_obj_6hunt return __pyx_r; } -/* "hunter/_tracer.pyx":116 +/* "hunter/_tracer.pyx":118 * return self * * def stop(self): # <<<<<<<<<<<<<< @@ -5474,51 +5517,51 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) __Pyx_RefNannySetupContext("stop", 0); - __Pyx_TraceStartFunc("stop", __pyx_f[0], 116, 0, 0, 0, __PYX_ERR(0, 116, __pyx_L1_error)); + __Pyx_TraceStartFunc("stop", __pyx_f[0], 118, 0, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); - /* "hunter/_tracer.pyx":117 + /* "hunter/_tracer.pyx":119 * * def stop(self): * if self.handler is not None: # <<<<<<<<<<<<<< * if self.profiling_mode: * if self.previous is None: */ - __Pyx_TraceLine(117,5,0,__PYX_ERR(0, 117, __pyx_L1_error)) + __Pyx_TraceLine(119,5,0,__PYX_ERR(0, 119, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->handler != Py_None); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":118 + /* "hunter/_tracer.pyx":120 * def stop(self): * if self.handler is not None: * if self.profiling_mode: # <<<<<<<<<<<<<< * if self.previous is None: * PyEval_SetProfile(NULL, NULL) */ - __Pyx_TraceLine(118,7,0,__PYX_ERR(0, 118, __pyx_L1_error)) + __Pyx_TraceLine(120,7,0,__PYX_ERR(0, 120, __pyx_L1_error)) if (__pyx_v_self->profiling_mode) { - /* "hunter/_tracer.pyx":119 + /* "hunter/_tracer.pyx":121 * if self.handler is not None: * if self.profiling_mode: * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetProfile(NULL, NULL) * else: */ - __Pyx_TraceLine(119,13,0,__PYX_ERR(0, 119, __pyx_L1_error)) + __Pyx_TraceLine(121,13,0,__PYX_ERR(0, 121, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->previous == Py_None); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":120 + /* "hunter/_tracer.pyx":122 * if self.profiling_mode: * if self.previous is None: * PyEval_SetProfile(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetProfile(self._previousfunc, self.previous) */ - __Pyx_TraceLine(120,15,0,__PYX_ERR(0, 120, __pyx_L1_error)) + __Pyx_TraceLine(122,15,0,__PYX_ERR(0, 122, __pyx_L1_error)) PyEval_SetProfile(NULL, NULL); - /* "hunter/_tracer.pyx":119 + /* "hunter/_tracer.pyx":121 * if self.handler is not None: * if self.profiling_mode: * if self.previous is None: # <<<<<<<<<<<<<< @@ -5528,27 +5571,27 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt goto __pyx_L5; } - /* "hunter/_tracer.pyx":122 + /* "hunter/_tracer.pyx":124 * PyEval_SetProfile(NULL, NULL) * else: * PyEval_SetProfile(self._previousfunc, self.previous) # <<<<<<<<<<<<<< * self.handler = self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(122,19,0,__PYX_ERR(0, 122, __pyx_L1_error)) + __Pyx_TraceLine(124,19,0,__PYX_ERR(0, 124, __pyx_L1_error)) /*else*/ { PyEval_SetProfile(__pyx_v_self->_previousfunc, ((PyObject *)__pyx_v_self->previous)); } __pyx_L5:; - /* "hunter/_tracer.pyx":123 + /* "hunter/_tracer.pyx":125 * else: * PyEval_SetProfile(self._previousfunc, self.previous) * self.handler = self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: */ - __Pyx_TraceLine(123,25,0,__PYX_ERR(0, 123, __pyx_L1_error)) + __Pyx_TraceLine(125,25,0,__PYX_ERR(0, 125, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -5560,47 +5603,47 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":124 + /* "hunter/_tracer.pyx":126 * PyEval_SetProfile(self._previousfunc, self.previous) * self.handler = self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) */ - __Pyx_TraceLine(124,30,0,__PYX_ERR(0, 124, __pyx_L1_error)) + __Pyx_TraceLine(126,30,0,__PYX_ERR(0, 126, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":125 + /* "hunter/_tracer.pyx":127 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.setprofile(self._threading_previous) * self._threading_previous = None */ - __Pyx_TraceLine(125,37,0,__PYX_ERR(0, 125, __pyx_L1_error)) + __Pyx_TraceLine(127,37,0,__PYX_ERR(0, 127, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L7_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 125, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 127, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L7_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":126 + /* "hunter/_tracer.pyx":128 * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) # <<<<<<<<<<<<<< * self._threading_previous = None * else: */ - __Pyx_TraceLine(126,43,0,__PYX_ERR(0, 126, __pyx_L1_error)) + __Pyx_TraceLine(128,43,0,__PYX_ERR(0, 128, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 126, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 126, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_setprofile); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = 1; @@ -5620,26 +5663,26 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 126, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":127 + /* "hunter/_tracer.pyx":129 * if self.threading_support is None or self.threading_support: * threading.setprofile(self._threading_previous) * self._threading_previous = None # <<<<<<<<<<<<<< * else: * if self.previous is None: */ - __Pyx_TraceLine(127,46,0,__PYX_ERR(0, 127, __pyx_L1_error)) + __Pyx_TraceLine(129,46,0,__PYX_ERR(0, 129, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); __pyx_v_self->_threading_previous = Py_None; - /* "hunter/_tracer.pyx":125 + /* "hunter/_tracer.pyx":127 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -5648,7 +5691,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":118 + /* "hunter/_tracer.pyx":120 * def stop(self): * if self.handler is not None: * if self.profiling_mode: # <<<<<<<<<<<<<< @@ -5658,29 +5701,29 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt goto __pyx_L4; } - /* "hunter/_tracer.pyx":129 + /* "hunter/_tracer.pyx":131 * self._threading_previous = None * else: * if self.previous is None: # <<<<<<<<<<<<<< * PyEval_SetTrace(NULL, NULL) * else: */ - __Pyx_TraceLine(129,49,0,__PYX_ERR(0, 129, __pyx_L1_error)) + __Pyx_TraceLine(131,49,0,__PYX_ERR(0, 131, __pyx_L1_error)) /*else*/ { __pyx_t_1 = (__pyx_v_self->previous == Py_None); if (__pyx_t_1) { - /* "hunter/_tracer.pyx":130 + /* "hunter/_tracer.pyx":132 * else: * if self.previous is None: * PyEval_SetTrace(NULL, NULL) # <<<<<<<<<<<<<< * else: * PyEval_SetTrace(self._previousfunc, self.previous) */ - __Pyx_TraceLine(130,55,0,__PYX_ERR(0, 130, __pyx_L1_error)) + __Pyx_TraceLine(132,55,0,__PYX_ERR(0, 132, __pyx_L1_error)) PyEval_SetTrace(NULL, NULL); - /* "hunter/_tracer.pyx":129 + /* "hunter/_tracer.pyx":131 * self._threading_previous = None * else: * if self.previous is None: # <<<<<<<<<<<<<< @@ -5690,27 +5733,27 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt goto __pyx_L9; } - /* "hunter/_tracer.pyx":132 + /* "hunter/_tracer.pyx":134 * PyEval_SetTrace(NULL, NULL) * else: * PyEval_SetTrace(self._previousfunc, self.previous) # <<<<<<<<<<<<<< * self.handler = self.previous = None * self._previousfunc = NULL */ - __Pyx_TraceLine(132,59,0,__PYX_ERR(0, 132, __pyx_L1_error)) + __Pyx_TraceLine(134,59,0,__PYX_ERR(0, 134, __pyx_L1_error)) /*else*/ { PyEval_SetTrace(__pyx_v_self->_previousfunc, ((PyObject *)__pyx_v_self->previous)); } __pyx_L9:; - /* "hunter/_tracer.pyx":133 + /* "hunter/_tracer.pyx":135 * else: * PyEval_SetTrace(self._previousfunc, self.previous) * self.handler = self.previous = None # <<<<<<<<<<<<<< * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: */ - __Pyx_TraceLine(133,65,0,__PYX_ERR(0, 133, __pyx_L1_error)) + __Pyx_TraceLine(135,65,0,__PYX_ERR(0, 135, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->handler); @@ -5722,47 +5765,47 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __Pyx_DECREF(__pyx_v_self->previous); __pyx_v_self->previous = Py_None; - /* "hunter/_tracer.pyx":134 + /* "hunter/_tracer.pyx":136 * PyEval_SetTrace(self._previousfunc, self.previous) * self.handler = self.previous = None * self._previousfunc = NULL # <<<<<<<<<<<<<< * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) */ - __Pyx_TraceLine(134,70,0,__PYX_ERR(0, 134, __pyx_L1_error)) + __Pyx_TraceLine(136,70,0,__PYX_ERR(0, 136, __pyx_L1_error)) __pyx_v_self->_previousfunc = NULL; - /* "hunter/_tracer.pyx":135 + /* "hunter/_tracer.pyx":137 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< * threading.settrace(self._threading_previous) * self._threading_previous = None */ - __Pyx_TraceLine(135,77,0,__PYX_ERR(0, 135, __pyx_L1_error)) + __Pyx_TraceLine(137,77,0,__PYX_ERR(0, 137, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_self->threading_support == Py_None); if (!__pyx_t_2) { } else { __pyx_t_1 = __pyx_t_2; goto __pyx_L11_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 135, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_self->threading_support); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 137, __pyx_L1_error) __pyx_t_1 = __pyx_t_2; __pyx_L11_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_tracer.pyx":136 + /* "hunter/_tracer.pyx":138 * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) # <<<<<<<<<<<<<< * self._threading_previous = None * */ - __Pyx_TraceLine(136,83,0,__PYX_ERR(0, 136, __pyx_L1_error)) + __Pyx_TraceLine(138,83,0,__PYX_ERR(0, 138, __pyx_L1_error)) __pyx_t_6 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 136, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_threading); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 136, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_settrace); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_7 = 1; @@ -5782,26 +5825,26 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_7, (2-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 136, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_tracer.pyx":137 + /* "hunter/_tracer.pyx":139 * if self.threading_support is None or self.threading_support: * threading.settrace(self._threading_previous) * self._threading_previous = None # <<<<<<<<<<<<<< * * def __enter__(self): */ - __Pyx_TraceLine(137,86,0,__PYX_ERR(0, 137, __pyx_L1_error)) + __Pyx_TraceLine(139,86,0,__PYX_ERR(0, 139, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threading_previous); __Pyx_DECREF(__pyx_v_self->_threading_previous); __pyx_v_self->_threading_previous = Py_None; - /* "hunter/_tracer.pyx":135 + /* "hunter/_tracer.pyx":137 * self.handler = self.previous = None * self._previousfunc = NULL * if self.threading_support is None or self.threading_support: # <<<<<<<<<<<<<< @@ -5812,7 +5855,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt } __pyx_L4:; - /* "hunter/_tracer.pyx":117 + /* "hunter/_tracer.pyx":119 * * def stop(self): * if self.handler is not None: # <<<<<<<<<<<<<< @@ -5821,7 +5864,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt */ } - /* "hunter/_tracer.pyx":116 + /* "hunter/_tracer.pyx":118 * return self * * def stop(self): # <<<<<<<<<<<<<< @@ -5831,7 +5874,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 116, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); @@ -5842,7 +5885,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 116, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 118, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.stop", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5853,7 +5896,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_10stop(struct __pyx_obj_6hunt return __pyx_r; } -/* "hunter/_tracer.pyx":139 +/* "hunter/_tracer.pyx":141 * self._threading_previous = None * * def __enter__(self): # <<<<<<<<<<<<<< @@ -5912,23 +5955,23 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) __Pyx_RefNannySetupContext("__enter__", 0); - __Pyx_TraceStartFunc("__enter__", __pyx_f[0], 139, 0, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); + __Pyx_TraceStartFunc("__enter__", __pyx_f[0], 141, 0, 0, 0, __PYX_ERR(0, 141, __pyx_L1_error)); - /* "hunter/_tracer.pyx":140 + /* "hunter/_tracer.pyx":142 * * def __enter__(self): * return self # <<<<<<<<<<<<<< * * def __exit__(self, exc_type, exc_val, exc_tb): */ - __Pyx_TraceLine(140,1,0,__PYX_ERR(0, 140, __pyx_L1_error)) + __Pyx_TraceLine(142,1,0,__PYX_ERR(0, 142, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_self); __pyx_r = ((PyObject *)__pyx_v_self); - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 140, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 142, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_tracer.pyx":139 + /* "hunter/_tracer.pyx":141 * self._threading_previous = None * * def __enter__(self): # <<<<<<<<<<<<<< @@ -5942,7 +5985,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 141, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__enter__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5953,7 +5996,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_12__enter__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_tracer.pyx":142 +/* "hunter/_tracer.pyx":144 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< @@ -6001,38 +6044,38 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_exc_type,&__pyx_mstate_global->__pyx_n_u_exc_val,&__pyx_mstate_global->__pyx_n_u_exc_tb,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 142, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 144, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 142, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 144, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 142, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 144, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 142, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 144, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__exit__", 0) < 0) __PYX_ERR(0, 142, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__exit__", 0) < 0) __PYX_ERR(0, 144, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, i); __PYX_ERR(0, 142, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, i); __PYX_ERR(0, 144, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 142, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 144, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 142, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 144, __pyx_L3_error) values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 142, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 144, __pyx_L3_error) } __pyx_v_exc_type = values[0]; __pyx_v_exc_val = values[1]; @@ -6040,7 +6083,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 142, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__exit__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 144, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -6073,14 +6116,14 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) __Pyx_RefNannySetupContext("__exit__", 0); - __Pyx_TraceStartFunc("__exit__", __pyx_f[0], 142, 0, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceStartFunc("__exit__", __pyx_f[0], 144, 0, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); - /* "hunter/_tracer.pyx":143 + /* "hunter/_tracer.pyx":145 * * def __exit__(self, exc_type, exc_val, exc_tb): * self.stop() # <<<<<<<<<<<<<< */ - __Pyx_TraceLine(143,1,0,__PYX_ERR(0, 143, __pyx_L1_error)) + __Pyx_TraceLine(145,1,0,__PYX_ERR(0, 145, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; @@ -6088,12 +6131,12 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_3, (1-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 143, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_tracer.pyx":142 + /* "hunter/_tracer.pyx":144 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< @@ -6102,7 +6145,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); @@ -6111,7 +6154,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 144, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.__exit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7068,26 +7111,26 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { #endif __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(2, 13, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 56, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 58, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = &__pyx_type_6hunter_7_tracer_Tracer; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro == PyObject_GenericGetAttr)) { __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Tracer, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Tracer, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) #if CYTHON_USE_TYPE_SLOTS if (__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset == 0) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer->tp_weaklistoffset = offsetof(struct __pyx_obj_6hunter_7_tracer_Tracer, __weakref__); #endif - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 56, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7608,60 +7651,60 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); * * cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* arg) noexcept: # <<<<<<<<<<<<<< * cdef Tracer self = tracer - * + * cdef FrameType frame_object = frame */ __Pyx_TraceLine(24,27,0,__PYX_ERR(0, 24, __pyx_L1_error)) - /* "hunter/_tracer.pyx":88 + /* "hunter/_tracer.pyx":90 * return self * * def trace(self, predicate): # <<<<<<<<<<<<<< * self.handler = predicate * cdef PyThreadState *state = PyThreadState_Get() */ - __Pyx_TraceLine(88,40,0,__PYX_ERR(0, 88, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_trace, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_TraceLine(90,40,0,__PYX_ERR(0, 90, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_9trace, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_trace, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_trace, __pyx_t_2) < 0) __PYX_ERR(0, 88, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_trace, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":116 + /* "hunter/_tracer.pyx":118 * return self * * def stop(self): # <<<<<<<<<<<<<< * if self.handler is not None: * if self.profiling_mode: */ - __Pyx_TraceLine(116,41,0,__PYX_ERR(0, 116, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_stop, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 116, __pyx_L1_error) + __Pyx_TraceLine(118,41,0,__PYX_ERR(0, 118, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_11stop, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer_stop, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_stop, __pyx_t_2) < 0) __PYX_ERR(0, 116, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_stop, __pyx_t_2) < 0) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":139 + /* "hunter/_tracer.pyx":141 * self._threading_previous = None * * def __enter__(self): # <<<<<<<<<<<<<< * return self * */ - __Pyx_TraceLine(139,42,0,__PYX_ERR(0, 139, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___enter, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error) + __Pyx_TraceLine(141,42,0,__PYX_ERR(0, 141, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_13__enter__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___enter, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_enter, __pyx_t_2) < 0) __PYX_ERR(0, 139, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_enter, __pyx_t_2) < 0) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_tracer.pyx":142 + /* "hunter/_tracer.pyx":144 * return self * * def __exit__(self, exc_type, exc_val, exc_tb): # <<<<<<<<<<<<<< * self.stop() */ - __Pyx_TraceLine(142,43,0,__PYX_ERR(0, 142, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___exit, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error) + __Pyx_TraceLine(144,43,0,__PYX_ERR(0, 144, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_15__exit__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___exit, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_exit, __pyx_t_2) < 0) __PYX_ERR(0, 142, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_7_tracer_Tracer, __pyx_mstate_global->__pyx_n_u_exit, __pyx_t_2) < 0) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "(tree fragment)":1 @@ -7799,6 +7842,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_exc_val, sizeof(__pyx_k_exc_val), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exc_val */ {__pyx_k_exception, sizeof(__pyx_k_exception), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exception */ {__pyx_k_exit, sizeof(__pyx_k_exit), 0, 1, 1}, /* PyObject cname: __pyx_n_u_exit */ + {__pyx_k_f_trace, sizeof(__pyx_k_f_trace), 0, 1, 1}, /* PyObject cname: __pyx_n_u_f_trace */ {__pyx_k_failed, sizeof(__pyx_k_failed), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_failed */ {__pyx_k_file, sizeof(__pyx_k_file), 0, 1, 1}, /* PyObject cname: __pyx_n_u_file */ {__pyx_k_frame, sizeof(__pyx_k_frame), 0, 1, 1}, /* PyObject cname: __pyx_n_u_frame */ @@ -7867,7 +7911,7 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, c static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); - __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_id); if (!__pyx_builtin_id) __PYX_ERR(0, 74, __pyx_L1_error) + __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_id); if (!__pyx_builtin_id) __PYX_ERR(0, 76, __pyx_L1_error) __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) return 0; __pyx_L1_error:; @@ -7940,47 +7984,47 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { PyObject* tuple_dedup_map = PyDict_New(); if (unlikely(!tuple_dedup_map)) return -1; { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 24, 201}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 24, 215}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_tracer, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_KIND_INTS}; - __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace_func, __pyx_k_z_d_xs_4q_QfA_1F_q_uCr_T_Ja_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace_func, __pyx_k_z_a_1_d_xs_4q_QfA_1F_q_uCr_T_Ja, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 57, 68}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 59, 68}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_profiling_mode}; __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_cinit, __pyx_k_q_Kq_L_Q_1_a_IQ_IQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 67, 30}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 69, 30}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state}; __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_dealloc, __pyx_k_A_5Q_5_C_1_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 72, 83}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 74, 83}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_aq_4y_Q_is_D_Q_j_Q_j_T_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 82, 52}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 84, 52}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg}; __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_call_2, __pyx_k_A_v_6gYawlZ_5_1_1L_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 88, 232}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 90, 232}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_predicate, __pyx_mstate->__pyx_n_u_state}; __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace, __pyx_k_A_Kq_5Q_4q_t_c_c_Q_7_Oq_AQ_uN_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 116, 204}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 118, 204}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_stop, __pyx_k_A_4y_q_t1_4z_A_QfA_Qd_d_Kt_q_Q_4, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 139, 7}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 141, 7}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_enter, __pyx_k_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 142, 9}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 144, 9}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_exc_type, __pyx_mstate->__pyx_n_u_exc_val, __pyx_mstate->__pyx_n_u_exc_tb}; __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_exit, __pyx_k_A_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; } @@ -8363,6 +8407,16 @@ static int __Pyx_TraceSetupAndCall(PyCodeObject** code, #endif #endif +/* PyObjectSetAttrStr */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_setattro)) + return tp->tp_setattro(obj, attr_name, value); + return PyObject_SetAttr(obj, attr_name, value); +} +#endif + /* PyFunctionFastCall */ #if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject *const *args, Py_ssize_t na, From cb55f539e41b865cdf2ce5530c530dd51bdd516a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 08:28:23 +0300 Subject: [PATCH 38/80] Handle new style of cython 3.1 making fake and broken code objects and/or lasti. --- src/hunter/_event.c | 31 +++++++++++-------- src/hunter/_event.pyx | 2 +- src/hunter/_predicates.c | 66 ++++++++++++++++++++-------------------- src/hunter/event.py | 2 +- tests/sample5.pyx | 2 +- tests/setup.py | 2 +- tox.ini | 2 +- 7 files changed, 56 insertions(+), 51 deletions(-) diff --git a/src/hunter/_event.c b/src/hunter/_event.c index 361fc09..fa73633 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -3397,7 +3397,6 @@ static const char __pyx_k_A_4y_1_t1_T_XT_a_wc_1_t1[] = "\200A\330\010\013\2104\2 static const char __pyx_k_hk_A_1_S_S_U_U_V_5_7_q_a_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"S\005\360\000\000S\005U\005\360\000\000U\005V\005\330\004\023\2205\230\010\240\001\240\021\330\004\007\200|\2207\230!\330\010'\240q\250\010\260\016\270a\330\004\013\2101"; static const char __pyx_k_NO_SOURCE_not_reading_binary[] = "\077\077? NO SOURCE: not reading binary "; static const char __pyx_k_pyx_unpickle_Event__set_state[] = "__pyx_unpickle_Event__set_state"; -static const char __pyx_k_A_4_S_at1_nAT_Q_xt9Cq_G1A_A_t1[] = "\200A\360\006\000\t\014\2104\210~\230S\240\001\330\014\027\320\027.\250a\250t\2601\330\014\026\220n\240A\240T\250\034\260Q\330\014\017\210x\220t\2309\240C\240q\330\020\024\320\024$\240G\2501\250A\340\020\024\320\024$\240A\330\010\017\210t\2201"; static const char __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T[] = "\200\001\330\004\014\210H\220E\230\030\240\021\240!\330\004\t\210\027\220\004\220A\330\004\t\210\033\220D\230\001\330\004\t\210\031\220$\220a\330\004\t\210\031\220$\220a\330\004\t\210\034\220Q\330\004\t\210\031\220$\220a\330\004\t\210\030\220\024\220Q\330\004\t\320\t\036\230d\240!\330\004\t\210\031\220$\220a\330\004\t\210\035\220d\230!\330\004\t\210\037\230\004\230A\330\004\t\320\t\035\230T\240\021\330\004\t\210\035\220d\230!\330\004\t\210\034\220T\230\021\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\036\220t\2301\330\004\t\210\037\230\004\230A\330\004\t\210\033\220D\230\001\330\004\t\320\t\031\230\024\230Q\330\004\013\2101"; static const char __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t[] = "\200\001\330\004\014\210H\220E\230\030\240\021\240!\340\004\t\210\031\220$\220l\240!\330\004\t\210\035\220d\320\032*\250!\330\004\t\210\037\230\004\320\034.\250a\330\004\t\320\t\035\230T\240\021\330\004\t\210\035\220d\320\032*\250!\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\036\220t\320\033+\2501\330\004\t\210\037\230\004\320\034.\250a\330\004\t\320\t\031\230\024\320\0350\260\001\340\004\007\200q\330\010\r\210\\\230\021\230%\230|\2501\250G\2604\260u\270I\300T\310\030\320QW\320WX\330\010\r\210[\230\001\230\025\230l\250!\2507\260$\260e\2709\300D\310\007\310v\320UV\330\010\r\210W\220L\240\001\240\024\240Q\340\010\r\210\\\230\021\330\010\r\210[\230\001\330\010\r\210W\220A\340\004\t\210\033\220D\230\001\330\004\t\210\031\220$\220a\330\004\t\210\031\220$\220a\330\004\t\210\034\220Q\330\004\t\210\030\220\024\220Q\330\004\t\320\t\036\230d\240!\340\004\013\2101"; static const char __pyx_k_AT_QdR_mmxxyy_J_J_W_W_b_b_c_c_g[] = "\200\001\330\004\020\220\t\230\033\240A\240T\250\034\260]\300+\310Q\310d\320R^\320^m\320mx\320xy\320y}\360\000\000~\001J\002\360\000\000J\002W\002\360\000\000W\002b\002\360\000\000b\002c\002\360\000\000c\002g\002\360\000\000g\002s\002\360\000\000s\002G\003\360\000\000G\003R\003\360\000\000R\003S\003\360\000\000S\003W\003\360\000\000W\003c\003\360\000\000c\003o\003\360\000\000o\003z\003\360\000\000z\003{\003\360\000\000{\003\003\360\000\000\003K\004\360\000\000K\004[\004\360\000\000[\004f\004\360\000\000f\004g\004\360\000\000g\004k\004\360\000\000k\004w\004\360\000\000w\004B\005\360\000\000B\005M\005\360\000\000M\005N\005\360\000\000N\005R\005\360\000\000R\005^\005\360\000\000^\005i\005\360\000\000i\005t\005\360\000\000t\005u\005\360\000\000u\005y\005\360\000\000y\005E\006\360\000\000E\006P\006\360\000\000P\006[\006\360\000\000[\006\\\006\360\000\000\\\006`\006\360\000\000`\006l\006\360\000\000l\006w\006\360\000\000w\006B\007\360\000\000B\007C\007\360\000\000C\007H\007\360\000\000H\007T\007\360\000\000T\007_\007\360\000\000_\007j\007\360\000\000j\007k\007\360\000\000k\007p\007\360\000\000p\007|\007\360\000\000|\007G\010\360\000\000G\010R\010\360\000\000R\010S\010\360\000\000S\010X\010\360\000\000X\010d\010\360\000\000d\010r\010\360\000\000r\010}\010\360\000\000}\010~\010\360\000\000~\010C\t\360\000\000C\tO\t\360\000\000O\t^\t\360\000\000^\ti\t\360\000\000i\tj\t\360\000\000j\to\t\360\000\000o\t{\t\360\000\000{\tB\n\360\000\000B\nM\n\360\000\000M\nN\n\360\000\000N\nS\n\360\000\000S\n_\n\360\000\000_\nj\n\360\000\000j\nu\n\360\000\000u\nv\n\360\000\000v\n{\n\360\000\000{\nG\013\360\000\000G\013P\013\360\000\000P\013[\013\360\000\000[\013\\\013\360\000\000\\\013a\013\360\000\000a\013m\013\360\000\000m\013v\013\360\000\000v\013A\014\360\000\000A\014B\014\360\000\000B\014G\014\360\000\000G\014S\014\360\000\000S\014_\014\360\000\000_\014j\014\360\000\000j\014k\014\360\000\000k\014p\014\360\000\000p\014|\014\360\000\000|\014E\r\360\000\000E\rP\r\360\000\000P\rQ\r\360\000""\000Q\rV\r\360\000\000V\rb\r\360\000\000b\rj\r\360\000\000j\ru\r\360\000\000u\rv\r\360\000\000v\r{\r\360\000\000{\rG\016\360\000\000G\016\\\016\360\000\000\\\016g\016\360\000\000g\016h\016\360\000\000h\016i\016\330\004\007\200s\210!\210=\230\002\230#\230T\240\027\250\001\250\036\260q\330\010\024\220I\230W\240A\240[\260\001\260\021"; @@ -3407,6 +3406,7 @@ static const char __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij[] = "\200A\330\010\013 static const char __pyx_k_A_G1_IQ_HF_AQ_IQ_IQ_L_KuBa_IQ_M[] = "\200A\330\010\014\210G\2201\330\010\014\210I\220Q\330\010\014\210H\220F\230*\240A\240Q\330\010\014\210I\220Q\330\010\014\210I\220Q\330\010\014\320\014!\240\021\330\010\014\210L\230\001\330\010\014\210K\220u\230B\230a\340\010\014\210I\220Q\330\010\014\210M\230\021\330\010\014\210O\2301\330\010\014\320\014 \240\001\330\010\014\210M\230\021\330\010\014\210L\230\001\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210N\230!\330\010\014\210O\2301\330\010\014\210K\220q\330\010\014\320\014\034\230A"; static const char __pyx_k_T_4_4Obbffqqu_v_E_E_I_I_S_S_W_W[] = "\200\001\360\010\000\005\016\210T\220\030\230\024\230\\\250\024\250^\2704\270|\3104\320Ob\320bf\320fq\320qu\360\000\000v\001E\002\360\000\000E\002I\002\360\000\000I\002S\002\360\000\000S\002W\002\360\000\000W\002a\002\360\000\000a\002e\002\360\000\000e\002o\002\360\000\000o\002s\002\360\000\000s\002}\002\360\000\000}\002A\003\360\000\000A\003K\003\360\000\000K\003O\003\360\000\000O\003Y\003\360\000\000Y\003]\003\360\000\000]\003j\003\360\000\000j\003n\003\360\000\000n\003|\003\360\000\000|\003@\004\360\000\000@\004F\004\360\000\000F\004J\004\360\000\000J\004T\004\360\000\000T\004X\004\360\000\000X\004`\004\360\000\000`\004d\004\360\000\000d\004l\004\360\000\000l\004p\004\360\000\000p\004{\004\360\000\000{\004\004\360\000\000\004G\005\360\000\000G\005K\005\360\000\000K\005R\005\360\000\000R\005V\005\360\000\000V\005W\005\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\2307\240'\250\025\250c\260\024\260[\300\007\300u\310C\310t\320S`\320`g\320gl\320lo\320os\320s~\360\000\000\001F\002\360\000\000F\002K\002\360\000\000K\002N\002\360\000\000N\002R\002\360\000\000R\002d\002\360\000\000d\002k\002\360\000\000k\002p\002\360\000\000p\002s\002\360\000\000s\002w\002\360\000\000w\002A\003\360\000\000A\003H\003\360\000\000H\003M\003\360\000\000M\003P\003\360\000\000P\003T\003\360\000\000T\003b\003\360\000\000b\003i\003\360\000\000i\003n\003\360\000\000n\003q\003\360\000\000q\003u\003\360\000\000u\003~\003\360\000\000~\003E\004\360\000\000E\004J\004\360\000\000J\004M\004\360\000\000M\004Q\004\360\000\000Q\004Z\004\360\000\000Z\004a\004\360\000\000a\004f\004\360\000\000f\004i\004\360\000\000i\004m\004\360\000\000m\004v\004\360\000\000v\004}\004\360\000\000}\004B\005\360\000\000B\005E\005\360\000\000E\005I\005\360\000\000I\005R\005\360\000\000R\005Y\005\360\000\000Y\005^\005\360\000\000^\005a\005\360\000\000a\005e\005\360\000\000e\005n\005\360\000\000n\005u\005\360\000\000u\005z\005\360\000\000z\005}\005\360\000""\000}\005A\006\360\000\000A\006J\006\360\000\000J\006Q\006\360\000\000Q\006V\006\360\000\000V\006Y\006\360\000\000Y\006]\006\360\000\000]\006i\006\360\000\000i\006p\006\360\000\000p\006u\006\360\000\000u\006x\006\360\000\000x\006|\006\360\000\000|\006I\007\360\000\000I\007P\007\360\000\000P\007U\007\360\000\000U\007X\007\360\000\000X\007\\\007\360\000\000\\\007a\007\360\000\000a\007h\007\360\000\000h\007m\007\360\000\000m\007p\007\360\000\000p\007t\007\360\000\000t\007}\007\360\000\000}\007D\010\360\000\000D\010I\010\360\000\000I\010L\010\360\000\000L\010P\010\360\000\000P\010W\010\360\000\000W\010^\010\360\000\000^\010c\010\360\000\000c\010f\010\360\000\000f\010j\010\360\000\000j\010p\010\360\000\000p\010w\010\360\000\000w\010x\010\330\004\007\200q\330\010\017\320\017&\240d\250!\2507\260+\270W\300A\340\010\017\320\017&\240d\250!\2507\260+\270Q"; static const char __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83[] = "\200A\340\010\013\2104\210{\230#\230Q\330\014\023\2204\220|\2401\330\014\027\220t\2301\330\014\017\210t\2201\330\020\033\2304\230x\240t\2501\250A\330\014\017\210t\2201\330\020\033\2301\330\021\031\230\031\240\"\240H\250A\330\020\033\2308\2403\240a\330\021\031\230\031\240\"\240G\2501\330\020\035\320\035-\250T\260\021\260$\260a\330\020\024\220G\2301\230H\240A\330\024!\240\033\250B\250a\330\024\027\220v\230Q\230a\330\030#\2401\330\030\031\340\014\020\220\r\230Q\330\010\017\210t\2201"; +static const char __pyx_k_A_4_S_at1_nAT_Q_xt3ay_a_G1A_A_t1[] = "\200A\360\006\000\t\014\2104\210~\230S\240\001\330\014\027\320\027.\250a\250t\2601\330\014\026\220n\240A\240T\250\034\260Q\330\014\017\210x\220t\2303\230a\230y\250\002\250,\260a\330\020\024\320\024$\240G\2501\250A\340\020\024\320\024$\240A\330\010\017\210t\2201"; static const char __pyx_k_A_4y_1_4wfAQ_s_Kq_Zs_U_g_X___ggj[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\033\2304\230w\240f\250A\250Q\330\014\017\320\017\037\230s\240!\340\020\024\220K\230q\330\021\025\220Z\230s\240+\250U\260$\260g\270[\310\001\310\037\320X[\320[_\320_g\320gj\320jk\340\020\024\220K\230q\330\021\025\220Y\230k\250\021\250!\340\020\024\220K\230q\330\021\025\220Y\230k\250\021\250!\330\020\024\220K\230q\340\020\024\220K\230q\330\010\017\210t\2201"; static const char __pyx_k_Incompatible_checksums_0x_x_vs_0[] = "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))"; static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; @@ -4780,6 +4780,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; int __pyx_t_4; + Py_ssize_t __pyx_t_5; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -4803,7 +4804,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * if self._instruction is UNSET: * position = Hunter_PyFrame_GetLasti(self.frame) # <<<<<<<<<<<<<< * co_code = PyCode_GetCode(self.code_getter()) - * if co_code and position >= 0: + * if co_code and len(co_code) > position >= 0: */ __Pyx_TraceLine(100,10,0,__PYX_ERR(0, 100, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); @@ -4815,7 +4816,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * if self._instruction is UNSET: * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) # <<<<<<<<<<<<<< - * if co_code and position >= 0: + * if co_code and len(co_code) > position >= 0: * self._instruction = co_code[position] */ __Pyx_TraceLine(101,16,0,__PYX_ERR(0, 101, __pyx_L1_error)) @@ -4830,7 +4831,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ /* "hunter/_event.pyx":102 * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) - * if co_code and position >= 0: # <<<<<<<<<<<<<< + * if co_code and len(co_code) > position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] * else: */ @@ -4841,19 +4842,23 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_t_1 = __pyx_t_4; goto __pyx_L5_bool_binop_done; } - __pyx_t_4 = (__pyx_v_position >= 0); + __pyx_t_5 = PyObject_Length(__pyx_v_co_code); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_4 = (__pyx_t_5 > __pyx_v_position); + if (__pyx_t_4) { + __pyx_t_4 = (__pyx_v_position >= 0); + } __pyx_t_1 = __pyx_t_4; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { /* "hunter/_event.pyx":103 * co_code = PyCode_GetCode(self.code_getter()) - * if co_code and position >= 0: + * if co_code and len(co_code) > position >= 0: * self._instruction = co_code[position] # <<<<<<<<<<<<<< * else: * self._instruction = None */ - __Pyx_TraceLine(103,26,0,__PYX_ERR(0, 103, __pyx_L1_error)) + __Pyx_TraceLine(103,29,0,__PYX_ERR(0, 103, __pyx_L1_error)) __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); @@ -4865,7 +4870,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ /* "hunter/_event.pyx":102 * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) - * if co_code and position >= 0: # <<<<<<<<<<<<<< + * if co_code and len(co_code) > position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] * else: */ @@ -4879,7 +4884,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * return self._instruction * */ - __Pyx_TraceLine(105,30,0,__PYX_ERR(0, 105, __pyx_L1_error)) + __Pyx_TraceLine(105,33,0,__PYX_ERR(0, 105, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); @@ -4905,11 +4910,11 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ * * @property */ - __Pyx_TraceLine(106,31,0,__PYX_ERR(0, 106, __pyx_L1_error)) + __Pyx_TraceLine(106,34,0,__PYX_ERR(0, 106, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_instruction); __pyx_r = __pyx_v_self->_instruction; - __Pyx_TraceReturnValue(__pyx_r, 31, 0, __PYX_ERR(0, 106, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 34, 0, __PYX_ERR(0, 106, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_event.pyx":96 @@ -15402,9 +15407,9 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_clone, __pyx_k_A_z, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 96, 80}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 96, 86}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; - __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_instruction_getter, __pyx_k_A_4_S_at1_nAT_Q_xt9Cq_G1A_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_instruction_getter, __pyx_k_A_4_S_at1_nAT_Q_xt3ay_a_G1A_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; } { const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 108, 12}; diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index 18623fd..57eb851 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -99,7 +99,7 @@ cdef class Event: if self._instruction is UNSET: position = Hunter_PyFrame_GetLasti(self.frame) co_code = PyCode_GetCode(self.code_getter()) - if co_code and position >= 0: + if co_code and len(co_code) > position >= 0: self._instruction = co_code[position] else: self._instruction = None diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index c6d2c29..fa2e3ca 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -32426,7 +32426,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 8, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 14, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32771,7 +32771,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32794,7 +32794,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32806,7 +32806,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32827,7 +32827,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32839,7 +32839,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32860,7 +32860,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32872,7 +32872,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32893,7 +32893,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32905,7 +32905,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32926,7 +32926,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32938,7 +32938,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32959,7 +32959,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32971,7 +32971,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33015,7 +33015,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33027,7 +33027,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33048,7 +33048,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33061,7 +33061,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33069,7 +33069,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33082,7 +33082,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33090,7 +33090,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33103,7 +33103,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33111,7 +33111,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33124,7 +33124,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33132,7 +33132,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33145,7 +33145,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33153,7 +33153,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33166,7 +33166,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33174,7 +33174,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33187,7 +33187,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 @@ -33195,12 +33195,12 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,8,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 8, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 14, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33210,7 +33210,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(8, 0); + __Pyx_TraceExceptionUnwind(14, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); diff --git a/src/hunter/event.py b/src/hunter/event.py index 17fcb0a..405ba91 100644 --- a/src/hunter/event.py +++ b/src/hunter/event.py @@ -193,7 +193,7 @@ def instruction(self): :type: int or single char string or None """ - if self.frame.f_lasti >= 0 and self.frame.f_code.co_code: + if self.frame.f_code.co_code and len(self.frame.f_code.co_code) > self.frame.f_lasti >= 0: return self.frame.f_code.co_code[self.frame.f_lasti] @cached_property diff --git a/tests/sample5.pyx b/tests/sample5.pyx index 383d1aa..93f6798 100644 --- a/tests/sample5.pyx +++ b/tests/sample5.pyx @@ -1,4 +1,4 @@ -# cython: linetrace=True, language_level=3 +# cython: linetrace=True, language_level=3str, freethreading_compatible=True a = b = lambda x: x diff --git a/tests/setup.py b/tests/setup.py index ce9de4d..1238af1 100644 --- a/tests/setup.py +++ b/tests/setup.py @@ -40,7 +40,7 @@ splitext(relpath(path, 'tests').replace(os.sep, '.'))[0], sources=[path], include_dirs=[dirname(path), 'src', 'src/hunter'], - define_macros=[('CYTHON_TRACE', '1')], + define_macros=[('CYTHON_TRACE', '1'), ('CYTHON_USE_SYS_MONITORING', '0')], ) for root, _, _ in os.walk('tests') for path in glob(join(root, '*.pyx' if Cython else '*.c')) diff --git a/tox.ini b/tox.ini index 075735a..0a22ab0 100644 --- a/tox.ini +++ b/tox.ini @@ -56,7 +56,7 @@ deps = ipdb commands = {py38,py39,py310,py311,py312,py313}: python tests/setup.py clean --all - {py38,py39,py310,py311,py312,py313}: python tests/setup.py build_ext --force --inplace + {py38,py39,py310,py311,py312,py313}: python tests/setup.py build_ext --force --inplace --debug cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From d8027f7d9c53ff88a5c5854d55efb6dd4d7e6e71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 10:47:29 +0300 Subject: [PATCH 39/80] Oooops. Forgot to add no sysmon flag for release builds (this new optout feature segfaults). --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index b658d91..819c2ca 100755 --- a/setup.py +++ b/setup.py @@ -30,7 +30,7 @@ CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_TRACE=1 -DCYTHON_USE_SYS_MONITORING=0' LFLAGS = os.environ['LFLAGS'] = '' else: - CFLAGS = '' + CFLAGS = '-DCYTHON_USE_SYS_MONITORING=0' LFLAGS = '' allow_extensions = True From 9a62bb6eabdc9d79b5d3bf45db252ef255eb20b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 11:14:36 +0300 Subject: [PATCH 40/80] Undo debug change. --- src/hunter/_event.c | 15 +-- src/hunter/_predicates.c | 65 +++++------ src/hunter/_tracer.c | 225 +++++++++++++++++++++------------------ src/hunter/_tracer.pyx | 2 +- 4 files changed, 163 insertions(+), 144 deletions(-) diff --git a/src/hunter/_event.c b/src/hunter/_event.c index fa73633..d6e48b6 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -6,6 +6,9 @@ "depends": [ "src/hunter/vendor/_compat.h" ], + "extra_compile_args": [ + "-DCYTHON_USE_SYS_MONITORING=0" + ], "include_dirs": [ "src/hunter" ], @@ -14301,7 +14304,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); (void)__Pyx_modinit_function_import_code(__pyx_mstate); /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 1, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 2, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "hunter/_event.pyx":2 * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True @@ -14872,7 +14875,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(2, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(2, 1, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(2, 1, __pyx_L1_error) @@ -14884,7 +14887,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Event__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,37,0,__PYX_ERR(2, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,36,0,__PYX_ERR(2, 16, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(2, 16, __pyx_L1_error) @@ -14950,12 +14953,12 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); * from functools import partial * from linecache import getline */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(0, 1, __pyx_L1_error)) __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; - __Pyx_TraceReturnValue(Py_None, 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 2, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -14966,7 +14969,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(1, 0); + __Pyx_TraceExceptionUnwind(2, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._event", __pyx_clineno, __pyx_lineno, __pyx_filename); diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index fa2e3ca..bebc9ef 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -6,6 +6,9 @@ "depends": [ "src/hunter/vendor/_compat.h" ], + "extra_compile_args": [ + "-DCYTHON_USE_SYS_MONITORING=0" + ], "include_dirs": [ "src/hunter" ], @@ -32426,7 +32429,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 14, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 2, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32771,7 +32774,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32806,7 +32809,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32827,7 +32830,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32839,7 +32842,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32860,7 +32863,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32872,7 +32875,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32893,7 +32896,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32905,7 +32908,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32926,7 +32929,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32938,7 +32941,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32959,7 +32962,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32971,7 +32974,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33015,7 +33018,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33027,7 +33030,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33048,7 +33051,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33061,7 +33064,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33069,7 +33072,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33082,7 +33085,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33090,7 +33093,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33103,7 +33106,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33111,7 +33114,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33124,7 +33127,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33132,7 +33135,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33145,7 +33148,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33166,7 +33169,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33174,7 +33177,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33187,7 +33190,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 @@ -33195,12 +33198,12 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 14, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 2, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33210,7 +33213,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(14, 0); + __Pyx_TraceExceptionUnwind(2, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index fdaf63e..cbe9c9c 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -6,6 +6,9 @@ "depends": [ "src/hunter/vendor/_compat.h" ], + "extra_compile_args": [ + "-DCYTHON_USE_SYS_MONITORING=0" + ], "include_dirs": [ "src/hunter" ], @@ -3190,7 +3193,7 @@ static const char __pyx_k_Tracer___setstate_cython[] = "Tracer.__setstate_cython static const char __pyx_k_hunter__tracer_Tracer_at_0x[] = " frame */ -static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrameObject *__pyx_v_frame, int __pyx_v_kind, CYTHON_UNUSED PyObject *__pyx_v_arg) { +static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrameObject *__pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg) { struct __pyx_obj_6hunter_7_tracer_Tracer *__pyx_v_self = 0; FrameType __pyx_v_frame_object = 0; PyObject *__pyx_v_handler = NULL; @@ -3528,12 +3531,12 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *__pyx_t_8 = NULL; - size_t __pyx_t_9; - PyObject *__pyx_t_10 = NULL; + PyObject *__pyx_t_9 = NULL; + size_t __pyx_t_10; PyObject *__pyx_t_11 = NULL; PyObject *__pyx_t_12 = NULL; - int __pyx_t_13; - PyObject *__pyx_t_14 = NULL; + PyObject *__pyx_t_13 = NULL; + int __pyx_t_14; PyObject *__pyx_t_15 = NULL; PyObject *__pyx_t_16 = NULL; PyObject *__pyx_t_17[7]; @@ -3701,7 +3704,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * if kind == 3 and self.depth > 0: * self.depth -= 1 # <<<<<<<<<<<<<< * - * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) + * cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) */ __Pyx_TraceLine(40,39,0,__PYX_ERR(0, 40, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth - 1); @@ -3718,7 +3721,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame /* "hunter/_tracer.pyx":42 * self.depth -= 1 * - * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) # <<<<<<<<<<<<<< + * cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) # <<<<<<<<<<<<<< * try: * fast_call(handler, event) */ @@ -3728,18 +3731,27 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); __pyx_t_6 = __Pyx_PyLong_From_int(__pyx_v_kind); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 42, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 42, __pyx_L1_error) + __pyx_t_2 = (__pyx_v_arg == NULL); + if (__pyx_t_2) { + __Pyx_INCREF(Py_None); + __pyx_t_7 = Py_None; + } else { + __Pyx_INCREF(((PyObject *)__pyx_v_arg)); + __pyx_t_7 = ((PyObject *)__pyx_v_arg); + } + __pyx_t_8 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = 1; + __pyx_t_9 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 42, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_10 = 1; { - PyObject *__pyx_callargs[7] = {__pyx_t_4, ((PyObject *)__pyx_v_frame), __pyx_t_6, Py_None, __pyx_t_7, __pyx_t_8, __pyx_v_self->threading_support}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_9, (7-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + PyObject *__pyx_callargs[7] = {__pyx_t_4, ((PyObject *)__pyx_v_frame), __pyx_t_6, __pyx_t_7, __pyx_t_8, __pyx_t_9, __pyx_v_self->threading_support}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_10, (7-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); @@ -3749,44 +3761,44 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame /* "hunter/_tracer.pyx":43 * - * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) + * cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ - __Pyx_TraceLine(43,55,0,__PYX_ERR(0, 43, __pyx_L1_error)) + __Pyx_TraceLine(43,60,0,__PYX_ERR(0, 43, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); - __Pyx_XGOTREF(__pyx_t_10); + __Pyx_ExceptionSave(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13); __Pyx_XGOTREF(__pyx_t_11); __Pyx_XGOTREF(__pyx_t_12); + __Pyx_XGOTREF(__pyx_t_13); /*try:*/ { /* "hunter/_tracer.pyx":44 - * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) + * cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) * try: * fast_call(handler, event) # <<<<<<<<<<<<<< * except Exception as exc: * traceback.print_exc(file=hunter._default_stream) */ - __Pyx_TraceLine(44,57,0,__PYX_ERR(0, 44, __pyx_L8_error)) + __Pyx_TraceLine(44,62,0,__PYX_ERR(0, 44, __pyx_L8_error)) __pyx_t_1 = __pyx_f_6hunter_11_predicates_fast_call(__pyx_v_handler, __pyx_v_event); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L8_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "hunter/_tracer.pyx":43 * - * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) + * cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ } - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; goto __pyx_L13_try_end; __pyx_L8_error:; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -3795,6 +3807,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); /* "hunter/_tracer.pyx":45 @@ -3804,15 +3817,15 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( */ - __Pyx_TraceLine(45,61,0,__PYX_ERR(0, 45, __pyx_L10_except_error)) - __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); - if (__pyx_t_13) { + __Pyx_TraceLine(45,66,0,__PYX_ERR(0, 45, __pyx_L10_except_error)) + __pyx_t_14 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); + if (__pyx_t_14) { __Pyx_AddTraceback("hunter._tracer.trace_func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_TraceExceptionHandled(60); - if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_8) < 0) __PYX_ERR(0, 45, __pyx_L10_except_error) + __Pyx_TraceExceptionHandled(65); + if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_9) < 0) __PYX_ERR(0, 45, __pyx_L10_except_error) __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_5); - __Pyx_XGOTREF(__pyx_t_8); + __Pyx_XGOTREF(__pyx_t_9); __Pyx_TraceExceptionDone(); __Pyx_INCREF(__pyx_t_5); __pyx_v_exc = __pyx_t_5; @@ -3825,44 +3838,44 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( * handler, exc, event)) */ - __Pyx_TraceLine(46,65,0,__PYX_ERR(0, 46, __pyx_L19_error)) - __pyx_t_6 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 46, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_TraceLine(46,70,0,__PYX_ERR(0, 46, __pyx_L19_error)) + __pyx_t_7 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_traceback); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_print_exc); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 46, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_9 = 1; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_10 = 1; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_14))) { - __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_14); - assert(__pyx_t_6); - PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_14); - __Pyx_INCREF(__pyx_t_6); + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); + assert(__pyx_t_7); + PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx__function); - __Pyx_DECREF_SET(__pyx_t_14, __pyx__function); - __pyx_t_9 = 0; + __Pyx_DECREF_SET(__pyx_t_4, __pyx__function); + __pyx_t_10 = 0; } #endif { - PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_6, NULL}; - __pyx_t_4 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_4); - if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_4, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 46, __pyx_L19_error) - __pyx_t_7 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_14, __pyx_callargs+__pyx_t_9, (1-__pyx_t_9) | (__pyx_t_9*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + PyObject *__pyx_callargs[2 + ((CYTHON_VECTORCALL) ? 1 : 0)] = {__pyx_t_7, NULL}; + __pyx_t_6 = __Pyx_MakeVectorcallBuilderKwds(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_6); + if (__Pyx_VectorcallBuilder_AddArg(__pyx_mstate_global->__pyx_n_u_file, __pyx_t_15, __pyx_t_6, __pyx_callargs+1, 0) < 0) __PYX_ERR(0, 46, __pyx_L19_error) + __pyx_t_8 = __Pyx_Object_Vectorcall_CallFromBuilder(__pyx_t_4, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET), __pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 46, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_7); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 46, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_8); } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; /* "hunter/_tracer.pyx":47 * except Exception as exc: @@ -3871,14 +3884,14 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * handler, exc, event)) * self.stop() */ - __Pyx_TraceLine(47,69,0,__PYX_ERR(0, 47, __pyx_L19_error)) - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 47, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 47, __pyx_L19_error) + __Pyx_TraceLine(47,74,0,__PYX_ERR(0, 47, __pyx_L19_error)) + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_hunter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 47, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_mstate_global->__pyx_n_u_default_stream); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 47, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_14 = __pyx_t_15; - __Pyx_INCREF(__pyx_t_14); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_4 = __pyx_t_15; + __Pyx_INCREF(__pyx_t_4); /* "hunter/_tracer.pyx":48 * traceback.print_exc(file=hunter._default_stream) @@ -3887,17 +3900,17 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * self.stop() * return 0 */ - __Pyx_TraceLine(48,74,0,__PYX_ERR(0, 48, __pyx_L19_error)) - __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 48, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 48, __pyx_L19_error) + __Pyx_TraceLine(48,79,0,__PYX_ERR(0, 48, __pyx_L19_error)) + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_handler), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 48, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 48, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_7); __pyx_t_16 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(((PyObject *)__pyx_v_event)), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 48, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_17[0] = __pyx_mstate_global->__pyx_kp_u_Disabling_tracer_because_handler; - __pyx_t_17[1] = __pyx_t_4; + __pyx_t_17[1] = __pyx_t_6; __pyx_t_17[2] = __pyx_mstate_global->__pyx_kp_u_failed; - __pyx_t_17[3] = __pyx_t_6; + __pyx_t_17[3] = __pyx_t_7; __pyx_t_17[4] = __pyx_mstate_global->__pyx_kp_u_at; __pyx_t_17[5] = __pyx_t_16; __pyx_t_17[6] = __pyx_mstate_global->__pyx_kp_u_; @@ -3909,24 +3922,24 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * handler, exc, event)) * self.stop() */ - __Pyx_TraceLine(47,73,0,__PYX_ERR(0, 47, __pyx_L19_error)) - __pyx_t_18 = __Pyx_PyUnicode_Join(__pyx_t_17, 7, 33 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + 9 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + 3, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16)); + __Pyx_TraceLine(47,78,0,__PYX_ERR(0, 47, __pyx_L19_error)) + __pyx_t_18 = __Pyx_PyUnicode_Join(__pyx_t_17, 7, 33 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 9 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_7) + 5 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_16) + 3, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_7) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16)); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 47, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_9 = 0; + __pyx_t_10 = 0; { - PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_18}; - __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_write, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_18}; + __pyx_t_8 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_write, __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 47, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_7); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 47, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_8); } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; /* "hunter/_tracer.pyx":49 * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( @@ -3935,18 +3948,18 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * return 0 * */ - __Pyx_TraceLine(49,77,0,__PYX_ERR(0, 49, __pyx_L19_error)) + __Pyx_TraceLine(49,82,0,__PYX_ERR(0, 49, __pyx_L19_error)) __pyx_t_15 = ((PyObject *)__pyx_v_self); __Pyx_INCREF(__pyx_t_15); - __pyx_t_9 = 0; + __pyx_t_10 = 0; { PyObject *__pyx_callargs[2] = {__pyx_t_15, NULL}; - __pyx_t_7 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_9, (1-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __pyx_t_8 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_stop, __pyx_callargs+__pyx_t_10, (1-__pyx_t_10) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 49, __pyx_L19_error) - __Pyx_GOTREF(__pyx_t_7); + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 49, __pyx_L19_error) + __Pyx_GOTREF(__pyx_t_8); } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; /* "hunter/_tracer.pyx":50 * handler, exc, event)) @@ -3955,12 +3968,12 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * * if kind == 0: */ - __Pyx_TraceLine(50,80,0,__PYX_ERR(0, 50, __pyx_L19_error)) + __Pyx_TraceLine(50,85,0,__PYX_ERR(0, 50, __pyx_L19_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 80, 0, __PYX_ERR(0, 50, __pyx_L19_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 85, 0, __PYX_ERR(0, 50, __pyx_L19_error)); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; goto __pyx_L18_return; } @@ -3971,22 +3984,22 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * traceback.print_exc(file=hunter._default_stream) * hunter._default_stream.write('Disabling tracer because handler %r failed (%r) at %r.\n\n' % ( */ - __Pyx_TraceLine(45,60,0,__PYX_ERR(0, 45, __pyx_L19_error)) + __Pyx_TraceLine(45,65,0,__PYX_ERR(0, 45, __pyx_L19_error)) /*finally:*/ { __pyx_L19_error:; /*exception exit:*/{ __Pyx_PyThreadState_declare __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionHandled(60); + __Pyx_TraceExceptionHandled(65); __Pyx_PyThreadState_assign __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; - __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_ExceptionSwap(&__pyx_t_24, &__pyx_t_25, &__pyx_t_26); if ( unlikely(__Pyx_GetException(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23) < 0)) __Pyx_ErrFetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); __Pyx_XGOTREF(__pyx_t_21); @@ -3995,7 +4008,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XGOTREF(__pyx_t_24); __Pyx_XGOTREF(__pyx_t_25); __Pyx_XGOTREF(__pyx_t_26); - __pyx_t_13 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_20 = __pyx_filename; + __pyx_t_14 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_20 = __pyx_filename; { __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; } @@ -4008,8 +4021,8 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XGIVEREF(__pyx_t_23); __Pyx_ErrRestore(__pyx_t_21, __pyx_t_22, __pyx_t_23); __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; - __pyx_lineno = __pyx_t_13; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20; - __Pyx_TraceException(60, 1, 0); + __pyx_lineno = __pyx_t_14; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_20; + __Pyx_TraceException(65, 1, 0); goto __pyx_L10_except_error; } __pyx_L18_return: { @@ -4024,22 +4037,22 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame /* "hunter/_tracer.pyx":43 * - * cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) + * cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) * try: # <<<<<<<<<<<<<< * fast_call(handler, event) * except Exception as exc: */ __pyx_L10_except_error:; - __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12); + __Pyx_XGIVEREF(__pyx_t_13); + __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); goto __pyx_L1_error; __pyx_L11_except_return:; - __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12); + __Pyx_XGIVEREF(__pyx_t_13); + __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); goto __pyx_L0; __pyx_L13_try_end:; } @@ -4051,7 +4064,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * self.depth += 1 * self.calls += 1 */ - __Pyx_TraceLine(52,84,0,__PYX_ERR(0, 52, __pyx_L1_error)) + __Pyx_TraceLine(52,89,0,__PYX_ERR(0, 52, __pyx_L1_error)) __pyx_t_2 = (__pyx_v_kind == 0); if (__pyx_t_2) { @@ -4062,7 +4075,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * self.calls += 1 * return 0 */ - __Pyx_TraceLine(53,86,0,__PYX_ERR(0, 53, __pyx_L1_error)) + __Pyx_TraceLine(53,91,0,__PYX_ERR(0, 53, __pyx_L1_error)) __pyx_v_self->depth = (__pyx_v_self->depth + 1); /* "hunter/_tracer.pyx":54 @@ -4072,7 +4085,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * return 0 * */ - __Pyx_TraceLine(54,89,0,__PYX_ERR(0, 54, __pyx_L1_error)) + __Pyx_TraceLine(54,94,0,__PYX_ERR(0, 54, __pyx_L1_error)) __pyx_v_self->calls = (__pyx_v_self->calls + 1); /* "hunter/_tracer.pyx":52 @@ -4091,9 +4104,9 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame * * */ - __Pyx_TraceLine(55,92,0,__PYX_ERR(0, 55, __pyx_L1_error)) + __Pyx_TraceLine(55,97,0,__PYX_ERR(0, 55, __pyx_L1_error)) __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 92, 0, __PYX_ERR(0, 55, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_PyLong_From_int, 97, 0, __PYX_ERR(0, 55, __pyx_L1_error)); goto __pyx_L0; /* "hunter/_tracer.pyx":24 @@ -4112,7 +4125,7 @@ static int __pyx_f_6hunter_7_tracer_trace_func(PyObject *__pyx_v_tracer, PyFrame __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_14); + __Pyx_XDECREF(__pyx_t_9); __Pyx_XDECREF(__pyx_t_15); __Pyx_XDECREF(__pyx_t_16); __Pyx_XDECREF(__pyx_t_18); @@ -7984,7 +7997,7 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { PyObject* tuple_dedup_map = PyDict_New(); if (unlikely(!tuple_dedup_map)) return -1; { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 24, 215}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 24, 230}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_tracer, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_KIND_INTS}; __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_trace_func, __pyx_k_z_a_1_d_xs_4q_QfA_1F_q_uCr_T_Ja, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; } diff --git a/src/hunter/_tracer.pyx b/src/hunter/_tracer.pyx index 11abe60..6e91c39 100644 --- a/src/hunter/_tracer.pyx +++ b/src/hunter/_tracer.pyx @@ -39,7 +39,7 @@ cdef int trace_func(PyObject* tracer, PyFrameObject* frame, int kind, PyObject* if kind == 3 and self.depth > 0: self.depth -= 1 - cdef Event event = Event( frame, kind, None, self.depth, self.calls, self.threading_support) + cdef Event event = Event( frame, kind, None if arg is NULL else arg, self.depth, self.calls, self.threading_support) try: fast_call(handler, event) except Exception as exc: From ba57de222e01eb1891cca106a7523a0d045430fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 11:15:07 +0300 Subject: [PATCH 41/80] Align the pure python implementation with the cython one - Event doesn't require a tracer instance. --- src/hunter/event.py | 20 +++----------------- src/hunter/tracer.py | 2 +- tests/test_predicates.py | 4 +++- 3 files changed, 7 insertions(+), 19 deletions(-) diff --git a/src/hunter/event.py b/src/hunter/event.py index 405ba91..73d6224 100644 --- a/src/hunter/event.py +++ b/src/hunter/event.py @@ -11,7 +11,6 @@ from .const import SYS_PREFIX_PATHS from .util import CYTHON_SUFFIX_RE from .util import LEADING_WHITESPACE_RE -from .util import MISSING from .util import cached_property from .util import get_func_in_mro from .util import get_main_thread @@ -47,23 +46,10 @@ def __init__( frame, kind, arg, - tracer=None, - depth=None, - calls=None, - threading_support=MISSING, + depth, + calls, + threading_support, ): - if tracer is None: - if depth is None: - raise TypeError('Missing argument: depth (required because tracer was not given).') - if calls is None: - raise TypeError('Missing argument: calls (required because tracer was not given).') - if threading_support is MISSING: - raise TypeError('Missing argument: threading_support (required because tracer was not given).') - else: - depth = tracer.depth - calls = tracer.calls - threading_support = tracer.threading_support - #: The original Frame object. #: #: .. note:: diff --git a/src/hunter/tracer.py b/src/hunter/tracer.py index d140ca9..b7279ab 100644 --- a/src/hunter/tracer.py +++ b/src/hunter/tracer.py @@ -78,7 +78,7 @@ def __call__(self, frame, kind, arg): if self._handler is not None: if kind == 'return' and self.depth > 0: self.depth -= 1 - event = Event(frame, kind, arg, self) + event = Event(frame, kind, arg, self.depth, self.calls, self.threading_support) try: self._handler(event) except Exception as exc: diff --git a/tests/test_predicates.py b/tests/test_predicates.py index d7e6e25..c8a7ce7 100644 --- a/tests/test_predicates.py +++ b/tests/test_predicates.py @@ -50,7 +50,9 @@ def mockevent(): sys._getframe(0), 2 if '_event' in hunter.Event.__module__ else 'line', None, - hunter.Tracer(), + 0, + 0, + False, ) From ee754e23482fb2e1f42e0a0771723afaae53667d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 11:42:57 +0300 Subject: [PATCH 42/80] Seems auto_pickle is ignored in pyd. --- src/hunter/_event.c | 5956 ++++++++++++++------------------------ src/hunter/_event.pxd | 1 - src/hunter/_event.pyx | 3 + src/hunter/_predicates.c | 62 +- src/hunter/_tracer.c | 4 +- 5 files changed, 2190 insertions(+), 3836 deletions(-) diff --git a/src/hunter/_event.c b/src/hunter/_event.c index d6e48b6..ee680bb 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -1365,7 +1365,6 @@ static const char *__pyx_filename; static const char* const __pyx_f[] = { "src/hunter/_event.pyx", "src/hunter/_event.pxd", - "", ".tox/cythonize/lib64/python3.13/site-packages/Cython/Includes/cpython/type.pxd", }; /* #### Code section: utility_code_proto_before_types ### */ @@ -1605,8 +1604,8 @@ typedef PyObject *FrameType; * * * @cython.final # <<<<<<<<<<<<<< - * @cython.auto_pickle(False) * cdef class Event: + * cdef: */ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD @@ -1637,7 +1636,7 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "hunter/_event.pyx":344 +/* "hunter/_event.pyx":347 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< @@ -1661,12 +1660,12 @@ struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines { -/* "hunter/_event.pyx":44 +/* "hunter/_event.pyx":46 * * - * cdef class Event: # <<<<<<<<<<<<<< + * @cython.auto_pickle(False) # <<<<<<<<<<<<<< + * cdef class Event: * """ - * A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates. */ struct __pyx_vtabstruct_6hunter_6_event_Event { @@ -2659,12 +2658,6 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, /* GetAttr.proto */ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *); -/* GetAttr3.proto */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); - -/* RaiseUnexpectedTypeError.proto */ -static int __Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj); - /* ArgTypeTest.proto */ #define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ ((likely(__Pyx_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None)))) ? 1 :\ @@ -2695,22 +2688,6 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { /* pep479.proto */ static void __Pyx_Generator_Replace_StopIteration(int in_async_gen); -/* Import.proto */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); - -/* ImportFrom.proto */ -static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); - -/* RaiseException.proto */ -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); - -/* HasAttr.proto */ -#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 -#define __Pyx_HasAttr(o, n) PyObject_HasAttrWithError(o, n) -#else -static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *); -#endif - /* CallTypeTraverse.proto */ #if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) #define __Pyx_call_type_traverse(o, always_call, visit, arg) 0 @@ -2766,16 +2743,15 @@ static void* __Pyx_GetVtable(PyTypeObject *type); /* MergeVTables.proto */ static int __Pyx_MergeVtables(PyTypeObject *type); -/* DelItemOnTypeDict.proto */ -static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); -#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k) - -/* SetupReduce.proto */ -static int __Pyx_setup_reduce(PyObject* type_obj); - /* ListPack.proto */ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...); +/* Import.proto */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); + +/* ImportFrom.proto */ +static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); + /* FetchSharedCythonModule.proto */ static PyObject *__Pyx_FetchSharedCythonABIModule(void); @@ -2931,6 +2907,9 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, #define __Pyx_HAS_GCC_DIAGNOSTIC #endif +/* CIntFromPy.proto */ +static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); + /* PyObjectVectorCallKwBuilder.proto */ CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n); #if CYTHON_VECTORCALL @@ -2952,12 +2931,6 @@ static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, P /* CIntToPy.proto */ static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value); -/* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *); - -/* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); - /* CIntToPy.proto */ static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value); @@ -2978,6 +2951,12 @@ typedef const char *__Pyx_TypeName; #define __Pyx_DECREF_TypeName(obj) #endif +/* CIntFromPy.proto */ +static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *); + +/* RaiseException.proto */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); + /* PyObjectCall2Args.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); @@ -3171,7 +3150,6 @@ static PyObject *__pyx_v_6hunter_6_event_RETURN = 0; static PyObject const **__pyx_v_6hunter_6_event_KIND_NAMES; static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_event_fast_clone(struct __pyx_obj_6hunter_6_event_Event *); /*proto*/ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_event_fast_detach(struct __pyx_obj_6hunter_6_event_Event *, PyObject *); /*proto*/ -static PyObject *__pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(struct __pyx_obj_6hunter_6_event_Event *, PyObject *); /*proto*/ /* #### Code section: typeinfo ### */ /* #### Code section: before_global_var ### */ #define __Pyx_MODULE_NAME "hunter._event" @@ -3188,7 +3166,6 @@ static const char __pyx_k_6[] = "\320\004\"\240!\330\010\017\210{\230!\2306\240\ static const char __pyx_k_Q[] = "\220Q"; static const char __pyx_k_a[] = "\220a"; static const char __pyx_k_v[] = "v"; -static const char __pyx_k_1F[] = "\200\001\330\004#\2401\240F\250!"; static const char __pyx_k__2[] = ""; static const char __pyx_k__3[] = "?"; static const char __pyx_k__4[] = "."; @@ -3204,7 +3181,6 @@ static const char __pyx_k_all[] = "__all__"; static const char __pyx_k_arg[] = "arg"; static const char __pyx_k_def[] = "def"; static const char __pyx_k_get[] = "get"; -static const char __pyx_k_new[] = "__new__"; static const char __pyx_k_pop[] = "pop"; static const char __pyx_k_pyc[] = ".pyc"; static const char __pyx_k_pyd[] = ".pyd"; @@ -3215,7 +3191,6 @@ static const char __pyx_k_CALL[] = "CALL"; static const char __pyx_k_LINE[] = "LINE"; static const char __pyx_k_call[] = "call"; static const char __pyx_k_code[] = "_code"; -static const char __pyx_k_dict[] = "__dict__"; static const char __pyx_k_file[] = "__file__"; static const char __pyx_k_func[] = "__func__"; static const char __pyx_k_init[] = "__init__"; @@ -3253,7 +3228,6 @@ static const char __pyx_k_limit[] = "limit"; static const char __pyx_k_other[] = "other"; static const char __pyx_k_split[] = "split"; static const char __pyx_k_start[] = "start"; -static const char __pyx_k_state[] = "state"; static const char __pyx_k_throw[] = "throw"; static const char __pyx_k_value[] = "value"; static const char __pyx_k_A_wavQ[] = "\200A\330\010\017\210w\220a\220v\230Q"; @@ -3262,7 +3236,6 @@ static const char __pyx_k_amount[] = "amount"; static const char __pyx_k_code_2[] = "code"; static const char __pyx_k_dedent[] = "dedent"; static const char __pyx_k_detach[] = "detach"; -static const char __pyx_k_dict_2[] = "_dict"; static const char __pyx_k_enable[] = "enable"; static const char __pyx_k_exists[] = "exists"; static const char __pyx_k_file_2[] = " file"; @@ -3273,14 +3246,11 @@ static const char __pyx_k_locals[] = "locals"; static const char __pyx_k_module[] = " module="; static const char __pyx_k_name_2[] = "__name__"; static const char __pyx_k_object[] = "object"; -static const char __pyx_k_pickle[] = "pickle"; -static const char __pyx_k_reduce[] = "__reduce__"; static const char __pyx_k_return[] = "return"; static const char __pyx_k_source[] = "_source"; static const char __pyx_k_stdlib[] = "_stdlib"; static const char __pyx_k_string[] = ""; static const char __pyx_k_thread[] = "_thread"; -static const char __pyx_k_update[] = "update"; static const char __pyx_k_values[] = "values"; static const char __pyx_k_builtin[] = "builtin"; static const char __pyx_k_disable[] = "disable"; @@ -3297,7 +3267,6 @@ static const char __pyx_k_endswith[] = "endswith"; static const char __pyx_k_filename[] = " filename="; static const char __pyx_k_function[] = " function="; static const char __pyx_k_getlines[] = "getlines"; -static const char __pyx_k_getstate[] = "__getstate__"; static const char __pyx_k_lineno_2[] = "lineno"; static const char __pyx_k_lineno_3[] = "_lineno"; static const char __pyx_k_locals_2[] = "_locals"; @@ -3305,10 +3274,8 @@ static const char __pyx_k_module_2[] = "module"; static const char __pyx_k_module_3[] = "__module__"; static const char __pyx_k_module_4[] = ""; static const char __pyx_k_module_5[] = "_module"; -static const char __pyx_k_pyx_type[] = "__pyx_type"; static const char __pyx_k_qualname[] = "__qualname__"; static const char __pyx_k_set_name[] = "__set_name__"; -static const char __pyx_k_setstate[] = "__setstate__"; static const char __pyx_k_splitext[] = "splitext"; static const char __pyx_k_tokenize[] = "tokenize"; static const char __pyx_k_EXCEPTION[] = "EXCEPTION"; @@ -3322,8 +3289,6 @@ static const char __pyx_k_functools[] = "functools"; static const char __pyx_k_globals_2[] = "_globals"; static const char __pyx_k_isenabled[] = "isenabled"; static const char __pyx_k_linecache[] = "linecache"; -static const char __pyx_k_pyx_state[] = "__pyx_state"; -static const char __pyx_k_reduce_ex[] = "__reduce_ex__"; static const char __pyx_k_threadidn[] = "_threadidn"; static const char __pyx_k_threading[] = "threading"; static const char __pyx_k_A_4wc_a_4q[] = "\200A\330\010\013\2104\210w\220c\230\021\330\014\023\320\023)\250\021\250$\250a\340\014\023\2204\220q"; @@ -3337,13 +3302,11 @@ static const char __pyx_k_fullsource[] = "_fullsource"; static const char __pyx_k_function_2[] = "function"; static const char __pyx_k_function_3[] = "_function"; static const char __pyx_k_namedtuple[] = "namedtuple_"; -static const char __pyx_k_pyx_result[] = "__pyx_result"; static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__"; static const char __pyx_k_startswith[] = "startswith"; static const char __pyx_k_threadname[] = "_threadname"; static const char __pyx_k_A_q_t_d_4_a[] = "\200A\330\010\017\210q\330\014\020\220\007\220t\230;\240d\250)\2604\260{\300$\300a"; static const char __pyx_k_Event_clone[] = "Event.clone"; -static const char __pyx_k_PickleError[] = "PickleError"; static const char __pyx_k_code_getter[] = "code_getter"; static const char __pyx_k_fast_detach[] = "fast_detach"; static const char __pyx_k_instruction[] = "_instruction"; @@ -3351,16 +3314,12 @@ static const char __pyx_k_yield_lines[] = "yield_lines"; static const char __pyx_k_Event_detach[] = "Event.detach"; static const char __pyx_k_if_same_code[] = "if_same_code"; static const char __pyx_k_is_coroutine[] = "_is_coroutine"; -static const char __pyx_k_pyx_checksum[] = "__pyx_checksum"; -static const char __pyx_k_stringsource[] = ""; -static const char __pyx_k_use_setstate[] = "use_setstate"; static const char __pyx_k_value_filter[] = "value_filter"; static const char __pyx_k_hunter__event[] = "hunter._event"; static const char __pyx_k_lineno_getter[] = "lineno_getter"; static const char __pyx_k_locals_getter[] = "locals_getter"; static const char __pyx_k_module_getter[] = "module_getter"; static const char __pyx_k_pkg_resources[] = "pkg_resources"; -static const char __pyx_k_reduce_cython[] = "__reduce_cython__"; static const char __pyx_k_source_getter[] = "source_getter"; static const char __pyx_k_stdlib_getter[] = "stdlib_getter"; static const char __pyx_k_A_4y_1_7q_A_t1[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\020\220\013\320\0337\260q\270\004\270A\330\010\017\210t\2201"; @@ -3373,8 +3332,6 @@ static const char __pyx_k_function_object[] = "_function_object"; static const char __pyx_k_generate_tokens[] = "generate_tokens"; static const char __pyx_k_get_func_in_mro[] = "get_func_in_mro"; static const char __pyx_k_get_main_thread[] = "get_main_thread"; -static const char __pyx_k_pyx_PickleError[] = "__pyx_PickleError"; -static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; static const char __pyx_k_threadid_getter[] = "threadid_getter"; static const char __pyx_k_CYTHON_SUFFIX_RE[] = "CYTHON_SUFFIX_RE"; static const char __pyx_k_SYS_PREFIX_PATHS[] = "SYS_PREFIX_PATHS"; @@ -3384,34 +3341,26 @@ static const char __pyx_k_threadname_getter[] = "threadname_getter"; static const char __pyx_k_asyncio_coroutines[] = "asyncio.coroutines"; static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; static const char __pyx_k_instruction_getter[] = "instruction_getter"; -static const char __pyx_k_pyx_unpickle_Event[] = "__pyx_unpickle_Event"; static const char __pyx_k_A_4_Q_t1_M_T_M_1_t1[] = "\200A\330\010\013\2104\210{\230#\230Q\330\014\017\210t\2201\330\020\024\220M\240\024\240T\250\021\340\020\024\220M\240\024\240\\\260\022\2601\330\010\017\210t\2201"; static const char __pyx_k_SITE_PACKAGES_PATHS[] = "SITE_PACKAGES_PATHS"; static const char __pyx_k_A_4z_A_t1_Kq_L_9_a_t1[] = "\200A\330\010\013\2104\210z\230\023\230A\330\014\017\210t\2201\330\020\024\220K\230q\340\020\024\220L\320 9\270\021\270$\270a\330\010\017\210t\2201"; -static const char __pyx_k_Event___reduce_cython[] = "Event.__reduce_cython__"; static const char __pyx_k_LEADING_WHITESPACE_RE[] = "LEADING_WHITESPACE_RE"; static const char __pyx_k_src_hunter__event_pxd[] = "src/hunter/_event.pxd"; static const char __pyx_k_src_hunter__event_pyx[] = "src/hunter/_event.pyx"; static const char __pyx_k_A_4_Cq_t9Cq_K_Q_t81_t1[] = "\200A\330\010\013\2104\210}\230C\230q\330\014\017\210t\2209\230C\230q\330\020\024\220K\230~\250Q\330\014\020\220\017\230t\2408\2501\330\010\017\210t\2201"; static const char __pyx_k_A_4y_1_t1_Kq_K_7q_A_t1[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\017\210t\2201\330\020\024\220K\230q\340\020\024\220K\320\0377\260q\270\004\270A\330\010\017\210t\2201"; -static const char __pyx_k_Event___setstate_cython[] = "Event.__setstate_cython__"; static const char __pyx_k_A_4_3a_q_uG5_HCt1_N_N_t1[] = "\200A\360\006\000\t\014\2104\210|\2303\230a\330\014\026\320\026/\250q\330\014\023\220?\240!\330\014\017\210u\220G\2305\240\004\240H\250C\250t\2601\330\020\024\220N\240!\340\020\024\220N\240!\330\010\017\210t\2201"; static const char __pyx_k_A_4y_1_t1_T_XT_a_wc_1_t1[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\017\210t\2201\330\020\031\230\024\230T\240\021\340\020\031\230\024\230X\240T\250\021\250,\260a\330\014\017\210w\220c\230\021\330\020\031\230\021\330\014\020\220\013\2301\330\010\017\210t\2201"; -static const char __pyx_k_hk_A_1_S_S_U_U_V_5_7_q_a_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"S\005\360\000\000S\005U\005\360\000\000U\005V\005\330\004\023\2205\230\010\240\001\240\021\330\004\007\200|\2207\230!\330\010'\240q\250\010\260\016\270a\330\004\013\2101"; static const char __pyx_k_NO_SOURCE_not_reading_binary[] = "\077\077? NO SOURCE: not reading binary "; -static const char __pyx_k_pyx_unpickle_Event__set_state[] = "__pyx_unpickle_Event__set_state"; static const char __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T[] = "\200\001\330\004\014\210H\220E\230\030\240\021\240!\330\004\t\210\027\220\004\220A\330\004\t\210\033\220D\230\001\330\004\t\210\031\220$\220a\330\004\t\210\031\220$\220a\330\004\t\210\034\220Q\330\004\t\210\031\220$\220a\330\004\t\210\030\220\024\220Q\330\004\t\320\t\036\230d\240!\330\004\t\210\031\220$\220a\330\004\t\210\035\220d\230!\330\004\t\210\037\230\004\230A\330\004\t\320\t\035\230T\240\021\330\004\t\210\035\220d\230!\330\004\t\210\034\220T\230\021\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\036\220t\2301\330\004\t\210\037\230\004\230A\330\004\t\210\033\220D\230\001\330\004\t\320\t\031\230\024\230Q\330\004\013\2101"; static const char __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t[] = "\200\001\330\004\014\210H\220E\230\030\240\021\240!\340\004\t\210\031\220$\220l\240!\330\004\t\210\035\220d\320\032*\250!\330\004\t\210\037\230\004\320\034.\250a\330\004\t\320\t\035\230T\240\021\330\004\t\210\035\220d\320\032*\250!\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\036\220t\320\033+\2501\330\004\t\210\037\230\004\320\034.\250a\330\004\t\320\t\031\230\024\320\0350\260\001\340\004\007\200q\330\010\r\210\\\230\021\230%\230|\2501\250G\2604\260u\270I\300T\310\030\320QW\320WX\330\010\r\210[\230\001\230\025\230l\250!\2507\260$\260e\2709\300D\310\007\310v\320UV\330\010\r\210W\220L\240\001\240\024\240Q\340\010\r\210\\\230\021\330\010\r\210[\230\001\330\010\r\210W\220A\340\004\t\210\033\220D\230\001\330\004\t\210\031\220$\220a\330\004\t\210\031\220$\220a\330\004\t\210\034\220Q\330\004\t\210\030\220\024\220Q\330\004\t\320\t\036\230d\240!\340\004\013\2101"; -static const char __pyx_k_AT_QdR_mmxxyy_J_J_W_W_b_b_c_c_g[] = "\200\001\330\004\020\220\t\230\033\240A\240T\250\034\260]\300+\310Q\310d\320R^\320^m\320mx\320xy\320y}\360\000\000~\001J\002\360\000\000J\002W\002\360\000\000W\002b\002\360\000\000b\002c\002\360\000\000c\002g\002\360\000\000g\002s\002\360\000\000s\002G\003\360\000\000G\003R\003\360\000\000R\003S\003\360\000\000S\003W\003\360\000\000W\003c\003\360\000\000c\003o\003\360\000\000o\003z\003\360\000\000z\003{\003\360\000\000{\003\003\360\000\000\003K\004\360\000\000K\004[\004\360\000\000[\004f\004\360\000\000f\004g\004\360\000\000g\004k\004\360\000\000k\004w\004\360\000\000w\004B\005\360\000\000B\005M\005\360\000\000M\005N\005\360\000\000N\005R\005\360\000\000R\005^\005\360\000\000^\005i\005\360\000\000i\005t\005\360\000\000t\005u\005\360\000\000u\005y\005\360\000\000y\005E\006\360\000\000E\006P\006\360\000\000P\006[\006\360\000\000[\006\\\006\360\000\000\\\006`\006\360\000\000`\006l\006\360\000\000l\006w\006\360\000\000w\006B\007\360\000\000B\007C\007\360\000\000C\007H\007\360\000\000H\007T\007\360\000\000T\007_\007\360\000\000_\007j\007\360\000\000j\007k\007\360\000\000k\007p\007\360\000\000p\007|\007\360\000\000|\007G\010\360\000\000G\010R\010\360\000\000R\010S\010\360\000\000S\010X\010\360\000\000X\010d\010\360\000\000d\010r\010\360\000\000r\010}\010\360\000\000}\010~\010\360\000\000~\010C\t\360\000\000C\tO\t\360\000\000O\t^\t\360\000\000^\ti\t\360\000\000i\tj\t\360\000\000j\to\t\360\000\000o\t{\t\360\000\000{\tB\n\360\000\000B\nM\n\360\000\000M\nN\n\360\000\000N\nS\n\360\000\000S\n_\n\360\000\000_\nj\n\360\000\000j\nu\n\360\000\000u\nv\n\360\000\000v\n{\n\360\000\000{\nG\013\360\000\000G\013P\013\360\000\000P\013[\013\360\000\000[\013\\\013\360\000\000\\\013a\013\360\000\000a\013m\013\360\000\000m\013v\013\360\000\000v\013A\014\360\000\000A\014B\014\360\000\000B\014G\014\360\000\000G\014S\014\360\000\000S\014_\014\360\000\000_\014j\014\360\000\000j\014k\014\360\000\000k\014p\014\360\000\000p\014|\014\360\000\000|\014E\r\360\000\000E\rP\r\360\000\000P\rQ\r\360\000""\000Q\rV\r\360\000\000V\rb\r\360\000\000b\rj\r\360\000\000j\ru\r\360\000\000u\rv\r\360\000\000v\r{\r\360\000\000{\rG\016\360\000\000G\016\\\016\360\000\000\\\016g\016\360\000\000g\016h\016\360\000\000h\016i\016\330\004\007\200s\210!\210=\230\002\230#\230T\240\027\250\001\250\036\260q\330\010\024\220I\230W\240A\240[\260\001\260\021"; static const char __pyx_k_A_4_Cq_O1_t_q_4vS_t4y_1_A_Cwc_E[] = "\200A\360\010\000\t\014\2104\210}\230C\230q\330\014\r\330\020\024\220O\2401\330\020\027\220t\230<\240q\330\020\023\2204\220v\230S\240\007\240t\2504\250y\270\003\2701\330\024\034\230A\330\024\025\330\030\034\230C\230w\240c\250\023\250E\260\037\300\001\330\034#\2401\330 !\330 +\2501\330$(\250\001\330$(\250\006\250a\330$(\250\010\260\002\260!\330$%\360\010\000\035 \230v\240T\250\027\260\t\270\021\330 $\240O\2602\260U\270!\2701\330 !\330\033\034\330\030\031\330\020\023\2204\220}\240C\240q\330\024\030\230\017\240w\250a\250t\260;\270d\300)\3104\310q\330\014\023\220=\240\001\330\020\024\220O\2402\320%8\270\001\330\010\017\210t\2201"; static const char __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1[] = "\200A\360\006\000\t\014\2104\210q\330\014\023\2204\220q\330\r\021\320\021#\2403\240a\330\014\023\2204\220|\2401\330\014\017\210t\2209\230C\230q\330\020\027\220q\340\014\030\230\004\230H\240D\250\001\250\024\250Z\260q\330\014\023\220<\230q\240\013\2501\360\n\000\r\020\210u\220C\220u\230D\240\004\240M\260\023\260A\330\020\034\230D\240\007\240t\2501\320,>\270a\270u\300A\300Q\330\020\027\220\240a\240{\260!\360\006\000\r\020\210u\220C\220q\330\020\024\220E\230\024\230X\240W\250A\330\024\027\220t\230:\240Q\240c\250\021\330\030\031\330\024\033\230?\250!\2503\250a\330\024\027\220u\230G\2401\330\030\031\330\014\020\320\020$\240A\330\010\017\210t\2201"; static const char __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\017\210t\2209\230I\240R\240w\250a\330\020\024\220K\230r\320!G\300x\310q\320PX\320XY\320Y]\320]h\320hi\320ij\330\014\r\330\020\024\220K\230w\240a\240t\250;\260d\270)\3004\300q\330\014\023\220=\240\001\330\020\024\220K\230r\320!4\260A\340\010\017\210t\2201"; static const char __pyx_k_A_G1_IQ_HF_AQ_IQ_IQ_L_KuBa_IQ_M[] = "\200A\330\010\014\210G\2201\330\010\014\210I\220Q\330\010\014\210H\220F\230*\240A\240Q\330\010\014\210I\220Q\330\010\014\210I\220Q\330\010\014\320\014!\240\021\330\010\014\210L\230\001\330\010\014\210K\220u\230B\230a\340\010\014\210I\220Q\330\010\014\210M\230\021\330\010\014\210O\2301\330\010\014\320\014 \240\001\330\010\014\210M\230\021\330\010\014\210L\230\001\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210N\230!\330\010\014\210O\2301\330\010\014\210K\220q\330\010\014\320\014\034\230A"; -static const char __pyx_k_T_4_4Obbffqqu_v_E_E_I_I_S_S_W_W[] = "\200\001\360\010\000\005\016\210T\220\030\230\024\230\\\250\024\250^\2704\270|\3104\320Ob\320bf\320fq\320qu\360\000\000v\001E\002\360\000\000E\002I\002\360\000\000I\002S\002\360\000\000S\002W\002\360\000\000W\002a\002\360\000\000a\002e\002\360\000\000e\002o\002\360\000\000o\002s\002\360\000\000s\002}\002\360\000\000}\002A\003\360\000\000A\003K\003\360\000\000K\003O\003\360\000\000O\003Y\003\360\000\000Y\003]\003\360\000\000]\003j\003\360\000\000j\003n\003\360\000\000n\003|\003\360\000\000|\003@\004\360\000\000@\004F\004\360\000\000F\004J\004\360\000\000J\004T\004\360\000\000T\004X\004\360\000\000X\004`\004\360\000\000`\004d\004\360\000\000d\004l\004\360\000\000l\004p\004\360\000\000p\004{\004\360\000\000{\004\004\360\000\000\004G\005\360\000\000G\005K\005\360\000\000K\005R\005\360\000\000R\005V\005\360\000\000V\005W\005\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\2307\240'\250\025\250c\260\024\260[\300\007\300u\310C\310t\320S`\320`g\320gl\320lo\320os\320s~\360\000\000\001F\002\360\000\000F\002K\002\360\000\000K\002N\002\360\000\000N\002R\002\360\000\000R\002d\002\360\000\000d\002k\002\360\000\000k\002p\002\360\000\000p\002s\002\360\000\000s\002w\002\360\000\000w\002A\003\360\000\000A\003H\003\360\000\000H\003M\003\360\000\000M\003P\003\360\000\000P\003T\003\360\000\000T\003b\003\360\000\000b\003i\003\360\000\000i\003n\003\360\000\000n\003q\003\360\000\000q\003u\003\360\000\000u\003~\003\360\000\000~\003E\004\360\000\000E\004J\004\360\000\000J\004M\004\360\000\000M\004Q\004\360\000\000Q\004Z\004\360\000\000Z\004a\004\360\000\000a\004f\004\360\000\000f\004i\004\360\000\000i\004m\004\360\000\000m\004v\004\360\000\000v\004}\004\360\000\000}\004B\005\360\000\000B\005E\005\360\000\000E\005I\005\360\000\000I\005R\005\360\000\000R\005Y\005\360\000\000Y\005^\005\360\000\000^\005a\005\360\000\000a\005e\005\360\000\000e\005n\005\360\000\000n\005u\005\360\000\000u\005z\005\360\000\000z\005}\005\360\000""\000}\005A\006\360\000\000A\006J\006\360\000\000J\006Q\006\360\000\000Q\006V\006\360\000\000V\006Y\006\360\000\000Y\006]\006\360\000\000]\006i\006\360\000\000i\006p\006\360\000\000p\006u\006\360\000\000u\006x\006\360\000\000x\006|\006\360\000\000|\006I\007\360\000\000I\007P\007\360\000\000P\007U\007\360\000\000U\007X\007\360\000\000X\007\\\007\360\000\000\\\007a\007\360\000\000a\007h\007\360\000\000h\007m\007\360\000\000m\007p\007\360\000\000p\007t\007\360\000\000t\007}\007\360\000\000}\007D\010\360\000\000D\010I\010\360\000\000I\010L\010\360\000\000L\010P\010\360\000\000P\010W\010\360\000\000W\010^\010\360\000\000^\010c\010\360\000\000c\010f\010\360\000\000f\010j\010\360\000\000j\010p\010\360\000\000p\010w\010\360\000\000w\010x\010\330\004\007\200q\330\010\017\320\017&\240d\250!\2507\260+\270W\300A\340\010\017\320\017&\240d\250!\2507\260+\270Q"; static const char __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83[] = "\200A\340\010\013\2104\210{\230#\230Q\330\014\023\2204\220|\2401\330\014\027\220t\2301\330\014\017\210t\2201\330\020\033\2304\230x\240t\2501\250A\330\014\017\210t\2201\330\020\033\2301\330\021\031\230\031\240\"\240H\250A\330\020\033\2308\2403\240a\330\021\031\230\031\240\"\240G\2501\330\020\035\320\035-\250T\260\021\260$\260a\330\020\024\220G\2301\230H\240A\330\024!\240\033\250B\250a\330\024\027\220v\230Q\230a\330\030#\2401\330\030\031\340\014\020\220\r\230Q\330\010\017\210t\2201"; static const char __pyx_k_A_4_S_at1_nAT_Q_xt3ay_a_G1A_A_t1[] = "\200A\360\006\000\t\014\2104\210~\230S\240\001\330\014\027\320\027.\250a\250t\2601\330\014\026\220n\240A\240T\250\034\260Q\330\014\017\210x\220t\2303\230a\230y\250\002\250,\260a\330\020\024\320\024$\240G\2501\250A\340\020\024\320\024$\240A\330\010\017\210t\2201"; static const char __pyx_k_A_4y_1_4wfAQ_s_Kq_Zs_U_g_X___ggj[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\033\2304\230w\240f\250A\250Q\330\014\017\320\017\037\230s\240!\340\020\024\220K\230q\330\021\025\220Z\230s\240+\250U\260$\260g\270[\310\001\310\037\320X[\320[_\320_g\320gj\320jk\340\020\024\220K\230q\330\021\025\220Y\230k\250\021\250!\340\020\024\220K\230q\330\021\025\220Y\230k\250\021\250!\330\020\024\220K\230q\340\020\024\220K\230q\330\010\017\210t\2201"; -static const char __pyx_k_Incompatible_checksums_0x_x_vs_0[] = "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))"; static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; /* #### Code section: decls ### */ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, FrameType __pyx_v_frame, int __pyx_v_kind, PyObject *__pyx_v_arg, int __pyx_v_depth, int __pyx_v_calls, int __pyx_v_threading_support); /* proto */ @@ -3442,10 +3391,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto */ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6_event_5Event_12__reduce_cython__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_6hunter_6_event_5Event_14__setstate_cython__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */ static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_module_globals, PyObject *__pyx_v_start, PyObject *__pyx_v_collector, PyObject *__pyx_v_limit); /* proto */ -static PyObject *__pyx_pf_6hunter_6_event_3__pyx_unpickle_Event(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */ static PyObject *__pyx_tp_new_6hunter_6_event_Event(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ /* #### Code section: late_includes ### */ @@ -3494,14 +3440,11 @@ typedef struct { PyTypeObject *__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines; __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; PyObject *__pyx_slice[1]; - PyObject *__pyx_tuple[8]; - PyObject *__pyx_codeobj_tab[48]; - PyObject *__pyx_string_tab[194]; + PyObject *__pyx_tuple[7]; + PyObject *__pyx_codeobj_tab[44]; + PyObject *__pyx_string_tab[169]; PyObject *__pyx_int_1; PyObject *__pyx_int_10; - PyObject *__pyx_int_103004196; - PyObject *__pyx_int_157141922; - PyObject *__pyx_int_235031988; PyObject *__pyx_int_neg_1; /* #### Code section: module_state_contents ### */ /* IterNextPlain.module_state_decls */ @@ -3555,195 +3498,170 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati #define __pyx_n_u_CYTHON_SUFFIX_RE __pyx_string_tab[2] #define __pyx_n_u_EXCEPTION __pyx_string_tab[3] #define __pyx_n_u_Event __pyx_string_tab[4] -#define __pyx_n_u_Event___reduce_cython __pyx_string_tab[5] -#define __pyx_n_u_Event___setstate_cython __pyx_string_tab[6] -#define __pyx_n_u_Event_clone __pyx_string_tab[7] -#define __pyx_n_u_Event_detach __pyx_string_tab[8] -#define __pyx_kp_u_Event_kind __pyx_string_tab[9] -#define __pyx_kp_u_Incompatible_checksums_0x_x_vs_0 __pyx_string_tab[10] -#define __pyx_n_u_KIND_NAMES __pyx_string_tab[11] -#define __pyx_n_u_LEADING_WHITESPACE_RE __pyx_string_tab[12] -#define __pyx_n_u_LINE __pyx_string_tab[13] -#define __pyx_kp_u_NO_SOURCE __pyx_string_tab[14] -#define __pyx_kp_u_NO_SOURCE_not_reading_binary __pyx_string_tab[15] -#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[16] -#define __pyx_n_u_PickleError __pyx_string_tab[17] -#define __pyx_n_u_RETURN __pyx_string_tab[18] -#define __pyx_n_u_SITE_PACKAGES_PATHS __pyx_string_tab[19] -#define __pyx_n_u_SYS_PREFIX_PATHS __pyx_string_tab[20] -#define __pyx_n_u_TokenError __pyx_string_tab[21] -#define __pyx_n_u_UNSET __pyx_string_tab[22] -#define __pyx_kp_u__2 __pyx_string_tab[23] -#define __pyx_kp_u__3 __pyx_string_tab[24] -#define __pyx_kp_u__4 __pyx_string_tab[25] -#define __pyx_kp_u_add_note __pyx_string_tab[26] -#define __pyx_n_u_all __pyx_string_tab[27] -#define __pyx_n_u_amount __pyx_string_tab[28] -#define __pyx_n_u_arg __pyx_string_tab[29] -#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[30] -#define __pyx_n_u_basename __pyx_string_tab[31] -#define __pyx_n_u_builtin __pyx_string_tab[32] -#define __pyx_n_u_call __pyx_string_tab[33] -#define __pyx_n_u_calls __pyx_string_tab[34] -#define __pyx_n_u_candidate __pyx_string_tab[35] -#define __pyx_n_u_class __pyx_string_tab[36] -#define __pyx_n_u_cline_in_traceback __pyx_string_tab[37] -#define __pyx_n_u_clone __pyx_string_tab[38] -#define __pyx_n_u_close __pyx_string_tab[39] -#define __pyx_n_u_code __pyx_string_tab[40] -#define __pyx_n_u_code_2 __pyx_string_tab[41] -#define __pyx_n_u_code_getter __pyx_string_tab[42] -#define __pyx_n_u_collector __pyx_string_tab[43] -#define __pyx_n_u_const __pyx_string_tab[44] -#define __pyx_n_u_current_thread __pyx_string_tab[45] -#define __pyx_n_u_dedent __pyx_string_tab[46] -#define __pyx_n_u_def __pyx_string_tab[47] -#define __pyx_n_u_depth __pyx_string_tab[48] -#define __pyx_n_u_detach __pyx_string_tab[49] -#define __pyx_n_u_detached __pyx_string_tab[50] -#define __pyx_n_u_dict __pyx_string_tab[51] -#define __pyx_n_u_dict_2 __pyx_string_tab[52] -#define __pyx_kp_u_disable __pyx_string_tab[53] -#define __pyx_kp_u_enable __pyx_string_tab[54] -#define __pyx_n_u_endswith __pyx_string_tab[55] -#define __pyx_n_u_eq __pyx_string_tab[56] -#define __pyx_n_u_exception __pyx_string_tab[57] -#define __pyx_n_u_exists __pyx_string_tab[58] -#define __pyx_n_u_f_globals __pyx_string_tab[59] -#define __pyx_n_u_fast_clone __pyx_string_tab[60] -#define __pyx_n_u_fast_detach __pyx_string_tab[61] -#define __pyx_n_u_file __pyx_string_tab[62] -#define __pyx_kp_u_file_2 __pyx_string_tab[63] -#define __pyx_kp_u_filename __pyx_string_tab[64] -#define __pyx_n_u_filename_2 __pyx_string_tab[65] -#define __pyx_n_u_filename_3 __pyx_string_tab[66] -#define __pyx_n_u_filename_getter __pyx_string_tab[67] -#define __pyx_n_u_findall __pyx_string_tab[68] -#define __pyx_n_u_first_arg __pyx_string_tab[69] -#define __pyx_n_u_frame __pyx_string_tab[70] -#define __pyx_n_u_fullsource __pyx_string_tab[71] -#define __pyx_n_u_fullsource_getter __pyx_string_tab[72] -#define __pyx_n_u_func __pyx_string_tab[73] -#define __pyx_n_u_func_2 __pyx_string_tab[74] -#define __pyx_kp_u_function __pyx_string_tab[75] -#define __pyx_n_u_function_2 __pyx_string_tab[76] -#define __pyx_n_u_function_3 __pyx_string_tab[77] -#define __pyx_n_u_function_getter __pyx_string_tab[78] -#define __pyx_n_u_function_object __pyx_string_tab[79] -#define __pyx_n_u_functools __pyx_string_tab[80] -#define __pyx_kp_u_gc __pyx_string_tab[81] -#define __pyx_n_u_generate_tokens __pyx_string_tab[82] -#define __pyx_n_u_get __pyx_string_tab[83] -#define __pyx_n_u_get_2 __pyx_string_tab[84] -#define __pyx_n_u_get_func_in_mro __pyx_string_tab[85] -#define __pyx_n_u_get_main_thread __pyx_string_tab[86] -#define __pyx_n_u_getitem __pyx_string_tab[87] -#define __pyx_n_u_getline __pyx_string_tab[88] -#define __pyx_n_u_getlines __pyx_string_tab[89] -#define __pyx_n_u_getstate __pyx_string_tab[90] -#define __pyx_n_u_globals __pyx_string_tab[91] -#define __pyx_n_u_globals_2 __pyx_string_tab[92] -#define __pyx_n_u_globals_getter __pyx_string_tab[93] -#define __pyx_n_u_hunter__event __pyx_string_tab[94] -#define __pyx_n_u_ident __pyx_string_tab[95] -#define __pyx_n_u_if_same_code __pyx_string_tab[96] -#define __pyx_n_u_init __pyx_string_tab[97] -#define __pyx_n_u_instruction __pyx_string_tab[98] -#define __pyx_n_u_instruction_getter __pyx_string_tab[99] -#define __pyx_n_u_is_coroutine __pyx_string_tab[100] -#define __pyx_kp_u_isenabled __pyx_string_tab[101] -#define __pyx_n_u_item __pyx_string_tab[102] -#define __pyx_n_u_items __pyx_string_tab[103] -#define __pyx_n_u_kind __pyx_string_tab[104] -#define __pyx_n_u_lambda __pyx_string_tab[105] -#define __pyx_n_u_limit __pyx_string_tab[106] -#define __pyx_n_u_line __pyx_string_tab[107] -#define __pyx_n_u_linecache __pyx_string_tab[108] -#define __pyx_kp_u_lineno __pyx_string_tab[109] -#define __pyx_n_u_lineno_2 __pyx_string_tab[110] -#define __pyx_n_u_lineno_3 __pyx_string_tab[111] -#define __pyx_n_u_lineno_getter __pyx_string_tab[112] -#define __pyx_n_u_locals __pyx_string_tab[113] -#define __pyx_n_u_locals_2 __pyx_string_tab[114] -#define __pyx_n_u_locals_getter __pyx_string_tab[115] -#define __pyx_n_u_main __pyx_string_tab[116] -#define __pyx_kp_u_module __pyx_string_tab[117] -#define __pyx_n_u_module_2 __pyx_string_tab[118] -#define __pyx_n_u_module_3 __pyx_string_tab[119] -#define __pyx_kp_u_module_4 __pyx_string_tab[120] -#define __pyx_n_u_module_5 __pyx_string_tab[121] -#define __pyx_n_u_module_getter __pyx_string_tab[122] -#define __pyx_n_u_module_globals __pyx_string_tab[123] -#define __pyx_n_u_name __pyx_string_tab[124] -#define __pyx_n_u_name_2 __pyx_string_tab[125] -#define __pyx_n_u_namedtuple __pyx_string_tab[126] -#define __pyx_n_u_new __pyx_string_tab[127] -#define __pyx_n_u_next __pyx_string_tab[128] -#define __pyx_n_u_object __pyx_string_tab[129] -#define __pyx_n_u_os_path __pyx_string_tab[130] -#define __pyx_n_u_other __pyx_string_tab[131] -#define __pyx_n_u_partial __pyx_string_tab[132] -#define __pyx_n_u_pickle __pyx_string_tab[133] -#define __pyx_n_u_pkg_resources __pyx_string_tab[134] -#define __pyx_n_u_pop __pyx_string_tab[135] -#define __pyx_kp_u_py __pyx_string_tab[136] -#define __pyx_kp_u_pyc __pyx_string_tab[137] -#define __pyx_kp_u_pyd __pyx_string_tab[138] -#define __pyx_kp_u_pyo __pyx_string_tab[139] -#define __pyx_kp_u_pyx __pyx_string_tab[140] -#define __pyx_n_u_pyx_PickleError __pyx_string_tab[141] -#define __pyx_n_u_pyx_checksum __pyx_string_tab[142] -#define __pyx_n_u_pyx_result __pyx_string_tab[143] -#define __pyx_n_u_pyx_state __pyx_string_tab[144] -#define __pyx_n_u_pyx_type __pyx_string_tab[145] -#define __pyx_n_u_pyx_unpickle_Event __pyx_string_tab[146] -#define __pyx_n_u_pyx_unpickle_Event__set_state __pyx_string_tab[147] -#define __pyx_n_u_pyx_vtable __pyx_string_tab[148] -#define __pyx_n_u_qualname __pyx_string_tab[149] -#define __pyx_n_u_reduce __pyx_string_tab[150] -#define __pyx_n_u_reduce_cython __pyx_string_tab[151] -#define __pyx_n_u_reduce_ex __pyx_string_tab[152] -#define __pyx_n_u_repr __pyx_string_tab[153] -#define __pyx_n_u_return __pyx_string_tab[154] -#define __pyx_n_u_self __pyx_string_tab[155] -#define __pyx_n_u_send __pyx_string_tab[156] -#define __pyx_n_u_set_name __pyx_string_tab[157] -#define __pyx_n_u_setstate __pyx_string_tab[158] -#define __pyx_n_u_setstate_cython __pyx_string_tab[159] -#define __pyx_n_u_site __pyx_string_tab[160] -#define __pyx_kp_u_so __pyx_string_tab[161] -#define __pyx_n_u_source __pyx_string_tab[162] -#define __pyx_n_u_source_getter __pyx_string_tab[163] -#define __pyx_n_u_split __pyx_string_tab[164] -#define __pyx_n_u_splitext __pyx_string_tab[165] -#define __pyx_kp_u_src_hunter__event_pxd __pyx_string_tab[166] -#define __pyx_kp_u_src_hunter__event_pyx __pyx_string_tab[167] -#define __pyx_n_u_start __pyx_string_tab[168] -#define __pyx_n_u_startswith __pyx_string_tab[169] -#define __pyx_n_u_state __pyx_string_tab[170] -#define __pyx_n_u_stdlib __pyx_string_tab[171] -#define __pyx_n_u_stdlib_getter __pyx_string_tab[172] -#define __pyx_kp_u_string __pyx_string_tab[173] -#define __pyx_kp_u_stringsource __pyx_string_tab[174] -#define __pyx_n_u_sub __pyx_string_tab[175] -#define __pyx_n_u_test __pyx_string_tab[176] -#define __pyx_n_u_thread __pyx_string_tab[177] -#define __pyx_n_u_threadid_getter __pyx_string_tab[178] -#define __pyx_n_u_threadidn __pyx_string_tab[179] -#define __pyx_n_u_threading __pyx_string_tab[180] -#define __pyx_n_u_threading_support __pyx_string_tab[181] -#define __pyx_n_u_threadname __pyx_string_tab[182] -#define __pyx_n_u_threadname_getter __pyx_string_tab[183] -#define __pyx_n_u_throw __pyx_string_tab[184] -#define __pyx_n_u_tokenize __pyx_string_tab[185] -#define __pyx_n_u_update __pyx_string_tab[186] -#define __pyx_n_u_use_setstate __pyx_string_tab[187] -#define __pyx_n_u_util __pyx_string_tab[188] -#define __pyx_n_u_v __pyx_string_tab[189] -#define __pyx_n_u_value __pyx_string_tab[190] -#define __pyx_n_u_value_filter __pyx_string_tab[191] -#define __pyx_n_u_values __pyx_string_tab[192] -#define __pyx_n_u_yield_lines __pyx_string_tab[193] +#define __pyx_n_u_Event_clone __pyx_string_tab[5] +#define __pyx_n_u_Event_detach __pyx_string_tab[6] +#define __pyx_kp_u_Event_kind __pyx_string_tab[7] +#define __pyx_n_u_KIND_NAMES __pyx_string_tab[8] +#define __pyx_n_u_LEADING_WHITESPACE_RE __pyx_string_tab[9] +#define __pyx_n_u_LINE __pyx_string_tab[10] +#define __pyx_kp_u_NO_SOURCE __pyx_string_tab[11] +#define __pyx_kp_u_NO_SOURCE_not_reading_binary __pyx_string_tab[12] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[13] +#define __pyx_n_u_RETURN __pyx_string_tab[14] +#define __pyx_n_u_SITE_PACKAGES_PATHS __pyx_string_tab[15] +#define __pyx_n_u_SYS_PREFIX_PATHS __pyx_string_tab[16] +#define __pyx_n_u_TokenError __pyx_string_tab[17] +#define __pyx_n_u_UNSET __pyx_string_tab[18] +#define __pyx_kp_u__2 __pyx_string_tab[19] +#define __pyx_kp_u__3 __pyx_string_tab[20] +#define __pyx_kp_u__4 __pyx_string_tab[21] +#define __pyx_kp_u_add_note __pyx_string_tab[22] +#define __pyx_n_u_all __pyx_string_tab[23] +#define __pyx_n_u_amount __pyx_string_tab[24] +#define __pyx_n_u_arg __pyx_string_tab[25] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[26] +#define __pyx_n_u_basename __pyx_string_tab[27] +#define __pyx_n_u_builtin __pyx_string_tab[28] +#define __pyx_n_u_call __pyx_string_tab[29] +#define __pyx_n_u_calls __pyx_string_tab[30] +#define __pyx_n_u_candidate __pyx_string_tab[31] +#define __pyx_n_u_class __pyx_string_tab[32] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[33] +#define __pyx_n_u_clone __pyx_string_tab[34] +#define __pyx_n_u_close __pyx_string_tab[35] +#define __pyx_n_u_code __pyx_string_tab[36] +#define __pyx_n_u_code_2 __pyx_string_tab[37] +#define __pyx_n_u_code_getter __pyx_string_tab[38] +#define __pyx_n_u_collector __pyx_string_tab[39] +#define __pyx_n_u_const __pyx_string_tab[40] +#define __pyx_n_u_current_thread __pyx_string_tab[41] +#define __pyx_n_u_dedent __pyx_string_tab[42] +#define __pyx_n_u_def __pyx_string_tab[43] +#define __pyx_n_u_depth __pyx_string_tab[44] +#define __pyx_n_u_detach __pyx_string_tab[45] +#define __pyx_n_u_detached __pyx_string_tab[46] +#define __pyx_kp_u_disable __pyx_string_tab[47] +#define __pyx_kp_u_enable __pyx_string_tab[48] +#define __pyx_n_u_endswith __pyx_string_tab[49] +#define __pyx_n_u_eq __pyx_string_tab[50] +#define __pyx_n_u_exception __pyx_string_tab[51] +#define __pyx_n_u_exists __pyx_string_tab[52] +#define __pyx_n_u_f_globals __pyx_string_tab[53] +#define __pyx_n_u_fast_clone __pyx_string_tab[54] +#define __pyx_n_u_fast_detach __pyx_string_tab[55] +#define __pyx_n_u_file __pyx_string_tab[56] +#define __pyx_kp_u_file_2 __pyx_string_tab[57] +#define __pyx_kp_u_filename __pyx_string_tab[58] +#define __pyx_n_u_filename_2 __pyx_string_tab[59] +#define __pyx_n_u_filename_3 __pyx_string_tab[60] +#define __pyx_n_u_filename_getter __pyx_string_tab[61] +#define __pyx_n_u_findall __pyx_string_tab[62] +#define __pyx_n_u_first_arg __pyx_string_tab[63] +#define __pyx_n_u_frame __pyx_string_tab[64] +#define __pyx_n_u_fullsource __pyx_string_tab[65] +#define __pyx_n_u_fullsource_getter __pyx_string_tab[66] +#define __pyx_n_u_func __pyx_string_tab[67] +#define __pyx_n_u_func_2 __pyx_string_tab[68] +#define __pyx_kp_u_function __pyx_string_tab[69] +#define __pyx_n_u_function_2 __pyx_string_tab[70] +#define __pyx_n_u_function_3 __pyx_string_tab[71] +#define __pyx_n_u_function_getter __pyx_string_tab[72] +#define __pyx_n_u_function_object __pyx_string_tab[73] +#define __pyx_n_u_functools __pyx_string_tab[74] +#define __pyx_kp_u_gc __pyx_string_tab[75] +#define __pyx_n_u_generate_tokens __pyx_string_tab[76] +#define __pyx_n_u_get __pyx_string_tab[77] +#define __pyx_n_u_get_2 __pyx_string_tab[78] +#define __pyx_n_u_get_func_in_mro __pyx_string_tab[79] +#define __pyx_n_u_get_main_thread __pyx_string_tab[80] +#define __pyx_n_u_getitem __pyx_string_tab[81] +#define __pyx_n_u_getline __pyx_string_tab[82] +#define __pyx_n_u_getlines __pyx_string_tab[83] +#define __pyx_n_u_globals __pyx_string_tab[84] +#define __pyx_n_u_globals_2 __pyx_string_tab[85] +#define __pyx_n_u_globals_getter __pyx_string_tab[86] +#define __pyx_n_u_hunter__event __pyx_string_tab[87] +#define __pyx_n_u_ident __pyx_string_tab[88] +#define __pyx_n_u_if_same_code __pyx_string_tab[89] +#define __pyx_n_u_init __pyx_string_tab[90] +#define __pyx_n_u_instruction __pyx_string_tab[91] +#define __pyx_n_u_instruction_getter __pyx_string_tab[92] +#define __pyx_n_u_is_coroutine __pyx_string_tab[93] +#define __pyx_kp_u_isenabled __pyx_string_tab[94] +#define __pyx_n_u_item __pyx_string_tab[95] +#define __pyx_n_u_items __pyx_string_tab[96] +#define __pyx_n_u_kind __pyx_string_tab[97] +#define __pyx_n_u_lambda __pyx_string_tab[98] +#define __pyx_n_u_limit __pyx_string_tab[99] +#define __pyx_n_u_line __pyx_string_tab[100] +#define __pyx_n_u_linecache __pyx_string_tab[101] +#define __pyx_kp_u_lineno __pyx_string_tab[102] +#define __pyx_n_u_lineno_2 __pyx_string_tab[103] +#define __pyx_n_u_lineno_3 __pyx_string_tab[104] +#define __pyx_n_u_lineno_getter __pyx_string_tab[105] +#define __pyx_n_u_locals __pyx_string_tab[106] +#define __pyx_n_u_locals_2 __pyx_string_tab[107] +#define __pyx_n_u_locals_getter __pyx_string_tab[108] +#define __pyx_n_u_main __pyx_string_tab[109] +#define __pyx_kp_u_module __pyx_string_tab[110] +#define __pyx_n_u_module_2 __pyx_string_tab[111] +#define __pyx_n_u_module_3 __pyx_string_tab[112] +#define __pyx_kp_u_module_4 __pyx_string_tab[113] +#define __pyx_n_u_module_5 __pyx_string_tab[114] +#define __pyx_n_u_module_getter __pyx_string_tab[115] +#define __pyx_n_u_module_globals __pyx_string_tab[116] +#define __pyx_n_u_name __pyx_string_tab[117] +#define __pyx_n_u_name_2 __pyx_string_tab[118] +#define __pyx_n_u_namedtuple __pyx_string_tab[119] +#define __pyx_n_u_next __pyx_string_tab[120] +#define __pyx_n_u_object __pyx_string_tab[121] +#define __pyx_n_u_os_path __pyx_string_tab[122] +#define __pyx_n_u_other __pyx_string_tab[123] +#define __pyx_n_u_partial __pyx_string_tab[124] +#define __pyx_n_u_pkg_resources __pyx_string_tab[125] +#define __pyx_n_u_pop __pyx_string_tab[126] +#define __pyx_kp_u_py __pyx_string_tab[127] +#define __pyx_kp_u_pyc __pyx_string_tab[128] +#define __pyx_kp_u_pyd __pyx_string_tab[129] +#define __pyx_kp_u_pyo __pyx_string_tab[130] +#define __pyx_kp_u_pyx __pyx_string_tab[131] +#define __pyx_n_u_pyx_vtable __pyx_string_tab[132] +#define __pyx_n_u_qualname __pyx_string_tab[133] +#define __pyx_n_u_repr __pyx_string_tab[134] +#define __pyx_n_u_return __pyx_string_tab[135] +#define __pyx_n_u_self __pyx_string_tab[136] +#define __pyx_n_u_send __pyx_string_tab[137] +#define __pyx_n_u_set_name __pyx_string_tab[138] +#define __pyx_n_u_site __pyx_string_tab[139] +#define __pyx_kp_u_so __pyx_string_tab[140] +#define __pyx_n_u_source __pyx_string_tab[141] +#define __pyx_n_u_source_getter __pyx_string_tab[142] +#define __pyx_n_u_split __pyx_string_tab[143] +#define __pyx_n_u_splitext __pyx_string_tab[144] +#define __pyx_kp_u_src_hunter__event_pxd __pyx_string_tab[145] +#define __pyx_kp_u_src_hunter__event_pyx __pyx_string_tab[146] +#define __pyx_n_u_start __pyx_string_tab[147] +#define __pyx_n_u_startswith __pyx_string_tab[148] +#define __pyx_n_u_stdlib __pyx_string_tab[149] +#define __pyx_n_u_stdlib_getter __pyx_string_tab[150] +#define __pyx_kp_u_string __pyx_string_tab[151] +#define __pyx_n_u_sub __pyx_string_tab[152] +#define __pyx_n_u_test __pyx_string_tab[153] +#define __pyx_n_u_thread __pyx_string_tab[154] +#define __pyx_n_u_threadid_getter __pyx_string_tab[155] +#define __pyx_n_u_threadidn __pyx_string_tab[156] +#define __pyx_n_u_threading __pyx_string_tab[157] +#define __pyx_n_u_threading_support __pyx_string_tab[158] +#define __pyx_n_u_threadname __pyx_string_tab[159] +#define __pyx_n_u_threadname_getter __pyx_string_tab[160] +#define __pyx_n_u_throw __pyx_string_tab[161] +#define __pyx_n_u_tokenize __pyx_string_tab[162] +#define __pyx_n_u_util __pyx_string_tab[163] +#define __pyx_n_u_v __pyx_string_tab[164] +#define __pyx_n_u_value __pyx_string_tab[165] +#define __pyx_n_u_value_filter __pyx_string_tab[166] +#define __pyx_n_u_values __pyx_string_tab[167] +#define __pyx_n_u_yield_lines __pyx_string_tab[168] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { @@ -3771,14 +3689,11 @@ static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); Py_CLEAR(clear_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); for (int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_slice[i]); } - for (int i=0; i<8; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } - for (int i=0; i<48; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<194; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<7; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } + for (int i=0; i<44; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<169; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_1); Py_CLEAR(clear_module_state->__pyx_int_10); - Py_CLEAR(clear_module_state->__pyx_int_103004196); - Py_CLEAR(clear_module_state->__pyx_int_157141922); - Py_CLEAR(clear_module_state->__pyx_int_235031988); Py_CLEAR(clear_module_state->__pyx_int_neg_1); return 0; } @@ -3807,21 +3722,18 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void Py_VISIT(traverse_module_state->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines); Py_VISIT(traverse_module_state->__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines); for (int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_slice[i]); } - for (int i=0; i<8; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } - for (int i=0; i<48; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<194; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<7; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } + for (int i=0; i<44; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } + for (int i=0; i<169; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_10); - __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_103004196); - __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_157141922); - __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_235031988); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_neg_1); return 0; } #endif /* #### Code section: module_code ### */ -/* "hunter/_event.pyx":56 +/* "hunter/_event.pyx":59 * may be expected. * """ * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): # <<<<<<<<<<<<<< @@ -3856,67 +3768,67 @@ static int __pyx_pw_6hunter_6_event_5Event_1__init__(PyObject *__pyx_v_self, PyO { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_frame,&__pyx_mstate_global->__pyx_n_u_kind,&__pyx_mstate_global->__pyx_n_u_arg,&__pyx_mstate_global->__pyx_n_u_depth,&__pyx_mstate_global->__pyx_n_u_calls,&__pyx_mstate_global->__pyx_n_u_threading_support,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 56, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 59, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 6: values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 5: values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 4: values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 56, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__init__", 0) < 0) __PYX_ERR(0, 59, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 6; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, i); __PYX_ERR(0, 56, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, i); __PYX_ERR(0, 59, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 6)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_VARARGS(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 59, __pyx_L3_error) values[1] = __Pyx_ArgRef_VARARGS(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 59, __pyx_L3_error) values[2] = __Pyx_ArgRef_VARARGS(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 59, __pyx_L3_error) values[3] = __Pyx_ArgRef_VARARGS(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 59, __pyx_L3_error) values[4] = __Pyx_ArgRef_VARARGS(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 59, __pyx_L3_error) values[5] = __Pyx_ArgRef_VARARGS(__pyx_args, 5); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 56, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 59, __pyx_L3_error) } __pyx_v_frame = ((FrameType)values[0]); - __pyx_v_kind = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_kind == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) + __pyx_v_kind = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_kind == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) __pyx_v_arg = values[2]; - __pyx_v_depth = __Pyx_PyLong_As_int(values[3]); if (unlikely((__pyx_v_depth == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) - __pyx_v_calls = __Pyx_PyLong_As_int(values[4]); if (unlikely((__pyx_v_calls == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) - __pyx_v_threading_support = __Pyx_PyObject_IsTrue(values[5]); if (unlikely((__pyx_v_threading_support == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 56, __pyx_L3_error) + __pyx_v_depth = __Pyx_PyLong_As_int(values[3]); if (unlikely((__pyx_v_depth == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) + __pyx_v_calls = __Pyx_PyLong_As_int(values[4]); if (unlikely((__pyx_v_calls == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) + __pyx_v_threading_support = __Pyx_PyObject_IsTrue(values[5]); if (unlikely((__pyx_v_threading_support == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 59, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 56, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 59, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -3947,44 +3859,44 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])) __Pyx_RefNannySetupContext("__init__", 0); - __Pyx_TraceStartFunc("__init__", __pyx_f[0], 56, 0, 0, 0, __PYX_ERR(0, 56, __pyx_L1_error)); + __Pyx_TraceStartFunc("__init__", __pyx_f[0], 59, 0, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); - /* "hunter/_event.pyx":57 + /* "hunter/_event.pyx":60 * """ * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): * self.arg = arg # <<<<<<<<<<<<<< * self.frame = frame * self.kind = KIND_NAMES[kind] */ - __Pyx_TraceLine(57,1,0,__PYX_ERR(0, 57, __pyx_L1_error)) + __Pyx_TraceLine(60,1,0,__PYX_ERR(0, 60, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_arg); __Pyx_GIVEREF(__pyx_v_arg); __Pyx_GOTREF(__pyx_v_self->arg); __Pyx_DECREF(__pyx_v_self->arg); __pyx_v_self->arg = __pyx_v_arg; - /* "hunter/_event.pyx":58 + /* "hunter/_event.pyx":61 * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): * self.arg = arg * self.frame = frame # <<<<<<<<<<<<<< * self.kind = KIND_NAMES[kind] * self.depth = depth */ - __Pyx_TraceLine(58,4,0,__PYX_ERR(0, 58, __pyx_L1_error)) + __Pyx_TraceLine(61,4,0,__PYX_ERR(0, 61, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_frame); __Pyx_GIVEREF(__pyx_v_frame); __Pyx_GOTREF(__pyx_v_self->frame); __Pyx_DECREF(__pyx_v_self->frame); __pyx_v_self->frame = __pyx_v_frame; - /* "hunter/_event.pyx":59 + /* "hunter/_event.pyx":62 * self.arg = arg * self.frame = frame * self.kind = KIND_NAMES[kind] # <<<<<<<<<<<<<< * self.depth = depth * self.calls = calls */ - __Pyx_TraceLine(59,9,0,__PYX_ERR(0, 59, __pyx_L1_error)) + __Pyx_TraceLine(62,9,0,__PYX_ERR(0, 62, __pyx_L1_error)) __pyx_t_1 = ((PyObject *)(__pyx_v_6hunter_6_event_KIND_NAMES[__pyx_v_kind])); __Pyx_INCREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); @@ -3993,55 +3905,55 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e __pyx_v_self->kind = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "hunter/_event.pyx":60 + /* "hunter/_event.pyx":63 * self.frame = frame * self.kind = KIND_NAMES[kind] * self.depth = depth # <<<<<<<<<<<<<< * self.calls = calls * self.threading_support = threading_support */ - __Pyx_TraceLine(60,13,0,__PYX_ERR(0, 60, __pyx_L1_error)) + __Pyx_TraceLine(63,13,0,__PYX_ERR(0, 63, __pyx_L1_error)) __pyx_v_self->depth = __pyx_v_depth; - /* "hunter/_event.pyx":61 + /* "hunter/_event.pyx":64 * self.kind = KIND_NAMES[kind] * self.depth = depth * self.calls = calls # <<<<<<<<<<<<<< * self.threading_support = threading_support * self.detached = False */ - __Pyx_TraceLine(61,16,0,__PYX_ERR(0, 61, __pyx_L1_error)) + __Pyx_TraceLine(64,16,0,__PYX_ERR(0, 64, __pyx_L1_error)) __pyx_v_self->calls = __pyx_v_calls; - /* "hunter/_event.pyx":62 + /* "hunter/_event.pyx":65 * self.depth = depth * self.calls = calls * self.threading_support = threading_support # <<<<<<<<<<<<<< * self.detached = False * self.builtin = kind > 3 */ - __Pyx_TraceLine(62,19,0,__PYX_ERR(0, 62, __pyx_L1_error)) + __Pyx_TraceLine(65,19,0,__PYX_ERR(0, 65, __pyx_L1_error)) __pyx_v_self->threading_support = __pyx_v_threading_support; - /* "hunter/_event.pyx":63 + /* "hunter/_event.pyx":66 * self.calls = calls * self.threading_support = threading_support * self.detached = False # <<<<<<<<<<<<<< * self.builtin = kind > 3 * */ - __Pyx_TraceLine(63,22,0,__PYX_ERR(0, 63, __pyx_L1_error)) + __Pyx_TraceLine(66,22,0,__PYX_ERR(0, 66, __pyx_L1_error)) __pyx_v_self->detached = 0; - /* "hunter/_event.pyx":64 + /* "hunter/_event.pyx":67 * self.threading_support = threading_support * self.detached = False * self.builtin = kind > 3 # <<<<<<<<<<<<<< * * self._code = UNSET */ - __Pyx_TraceLine(64,28,0,__PYX_ERR(0, 64, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyBool_FromLong((__pyx_v_kind > 3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error) + __Pyx_TraceLine(67,28,0,__PYX_ERR(0, 67, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyBool_FromLong((__pyx_v_kind > 3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __Pyx_GOTREF(__pyx_v_self->builtin); @@ -4049,217 +3961,217 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e __pyx_v_self->builtin = __pyx_t_1; __pyx_t_1 = 0; - /* "hunter/_event.pyx":66 + /* "hunter/_event.pyx":69 * self.builtin = kind > 3 * * self._code = UNSET # <<<<<<<<<<<<<< * self._filename = UNSET * self._fullsource = UNSET */ - __Pyx_TraceLine(66,30,0,__PYX_ERR(0, 66, __pyx_L1_error)) + __Pyx_TraceLine(69,30,0,__PYX_ERR(0, 69, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_code); __Pyx_DECREF(__pyx_v_self->_code); __pyx_v_self->_code = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":67 + /* "hunter/_event.pyx":70 * * self._code = UNSET * self._filename = UNSET # <<<<<<<<<<<<<< * self._fullsource = UNSET * self._function_object = UNSET */ - __Pyx_TraceLine(67,33,0,__PYX_ERR(0, 67, __pyx_L1_error)) + __Pyx_TraceLine(70,33,0,__PYX_ERR(0, 70, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_filename); __Pyx_DECREF(__pyx_v_self->_filename); __pyx_v_self->_filename = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":68 + /* "hunter/_event.pyx":71 * self._code = UNSET * self._filename = UNSET * self._fullsource = UNSET # <<<<<<<<<<<<<< * self._function_object = UNSET * self._function = UNSET */ - __Pyx_TraceLine(68,36,0,__PYX_ERR(0, 68, __pyx_L1_error)) + __Pyx_TraceLine(71,36,0,__PYX_ERR(0, 71, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_fullsource); __Pyx_DECREF(__pyx_v_self->_fullsource); __pyx_v_self->_fullsource = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":69 + /* "hunter/_event.pyx":72 * self._filename = UNSET * self._fullsource = UNSET * self._function_object = UNSET # <<<<<<<<<<<<<< * self._function = UNSET * self._globals = UNSET */ - __Pyx_TraceLine(69,39,0,__PYX_ERR(0, 69, __pyx_L1_error)) + __Pyx_TraceLine(72,39,0,__PYX_ERR(0, 72, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_function_object); __Pyx_DECREF(__pyx_v_self->_function_object); __pyx_v_self->_function_object = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":70 + /* "hunter/_event.pyx":73 * self._fullsource = UNSET * self._function_object = UNSET * self._function = UNSET # <<<<<<<<<<<<<< * self._globals = UNSET * self._lineno = UNSET */ - __Pyx_TraceLine(70,42,0,__PYX_ERR(0, 70, __pyx_L1_error)) + __Pyx_TraceLine(73,42,0,__PYX_ERR(0, 73, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_function); __Pyx_DECREF(__pyx_v_self->_function); __pyx_v_self->_function = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":71 + /* "hunter/_event.pyx":74 * self._function_object = UNSET * self._function = UNSET * self._globals = UNSET # <<<<<<<<<<<<<< * self._lineno = UNSET * self._locals = UNSET */ - __Pyx_TraceLine(71,45,0,__PYX_ERR(0, 71, __pyx_L1_error)) + __Pyx_TraceLine(74,45,0,__PYX_ERR(0, 74, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_globals); __Pyx_DECREF(__pyx_v_self->_globals); __pyx_v_self->_globals = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":72 + /* "hunter/_event.pyx":75 * self._function = UNSET * self._globals = UNSET * self._lineno = UNSET # <<<<<<<<<<<<<< * self._locals = UNSET * self._module = UNSET */ - __Pyx_TraceLine(72,48,0,__PYX_ERR(0, 72, __pyx_L1_error)) + __Pyx_TraceLine(75,48,0,__PYX_ERR(0, 75, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_lineno); __Pyx_DECREF(__pyx_v_self->_lineno); __pyx_v_self->_lineno = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":73 + /* "hunter/_event.pyx":76 * self._globals = UNSET * self._lineno = UNSET * self._locals = UNSET # <<<<<<<<<<<<<< * self._module = UNSET * self._source = UNSET */ - __Pyx_TraceLine(73,51,0,__PYX_ERR(0, 73, __pyx_L1_error)) + __Pyx_TraceLine(76,51,0,__PYX_ERR(0, 76, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_locals); __Pyx_DECREF(__pyx_v_self->_locals); __pyx_v_self->_locals = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":74 + /* "hunter/_event.pyx":77 * self._lineno = UNSET * self._locals = UNSET * self._module = UNSET # <<<<<<<<<<<<<< * self._source = UNSET * self._stdlib = UNSET */ - __Pyx_TraceLine(74,54,0,__PYX_ERR(0, 74, __pyx_L1_error)) + __Pyx_TraceLine(77,54,0,__PYX_ERR(0, 77, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_module); __Pyx_DECREF(__pyx_v_self->_module); __pyx_v_self->_module = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":75 + /* "hunter/_event.pyx":78 * self._locals = UNSET * self._module = UNSET * self._source = UNSET # <<<<<<<<<<<<<< * self._stdlib = UNSET * self._threadidn = UNSET */ - __Pyx_TraceLine(75,57,0,__PYX_ERR(0, 75, __pyx_L1_error)) + __Pyx_TraceLine(78,57,0,__PYX_ERR(0, 78, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_source); __Pyx_DECREF(__pyx_v_self->_source); __pyx_v_self->_source = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":76 + /* "hunter/_event.pyx":79 * self._module = UNSET * self._source = UNSET * self._stdlib = UNSET # <<<<<<<<<<<<<< * self._threadidn = UNSET * self._threadname = UNSET */ - __Pyx_TraceLine(76,60,0,__PYX_ERR(0, 76, __pyx_L1_error)) + __Pyx_TraceLine(79,60,0,__PYX_ERR(0, 79, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":77 + /* "hunter/_event.pyx":80 * self._source = UNSET * self._stdlib = UNSET * self._threadidn = UNSET # <<<<<<<<<<<<<< * self._threadname = UNSET * self._thread = UNSET */ - __Pyx_TraceLine(77,63,0,__PYX_ERR(0, 77, __pyx_L1_error)) + __Pyx_TraceLine(80,63,0,__PYX_ERR(0, 80, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_threadidn); __Pyx_DECREF(__pyx_v_self->_threadidn); __pyx_v_self->_threadidn = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":78 + /* "hunter/_event.pyx":81 * self._stdlib = UNSET * self._threadidn = UNSET * self._threadname = UNSET # <<<<<<<<<<<<<< * self._thread = UNSET * self._instruction = UNSET */ - __Pyx_TraceLine(78,66,0,__PYX_ERR(0, 78, __pyx_L1_error)) + __Pyx_TraceLine(81,66,0,__PYX_ERR(0, 81, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_threadname); __Pyx_DECREF(__pyx_v_self->_threadname); __pyx_v_self->_threadname = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":79 + /* "hunter/_event.pyx":82 * self._threadidn = UNSET * self._threadname = UNSET * self._thread = UNSET # <<<<<<<<<<<<<< * self._instruction = UNSET * */ - __Pyx_TraceLine(79,69,0,__PYX_ERR(0, 79, __pyx_L1_error)) + __Pyx_TraceLine(82,69,0,__PYX_ERR(0, 82, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_thread); __Pyx_DECREF(__pyx_v_self->_thread); __pyx_v_self->_thread = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":80 + /* "hunter/_event.pyx":83 * self._threadname = UNSET * self._thread = UNSET * self._instruction = UNSET # <<<<<<<<<<<<<< * * def __repr__(self): */ - __Pyx_TraceLine(80,72,0,__PYX_ERR(0, 80, __pyx_L1_error)) + __Pyx_TraceLine(83,72,0,__PYX_ERR(0, 83, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GIVEREF(__pyx_v_6hunter_6_event_UNSET); __Pyx_GOTREF(__pyx_v_self->_instruction); __Pyx_DECREF(__pyx_v_self->_instruction); __pyx_v_self->_instruction = __pyx_v_6hunter_6_event_UNSET; - /* "hunter/_event.pyx":56 + /* "hunter/_event.pyx":59 * may be expected. * """ * def __init__(self, FrameType frame, int kind, object arg, int depth, int calls, bint threading_support): # <<<<<<<<<<<<<< @@ -4269,7 +4181,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e /* function exit code */ __pyx_r = 0; - __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 56, __pyx_L1_error)); + __Pyx_TraceReturnCValue(__pyx_r, __Pyx_Owned_Py_None, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); @@ -4277,7 +4189,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 56, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 59, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; @@ -4287,7 +4199,7 @@ static int __pyx_pf_6hunter_6_event_5Event___init__(struct __pyx_obj_6hunter_6_e return __pyx_r; } -/* "hunter/_event.pyx":82 +/* "hunter/_event.pyx":85 * self._instruction = UNSET * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4326,46 +4238,46 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])) __Pyx_RefNannySetupContext("__repr__", 0); - __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 82, 0, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); + __Pyx_TraceStartFunc("__repr__", __pyx_f[0], 85, 0, 0, 0, __PYX_ERR(0, 85, __pyx_L1_error)); - /* "hunter/_event.pyx":83 + /* "hunter/_event.pyx":86 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.kind, self.function, self.module, self.filename, self.lineno * ) */ - __Pyx_TraceLine(83,1,0,__PYX_ERR(0, 83, __pyx_L1_error)) + __Pyx_TraceLine(86,1,0,__PYX_ERR(0, 86, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - /* "hunter/_event.pyx":84 + /* "hunter/_event.pyx":87 * def __repr__(self): * return '' % ( * self.kind, self.function, self.module, self.filename, self.lineno # <<<<<<<<<<<<<< * ) * */ - __Pyx_TraceLine(84,4,0,__PYX_ERR(0, 84, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->kind), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 84, __pyx_L1_error) + __Pyx_TraceLine(87,4,0,__PYX_ERR(0, 87, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_self->kind), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_function_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_function_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Str(__pyx_t_2), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_Event_kind; @@ -4380,16 +4292,16 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun __pyx_t_7[9] = __pyx_t_6; __pyx_t_7[10] = __pyx_mstate_global->__pyx_kp_u_; - /* "hunter/_event.pyx":83 + /* "hunter/_event.pyx":86 * * def __repr__(self): * return '' % ( # <<<<<<<<<<<<<< * self.kind, self.function, self.module, self.filename, self.lineno * ) */ - __Pyx_TraceLine(83,2,0,__PYX_ERR(0, 83, __pyx_L1_error)) + __Pyx_TraceLine(86,2,0,__PYX_ERR(0, 86, __pyx_L1_error)) __pyx_t_2 = __Pyx_PyUnicode_Join(__pyx_t_7, 11, 12 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1) + 10 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 8 * 2 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_4) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5) + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_6) + 1, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_4) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_6)); - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 83, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -4398,10 +4310,10 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 83, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 86, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":82 + /* "hunter/_event.pyx":85 * self._instruction = UNSET * * def __repr__(self): # <<<<<<<<<<<<<< @@ -4421,7 +4333,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 82, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 85, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4432,7 +4344,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_2__repr__(struct __pyx_obj_6hun return __pyx_r; } -/* "hunter/_event.pyx":87 +/* "hunter/_event.pyx":90 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -4466,26 +4378,26 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2])) __Pyx_RefNannySetupContext("__eq__", 0); - __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 87, 0, 0, 0, __PYX_ERR(0, 87, __pyx_L1_error)); + __Pyx_TraceStartFunc("__eq__", __pyx_f[0], 90, 0, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); - /* "hunter/_event.pyx":88 + /* "hunter/_event.pyx":91 * * def __eq__(self, other): * return self is other # <<<<<<<<<<<<<< * * def detach(self, value_filter=None): */ - __Pyx_TraceLine(88,1,0,__PYX_ERR(0, 88, __pyx_L1_error)) + __Pyx_TraceLine(91,1,0,__PYX_ERR(0, 91, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_t_1 = (((PyObject *)__pyx_v_self) == __pyx_v_other); - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 88, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 91, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":87 + /* "hunter/_event.pyx":90 * ) * * def __eq__(self, other): # <<<<<<<<<<<<<< @@ -4500,7 +4412,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 87, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__eq__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4511,7 +4423,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4__eq__(struct __pyx_obj_6hunte return __pyx_r; } -/* "hunter/_event.pyx":90 +/* "hunter/_event.pyx":93 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< @@ -4558,24 +4470,24 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_value_filter,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 90, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 93, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 93, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "detach", 0) < 0) __PYX_ERR(0, 90, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "detach", 0) < 0) __PYX_ERR(0, 93, __pyx_L3_error) if (!values[0]) values[0] = __Pyx_NewRef(((PyObject *)Py_None)); } else { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 90, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 93, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; @@ -4586,7 +4498,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("detach", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 90, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("detach", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 93, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4617,25 +4529,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])) __Pyx_RefNannySetupContext("detach", 0); - __Pyx_TraceStartFunc("detach", __pyx_f[0], 90, 0, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); + __Pyx_TraceStartFunc("detach", __pyx_f[0], 93, 0, 0, 0, __PYX_ERR(0, 93, __pyx_L1_error)); - /* "hunter/_event.pyx":91 + /* "hunter/_event.pyx":94 * * def detach(self, value_filter=None): * return fast_detach(self, value_filter) # <<<<<<<<<<<<<< * * def clone(self): */ - __Pyx_TraceLine(91,2,0,__PYX_ERR(0, 91, __pyx_L1_error)) + __Pyx_TraceLine(94,2,0,__PYX_ERR(0, 94, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_self, __pyx_v_value_filter)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_detach(__pyx_v_self, __pyx_v_value_filter)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 2, 0, __PYX_ERR(0, 91, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 2, 0, __PYX_ERR(0, 94, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":90 + /* "hunter/_event.pyx":93 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< @@ -4650,7 +4562,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 90, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 93, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4661,7 +4573,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6detach(struct __pyx_obj_6hunte return __pyx_r; } -/* "hunter/_event.pyx":93 +/* "hunter/_event.pyx":96 * return fast_detach(self, value_filter) * * def clone(self): # <<<<<<<<<<<<<< @@ -4721,25 +4633,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])) __Pyx_RefNannySetupContext("clone", 0); - __Pyx_TraceStartFunc("clone", __pyx_f[0], 93, 0, 0, 0, __PYX_ERR(0, 93, __pyx_L1_error)); + __Pyx_TraceStartFunc("clone", __pyx_f[0], 96, 0, 0, 0, __PYX_ERR(0, 96, __pyx_L1_error)); - /* "hunter/_event.pyx":94 + /* "hunter/_event.pyx":97 * * def clone(self): * return fast_clone(self) # <<<<<<<<<<<<<< * * cdef inline instruction_getter(self): */ - __Pyx_TraceLine(94,1,0,__PYX_ERR(0, 94, __pyx_L1_error)) + __Pyx_TraceLine(97,1,0,__PYX_ERR(0, 97, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_fast_clone(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 94, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 97, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":93 + /* "hunter/_event.pyx":96 * return fast_detach(self, value_filter) * * def clone(self): # <<<<<<<<<<<<<< @@ -4754,7 +4666,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 93, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 96, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.clone", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -4765,7 +4677,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8clone(struct __pyx_obj_6hunter return __pyx_r; } -/* "hunter/_event.pyx":96 +/* "hunter/_event.pyx":99 * return fast_clone(self) * * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< @@ -4789,63 +4701,63 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])) __Pyx_RefNannySetupContext("instruction_getter", 0); - __Pyx_TraceStartFunc("instruction_getter", __pyx_f[0], 96, 0, 0, 0, __PYX_ERR(0, 96, __pyx_L1_error)); + __Pyx_TraceStartFunc("instruction_getter", __pyx_f[0], 99, 0, 0, 0, __PYX_ERR(0, 99, __pyx_L1_error)); - /* "hunter/_event.pyx":99 + /* "hunter/_event.pyx":102 * cdef int position * * if self._instruction is UNSET: # <<<<<<<<<<<<<< * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) */ - __Pyx_TraceLine(99,5,0,__PYX_ERR(0, 99, __pyx_L1_error)) + __Pyx_TraceLine(102,5,0,__PYX_ERR(0, 102, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_instruction == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":100 + /* "hunter/_event.pyx":103 * * if self._instruction is UNSET: * position = Hunter_PyFrame_GetLasti(self.frame) # <<<<<<<<<<<<<< * co_code = PyCode_GetCode(self.code_getter()) * if co_code and len(co_code) > position >= 0: */ - __Pyx_TraceLine(100,10,0,__PYX_ERR(0, 100, __pyx_L1_error)) + __Pyx_TraceLine(103,10,0,__PYX_ERR(0, 103, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); __pyx_v_position = Hunter_PyFrame_GetLasti(((FrameType)__pyx_t_2)); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":101 + /* "hunter/_event.pyx":104 * if self._instruction is UNSET: * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) # <<<<<<<<<<<<<< * if co_code and len(co_code) > position >= 0: * self._instruction = co_code[position] */ - __Pyx_TraceLine(101,16,0,__PYX_ERR(0, 101, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 101, __pyx_L1_error) + __Pyx_TraceLine(104,16,0,__PYX_ERR(0, 104, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyCode_GetCode(((PyCodeObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 101, __pyx_L1_error) + __pyx_t_3 = PyCode_GetCode(((PyCodeObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_co_code = __pyx_t_3; __pyx_t_3 = 0; - /* "hunter/_event.pyx":102 + /* "hunter/_event.pyx":105 * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) * if co_code and len(co_code) > position >= 0: # <<<<<<<<<<<<<< * self._instruction = co_code[position] * else: */ - __Pyx_TraceLine(102,18,0,__PYX_ERR(0, 102, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_co_code); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 102, __pyx_L1_error) + __Pyx_TraceLine(105,18,0,__PYX_ERR(0, 105, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_co_code); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 105, __pyx_L1_error) if (__pyx_t_4) { } else { __pyx_t_1 = __pyx_t_4; goto __pyx_L5_bool_binop_done; } - __pyx_t_5 = PyObject_Length(__pyx_v_co_code); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_5 = PyObject_Length(__pyx_v_co_code); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(0, 105, __pyx_L1_error) __pyx_t_4 = (__pyx_t_5 > __pyx_v_position); if (__pyx_t_4) { __pyx_t_4 = (__pyx_v_position >= 0); @@ -4854,15 +4766,15 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":103 + /* "hunter/_event.pyx":106 * co_code = PyCode_GetCode(self.code_getter()) * if co_code and len(co_code) > position >= 0: * self._instruction = co_code[position] # <<<<<<<<<<<<<< * else: * self._instruction = None */ - __Pyx_TraceLine(103,29,0,__PYX_ERR(0, 103, __pyx_L1_error)) - __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 103, __pyx_L1_error) + __Pyx_TraceLine(106,29,0,__PYX_ERR(0, 106, __pyx_L1_error)) + __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_co_code, __pyx_v_position, int, 1, __Pyx_PyLong_From_int, 0, 1, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_instruction); @@ -4870,7 +4782,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ __pyx_v_self->_instruction = __pyx_t_3; __pyx_t_3 = 0; - /* "hunter/_event.pyx":102 + /* "hunter/_event.pyx":105 * position = Hunter_PyFrame_GetLasti(self.frame) * co_code = PyCode_GetCode(self.code_getter()) * if co_code and len(co_code) > position >= 0: # <<<<<<<<<<<<<< @@ -4880,14 +4792,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ goto __pyx_L4; } - /* "hunter/_event.pyx":105 + /* "hunter/_event.pyx":108 * self._instruction = co_code[position] * else: * self._instruction = None # <<<<<<<<<<<<<< * return self._instruction * */ - __Pyx_TraceLine(105,33,0,__PYX_ERR(0, 105, __pyx_L1_error)) + __Pyx_TraceLine(108,33,0,__PYX_ERR(0, 108, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); @@ -4897,7 +4809,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ } __pyx_L4:; - /* "hunter/_event.pyx":99 + /* "hunter/_event.pyx":102 * cdef int position * * if self._instruction is UNSET: # <<<<<<<<<<<<<< @@ -4906,21 +4818,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ */ } - /* "hunter/_event.pyx":106 + /* "hunter/_event.pyx":109 * else: * self._instruction = None * return self._instruction # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(106,34,0,__PYX_ERR(0, 106, __pyx_L1_error)) + __Pyx_TraceLine(109,34,0,__PYX_ERR(0, 109, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_instruction); __pyx_r = __pyx_v_self->_instruction; - __Pyx_TraceReturnValue(__pyx_r, 34, 0, __PYX_ERR(0, 106, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 34, 0, __PYX_ERR(0, 109, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":96 + /* "hunter/_event.pyx":99 * return fast_clone(self) * * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< @@ -4936,7 +4848,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 96, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 99, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.instruction_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -4948,7 +4860,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_instruction_getter(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":108 +/* "hunter/_event.pyx":111 * return self._instruction * * @property # <<<<<<<<<<<<<< @@ -4981,25 +4893,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 108, 0, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 111, 0, 0, 0, __PYX_ERR(0, 111, __pyx_L1_error)); - /* "hunter/_event.pyx":110 + /* "hunter/_event.pyx":113 * @property * def instruction(self): * return self.instruction_getter() # <<<<<<<<<<<<<< * * cdef inline threadid_getter(self): */ - __Pyx_TraceLine(110,1,0,__PYX_ERR(0, 110, __pyx_L1_error)) + __Pyx_TraceLine(113,1,0,__PYX_ERR(0, 113, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 110, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 113, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 110, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 113, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":108 + /* "hunter/_event.pyx":111 * return self._instruction * * @property # <<<<<<<<<<<<<< @@ -5014,7 +4926,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 108, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 111, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.instruction.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5025,7 +4937,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_11instruction___get__(struct __ return __pyx_r; } -/* "hunter/_event.pyx":112 +/* "hunter/_event.pyx":115 * return self.instruction_getter() * * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< @@ -5050,39 +4962,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])) __Pyx_RefNannySetupContext("threadid_getter", 0); - __Pyx_TraceStartFunc("threadid_getter", __pyx_f[0], 112, 0, 0, 0, __PYX_ERR(0, 112, __pyx_L1_error)); + __Pyx_TraceStartFunc("threadid_getter", __pyx_f[0], 115, 0, 0, 0, __PYX_ERR(0, 115, __pyx_L1_error)); - /* "hunter/_event.pyx":115 + /* "hunter/_event.pyx":118 * cdef long current * * if self._threadidn is UNSET: # <<<<<<<<<<<<<< * current = PyThread_get_thread_ident() * main = get_main_thread() */ - __Pyx_TraceLine(115,5,0,__PYX_ERR(0, 115, __pyx_L1_error)) + __Pyx_TraceLine(118,5,0,__PYX_ERR(0, 118, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_threadidn == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":116 + /* "hunter/_event.pyx":119 * * if self._threadidn is UNSET: * current = PyThread_get_thread_ident() # <<<<<<<<<<<<<< * main = get_main_thread() * if main is not None and current == main.ident: */ - __Pyx_TraceLine(116,8,0,__PYX_ERR(0, 116, __pyx_L1_error)) + __Pyx_TraceLine(119,8,0,__PYX_ERR(0, 119, __pyx_L1_error)) __pyx_v_current = PyThread_get_thread_ident(); - /* "hunter/_event.pyx":117 + /* "hunter/_event.pyx":120 * if self._threadidn is UNSET: * current = PyThread_get_thread_ident() * main = get_main_thread() # <<<<<<<<<<<<<< * if main is not None and current == main.ident: * self._threadidn = None */ - __Pyx_TraceLine(117,11,0,__PYX_ERR(0, 117, __pyx_L1_error)) + __Pyx_TraceLine(120,11,0,__PYX_ERR(0, 120, __pyx_L1_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 117, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 120, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -5101,54 +5013,54 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 117, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 120, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_main = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":118 + /* "hunter/_event.pyx":121 * current = PyThread_get_thread_ident() * main = get_main_thread() * if main is not None and current == main.ident: # <<<<<<<<<<<<<< * self._threadidn = None * else: */ - __Pyx_TraceLine(118,15,0,__PYX_ERR(0, 118, __pyx_L1_error)) + __Pyx_TraceLine(121,15,0,__PYX_ERR(0, 121, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_main != Py_None); if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main, __pyx_mstate_global->__pyx_n_u_ident); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_main, __pyx_mstate_global->__pyx_n_u_ident); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __pyx_t_6; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":119 + /* "hunter/_event.pyx":122 * main = get_main_thread() * if main is not None and current == main.ident: * self._threadidn = None # <<<<<<<<<<<<<< * else: * self._threadidn = current */ - __Pyx_TraceLine(119,21,0,__PYX_ERR(0, 119, __pyx_L1_error)) + __Pyx_TraceLine(122,21,0,__PYX_ERR(0, 122, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_threadidn); __Pyx_DECREF(__pyx_v_self->_threadidn); __pyx_v_self->_threadidn = Py_None; - /* "hunter/_event.pyx":118 + /* "hunter/_event.pyx":121 * current = PyThread_get_thread_ident() * main = get_main_thread() * if main is not None and current == main.ident: # <<<<<<<<<<<<<< @@ -5158,16 +5070,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj goto __pyx_L4; } - /* "hunter/_event.pyx":121 + /* "hunter/_event.pyx":124 * self._threadidn = None * else: * self._threadidn = current # <<<<<<<<<<<<<< * return self._threadidn * */ - __Pyx_TraceLine(121,26,0,__PYX_ERR(0, 121, __pyx_L1_error)) + __Pyx_TraceLine(124,26,0,__PYX_ERR(0, 124, __pyx_L1_error)) /*else*/ { - __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 121, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v_current); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __Pyx_GOTREF(__pyx_v_self->_threadidn); @@ -5177,7 +5089,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj } __pyx_L4:; - /* "hunter/_event.pyx":115 + /* "hunter/_event.pyx":118 * cdef long current * * if self._threadidn is UNSET: # <<<<<<<<<<<<<< @@ -5186,21 +5098,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":122 + /* "hunter/_event.pyx":125 * else: * self._threadidn = current * return self._threadidn # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(122,27,0,__PYX_ERR(0, 122, __pyx_L1_error)) + __Pyx_TraceLine(125,27,0,__PYX_ERR(0, 125, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threadidn); __pyx_r = __pyx_v_self->_threadidn; - __Pyx_TraceReturnValue(__pyx_r, 27, 0, __PYX_ERR(0, 122, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 27, 0, __PYX_ERR(0, 125, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":112 + /* "hunter/_event.pyx":115 * return self.instruction_getter() * * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< @@ -5217,7 +5129,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 112, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 115, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadid_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5229,7 +5141,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadid_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":124 +/* "hunter/_event.pyx":127 * return self._threadidn * * @property # <<<<<<<<<<<<<< @@ -5262,25 +5174,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 124, 0, 0, 0, __PYX_ERR(0, 124, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 127, 0, 0, 0, __PYX_ERR(0, 127, __pyx_L1_error)); - /* "hunter/_event.pyx":126 + /* "hunter/_event.pyx":129 * @property * def threadid(self): * return self.threadid_getter() # <<<<<<<<<<<<<< * * cdef inline threadname_getter(self): */ - __Pyx_TraceLine(126,1,0,__PYX_ERR(0, 126, __pyx_L1_error)) + __Pyx_TraceLine(129,1,0,__PYX_ERR(0, 129, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 126, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 126, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 129, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":124 + /* "hunter/_event.pyx":127 * return self._threadidn * * @property # <<<<<<<<<<<<<< @@ -5295,7 +5207,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 124, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 127, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadid.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5306,7 +5218,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8threadid___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":128 +/* "hunter/_event.pyx":131 * return self.threadid_getter() * * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< @@ -5328,40 +5240,40 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) __Pyx_RefNannySetupContext("threadname_getter", 0); - __Pyx_TraceStartFunc("threadname_getter", __pyx_f[0], 128, 0, 0, 0, __PYX_ERR(0, 128, __pyx_L1_error)); + __Pyx_TraceStartFunc("threadname_getter", __pyx_f[0], 131, 0, 0, 0, __PYX_ERR(0, 131, __pyx_L1_error)); - /* "hunter/_event.pyx":129 + /* "hunter/_event.pyx":132 * * cdef inline threadname_getter(self): * if self._threadname is UNSET: # <<<<<<<<<<<<<< * if self._thread is UNSET: * self._thread = current_thread() */ - __Pyx_TraceLine(129,5,0,__PYX_ERR(0, 129, __pyx_L1_error)) + __Pyx_TraceLine(132,5,0,__PYX_ERR(0, 132, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_threadname == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":130 + /* "hunter/_event.pyx":133 * cdef inline threadname_getter(self): * if self._threadname is UNSET: * if self._thread is UNSET: # <<<<<<<<<<<<<< * self._thread = current_thread() * self._threadname = self._thread.name */ - __Pyx_TraceLine(130,10,0,__PYX_ERR(0, 130, __pyx_L1_error)) + __Pyx_TraceLine(133,10,0,__PYX_ERR(0, 133, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_thread == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":131 + /* "hunter/_event.pyx":134 * if self._threadname is UNSET: * if self._thread is UNSET: * self._thread = current_thread() # <<<<<<<<<<<<<< * self._threadname = self._thread.name * return self._threadname */ - __Pyx_TraceLine(131,14,0,__PYX_ERR(0, 131, __pyx_L1_error)) + __Pyx_TraceLine(134,14,0,__PYX_ERR(0, 134, __pyx_L1_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 131, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -5380,7 +5292,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 131, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_GIVEREF(__pyx_t_2); @@ -5389,7 +5301,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_v_self->_thread = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":130 + /* "hunter/_event.pyx":133 * cdef inline threadname_getter(self): * if self._threadname is UNSET: * if self._thread is UNSET: # <<<<<<<<<<<<<< @@ -5398,15 +5310,15 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":132 + /* "hunter/_event.pyx":135 * if self._thread is UNSET: * self._thread = current_thread() * self._threadname = self._thread.name # <<<<<<<<<<<<<< * return self._threadname * */ - __Pyx_TraceLine(132,19,0,__PYX_ERR(0, 132, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->_thread, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 132, __pyx_L1_error) + __Pyx_TraceLine(135,19,0,__PYX_ERR(0, 135, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->_thread, __pyx_mstate_global->__pyx_n_u_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_threadname); @@ -5414,7 +5326,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o __pyx_v_self->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":129 + /* "hunter/_event.pyx":132 * * cdef inline threadname_getter(self): * if self._threadname is UNSET: # <<<<<<<<<<<<<< @@ -5423,21 +5335,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":133 + /* "hunter/_event.pyx":136 * self._thread = current_thread() * self._threadname = self._thread.name * return self._threadname # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(133,20,0,__PYX_ERR(0, 133, __pyx_L1_error)) + __Pyx_TraceLine(136,20,0,__PYX_ERR(0, 136, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threadname); __pyx_r = __pyx_v_self->_threadname; - __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 133, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 136, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":128 + /* "hunter/_event.pyx":131 * return self.threadid_getter() * * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< @@ -5454,7 +5366,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 128, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 131, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadname_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5465,7 +5377,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_threadname_getter(struct __pyx_o return __pyx_r; } -/* "hunter/_event.pyx":135 +/* "hunter/_event.pyx":138 * return self._threadname * * @property # <<<<<<<<<<<<<< @@ -5498,25 +5410,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 135, 0, 0, 0, __PYX_ERR(0, 135, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 138, 0, 0, 0, __PYX_ERR(0, 138, __pyx_L1_error)); - /* "hunter/_event.pyx":137 + /* "hunter/_event.pyx":140 * @property * def threadname(self): * return self.threadname_getter() # <<<<<<<<<<<<<< * * cdef inline locals_getter(self): */ - __Pyx_TraceLine(137,1,0,__PYX_ERR(0, 137, __pyx_L1_error)) + __Pyx_TraceLine(140,1,0,__PYX_ERR(0, 140, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 137, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 137, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 140, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":135 + /* "hunter/_event.pyx":138 * return self._threadname * * @property # <<<<<<<<<<<<<< @@ -5531,7 +5443,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 135, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 138, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threadname.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5542,7 +5454,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10threadname___get__(struct __p return __pyx_r; } -/* "hunter/_event.pyx":139 +/* "hunter/_event.pyx":142 * return self.threadname_getter() * * cdef inline locals_getter(self): # <<<<<<<<<<<<<< @@ -5562,39 +5474,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) __Pyx_RefNannySetupContext("locals_getter", 0); - __Pyx_TraceStartFunc("locals_getter", __pyx_f[0], 139, 0, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); + __Pyx_TraceStartFunc("locals_getter", __pyx_f[0], 142, 0, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); - /* "hunter/_event.pyx":140 + /* "hunter/_event.pyx":143 * * cdef inline locals_getter(self): * if self._locals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} */ - __Pyx_TraceLine(140,5,0,__PYX_ERR(0, 140, __pyx_L1_error)) + __Pyx_TraceLine(143,5,0,__PYX_ERR(0, 143, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_locals == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":141 + /* "hunter/_event.pyx":144 * cdef inline locals_getter(self): * if self._locals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: */ - __Pyx_TraceLine(141,8,0,__PYX_ERR(0, 141, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 141, __pyx_L1_error) + __Pyx_TraceLine(144,8,0,__PYX_ERR(0, 144, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 144, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":142 + /* "hunter/_event.pyx":145 * if self._locals is UNSET: * if self.builtin: * self._locals = {} # <<<<<<<<<<<<<< * else: * self._locals = Hunter_PyFrame_GetLocals(self.frame) */ - __Pyx_TraceLine(142,11,0,__PYX_ERR(0, 142, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error) + __Pyx_TraceLine(145,11,0,__PYX_ERR(0, 145, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_locals); @@ -5602,7 +5514,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 __pyx_v_self->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":141 + /* "hunter/_event.pyx":144 * cdef inline locals_getter(self): * if self._locals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -5612,18 +5524,18 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":144 + /* "hunter/_event.pyx":147 * self._locals = {} * else: * self._locals = Hunter_PyFrame_GetLocals(self.frame) # <<<<<<<<<<<<<< * return self._locals * */ - __Pyx_TraceLine(144,15,0,__PYX_ERR(0, 144, __pyx_L1_error)) + __Pyx_TraceLine(147,15,0,__PYX_ERR(0, 147, __pyx_L1_error)) /*else*/ { __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = Hunter_PyFrame_GetLocals(((FrameType)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 144, __pyx_L1_error) + __pyx_t_3 = Hunter_PyFrame_GetLocals(((FrameType)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GIVEREF(__pyx_t_3); @@ -5634,7 +5546,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":140 + /* "hunter/_event.pyx":143 * * cdef inline locals_getter(self): * if self._locals is UNSET: # <<<<<<<<<<<<<< @@ -5643,21 +5555,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":145 + /* "hunter/_event.pyx":148 * else: * self._locals = Hunter_PyFrame_GetLocals(self.frame) * return self._locals # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(145,18,0,__PYX_ERR(0, 145, __pyx_L1_error)) + __Pyx_TraceLine(148,18,0,__PYX_ERR(0, 148, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_locals); __pyx_r = __pyx_v_self->_locals; - __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 145, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 148, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":139 + /* "hunter/_event.pyx":142 * return self.threadname_getter() * * cdef inline locals_getter(self): # <<<<<<<<<<<<<< @@ -5673,7 +5585,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 139, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 142, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.locals_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5684,7 +5596,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_locals_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":147 +/* "hunter/_event.pyx":150 * return self._locals * * @property # <<<<<<<<<<<<<< @@ -5717,25 +5629,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 147, 0, 0, 0, __PYX_ERR(0, 147, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 150, 0, 0, 0, __PYX_ERR(0, 150, __pyx_L1_error)); - /* "hunter/_event.pyx":149 + /* "hunter/_event.pyx":152 * @property * def locals(self): * return self.locals_getter() # <<<<<<<<<<<<<< * * cdef inline globals_getter(self): */ - __Pyx_TraceLine(149,1,0,__PYX_ERR(0, 149, __pyx_L1_error)) + __Pyx_TraceLine(152,1,0,__PYX_ERR(0, 152, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_locals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 149, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_locals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 149, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 152, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":147 + /* "hunter/_event.pyx":150 * return self._locals * * @property # <<<<<<<<<<<<<< @@ -5750,7 +5662,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 147, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 150, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.locals.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5761,7 +5673,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6locals___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":151 +/* "hunter/_event.pyx":154 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< @@ -5781,39 +5693,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) __Pyx_RefNannySetupContext("globals_getter", 0); - __Pyx_TraceStartFunc("globals_getter", __pyx_f[0], 151, 0, 0, 0, __PYX_ERR(0, 151, __pyx_L1_error)); + __Pyx_TraceStartFunc("globals_getter", __pyx_f[0], 154, 0, 0, 0, __PYX_ERR(0, 154, __pyx_L1_error)); - /* "hunter/_event.pyx":152 + /* "hunter/_event.pyx":155 * * cdef inline globals_getter(self): * if self._globals is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._locals = {} */ - __Pyx_TraceLine(152,5,0,__PYX_ERR(0, 152, __pyx_L1_error)) + __Pyx_TraceLine(155,5,0,__PYX_ERR(0, 155, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_globals == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":153 + /* "hunter/_event.pyx":156 * cdef inline globals_getter(self): * if self._globals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._locals = {} * else: */ - __Pyx_TraceLine(153,8,0,__PYX_ERR(0, 153, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 153, __pyx_L1_error) + __Pyx_TraceLine(156,8,0,__PYX_ERR(0, 156, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 156, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":154 + /* "hunter/_event.pyx":157 * if self._globals is UNSET: * if self.builtin: * self._locals = {} # <<<<<<<<<<<<<< * else: * self._globals = Hunter_PyFrame_GetGlobals(self.frame) */ - __Pyx_TraceLine(154,11,0,__PYX_ERR(0, 154, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 154, __pyx_L1_error) + __Pyx_TraceLine(157,11,0,__PYX_ERR(0, 157, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 157, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_locals); @@ -5821,7 +5733,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ __pyx_v_self->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":153 + /* "hunter/_event.pyx":156 * cdef inline globals_getter(self): * if self._globals is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -5831,18 +5743,18 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ goto __pyx_L4; } - /* "hunter/_event.pyx":156 + /* "hunter/_event.pyx":159 * self._locals = {} * else: * self._globals = Hunter_PyFrame_GetGlobals(self.frame) # <<<<<<<<<<<<<< * return self._globals * */ - __Pyx_TraceLine(156,15,0,__PYX_ERR(0, 156, __pyx_L1_error)) + __Pyx_TraceLine(159,15,0,__PYX_ERR(0, 159, __pyx_L1_error)) /*else*/ { __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = Hunter_PyFrame_GetGlobals(((FrameType)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 156, __pyx_L1_error) + __pyx_t_3 = Hunter_PyFrame_GetGlobals(((FrameType)__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GIVEREF(__pyx_t_3); @@ -5853,7 +5765,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ } __pyx_L4:; - /* "hunter/_event.pyx":152 + /* "hunter/_event.pyx":155 * * cdef inline globals_getter(self): * if self._globals is UNSET: # <<<<<<<<<<<<<< @@ -5862,21 +5774,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ */ } - /* "hunter/_event.pyx":157 + /* "hunter/_event.pyx":160 * else: * self._globals = Hunter_PyFrame_GetGlobals(self.frame) * return self._globals # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(157,18,0,__PYX_ERR(0, 157, __pyx_L1_error)) + __Pyx_TraceLine(160,18,0,__PYX_ERR(0, 160, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_globals); __pyx_r = __pyx_v_self->_globals; - __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 157, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 18, 0, __PYX_ERR(0, 160, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":151 + /* "hunter/_event.pyx":154 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< @@ -5892,7 +5804,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 151, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 154, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.globals_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -5903,7 +5815,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_globals_getter(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pyx":159 +/* "hunter/_event.pyx":162 * return self._globals * * @property # <<<<<<<<<<<<<< @@ -5936,25 +5848,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 159, 0, 0, 0, __PYX_ERR(0, 159, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 162, 0, 0, 0, __PYX_ERR(0, 162, __pyx_L1_error)); - /* "hunter/_event.pyx":161 + /* "hunter/_event.pyx":164 * @property * def globals(self): * return self.globals_getter() # <<<<<<<<<<<<<< * * cdef inline function_getter(self): */ - __Pyx_TraceLine(161,1,0,__PYX_ERR(0, 161, __pyx_L1_error)) + __Pyx_TraceLine(164,1,0,__PYX_ERR(0, 164, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_globals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 161, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_globals_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 164, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 161, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 164, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":159 + /* "hunter/_event.pyx":162 * return self._globals * * @property # <<<<<<<<<<<<<< @@ -5969,7 +5881,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 159, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 162, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.globals.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -5980,7 +5892,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7globals___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_event.pyx":163 +/* "hunter/_event.pyx":166 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< @@ -6000,39 +5912,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) __Pyx_RefNannySetupContext("function_getter", 0); - __Pyx_TraceStartFunc("function_getter", __pyx_f[0], 163, 0, 0, 0, __PYX_ERR(0, 163, __pyx_L1_error)); + __Pyx_TraceStartFunc("function_getter", __pyx_f[0], 166, 0, 0, 0, __PYX_ERR(0, 166, __pyx_L1_error)); - /* "hunter/_event.pyx":164 + /* "hunter/_event.pyx":167 * * cdef inline function_getter(self): * if self._function is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * self._function = self.arg.__name__ */ - __Pyx_TraceLine(164,5,0,__PYX_ERR(0, 164, __pyx_L1_error)) + __Pyx_TraceLine(167,5,0,__PYX_ERR(0, 167, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_function == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":165 + /* "hunter/_event.pyx":168 * cdef inline function_getter(self): * if self._function is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * self._function = self.arg.__name__ * else: */ - __Pyx_TraceLine(165,8,0,__PYX_ERR(0, 165, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 165, __pyx_L1_error) + __Pyx_TraceLine(168,8,0,__PYX_ERR(0, 168, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 168, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":166 + /* "hunter/_event.pyx":169 * if self._function is UNSET: * if self.builtin: * self._function = self.arg.__name__ # <<<<<<<<<<<<<< * else: * self._function = self.code_getter().co_name */ - __Pyx_TraceLine(166,13,0,__PYX_ERR(0, 166, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_name_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 166, __pyx_L1_error) + __Pyx_TraceLine(169,13,0,__PYX_ERR(0, 169, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_name_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_self->_function); @@ -6040,7 +5952,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj __pyx_v_self->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":165 + /* "hunter/_event.pyx":168 * cdef inline function_getter(self): * if self._function is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -6050,16 +5962,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj goto __pyx_L4; } - /* "hunter/_event.pyx":168 + /* "hunter/_event.pyx":171 * self._function = self.arg.__name__ * else: * self._function = self.code_getter().co_name # <<<<<<<<<<<<<< * return self._function * */ - __Pyx_TraceLine(168,19,0,__PYX_ERR(0, 168, __pyx_L1_error)) + __Pyx_TraceLine(171,19,0,__PYX_ERR(0, 171, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 168, __pyx_L1_error) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 171, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = ((PyCodeObject *)__pyx_t_2)->co_name; __Pyx_INCREF(__pyx_t_3); @@ -6072,7 +5984,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj } __pyx_L4:; - /* "hunter/_event.pyx":164 + /* "hunter/_event.pyx":167 * * cdef inline function_getter(self): * if self._function is UNSET: # <<<<<<<<<<<<<< @@ -6081,21 +5993,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":169 + /* "hunter/_event.pyx":172 * else: * self._function = self.code_getter().co_name * return self._function # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(169,20,0,__PYX_ERR(0, 169, __pyx_L1_error)) + __Pyx_TraceLine(172,20,0,__PYX_ERR(0, 172, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_function); __pyx_r = __pyx_v_self->_function; - __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 169, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 20, 0, __PYX_ERR(0, 172, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":163 + /* "hunter/_event.pyx":166 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< @@ -6111,7 +6023,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 163, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 166, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.function_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -6122,7 +6034,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_function_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":171 +/* "hunter/_event.pyx":174 * return self._function * * @property # <<<<<<<<<<<<<< @@ -6155,25 +6067,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 171, 0, 0, 0, __PYX_ERR(0, 171, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 174, 0, 0, 0, __PYX_ERR(0, 174, __pyx_L1_error)); - /* "hunter/_event.pyx":173 + /* "hunter/_event.pyx":176 * @property * def function(self): * return self.function_getter() # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(173,1,0,__PYX_ERR(0, 173, __pyx_L1_error)) + __Pyx_TraceLine(176,1,0,__PYX_ERR(0, 176, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 173, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 173, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 176, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":171 + /* "hunter/_event.pyx":174 * return self._function * * @property # <<<<<<<<<<<<<< @@ -6188,7 +6100,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 171, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 174, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.function.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6199,7 +6111,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8function___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":175 +/* "hunter/_event.pyx":178 * return self.function_getter() * * @property # <<<<<<<<<<<<<< @@ -6248,34 +6160,34 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 175, 0, 0, 0, __PYX_ERR(0, 175, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 178, 0, 0, 0, __PYX_ERR(0, 178, __pyx_L1_error)); - /* "hunter/_event.pyx":178 + /* "hunter/_event.pyx":181 * def function_object(self): * cdef CodeType code * if self.builtin: # <<<<<<<<<<<<<< * return self.builtin * elif self._function_object is UNSET: */ - __Pyx_TraceLine(178,3,0,__PYX_ERR(0, 178, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 178, __pyx_L1_error) + __Pyx_TraceLine(181,3,0,__PYX_ERR(0, 181, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 181, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":179 + /* "hunter/_event.pyx":182 * cdef CodeType code * if self.builtin: * return self.builtin # <<<<<<<<<<<<<< * elif self._function_object is UNSET: * code = self.code_getter() */ - __Pyx_TraceLine(179,4,0,__PYX_ERR(0, 179, __pyx_L1_error)) + __Pyx_TraceLine(182,4,0,__PYX_ERR(0, 182, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; - __Pyx_TraceReturnValue(__pyx_r, 4, 0, __PYX_ERR(0, 179, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 4, 0, __PYX_ERR(0, 182, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":178 + /* "hunter/_event.pyx":181 * def function_object(self): * cdef CodeType code * if self.builtin: # <<<<<<<<<<<<<< @@ -6284,54 +6196,54 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":180 + /* "hunter/_event.pyx":183 * if self.builtin: * return self.builtin * elif self._function_object is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * if code.co_name is None: */ - __Pyx_TraceLine(180,10,0,__PYX_ERR(0, 180, __pyx_L1_error)) + __Pyx_TraceLine(183,10,0,__PYX_ERR(0, 183, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_function_object == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":181 + /* "hunter/_event.pyx":184 * return self.builtin * elif self._function_object is UNSET: * code = self.code_getter() # <<<<<<<<<<<<<< * if code.co_name is None: * return None */ - __Pyx_TraceLine(181,14,0,__PYX_ERR(0, 181, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 181, __pyx_L1_error) + __Pyx_TraceLine(184,14,0,__PYX_ERR(0, 184, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_code = ((PyCodeObject *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":182 + /* "hunter/_event.pyx":185 * elif self._function_object is UNSET: * code = self.code_getter() * if code.co_name is None: # <<<<<<<<<<<<<< * return None * # First, try to find the function in globals */ - __Pyx_TraceLine(182,19,0,__PYX_ERR(0, 182, __pyx_L1_error)) + __Pyx_TraceLine(185,19,0,__PYX_ERR(0, 185, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_code->co_name == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":183 + /* "hunter/_event.pyx":186 * code = self.code_getter() * if code.co_name is None: * return None # <<<<<<<<<<<<<< * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) */ - __Pyx_TraceLine(183,20,0,__PYX_ERR(0, 183, __pyx_L1_error)) + __Pyx_TraceLine(186,20,0,__PYX_ERR(0, 186, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; - /* "hunter/_event.pyx":182 + /* "hunter/_event.pyx":185 * elif self._function_object is UNSET: * code = self.code_getter() * if code.co_name is None: # <<<<<<<<<<<<<< @@ -6340,15 +6252,15 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":185 + /* "hunter/_event.pyx":188 * return None * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) # <<<<<<<<<<<<<< * func = if_same_code(candidate, code) * # If that failed, as will be the case with class and instance methods, try */ - __Pyx_TraceLine(185,24,0,__PYX_ERR(0, 185, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 185, __pyx_L1_error) + __Pyx_TraceLine(188,24,0,__PYX_ERR(0, 188, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); @@ -6358,22 +6270,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 185, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_candidate = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":186 + /* "hunter/_event.pyx":189 * # First, try to find the function in globals * candidate = self.globals.get(code.co_name, None) * func = if_same_code(candidate, code) # <<<<<<<<<<<<<< * # If that failed, as will be the case with class and instance methods, try * # to look up the function from the first argument. In the case of class/instance */ - __Pyx_TraceLine(186,32,0,__PYX_ERR(0, 186, __pyx_L1_error)) + __Pyx_TraceLine(189,32,0,__PYX_ERR(0, 189, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 186, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -6392,20 +6304,20 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 186, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_func = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":191 + /* "hunter/_event.pyx":194 * # methods, this should be the class (or an instance of the class) on which our * # method is defined. * if func is None and code.co_argcount >= 1: # <<<<<<<<<<<<<< * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) */ - __Pyx_TraceLine(191,38,0,__PYX_ERR(0, 191, __pyx_L1_error)) + __Pyx_TraceLine(194,38,0,__PYX_ERR(0, 194, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_func == Py_None); if (__pyx_t_6) { } else { @@ -6417,21 +6329,21 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_L6_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":192 + /* "hunter/_event.pyx":195 * # method is defined. * if func is None and code.co_argcount >= 1: * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) # <<<<<<<<<<<<<< * func = get_func_in_mro(first_arg, code) * # If we still can't find the function, as will be the case with static methods, */ - __Pyx_TraceLine(192,46,0,__PYX_ERR(0, 192, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 192, __pyx_L1_error) + __Pyx_TraceLine(195,46,0,__PYX_ERR(0, 195, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); - __pyx_t_7 = PyCode_GetVarnames(__pyx_v_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_t_7 = PyCode_GetVarnames(__pyx_v_code); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_GetItemInt(__pyx_t_7, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_t_8 = __Pyx_GetItemInt(__pyx_t_7, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = 0; @@ -6441,22 +6353,22 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 192, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_first_arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":193 + /* "hunter/_event.pyx":196 * if func is None and code.co_argcount >= 1: * first_arg = self.locals.get(PyCode_GetVarnames(code)[0]) * func = get_func_in_mro(first_arg, code) # <<<<<<<<<<<<<< * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. */ - __Pyx_TraceLine(193,56,0,__PYX_ERR(0, 193, __pyx_L1_error)) + __Pyx_TraceLine(196,56,0,__PYX_ERR(0, 196, __pyx_L1_error)) __pyx_t_4 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 193, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -6475,13 +6387,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 193, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":191 + /* "hunter/_event.pyx":194 * # methods, this should be the class (or an instance of the class) on which our * # method is defined. * if func is None and code.co_argcount >= 1: # <<<<<<<<<<<<<< @@ -6490,33 +6402,33 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":196 + /* "hunter/_event.pyx":199 * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. * if func is None: # <<<<<<<<<<<<<< * for v in self.globals.values(): * if not isinstance(v, type): */ - __Pyx_TraceLine(196,62,0,__PYX_ERR(0, 196, __pyx_L1_error)) + __Pyx_TraceLine(199,62,0,__PYX_ERR(0, 199, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_func == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":197 + /* "hunter/_event.pyx":200 * # try looking at classes in global scope. * if func is None: * for v in self.globals.values(): # <<<<<<<<<<<<<< * if not isinstance(v, type): * continue */ - __Pyx_TraceLine(197,63,0,__PYX_ERR(0, 197, __pyx_L1_error)) + __Pyx_TraceLine(200,63,0,__PYX_ERR(0, 200, __pyx_L1_error)) __pyx_t_9 = 0; - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 197, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (unlikely(__pyx_t_8 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "values"); - __PYX_ERR(0, 197, __pyx_L1_error) + __PYX_ERR(0, 200, __pyx_L1_error) } - __pyx_t_4 = __Pyx_dict_iterator(__pyx_t_8, 0, __pyx_mstate_global->__pyx_n_u_values, (&__pyx_t_10), (&__pyx_t_11)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 197, __pyx_L1_error) + __pyx_t_4 = __Pyx_dict_iterator(__pyx_t_8, 0, __pyx_mstate_global->__pyx_n_u_values, (&__pyx_t_10), (&__pyx_t_11)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_2); @@ -6525,34 +6437,34 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc while (1) { __pyx_t_12 = __Pyx_dict_iter_next(__pyx_t_2, __pyx_t_10, &__pyx_t_9, NULL, &__pyx_t_4, NULL, __pyx_t_11); if (unlikely(__pyx_t_12 == 0)) break; - if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(0, 197, __pyx_L1_error) + if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_event.pyx":198 + /* "hunter/_event.pyx":201 * if func is None: * for v in self.globals.values(): * if not isinstance(v, type): # <<<<<<<<<<<<<< * continue * func = get_func_in_mro(v, code) */ - __Pyx_TraceLine(198,74,0,__PYX_ERR(0, 198, __pyx_L1_error)) + __Pyx_TraceLine(201,74,0,__PYX_ERR(0, 201, __pyx_L1_error)) __pyx_t_1 = PyType_Check(__pyx_v_v); __pyx_t_6 = (!__pyx_t_1); if (__pyx_t_6) { - /* "hunter/_event.pyx":199 + /* "hunter/_event.pyx":202 * for v in self.globals.values(): * if not isinstance(v, type): * continue # <<<<<<<<<<<<<< * func = get_func_in_mro(v, code) * if func is not None: */ - __Pyx_TraceLine(199,75,0,__PYX_ERR(0, 199, __pyx_L1_error)) + __Pyx_TraceLine(202,75,0,__PYX_ERR(0, 202, __pyx_L1_error)) goto __pyx_L9_continue; - /* "hunter/_event.pyx":198 + /* "hunter/_event.pyx":201 * if func is None: * for v in self.globals.values(): * if not isinstance(v, type): # <<<<<<<<<<<<<< @@ -6561,16 +6473,16 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":200 + /* "hunter/_event.pyx":203 * if not isinstance(v, type): * continue * func = get_func_in_mro(v, code) # <<<<<<<<<<<<<< * if func is not None: * break */ - __Pyx_TraceLine(200,78,0,__PYX_ERR(0, 200, __pyx_L1_error)) + __Pyx_TraceLine(203,78,0,__PYX_ERR(0, 203, __pyx_L1_error)) __pyx_t_8 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 200, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -6589,34 +6501,34 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (3-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 200, __pyx_L1_error) + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); } __Pyx_DECREF_SET(__pyx_v_func, __pyx_t_4); __pyx_t_4 = 0; - /* "hunter/_event.pyx":201 + /* "hunter/_event.pyx":204 * continue * func = get_func_in_mro(v, code) * if func is not None: # <<<<<<<<<<<<<< * break * self._function_object = func */ - __Pyx_TraceLine(201,84,0,__PYX_ERR(0, 201, __pyx_L1_error)) + __Pyx_TraceLine(204,84,0,__PYX_ERR(0, 204, __pyx_L1_error)) __pyx_t_6 = (__pyx_v_func != Py_None); if (__pyx_t_6) { - /* "hunter/_event.pyx":202 + /* "hunter/_event.pyx":205 * func = get_func_in_mro(v, code) * if func is not None: * break # <<<<<<<<<<<<<< * self._function_object = func * return self._function_object */ - __Pyx_TraceLine(202,85,0,__PYX_ERR(0, 202, __pyx_L1_error)) + __Pyx_TraceLine(205,85,0,__PYX_ERR(0, 205, __pyx_L1_error)) goto __pyx_L10_break; - /* "hunter/_event.pyx":201 + /* "hunter/_event.pyx":204 * continue * func = get_func_in_mro(v, code) * if func is not None: # <<<<<<<<<<<<<< @@ -6629,7 +6541,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc __pyx_L10_break:; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":196 + /* "hunter/_event.pyx":199 * # If we still can't find the function, as will be the case with static methods, * # try looking at classes in global scope. * if func is None: # <<<<<<<<<<<<<< @@ -6638,21 +6550,21 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":203 + /* "hunter/_event.pyx":206 * if func is not None: * break * self._function_object = func # <<<<<<<<<<<<<< * return self._function_object * */ - __Pyx_TraceLine(203,86,0,__PYX_ERR(0, 203, __pyx_L1_error)) + __Pyx_TraceLine(206,86,0,__PYX_ERR(0, 206, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_func); __Pyx_GIVEREF(__pyx_v_func); __Pyx_GOTREF(__pyx_v_self->_function_object); __Pyx_DECREF(__pyx_v_self->_function_object); __pyx_v_self->_function_object = __pyx_v_func; - /* "hunter/_event.pyx":180 + /* "hunter/_event.pyx":183 * if self.builtin: * return self.builtin * elif self._function_object is UNSET: # <<<<<<<<<<<<<< @@ -6661,21 +6573,21 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc */ } - /* "hunter/_event.pyx":204 + /* "hunter/_event.pyx":207 * break * self._function_object = func * return self._function_object # <<<<<<<<<<<<<< * * cdef inline module_getter(self): */ - __Pyx_TraceLine(204,89,0,__PYX_ERR(0, 204, __pyx_L1_error)) + __Pyx_TraceLine(207,89,0,__PYX_ERR(0, 207, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_function_object); __pyx_r = __pyx_v_self->_function_object; - __Pyx_TraceReturnValue(__pyx_r, 89, 0, __PYX_ERR(0, 204, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 89, 0, __PYX_ERR(0, 207, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":175 + /* "hunter/_event.pyx":178 * return self.function_getter() * * @property # <<<<<<<<<<<<<< @@ -6694,7 +6606,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 175, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 178, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.function_object.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6710,7 +6622,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_15function_object___get__(struc return __pyx_r; } -/* "hunter/_event.pyx":206 +/* "hunter/_event.pyx":209 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< @@ -6731,44 +6643,44 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])) __Pyx_RefNannySetupContext("module_getter", 0); - __Pyx_TraceStartFunc("module_getter", __pyx_f[0], 206, 0, 0, 0, __PYX_ERR(0, 206, __pyx_L1_error)); + __Pyx_TraceStartFunc("module_getter", __pyx_f[0], 209, 0, 0, 0, __PYX_ERR(0, 209, __pyx_L1_error)); - /* "hunter/_event.pyx":207 + /* "hunter/_event.pyx":210 * * cdef inline module_getter(self): * if self._module is UNSET: # <<<<<<<<<<<<<< * if self.builtin: * module = self.arg.__module__ */ - __Pyx_TraceLine(207,5,0,__PYX_ERR(0, 207, __pyx_L1_error)) + __Pyx_TraceLine(210,5,0,__PYX_ERR(0, 210, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_module == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":208 + /* "hunter/_event.pyx":211 * cdef inline module_getter(self): * if self._module is UNSET: * if self.builtin: # <<<<<<<<<<<<<< * module = self.arg.__module__ * else: */ - __Pyx_TraceLine(208,8,0,__PYX_ERR(0, 208, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 208, __pyx_L1_error) + __Pyx_TraceLine(211,8,0,__PYX_ERR(0, 211, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->builtin); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 211, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":209 + /* "hunter/_event.pyx":212 * if self._module is UNSET: * if self.builtin: * module = self.arg.__module__ # <<<<<<<<<<<<<< * else: * module = self.globals.get('__name__', '') */ - __Pyx_TraceLine(209,12,0,__PYX_ERR(0, 209, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_module_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 209, __pyx_L1_error) + __Pyx_TraceLine(212,12,0,__PYX_ERR(0, 212, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self->arg, __pyx_mstate_global->__pyx_n_u_module_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":208 + /* "hunter/_event.pyx":211 * cdef inline module_getter(self): * if self._module is UNSET: * if self.builtin: # <<<<<<<<<<<<<< @@ -6778,21 +6690,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":211 + /* "hunter/_event.pyx":214 * module = self.arg.__module__ * else: * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< * if module is None: * module = '?' */ - __Pyx_TraceLine(211,17,0,__PYX_ERR(0, 211, __pyx_L1_error)) + __Pyx_TraceLine(214,17,0,__PYX_ERR(0, 214, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0], NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_v_module = __pyx_t_2; @@ -6800,29 +6712,29 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":212 + /* "hunter/_event.pyx":215 * else: * module = self.globals.get('__name__', '') * if module is None: # <<<<<<<<<<<<<< * module = '?' * self._module = module */ - __Pyx_TraceLine(212,23,0,__PYX_ERR(0, 212, __pyx_L1_error)) + __Pyx_TraceLine(215,23,0,__PYX_ERR(0, 215, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_module == Py_None); if (__pyx_t_1) { - /* "hunter/_event.pyx":213 + /* "hunter/_event.pyx":216 * module = self.globals.get('__name__', '') * if module is None: * module = '?' # <<<<<<<<<<<<<< * self._module = module * return self._module */ - __Pyx_TraceLine(213,25,0,__PYX_ERR(0, 213, __pyx_L1_error)) + __Pyx_TraceLine(216,25,0,__PYX_ERR(0, 216, __pyx_L1_error)) __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); __Pyx_DECREF_SET(__pyx_v_module, __pyx_mstate_global->__pyx_kp_u__3); - /* "hunter/_event.pyx":212 + /* "hunter/_event.pyx":215 * else: * module = self.globals.get('__name__', '') * if module is None: # <<<<<<<<<<<<<< @@ -6831,21 +6743,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":214 + /* "hunter/_event.pyx":217 * if module is None: * module = '?' * self._module = module # <<<<<<<<<<<<<< * return self._module * */ - __Pyx_TraceLine(214,26,0,__PYX_ERR(0, 214, __pyx_L1_error)) + __Pyx_TraceLine(217,26,0,__PYX_ERR(0, 217, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_module); __Pyx_GIVEREF(__pyx_v_module); __Pyx_GOTREF(__pyx_v_self->_module); __Pyx_DECREF(__pyx_v_self->_module); __pyx_v_self->_module = __pyx_v_module; - /* "hunter/_event.pyx":207 + /* "hunter/_event.pyx":210 * * cdef inline module_getter(self): * if self._module is UNSET: # <<<<<<<<<<<<<< @@ -6854,21 +6766,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":215 + /* "hunter/_event.pyx":218 * module = '?' * self._module = module * return self._module # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(215,29,0,__PYX_ERR(0, 215, __pyx_L1_error)) + __Pyx_TraceLine(218,29,0,__PYX_ERR(0, 218, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_module); __pyx_r = __pyx_v_self->_module; - __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(0, 215, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(0, 218, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":206 + /* "hunter/_event.pyx":209 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< @@ -6884,7 +6796,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 206, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 209, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.module_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -6896,7 +6808,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_module_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":217 +/* "hunter/_event.pyx":220 * return self._module * * @property # <<<<<<<<<<<<<< @@ -6929,25 +6841,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 217, 0, 0, 0, __PYX_ERR(0, 217, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 220, 0, 0, 0, __PYX_ERR(0, 220, __pyx_L1_error)); - /* "hunter/_event.pyx":219 + /* "hunter/_event.pyx":222 * @property * def module(self): * return self.module_getter() # <<<<<<<<<<<<<< * * cdef inline filename_getter(self): */ - __Pyx_TraceLine(219,1,0,__PYX_ERR(0, 219, __pyx_L1_error)) + __Pyx_TraceLine(222,1,0,__PYX_ERR(0, 222, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 219, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 219, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 222, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":217 + /* "hunter/_event.pyx":220 * return self._module * * @property # <<<<<<<<<<<<<< @@ -6962,7 +6874,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 217, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 220, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.module.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6973,7 +6885,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6module___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":221 +/* "hunter/_event.pyx":224 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< @@ -7003,66 +6915,66 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])) __Pyx_RefNannySetupContext("filename_getter", 0); - __Pyx_TraceStartFunc("filename_getter", __pyx_f[0], 221, 0, 0, 0, __PYX_ERR(0, 221, __pyx_L1_error)); + __Pyx_TraceStartFunc("filename_getter", __pyx_f[0], 224, 0, 0, 0, __PYX_ERR(0, 224, __pyx_L1_error)); - /* "hunter/_event.pyx":223 + /* "hunter/_event.pyx":226 * cdef inline filename_getter(self): * cdef CodeType code * if self._filename is UNSET: # <<<<<<<<<<<<<< * code = self.code_getter() * filename = code.co_filename */ - __Pyx_TraceLine(223,5,0,__PYX_ERR(0, 223, __pyx_L1_error)) + __Pyx_TraceLine(226,5,0,__PYX_ERR(0, 226, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_filename == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":224 + /* "hunter/_event.pyx":227 * cdef CodeType code * if self._filename is UNSET: * code = self.code_getter() # <<<<<<<<<<<<<< * filename = code.co_filename * if not filename: */ - __Pyx_TraceLine(224,9,0,__PYX_ERR(0, 224, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L1_error) + __Pyx_TraceLine(227,9,0,__PYX_ERR(0, 227, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_code = ((PyCodeObject *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":225 + /* "hunter/_event.pyx":228 * if self._filename is UNSET: * code = self.code_getter() * filename = code.co_filename # <<<<<<<<<<<<<< * if not filename: * filename = self.globals.get('__file__') */ - __Pyx_TraceLine(225,12,0,__PYX_ERR(0, 225, __pyx_L1_error)) + __Pyx_TraceLine(228,12,0,__PYX_ERR(0, 228, __pyx_L1_error)) __pyx_t_2 = __pyx_v_code->co_filename; __Pyx_INCREF(__pyx_t_2); __pyx_v_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":226 + /* "hunter/_event.pyx":229 * code = self.code_getter() * filename = code.co_filename * if not filename: # <<<<<<<<<<<<<< * filename = self.globals.get('__file__') * if not filename: */ - __Pyx_TraceLine(226,15,0,__PYX_ERR(0, 226, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 226, __pyx_L1_error) + __Pyx_TraceLine(229,15,0,__PYX_ERR(0, 229, __pyx_L1_error)) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 229, __pyx_L1_error) __pyx_t_3 = (!__pyx_t_1); if (__pyx_t_3) { - /* "hunter/_event.pyx":227 + /* "hunter/_event.pyx":230 * filename = code.co_filename * if not filename: * filename = self.globals.get('__file__') # <<<<<<<<<<<<<< * if not filename: * filename = '?' */ - __Pyx_TraceLine(227,18,0,__PYX_ERR(0, 227, __pyx_L1_error)) - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 227, __pyx_L1_error) + __Pyx_TraceLine(230,18,0,__PYX_ERR(0, 230, __pyx_L1_error)) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); @@ -7072,13 +6984,13 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_get, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__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, 227, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":226 + /* "hunter/_event.pyx":229 * code = self.code_getter() * filename = code.co_filename * if not filename: # <<<<<<<<<<<<<< @@ -7087,30 +6999,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":228 + /* "hunter/_event.pyx":231 * if not filename: * filename = self.globals.get('__file__') * if not filename: # <<<<<<<<<<<<<< * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): */ - __Pyx_TraceLine(228,24,0,__PYX_ERR(0, 228, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 228, __pyx_L1_error) + __Pyx_TraceLine(231,24,0,__PYX_ERR(0, 231, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_filename); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 231, __pyx_L1_error) __pyx_t_1 = (!__pyx_t_3); if (__pyx_t_1) { - /* "hunter/_event.pyx":229 + /* "hunter/_event.pyx":232 * filename = self.globals.get('__file__') * if not filename: * filename = '?' # <<<<<<<<<<<<<< * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] */ - __Pyx_TraceLine(229,26,0,__PYX_ERR(0, 229, __pyx_L1_error)) + __Pyx_TraceLine(232,26,0,__PYX_ERR(0, 232, __pyx_L1_error)) __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u__3); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_mstate_global->__pyx_kp_u__3); - /* "hunter/_event.pyx":228 + /* "hunter/_event.pyx":231 * if not filename: * filename = self.globals.get('__file__') * if not filename: # <<<<<<<<<<<<<< @@ -7120,14 +7032,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L5; } - /* "hunter/_event.pyx":230 + /* "hunter/_event.pyx":233 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): */ - __Pyx_TraceLine(230,27,0,__PYX_ERR(0, 230, __pyx_L1_error)) + __Pyx_TraceLine(233,27,0,__PYX_ERR(0, 233, __pyx_L1_error)) __pyx_t_5 = __pyx_v_filename; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0; @@ -7135,27 +7047,27 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_tuple[1]}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 230, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":231 + /* "hunter/_event.pyx":234 * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) */ - __Pyx_TraceLine(231,34,0,__PYX_ERR(0, 231, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_mstate_global->__pyx_slice[0], 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 231, __pyx_L1_error) + __Pyx_TraceLine(234,34,0,__PYX_ERR(0, 234, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_filename, 0, -1L, NULL, NULL, &__pyx_mstate_global->__pyx_slice[0], 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":230 + /* "hunter/_event.pyx":233 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< @@ -7165,14 +7077,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L5; } - /* "hunter/_event.pyx":232 + /* "hunter/_event.pyx":235 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ - __Pyx_TraceLine(232,36,0,__PYX_ERR(0, 232, __pyx_L1_error)) + __Pyx_TraceLine(235,36,0,__PYX_ERR(0, 235, __pyx_L1_error)) __pyx_t_5 = __pyx_v_filename; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0; @@ -7180,25 +7092,25 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_mstate_global->__pyx_tuple[2]}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 232, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 232, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":233 + /* "hunter/_event.pyx":236 * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) # <<<<<<<<<<<<<< * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext */ - __Pyx_TraceLine(233,44,0,__PYX_ERR(0, 233, __pyx_L1_error)) + __Pyx_TraceLine(236,44,0,__PYX_ERR(0, 236, __pyx_L1_error)) __pyx_t_5 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 233, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 236, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_sub); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 233, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_sub); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 236, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_6 = 1; @@ -7218,20 +7130,20 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_7, __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_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 233, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 236, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_cybasename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":234 + /* "hunter/_event.pyx":237 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): */ - __Pyx_TraceLine(234,49,0,__PYX_ERR(0, 234, __pyx_L1_error)) + __Pyx_TraceLine(237,49,0,__PYX_ERR(0, 237, __pyx_L1_error)) __pyx_t_2 = __pyx_mstate_global->__pyx_tuple[3]; __Pyx_INCREF(__pyx_t_2); __pyx_t_8 = 0; for (;;) { @@ -7242,35 +7154,35 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_7 = __Pyx_PySequence_ITEM(__pyx_t_2, __pyx_t_8); #endif ++__pyx_t_8; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 234, __pyx_L1_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 237, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_v_ext, ((PyObject*)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_TraceLine(234,47,0,__PYX_ERR(0, 234, __pyx_L1_error)) + __Pyx_TraceLine(237,47,0,__PYX_ERR(0, 237, __pyx_L1_error)) - /* "hunter/_event.pyx":235 + /* "hunter/_event.pyx":238 * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext # <<<<<<<<<<<<<< * if exists(cyfilename): * filename = cyfilename */ - __Pyx_TraceLine(235,54,0,__PYX_ERR(0, 235, __pyx_L1_error)) - __pyx_t_7 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 235, __pyx_L1_error) + __Pyx_TraceLine(238,54,0,__PYX_ERR(0, 238, __pyx_L1_error)) + __pyx_t_7 = PyNumber_Add(__pyx_v_cybasename, __pyx_v_ext); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 238, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_v_cyfilename, __pyx_t_7); __pyx_t_7 = 0; - /* "hunter/_event.pyx":236 + /* "hunter/_event.pyx":239 * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< * filename = cyfilename * break */ - __Pyx_TraceLine(236,58,0,__PYX_ERR(0, 236, __pyx_L1_error)) + __Pyx_TraceLine(239,58,0,__PYX_ERR(0, 239, __pyx_L1_error)) __pyx_t_5 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 236, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS @@ -7289,35 +7201,35 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__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_7)) __PYX_ERR(0, 236, __pyx_L1_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 239, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":237 + /* "hunter/_event.pyx":240 * cyfilename = cybasename + ext * if exists(cyfilename): * filename = cyfilename # <<<<<<<<<<<<<< * break * */ - __Pyx_TraceLine(237,61,0,__PYX_ERR(0, 237, __pyx_L1_error)) + __Pyx_TraceLine(240,61,0,__PYX_ERR(0, 240, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_cyfilename); __Pyx_DECREF_SET(__pyx_v_filename, __pyx_v_cyfilename); - /* "hunter/_event.pyx":238 + /* "hunter/_event.pyx":241 * if exists(cyfilename): * filename = cyfilename * break # <<<<<<<<<<<<<< * * self._filename = filename */ - __Pyx_TraceLine(238,62,0,__PYX_ERR(0, 238, __pyx_L1_error)) + __Pyx_TraceLine(241,62,0,__PYX_ERR(0, 241, __pyx_L1_error)) goto __pyx_L7_break; - /* "hunter/_event.pyx":236 + /* "hunter/_event.pyx":239 * for ext in ('.pyx', '.py'): * cyfilename = cybasename + ext * if exists(cyfilename): # <<<<<<<<<<<<<< @@ -7326,14 +7238,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":234 + /* "hunter/_event.pyx":237 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): */ - __Pyx_TraceLine(234,47,0,__PYX_ERR(0, 234, __pyx_L1_error)) + __Pyx_TraceLine(237,47,0,__PYX_ERR(0, 237, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L9_for_end; @@ -7342,7 +7254,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj goto __pyx_L9_for_end; __pyx_L9_for_end:; - /* "hunter/_event.pyx":232 + /* "hunter/_event.pyx":235 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< @@ -7352,21 +7264,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj } __pyx_L5:; - /* "hunter/_event.pyx":240 + /* "hunter/_event.pyx":243 * break * * self._filename = filename # <<<<<<<<<<<<<< * return self._filename * */ - __Pyx_TraceLine(240,63,0,__PYX_ERR(0, 240, __pyx_L1_error)) + __Pyx_TraceLine(243,63,0,__PYX_ERR(0, 243, __pyx_L1_error)) __Pyx_INCREF(__pyx_v_filename); __Pyx_GIVEREF(__pyx_v_filename); __Pyx_GOTREF(__pyx_v_self->_filename); __Pyx_DECREF(__pyx_v_self->_filename); __pyx_v_self->_filename = __pyx_v_filename; - /* "hunter/_event.pyx":223 + /* "hunter/_event.pyx":226 * cdef inline filename_getter(self): * cdef CodeType code * if self._filename is UNSET: # <<<<<<<<<<<<<< @@ -7375,21 +7287,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":241 + /* "hunter/_event.pyx":244 * * self._filename = filename * return self._filename # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(241,66,0,__PYX_ERR(0, 241, __pyx_L1_error)) + __Pyx_TraceLine(244,66,0,__PYX_ERR(0, 244, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_filename); __pyx_r = __pyx_v_self->_filename; - __Pyx_TraceReturnValue(__pyx_r, 66, 0, __PYX_ERR(0, 241, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 66, 0, __PYX_ERR(0, 244, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":221 + /* "hunter/_event.pyx":224 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< @@ -7407,7 +7319,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 221, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 224, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.filename_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -7423,7 +7335,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_filename_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":243 +/* "hunter/_event.pyx":246 * return self._filename * * @property # <<<<<<<<<<<<<< @@ -7456,25 +7368,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 243, 0, 0, 0, __PYX_ERR(0, 243, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 246, 0, 0, 0, __PYX_ERR(0, 246, __pyx_L1_error)); - /* "hunter/_event.pyx":245 + /* "hunter/_event.pyx":248 * @property * def filename(self): * return self.filename_getter() # <<<<<<<<<<<<<< * * cdef inline lineno_getter(self): */ - __Pyx_TraceLine(245,1,0,__PYX_ERR(0, 245, __pyx_L1_error)) + __Pyx_TraceLine(248,1,0,__PYX_ERR(0, 248, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 245, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 248, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 245, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 248, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":243 + /* "hunter/_event.pyx":246 * return self._filename * * @property # <<<<<<<<<<<<<< @@ -7489,7 +7401,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 243, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 246, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.filename.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7500,7 +7412,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8filename___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pyx":247 +/* "hunter/_event.pyx":250 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< @@ -7520,30 +7432,30 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])) __Pyx_RefNannySetupContext("lineno_getter", 0); - __Pyx_TraceStartFunc("lineno_getter", __pyx_f[0], 247, 0, 0, 0, __PYX_ERR(0, 247, __pyx_L1_error)); + __Pyx_TraceStartFunc("lineno_getter", __pyx_f[0], 250, 0, 0, 0, __PYX_ERR(0, 250, __pyx_L1_error)); - /* "hunter/_event.pyx":248 + /* "hunter/_event.pyx":251 * * cdef inline lineno_getter(self): * if self._lineno is UNSET: # <<<<<<<<<<<<<< * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) * return self._lineno */ - __Pyx_TraceLine(248,5,0,__PYX_ERR(0, 248, __pyx_L1_error)) + __Pyx_TraceLine(251,5,0,__PYX_ERR(0, 251, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_lineno == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":249 + /* "hunter/_event.pyx":252 * cdef inline lineno_getter(self): * if self._lineno is UNSET: * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) # <<<<<<<<<<<<<< * return self._lineno * */ - __Pyx_TraceLine(249,11,0,__PYX_ERR(0, 249, __pyx_L1_error)) + __Pyx_TraceLine(252,11,0,__PYX_ERR(0, 252, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyLong_From_int(Hunter_PyFrame_GetLineNumber(((FrameType)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 249, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_int(Hunter_PyFrame_GetLineNumber(((FrameType)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GIVEREF(__pyx_t_3); @@ -7552,7 +7464,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 __pyx_v_self->_lineno = __pyx_t_3; __pyx_t_3 = 0; - /* "hunter/_event.pyx":248 + /* "hunter/_event.pyx":251 * * cdef inline lineno_getter(self): * if self._lineno is UNSET: # <<<<<<<<<<<<<< @@ -7561,21 +7473,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":250 + /* "hunter/_event.pyx":253 * if self._lineno is UNSET: * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) * return self._lineno # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(250,12,0,__PYX_ERR(0, 250, __pyx_L1_error)) + __Pyx_TraceLine(253,12,0,__PYX_ERR(0, 253, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_lineno); __pyx_r = __pyx_v_self->_lineno; - __Pyx_TraceReturnValue(__pyx_r, 12, 0, __PYX_ERR(0, 250, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 12, 0, __PYX_ERR(0, 253, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":247 + /* "hunter/_event.pyx":250 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< @@ -7591,7 +7503,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 247, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 250, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.lineno_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -7602,7 +7514,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_lineno_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":252 +/* "hunter/_event.pyx":255 * return self._lineno * * @property # <<<<<<<<<<<<<< @@ -7635,25 +7547,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 252, 0, 0, 0, __PYX_ERR(0, 252, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 255, 0, 0, 0, __PYX_ERR(0, 255, __pyx_L1_error)); - /* "hunter/_event.pyx":254 + /* "hunter/_event.pyx":257 * @property * def lineno(self): * return self.lineno_getter() # <<<<<<<<<<<<<< * * cdef inline CodeType code_getter(self): */ - __Pyx_TraceLine(254,1,0,__PYX_ERR(0, 254, __pyx_L1_error)) + __Pyx_TraceLine(257,1,0,__PYX_ERR(0, 257, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 254, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 257, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 254, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 257, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":252 + /* "hunter/_event.pyx":255 * return self._lineno * * @property # <<<<<<<<<<<<<< @@ -7668,7 +7580,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 252, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 255, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.lineno.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7679,7 +7591,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6lineno___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":256 +/* "hunter/_event.pyx":259 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< @@ -7699,39 +7611,39 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])) __Pyx_RefNannySetupContext("code_getter", 0); - __Pyx_TraceStartFunc("code_getter", __pyx_f[0], 256, 0, 0, 0, __PYX_ERR(0, 256, __pyx_L1_error)); + __Pyx_TraceStartFunc("code_getter", __pyx_f[0], 259, 0, 0, 0, __PYX_ERR(0, 259, __pyx_L1_error)); - /* "hunter/_event.pyx":257 + /* "hunter/_event.pyx":260 * * cdef inline CodeType code_getter(self): * if self._code is UNSET: # <<<<<<<<<<<<<< * return Hunter_PyFrame_GetCode(self.frame) * else: */ - __Pyx_TraceLine(257,5,0,__PYX_ERR(0, 257, __pyx_L1_error)) + __Pyx_TraceLine(260,5,0,__PYX_ERR(0, 260, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_code == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":258 + /* "hunter/_event.pyx":261 * cdef inline CodeType code_getter(self): * if self._code is UNSET: * return Hunter_PyFrame_GetCode(self.frame) # <<<<<<<<<<<<<< * else: * return self._code */ - __Pyx_TraceLine(258,6,0,__PYX_ERR(0, 258, __pyx_L1_error)) + __Pyx_TraceLine(261,6,0,__PYX_ERR(0, 261, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = ((PyObject *)Hunter_PyFrame_GetCode(((FrameType)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 258, __pyx_L1_error) + __pyx_t_3 = ((PyObject *)Hunter_PyFrame_GetCode(((FrameType)__pyx_t_2))); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 261, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = ((PyCodeObject *)__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 6, 0, __PYX_ERR(0, 258, __pyx_L1_error)); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 6, 0, __PYX_ERR(0, 261, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":257 + /* "hunter/_event.pyx":260 * * cdef inline CodeType code_getter(self): * if self._code is UNSET: # <<<<<<<<<<<<<< @@ -7740,24 +7652,24 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj */ } - /* "hunter/_event.pyx":260 + /* "hunter/_event.pyx":263 * return Hunter_PyFrame_GetCode(self.frame) * else: * return self._code # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(260,11,0,__PYX_ERR(0, 260, __pyx_L1_error)) + __Pyx_TraceLine(263,11,0,__PYX_ERR(0, 263, __pyx_L1_error)) /*else*/ { __Pyx_XDECREF((PyObject *)__pyx_r); - if (!(likely(((__pyx_v_self->_code) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self->_code, __pyx_mstate_global->__pyx_ptype_6hunter_6_event_CodeType))))) __PYX_ERR(0, 260, __pyx_L1_error) + if (!(likely(((__pyx_v_self->_code) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self->_code, __pyx_mstate_global->__pyx_ptype_6hunter_6_event_CodeType))))) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_INCREF(__pyx_v_self->_code); __pyx_r = ((PyCodeObject *)__pyx_v_self->_code); - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 11, 0, __PYX_ERR(0, 260, __pyx_L1_error)); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 11, 0, __PYX_ERR(0, 263, __pyx_L1_error)); goto __pyx_L0; } - /* "hunter/_event.pyx":256 + /* "hunter/_event.pyx":259 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< @@ -7773,7 +7685,7 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 256, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 259, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.code_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -7784,7 +7696,7 @@ static PyCodeObject *__pyx_f_6hunter_6_event_5Event_code_getter(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pyx":262 +/* "hunter/_event.pyx":265 * return self._code * * @property # <<<<<<<<<<<<<< @@ -7817,25 +7729,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 262, 0, 0, 0, __PYX_ERR(0, 262, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 265, 0, 0, 0, __PYX_ERR(0, 265, __pyx_L1_error)); - /* "hunter/_event.pyx":264 + /* "hunter/_event.pyx":267 * @property * def code(self): * return self.code_getter() # <<<<<<<<<<<<<< * * cdef inline stdlib_getter(self): */ - __Pyx_TraceLine(264,1,0,__PYX_ERR(0, 264, __pyx_L1_error)) + __Pyx_TraceLine(267,1,0,__PYX_ERR(0, 267, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 264, __pyx_L1_error) + __pyx_t_1 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 264, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 267, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":262 + /* "hunter/_event.pyx":265 * return self._code * * @property # <<<<<<<<<<<<<< @@ -7850,7 +7762,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 262, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 265, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.code.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -7861,7 +7773,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4code___get__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pyx":266 +/* "hunter/_event.pyx":269 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< @@ -7886,28 +7798,28 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])) __Pyx_RefNannySetupContext("stdlib_getter", 0); - __Pyx_TraceStartFunc("stdlib_getter", __pyx_f[0], 266, 0, 0, 0, __PYX_ERR(0, 266, __pyx_L1_error)); + __Pyx_TraceStartFunc("stdlib_getter", __pyx_f[0], 269, 0, 0, 0, __PYX_ERR(0, 269, __pyx_L1_error)); - /* "hunter/_event.pyx":267 + /* "hunter/_event.pyx":270 * * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: # <<<<<<<<<<<<<< * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: */ - __Pyx_TraceLine(267,5,0,__PYX_ERR(0, 267, __pyx_L1_error)) + __Pyx_TraceLine(270,5,0,__PYX_ERR(0, 270, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_stdlib == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":268 + /* "hunter/_event.pyx":271 * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: * module_parts = self.module.split('.') # <<<<<<<<<<<<<< * if 'pkg_resources' in module_parts: * # skip this over-vendored module */ - __Pyx_TraceLine(268,8,0,__PYX_ERR(0, 268, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 268, __pyx_L1_error) + __Pyx_TraceLine(271,8,0,__PYX_ERR(0, 271, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); @@ -7917,38 +7829,38 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_split, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 268, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __pyx_v_module_parts = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":269 + /* "hunter/_event.pyx":272 * if self._stdlib is UNSET: * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: # <<<<<<<<<<<<<< * # skip this over-vendored module * self._stdlib = True */ - __Pyx_TraceLine(269,15,0,__PYX_ERR(0, 269, __pyx_L1_error)) - __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_pkg_resources, __pyx_v_module_parts, Py_EQ)); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 269, __pyx_L1_error) + __Pyx_TraceLine(272,15,0,__PYX_ERR(0, 272, __pyx_L1_error)) + __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_mstate_global->__pyx_n_u_pkg_resources, __pyx_v_module_parts, Py_EQ)); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) if (__pyx_t_1) { - /* "hunter/_event.pyx":271 + /* "hunter/_event.pyx":274 * if 'pkg_resources' in module_parts: * # skip this over-vendored module * self._stdlib = True # <<<<<<<<<<<<<< * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): * # skip namedtuple exec garbage */ - __Pyx_TraceLine(271,16,0,__PYX_ERR(0, 271, __pyx_L1_error)) + __Pyx_TraceLine(274,16,0,__PYX_ERR(0, 274, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":269 + /* "hunter/_event.pyx":272 * if self._stdlib is UNSET: * module_parts = self.module.split('.') * if 'pkg_resources' in module_parts: # <<<<<<<<<<<<<< @@ -7958,24 +7870,24 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":272 + /* "hunter/_event.pyx":275 * # skip this over-vendored module * self._stdlib = True * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): # <<<<<<<<<<<<<< * # skip namedtuple exec garbage * self._stdlib = True */ - __Pyx_TraceLine(272,20,0,__PYX_ERR(0, 272, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error) + __Pyx_TraceLine(275,20,0,__PYX_ERR(0, 275, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_string, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_string, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); @@ -7985,39 +7897,39 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L5_bool_binop_done; } - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_module_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_site, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_site, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_1 = __pyx_t_6; __pyx_L5_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":274 + /* "hunter/_event.pyx":277 * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): * # skip namedtuple exec garbage * self._stdlib = True # <<<<<<<<<<<<<< * elif self.filename.startswith(SITE_PACKAGES_PATHS): * # if in site-packages then definitely not stdlib */ - __Pyx_TraceLine(274,34,0,__PYX_ERR(0, 274, __pyx_L1_error)) + __Pyx_TraceLine(277,34,0,__PYX_ERR(0, 277, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":272 + /* "hunter/_event.pyx":275 * # skip this over-vendored module * self._stdlib = True * elif self.filename == '' and (self.module.startswith('namedtuple_') or self.module == 'site'): # <<<<<<<<<<<<<< @@ -8027,19 +7939,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":275 + /* "hunter/_event.pyx":278 * # skip namedtuple exec garbage * self._stdlib = True * elif self.filename.startswith(SITE_PACKAGES_PATHS): # <<<<<<<<<<<<<< * # if in site-packages then definitely not stdlib * self._stdlib = False */ - __Pyx_TraceLine(275,38,0,__PYX_ERR(0, 275, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 275, __pyx_L1_error) + __Pyx_TraceLine(278,38,0,__PYX_ERR(0, 278, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = 0; { @@ -8048,28 +7960,28 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 275, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 278, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":277 + /* "hunter/_event.pyx":280 * elif self.filename.startswith(SITE_PACKAGES_PATHS): * # if in site-packages then definitely not stdlib * self._stdlib = False # <<<<<<<<<<<<<< * elif self.filename.startswith(SYS_PREFIX_PATHS): * self._stdlib = True */ - __Pyx_TraceLine(277,42,0,__PYX_ERR(0, 277, __pyx_L1_error)) + __Pyx_TraceLine(280,42,0,__PYX_ERR(0, 280, __pyx_L1_error)) __Pyx_INCREF(Py_False); __Pyx_GIVEREF(Py_False); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_False; - /* "hunter/_event.pyx":275 + /* "hunter/_event.pyx":278 * # skip namedtuple exec garbage * self._stdlib = True * elif self.filename.startswith(SITE_PACKAGES_PATHS): # <<<<<<<<<<<<<< @@ -8079,19 +7991,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":278 + /* "hunter/_event.pyx":281 * # if in site-packages then definitely not stdlib * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): # <<<<<<<<<<<<<< * self._stdlib = True * else: */ - __Pyx_TraceLine(278,46,0,__PYX_ERR(0, 278, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 278, __pyx_L1_error) + __Pyx_TraceLine(281,46,0,__PYX_ERR(0, 281, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __pyx_t_7; __Pyx_INCREF(__pyx_t_4); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = 0; { @@ -8100,28 +8012,28 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 278, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 278, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 281, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":279 + /* "hunter/_event.pyx":282 * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): * self._stdlib = True # <<<<<<<<<<<<<< * else: * self._stdlib = False */ - __Pyx_TraceLine(279,50,0,__PYX_ERR(0, 279, __pyx_L1_error)) + __Pyx_TraceLine(282,50,0,__PYX_ERR(0, 282, __pyx_L1_error)) __Pyx_INCREF(Py_True); __Pyx_GIVEREF(Py_True); __Pyx_GOTREF(__pyx_v_self->_stdlib); __Pyx_DECREF(__pyx_v_self->_stdlib); __pyx_v_self->_stdlib = Py_True; - /* "hunter/_event.pyx":278 + /* "hunter/_event.pyx":281 * # if in site-packages then definitely not stdlib * self._stdlib = False * elif self.filename.startswith(SYS_PREFIX_PATHS): # <<<<<<<<<<<<<< @@ -8131,14 +8043,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 goto __pyx_L4; } - /* "hunter/_event.pyx":281 + /* "hunter/_event.pyx":284 * self._stdlib = True * else: * self._stdlib = False # <<<<<<<<<<<<<< * return self._stdlib * */ - __Pyx_TraceLine(281,55,0,__PYX_ERR(0, 281, __pyx_L1_error)) + __Pyx_TraceLine(284,55,0,__PYX_ERR(0, 284, __pyx_L1_error)) /*else*/ { __Pyx_INCREF(Py_False); __Pyx_GIVEREF(Py_False); @@ -8148,7 +8060,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 } __pyx_L4:; - /* "hunter/_event.pyx":267 + /* "hunter/_event.pyx":270 * * cdef inline stdlib_getter(self): * if self._stdlib is UNSET: # <<<<<<<<<<<<<< @@ -8157,21 +8069,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":282 + /* "hunter/_event.pyx":285 * else: * self._stdlib = False * return self._stdlib # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(282,56,0,__PYX_ERR(0, 282, __pyx_L1_error)) + __Pyx_TraceLine(285,56,0,__PYX_ERR(0, 285, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_stdlib); __pyx_r = __pyx_v_self->_stdlib; - __Pyx_TraceReturnValue(__pyx_r, 56, 0, __PYX_ERR(0, 282, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 56, 0, __PYX_ERR(0, 285, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":266 + /* "hunter/_event.pyx":269 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< @@ -8189,7 +8101,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 266, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 269, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.stdlib_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -8201,7 +8113,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_stdlib_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":284 +/* "hunter/_event.pyx":287 * return self._stdlib * * @property # <<<<<<<<<<<<<< @@ -8234,25 +8146,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 284, 0, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 287, 0, 0, 0, __PYX_ERR(0, 287, __pyx_L1_error)); - /* "hunter/_event.pyx":286 + /* "hunter/_event.pyx":289 * @property * def stdlib(self): * return self.stdlib_getter() # <<<<<<<<<<<<<< * * cdef inline fullsource_getter(self): */ - __Pyx_TraceLine(286,1,0,__PYX_ERR(0, 286, __pyx_L1_error)) + __Pyx_TraceLine(289,1,0,__PYX_ERR(0, 289, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 286, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 286, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 289, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":284 + /* "hunter/_event.pyx":287 * return self._stdlib * * @property # <<<<<<<<<<<<<< @@ -8267,7 +8179,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 284, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 287, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.stdlib.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -8278,7 +8190,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6stdlib___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":288 +/* "hunter/_event.pyx":291 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< @@ -8332,27 +8244,27 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])) __Pyx_RefNannySetupContext("fullsource_getter", 0); - __Pyx_TraceStartFunc("fullsource_getter", __pyx_f[0], 288, 0, 0, 0, __PYX_ERR(0, 288, __pyx_L1_error)); + __Pyx_TraceStartFunc("fullsource_getter", __pyx_f[0], 291, 0, 0, 0, __PYX_ERR(0, 291, __pyx_L1_error)); - /* "hunter/_event.pyx":292 + /* "hunter/_event.pyx":295 * cdef CodeType code * * if self._fullsource is UNSET: # <<<<<<<<<<<<<< * try: * self._fullsource = None */ - __Pyx_TraceLine(292,5,0,__PYX_ERR(0, 292, __pyx_L1_error)) + __Pyx_TraceLine(295,5,0,__PYX_ERR(0, 295, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_fullsource == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":293 + /* "hunter/_event.pyx":296 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< * self._fullsource = None * code = self.code_getter() */ - __Pyx_TraceLine(293,6,0,__PYX_ERR(0, 293, __pyx_L1_error)) + __Pyx_TraceLine(296,6,0,__PYX_ERR(0, 296, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8362,73 +8274,73 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XGOTREF(__pyx_t_4); /*try:*/ { - /* "hunter/_event.pyx":294 + /* "hunter/_event.pyx":297 * if self._fullsource is UNSET: * try: * self._fullsource = None # <<<<<<<<<<<<<< * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': */ - __Pyx_TraceLine(294,7,0,__PYX_ERR(0, 294, __pyx_L4_error)) + __Pyx_TraceLine(297,7,0,__PYX_ERR(0, 297, __pyx_L4_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_self->_fullsource); __Pyx_DECREF(__pyx_v_self->_fullsource); __pyx_v_self->_fullsource = Py_None; - /* "hunter/_event.pyx":295 + /* "hunter/_event.pyx":298 * try: * self._fullsource = None * code = self.code_getter() # <<<<<<<<<<<<<< * if self.kind == 'call' and code.co_name != '': * lines = [] */ - __Pyx_TraceLine(295,13,0,__PYX_ERR(0, 295, __pyx_L4_error)) - __pyx_t_5 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 295, __pyx_L4_error) + __Pyx_TraceLine(298,13,0,__PYX_ERR(0, 298, __pyx_L4_error)) + __pyx_t_5 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 298, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_code = ((PyCodeObject *)__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_event.pyx":296 + /* "hunter/_event.pyx":299 * self._fullsource = None * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': # <<<<<<<<<<<<<< * lines = [] * try: */ - __Pyx_TraceLine(296,16,0,__PYX_ERR(0, 296, __pyx_L4_error)) - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_self->kind, __pyx_mstate_global->__pyx_n_u_call, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 296, __pyx_L4_error) + __Pyx_TraceLine(299,16,0,__PYX_ERR(0, 299, __pyx_L4_error)) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_self->kind, __pyx_mstate_global->__pyx_n_u_call, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 299, __pyx_L4_error) if (__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L11_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_code->co_name, __pyx_mstate_global->__pyx_kp_u_module_4, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 296, __pyx_L4_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_v_code->co_name, __pyx_mstate_global->__pyx_kp_u_module_4, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 299, __pyx_L4_error) __pyx_t_1 = __pyx_t_6; __pyx_L11_bool_binop_done:; if (__pyx_t_1) { - /* "hunter/_event.pyx":297 + /* "hunter/_event.pyx":300 * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': * lines = [] # <<<<<<<<<<<<<< * try: * for _, token, _, _, _ in generate_tokens( */ - __Pyx_TraceLine(297,25,0,__PYX_ERR(0, 297, __pyx_L4_error)) - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 297, __pyx_L4_error) + __Pyx_TraceLine(300,25,0,__PYX_ERR(0, 300, __pyx_L4_error)) + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 300, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_lines = ((PyObject*)__pyx_t_5); __pyx_t_5 = 0; - /* "hunter/_event.pyx":298 + /* "hunter/_event.pyx":301 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< * for _, token, _, _, _ in generate_tokens( * partial( */ - __Pyx_TraceLine(298,26,0,__PYX_ERR(0, 298, __pyx_L4_error)) + __Pyx_TraceLine(301,26,0,__PYX_ERR(0, 301, __pyx_L4_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -8438,97 +8350,97 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XGOTREF(__pyx_t_9); /*try:*/ { - /* "hunter/_event.pyx":299 + /* "hunter/_event.pyx":302 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, */ - __Pyx_TraceLine(299,34,0,__PYX_ERR(0, 299, __pyx_L13_error)) + __Pyx_TraceLine(302,34,0,__PYX_ERR(0, 302, __pyx_L13_error)) __pyx_t_10 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 299, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_11); - /* "hunter/_event.pyx":300 + /* "hunter/_event.pyx":303 * try: * for _, token, _, _, _ in generate_tokens( * partial( # <<<<<<<<<<<<<< * next, * yield_lines( */ - __Pyx_TraceLine(300,36,0,__PYX_ERR(0, 300, __pyx_L13_error)) + __Pyx_TraceLine(303,36,0,__PYX_ERR(0, 303, __pyx_L13_error)) __pyx_t_13 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 300, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 303, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); - /* "hunter/_event.pyx":301 + /* "hunter/_event.pyx":304 * for _, token, _, _, _ in generate_tokens( * partial( * next, # <<<<<<<<<<<<<< * yield_lines( * self.filename, */ - __Pyx_TraceLine(301,37,0,__PYX_ERR(0, 301, __pyx_L13_error)) - __pyx_t_15 = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 301, __pyx_L13_error) + __Pyx_TraceLine(304,37,0,__PYX_ERR(0, 304, __pyx_L13_error)) + __pyx_t_15 = __Pyx_GetBuiltinName(__pyx_mstate_global->__pyx_n_u_next); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 304, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_15); - /* "hunter/_event.pyx":302 + /* "hunter/_event.pyx":305 * partial( * next, * yield_lines( # <<<<<<<<<<<<<< * self.filename, * self.frame.f_globals, */ - __Pyx_TraceLine(302,39,0,__PYX_ERR(0, 302, __pyx_L13_error)) + __Pyx_TraceLine(305,39,0,__PYX_ERR(0, 305, __pyx_L13_error)) __pyx_t_17 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_mstate_global->__pyx_n_u_yield_lines); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 302, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_18, __pyx_mstate_global->__pyx_n_u_yield_lines); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 305, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_18); - /* "hunter/_event.pyx":303 + /* "hunter/_event.pyx":306 * next, * yield_lines( * self.filename, # <<<<<<<<<<<<<< * self.frame.f_globals, * self.lineno - 1, */ - __Pyx_TraceLine(303,41,0,__PYX_ERR(0, 303, __pyx_L13_error)) - __pyx_t_19 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 303, __pyx_L13_error) + __Pyx_TraceLine(306,41,0,__PYX_ERR(0, 306, __pyx_L13_error)) + __pyx_t_19 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 306, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_19); - /* "hunter/_event.pyx":304 + /* "hunter/_event.pyx":307 * yield_lines( * self.filename, * self.frame.f_globals, # <<<<<<<<<<<<<< * self.lineno - 1, * lines, */ - __Pyx_TraceLine(304,44,0,__PYX_ERR(0, 304, __pyx_L13_error)) - __pyx_t_20 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self->frame), __pyx_mstate_global->__pyx_n_u_f_globals); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 304, __pyx_L13_error) + __Pyx_TraceLine(307,44,0,__PYX_ERR(0, 307, __pyx_L13_error)) + __pyx_t_20 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self->frame), __pyx_mstate_global->__pyx_n_u_f_globals); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 307, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_20); - /* "hunter/_event.pyx":305 + /* "hunter/_event.pyx":308 * self.filename, * self.frame.f_globals, * self.lineno - 1, # <<<<<<<<<<<<<< * lines, * ), */ - __Pyx_TraceLine(305,46,0,__PYX_ERR(0, 305, __pyx_L13_error)) - __pyx_t_21 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 305, __pyx_L13_error) + __Pyx_TraceLine(308,46,0,__PYX_ERR(0, 308, __pyx_L13_error)) + __pyx_t_21 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 308, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_21); - __pyx_t_22 = __Pyx_PyLong_SubtractObjC(__pyx_t_21, __pyx_mstate_global->__pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 305, __pyx_L13_error) + __pyx_t_22 = __Pyx_PyLong_SubtractObjC(__pyx_t_21, __pyx_mstate_global->__pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 308, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_22); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; - /* "hunter/_event.pyx":306 + /* "hunter/_event.pyx":309 * self.frame.f_globals, * self.lineno - 1, * lines, # <<<<<<<<<<<<<< * ), * ) */ - __Pyx_TraceLine(306,49,0,__PYX_ERR(0, 306, __pyx_L13_error)) + __Pyx_TraceLine(309,49,0,__PYX_ERR(0, 309, __pyx_L13_error)) __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_18))) { @@ -8549,7 +8461,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0; __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 302, __pyx_L13_error) + if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 305, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_16); } __pyx_t_23 = 1; @@ -8571,7 +8483,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 300, __pyx_L13_error) + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 303, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_12); } __pyx_t_23 = 1; @@ -8592,26 +8504,26 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); } - /* "hunter/_event.pyx":299 + /* "hunter/_event.pyx":302 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, */ - __Pyx_TraceLine(299,33,0,__PYX_ERR(0, 299, __pyx_L13_error)) + __Pyx_TraceLine(302,33,0,__PYX_ERR(0, 302, __pyx_L13_error)) if (likely(PyList_CheckExact(__pyx_t_5)) || PyTuple_CheckExact(__pyx_t_5)) { __pyx_t_11 = __pyx_t_5; __Pyx_INCREF(__pyx_t_11); __pyx_t_24 = 0; __pyx_t_25 = NULL; } else { - __pyx_t_24 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 299, __pyx_L13_error) + __pyx_t_24 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_25 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_11); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 299, __pyx_L13_error) + __pyx_t_25 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_11); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 302, __pyx_L13_error) } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; for (;;) { @@ -8620,7 +8532,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_11); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 302, __pyx_L13_error) #endif if (__pyx_t_24 >= __pyx_temp) break; } @@ -8630,7 +8542,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_11); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 302, __pyx_L13_error) #endif if (__pyx_t_24 >= __pyx_temp) break; } @@ -8641,13 +8553,13 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o #endif ++__pyx_t_24; } - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 302, __pyx_L13_error) } else { __pyx_t_5 = __pyx_t_25(__pyx_t_11); if (unlikely(!__pyx_t_5)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 302, __pyx_L13_error) PyErr_Clear(); } break; @@ -8660,7 +8572,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o if (unlikely(size != 5)) { if (size > 5) __Pyx_RaiseTooManyValuesError(5); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(0, 299, __pyx_L13_error) + __PYX_ERR(0, 302, __pyx_L13_error) } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS if (likely(PyTuple_CheckExact(sequence))) { @@ -8676,19 +8588,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_INCREF(__pyx_t_15); } else { __pyx_t_12 = __Pyx_PyList_GetItemRef(sequence, 0); - if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_12); __pyx_t_10 = __Pyx_PyList_GetItemRef(sequence, 1); - if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_10); __pyx_t_14 = __Pyx_PyList_GetItemRef(sequence, 2); - if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_14); __pyx_t_16 = __Pyx_PyList_GetItemRef(sequence, 3); - if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_16); __pyx_t_15 = __Pyx_PyList_GetItemRef(sequence, 4); - if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 299, __pyx_L13_error) + if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_XGOTREF(__pyx_t_15); } #else @@ -8696,7 +8608,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o Py_ssize_t i; PyObject** temps[5] = {&__pyx_t_12,&__pyx_t_10,&__pyx_t_14,&__pyx_t_16,&__pyx_t_15}; for (i=0; i < 5; i++) { - PyObject* item = __Pyx_PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 299, __pyx_L13_error) + PyObject* item = __Pyx_PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(item); *(temps[i]) = item; } @@ -8706,7 +8618,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o } else { Py_ssize_t index = -1; PyObject** temps[5] = {&__pyx_t_12,&__pyx_t_10,&__pyx_t_14,&__pyx_t_16,&__pyx_t_15}; - __pyx_t_13 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 299, __pyx_L13_error) + __pyx_t_13 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 302, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_26 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_13); @@ -8715,7 +8627,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_GOTREF(item); *(temps[index]) = item; } - if (__Pyx_IternextUnpackEndCheck(__pyx_t_26(__pyx_t_13), 5) < 0) __PYX_ERR(0, 299, __pyx_L13_error) + if (__Pyx_IternextUnpackEndCheck(__pyx_t_26(__pyx_t_13), 5) < 0) __PYX_ERR(0, 302, __pyx_L13_error) __pyx_t_26 = NULL; __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; goto __pyx_L22_unpacking_done; @@ -8723,7 +8635,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __pyx_t_26 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); - __PYX_ERR(0, 299, __pyx_L13_error) + __PYX_ERR(0, 302, __pyx_L13_error) __pyx_L22_unpacking_done:; } __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_12); @@ -8736,46 +8648,46 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v__, __pyx_t_15); __pyx_t_15 = 0; - __Pyx_TraceLine(299,27,0,__PYX_ERR(0, 299, __pyx_L13_error)) + __Pyx_TraceLine(302,27,0,__PYX_ERR(0, 302, __pyx_L13_error)) - /* "hunter/_event.pyx":310 + /* "hunter/_event.pyx":313 * ) * ): * if token in ('def', 'class', 'lambda'): # <<<<<<<<<<<<<< * self._fullsource = ''.join(lines) * break */ - __Pyx_TraceLine(310,51,0,__PYX_ERR(0, 310, __pyx_L13_error)) + __Pyx_TraceLine(313,51,0,__PYX_ERR(0, 313, __pyx_L13_error)) __Pyx_INCREF(__pyx_v_token); __pyx_t_5 = __pyx_v_token; - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_def, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 310, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_def, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 313, __pyx_L13_error) if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L24_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_class, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 310, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_class, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 313, __pyx_L13_error) if (!__pyx_t_6) { } else { __pyx_t_1 = __pyx_t_6; goto __pyx_L24_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_lambda, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 310, __pyx_L13_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_lambda, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 313, __pyx_L13_error) __pyx_t_1 = __pyx_t_6; __pyx_L24_bool_binop_done:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __pyx_t_1; if (__pyx_t_6) { - /* "hunter/_event.pyx":311 + /* "hunter/_event.pyx":314 * ): * if token in ('def', 'class', 'lambda'): * self._fullsource = ''.join(lines) # <<<<<<<<<<<<<< * break * except TokenError: */ - __Pyx_TraceLine(311,60,0,__PYX_ERR(0, 311, __pyx_L13_error)) - __pyx_t_5 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__2, __pyx_v_lines); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 311, __pyx_L13_error) + __Pyx_TraceLine(314,60,0,__PYX_ERR(0, 314, __pyx_L13_error)) + __pyx_t_5 = PyUnicode_Join(__pyx_mstate_global->__pyx_kp_u__2, __pyx_v_lines); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 314, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __Pyx_GOTREF(__pyx_v_self->_fullsource); @@ -8783,17 +8695,17 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_self->_fullsource = __pyx_t_5; __pyx_t_5 = 0; - /* "hunter/_event.pyx":312 + /* "hunter/_event.pyx":315 * if token in ('def', 'class', 'lambda'): * self._fullsource = ''.join(lines) * break # <<<<<<<<<<<<<< * except TokenError: * pass */ - __Pyx_TraceLine(312,62,0,__PYX_ERR(0, 312, __pyx_L13_error)) + __Pyx_TraceLine(315,62,0,__PYX_ERR(0, 315, __pyx_L13_error)) goto __pyx_L20_break; - /* "hunter/_event.pyx":310 + /* "hunter/_event.pyx":313 * ) * ): * if token in ('def', 'class', 'lambda'): # <<<<<<<<<<<<<< @@ -8802,14 +8714,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":299 + /* "hunter/_event.pyx":302 * lines = [] * try: * for _, token, _, _, _ in generate_tokens( # <<<<<<<<<<<<<< * partial( * next, */ - __Pyx_TraceLine(299,27,0,__PYX_ERR(0, 299, __pyx_L13_error)) + __Pyx_TraceLine(302,27,0,__PYX_ERR(0, 302, __pyx_L13_error)) } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L27_for_end; @@ -8818,7 +8730,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o goto __pyx_L27_for_end; __pyx_L27_for_end:; - /* "hunter/_event.pyx":298 + /* "hunter/_event.pyx":301 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< @@ -8847,16 +8759,16 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":313 + /* "hunter/_event.pyx":316 * self._fullsource = ''.join(lines) * break * except TokenError: # <<<<<<<<<<<<<< * pass * if self._fullsource is None: */ - __Pyx_TraceLine(313,0,0,__PYX_ERR(0, 313, __pyx_L15_except_error)) + __Pyx_TraceLine(316,0,0,__PYX_ERR(0, 316, __pyx_L15_except_error)) __Pyx_ErrFetch(&__pyx_t_11, &__pyx_t_5, &__pyx_t_15); - __Pyx_GetModuleGlobalName(__pyx_t_16, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 313, __pyx_L15_except_error) + __Pyx_GetModuleGlobalName(__pyx_t_16, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 316, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_27 = __Pyx_PyErr_GivenExceptionMatches(__pyx_t_11, __pyx_t_16); __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; @@ -8868,19 +8780,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_ErrRestore(0,0,0); __Pyx_TraceExceptionDone(); - /* "hunter/_event.pyx":314 + /* "hunter/_event.pyx":317 * break * except TokenError: * pass # <<<<<<<<<<<<<< * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) */ - __Pyx_TraceLine(314,64,0,__PYX_ERR(0, 314, __pyx_L15_except_error)) + __Pyx_TraceLine(317,64,0,__PYX_ERR(0, 317, __pyx_L15_except_error)) goto __pyx_L14_exception_handled; } goto __pyx_L15_except_error; - /* "hunter/_event.pyx":298 + /* "hunter/_event.pyx":301 * if self.kind == 'call' and code.co_name != '': * lines = [] * try: # <<<<<<<<<<<<<< @@ -8901,7 +8813,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_L18_try_end:; } - /* "hunter/_event.pyx":296 + /* "hunter/_event.pyx":299 * self._fullsource = None * code = self.code_getter() * if self.kind == 'call' and code.co_name != '': # <<<<<<<<<<<<<< @@ -8910,33 +8822,33 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":315 + /* "hunter/_event.pyx":318 * except TokenError: * pass * if self._fullsource is None: # <<<<<<<<<<<<<< * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: */ - __Pyx_TraceLine(315,69,0,__PYX_ERR(0, 315, __pyx_L4_error)) + __Pyx_TraceLine(318,69,0,__PYX_ERR(0, 318, __pyx_L4_error)) __pyx_t_6 = (__pyx_v_self->_fullsource == Py_None); if (__pyx_t_6) { - /* "hunter/_event.pyx":316 + /* "hunter/_event.pyx":319 * pass * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) # <<<<<<<<<<<<<< * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' */ - __Pyx_TraceLine(316,73,0,__PYX_ERR(0, 316, __pyx_L4_error)) + __Pyx_TraceLine(319,73,0,__PYX_ERR(0, 319, __pyx_L4_error)) __pyx_t_5 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 316, __pyx_L4_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 319, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_16 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 316, __pyx_L4_error) + __pyx_t_16 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 319, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_16); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 316, __pyx_L4_error) + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 319, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 316, __pyx_L4_error) + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 319, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_23 = 1; #if CYTHON_UNPACK_METHODS @@ -8958,7 +8870,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 316, __pyx_L4_error) + if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 319, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_15); } __Pyx_GIVEREF(__pyx_t_15); @@ -8967,7 +8879,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_self->_fullsource = __pyx_t_15; __pyx_t_15 = 0; - /* "hunter/_event.pyx":315 + /* "hunter/_event.pyx":318 * except TokenError: * pass * if self._fullsource is None: # <<<<<<<<<<<<<< @@ -8976,7 +8888,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":293 + /* "hunter/_event.pyx":296 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< @@ -9005,19 +8917,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":320 * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource */ - __Pyx_TraceLine(317,81,0,__PYX_ERR(0, 317, __pyx_L6_except_error)) + __Pyx_TraceLine(320,81,0,__PYX_ERR(0, 320, __pyx_L6_except_error)) __pyx_t_27 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); if (__pyx_t_27) { __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_TraceExceptionHandled(80); - if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_11, &__pyx_t_10) < 0) __PYX_ERR(0, 317, __pyx_L6_except_error) + if (__Pyx_GetException(&__pyx_t_15, &__pyx_t_11, &__pyx_t_10) < 0) __PYX_ERR(0, 320, __pyx_L6_except_error) __Pyx_XGOTREF(__pyx_t_15); __Pyx_XGOTREF(__pyx_t_11); __Pyx_XGOTREF(__pyx_t_10); @@ -9026,17 +8938,17 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_v_exc = __pyx_t_11; /*try:*/ { - /* "hunter/_event.pyx":318 + /* "hunter/_event.pyx":321 * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' # <<<<<<<<<<<<<< * return self._fullsource * */ - __Pyx_TraceLine(318,86,0,__PYX_ERR(0, 318, __pyx_L36_error)) - __pyx_t_14 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 318, __pyx_L36_error) + __Pyx_TraceLine(321,86,0,__PYX_ERR(0, 321, __pyx_L36_error)) + __pyx_t_14 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 321, __pyx_L36_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 318, __pyx_L36_error) + __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_14); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 321, __pyx_L36_error) __Pyx_GOTREF(__pyx_t_16); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_GIVEREF(__pyx_t_16); @@ -9046,14 +8958,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_t_16 = 0; } - /* "hunter/_event.pyx":317 + /* "hunter/_event.pyx":320 * if self._fullsource is None: * self._fullsource = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource */ - __Pyx_TraceLine(317,80,0,__PYX_ERR(0, 317, __pyx_L36_error)) + __Pyx_TraceLine(320,80,0,__PYX_ERR(0, 320, __pyx_L36_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; @@ -9111,7 +9023,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o } goto __pyx_L6_except_error; - /* "hunter/_event.pyx":293 + /* "hunter/_event.pyx":296 * * if self._fullsource is UNSET: * try: # <<<<<<<<<<<<<< @@ -9132,7 +9044,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o __pyx_L9_try_end:; } - /* "hunter/_event.pyx":292 + /* "hunter/_event.pyx":295 * cdef CodeType code * * if self._fullsource is UNSET: # <<<<<<<<<<<<<< @@ -9141,21 +9053,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o */ } - /* "hunter/_event.pyx":319 + /* "hunter/_event.pyx":322 * except Exception as exc: * self._fullsource = f'??? NO SOURCE: {exc!r}' * return self._fullsource # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(319,88,0,__PYX_ERR(0, 319, __pyx_L1_error)) + __Pyx_TraceLine(322,88,0,__PYX_ERR(0, 322, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_fullsource); __pyx_r = __pyx_v_self->_fullsource; - __Pyx_TraceReturnValue(__pyx_r, 88, 0, __PYX_ERR(0, 319, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 88, 0, __PYX_ERR(0, 322, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":288 + /* "hunter/_event.pyx":291 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< @@ -9183,7 +9095,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 288, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 291, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.fullsource_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -9199,7 +9111,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_fullsource_getter(struct __pyx_o return __pyx_r; } -/* "hunter/_event.pyx":321 +/* "hunter/_event.pyx":324 * return self._fullsource * * @property # <<<<<<<<<<<<<< @@ -9232,25 +9144,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 321, 0, 0, 0, __PYX_ERR(0, 321, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 324, 0, 0, 0, __PYX_ERR(0, 324, __pyx_L1_error)); - /* "hunter/_event.pyx":323 + /* "hunter/_event.pyx":326 * @property * def fullsource(self): * return self.fullsource_getter() # <<<<<<<<<<<<<< * * cdef inline source_getter(self): */ - __Pyx_TraceLine(323,1,0,__PYX_ERR(0, 323, __pyx_L1_error)) + __Pyx_TraceLine(326,1,0,__PYX_ERR(0, 326, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 323, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 323, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 326, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":321 + /* "hunter/_event.pyx":324 * return self._fullsource * * @property # <<<<<<<<<<<<<< @@ -9265,7 +9177,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 321, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 324, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.fullsource.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9276,7 +9188,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10fullsource___get__(struct __p return __pyx_r; } -/* "hunter/_event.pyx":325 +/* "hunter/_event.pyx":328 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< @@ -9315,28 +9227,28 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])) __Pyx_RefNannySetupContext("source_getter", 0); - __Pyx_TraceStartFunc("source_getter", __pyx_f[0], 325, 0, 0, 0, __PYX_ERR(0, 325, __pyx_L1_error)); + __Pyx_TraceStartFunc("source_getter", __pyx_f[0], 328, 0, 0, 0, __PYX_ERR(0, 328, __pyx_L1_error)); - /* "hunter/_event.pyx":326 + /* "hunter/_event.pyx":329 * * cdef inline source_getter(self): * if self._source is UNSET: # <<<<<<<<<<<<<< * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' */ - __Pyx_TraceLine(326,5,0,__PYX_ERR(0, 326, __pyx_L1_error)) + __Pyx_TraceLine(329,5,0,__PYX_ERR(0, 329, __pyx_L1_error)) __pyx_t_1 = (__pyx_v_self->_source == __pyx_v_6hunter_6_event_UNSET); if (__pyx_t_1) { - /* "hunter/_event.pyx":327 + /* "hunter/_event.pyx":330 * cdef inline source_getter(self): * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: */ - __Pyx_TraceLine(327,8,0,__PYX_ERR(0, 327, __pyx_L1_error)) - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 327, __pyx_L1_error) + __Pyx_TraceLine(330,8,0,__PYX_ERR(0, 330, __pyx_L1_error)) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __pyx_t_4; __Pyx_INCREF(__pyx_t_3); @@ -9346,46 +9258,46 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_endswith, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 327, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 327, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_1) { - /* "hunter/_event.pyx":328 + /* "hunter/_event.pyx":331 * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' # <<<<<<<<<<<<<< * try: * self._source = getline(self.filename, self.lineno, self.globals) */ - __Pyx_TraceLine(328,17,0,__PYX_ERR(0, 328, __pyx_L1_error)) - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_TraceLine(331,17,0,__PYX_ERR(0, 331, __pyx_L1_error)) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_6, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_6, __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_7[0] = __pyx_mstate_global->__pyx_kp_u_NO_SOURCE_not_reading_binary; __pyx_t_7[1] = __pyx_t_3; __pyx_t_7[2] = __pyx_mstate_global->__pyx_kp_u_file_2; __pyx_t_6 = __Pyx_PyUnicode_Join(__pyx_t_7, 3, 34 + __Pyx_PyUnicode_GET_LENGTH(__pyx_t_3) + 5, 127 | __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3)); - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 328, __pyx_L1_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_6); @@ -9394,7 +9306,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_v_self->_source = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_event.pyx":327 + /* "hunter/_event.pyx":330 * cdef inline source_getter(self): * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< @@ -9403,14 +9315,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":329 + /* "hunter/_event.pyx":332 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: */ - __Pyx_TraceLine(329,25,0,__PYX_ERR(0, 329, __pyx_L1_error)) + __Pyx_TraceLine(332,25,0,__PYX_ERR(0, 332, __pyx_L1_error)) { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -9420,22 +9332,22 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_XGOTREF(__pyx_t_10); /*try:*/ { - /* "hunter/_event.pyx":330 + /* "hunter/_event.pyx":333 * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: * self._source = getline(self.filename, self.lineno, self.globals) # <<<<<<<<<<<<<< * except Exception as exc: * self._source = f'??? NO SOURCE: {exc!r}' */ - __Pyx_TraceLine(330,29,0,__PYX_ERR(0, 330, __pyx_L5_error)) + __Pyx_TraceLine(333,29,0,__PYX_ERR(0, 333, __pyx_L5_error)) __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L5_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 333, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L5_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_filename_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 333, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 330, __pyx_L5_error) + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_lineno_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 333, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_12 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 330, __pyx_L5_error) + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 333, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -9457,7 +9369,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 330, __pyx_L5_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 333, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_6); } __Pyx_GIVEREF(__pyx_t_6); @@ -9466,7 +9378,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_v_self->_source = __pyx_t_6; __pyx_t_6 = 0; - /* "hunter/_event.pyx":329 + /* "hunter/_event.pyx":332 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< @@ -9487,19 +9399,19 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_TraceException(__pyx_lineno, 0, 0); - /* "hunter/_event.pyx":331 + /* "hunter/_event.pyx":334 * try: * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: {exc!r}' * */ - __Pyx_TraceLine(331,37,0,__PYX_ERR(0, 331, __pyx_L7_except_error)) + __Pyx_TraceLine(334,37,0,__PYX_ERR(0, 334, __pyx_L7_except_error)) __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception)))); if (__pyx_t_13) { __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_TraceExceptionHandled(36); - if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_12) < 0) __PYX_ERR(0, 331, __pyx_L7_except_error) + if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_2, &__pyx_t_12) < 0) __PYX_ERR(0, 334, __pyx_L7_except_error) __Pyx_XGOTREF(__pyx_t_6); __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_12); @@ -9508,17 +9420,17 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_v_exc = __pyx_t_2; /*try:*/ { - /* "hunter/_event.pyx":332 + /* "hunter/_event.pyx":335 * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: * self._source = f'??? NO SOURCE: {exc!r}' # <<<<<<<<<<<<<< * * return self._source */ - __Pyx_TraceLine(332,42,0,__PYX_ERR(0, 332, __pyx_L16_error)) - __pyx_t_11 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 332, __pyx_L16_error) + __Pyx_TraceLine(335,42,0,__PYX_ERR(0, 335, __pyx_L16_error)) + __pyx_t_11 = __Pyx_PyObject_FormatSimpleAndDecref(PyObject_Repr(__pyx_v_exc), __pyx_mstate_global->__pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 335, __pyx_L16_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_4 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_11); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 332, __pyx_L16_error) + __pyx_t_4 = __Pyx_PyUnicode_Concat(__pyx_mstate_global->__pyx_kp_u_NO_SOURCE, __pyx_t_11); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 335, __pyx_L16_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_GIVEREF(__pyx_t_4); @@ -9528,14 +9440,14 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_t_4 = 0; } - /* "hunter/_event.pyx":331 + /* "hunter/_event.pyx":334 * try: * self._source = getline(self.filename, self.lineno, self.globals) * except Exception as exc: # <<<<<<<<<<<<<< * self._source = f'??? NO SOURCE: {exc!r}' * */ - __Pyx_TraceLine(331,36,0,__PYX_ERR(0, 331, __pyx_L16_error)) + __Pyx_TraceLine(334,36,0,__PYX_ERR(0, 334, __pyx_L16_error)) /*finally:*/ { /*normal exit:*/{ __Pyx_DECREF(__pyx_v_exc); __pyx_v_exc = 0; @@ -9585,7 +9497,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 } goto __pyx_L7_except_error; - /* "hunter/_event.pyx":329 + /* "hunter/_event.pyx":332 * if self.filename.endswith(('.so', '.pyd')): * self._source = f'??? NO SOURCE: not reading binary {splitext(basename(self.filename))[1]} file' * try: # <<<<<<<<<<<<<< @@ -9606,7 +9518,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 __pyx_L10_try_end:; } - /* "hunter/_event.pyx":326 + /* "hunter/_event.pyx":329 * * cdef inline source_getter(self): * if self._source is UNSET: # <<<<<<<<<<<<<< @@ -9615,21 +9527,21 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 */ } - /* "hunter/_event.pyx":334 + /* "hunter/_event.pyx":337 * self._source = f'??? NO SOURCE: {exc!r}' * * return self._source # <<<<<<<<<<<<<< * * @property */ - __Pyx_TraceLine(334,44,0,__PYX_ERR(0, 334, __pyx_L1_error)) + __Pyx_TraceLine(337,44,0,__PYX_ERR(0, 337, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_source); __pyx_r = __pyx_v_self->_source; - __Pyx_TraceReturnValue(__pyx_r, 44, 0, __PYX_ERR(0, 334, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 44, 0, __PYX_ERR(0, 337, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":325 + /* "hunter/_event.pyx":328 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< @@ -9649,7 +9561,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 325, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 328, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.source_getter", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -9661,7 +9573,7 @@ static PyObject *__pyx_f_6hunter_6_event_5Event_source_getter(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pyx":336 +/* "hunter/_event.pyx":339 * return self._source * * @property # <<<<<<<<<<<<<< @@ -9694,25 +9606,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[0], 336, 0, 0, 0, __PYX_ERR(0, 336, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[0], 339, 0, 0, 0, __PYX_ERR(0, 339, __pyx_L1_error)); - /* "hunter/_event.pyx":338 + /* "hunter/_event.pyx":341 * @property * def source(self): * return self.source_getter() # <<<<<<<<<<<<<< * * def __getitem__(self, item): */ - __Pyx_TraceLine(338,1,0,__PYX_ERR(0, 338, __pyx_L1_error)) + __Pyx_TraceLine(341,1,0,__PYX_ERR(0, 341, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 338, __pyx_L1_error) + __pyx_t_1 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 338, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 341, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":336 + /* "hunter/_event.pyx":339 * return self._source * * @property # <<<<<<<<<<<<<< @@ -9727,7 +9639,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 336, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 339, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.source.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9738,7 +9650,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_6source___get__(struct __pyx_ob return __pyx_r; } -/* "hunter/_event.pyx":340 +/* "hunter/_event.pyx":343 * return self.source_getter() * * def __getitem__(self, item): # <<<<<<<<<<<<<< @@ -9771,25 +9683,25 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])) __Pyx_RefNannySetupContext("__getitem__", 0); - __Pyx_TraceStartFunc("__getitem__", __pyx_f[0], 340, 0, 0, 0, __PYX_ERR(0, 340, __pyx_L1_error)); + __Pyx_TraceStartFunc("__getitem__", __pyx_f[0], 343, 0, 0, 0, __PYX_ERR(0, 343, __pyx_L1_error)); - /* "hunter/_event.pyx":341 + /* "hunter/_event.pyx":344 * * def __getitem__(self, item): * return getattr(self, item) # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(341,1,0,__PYX_ERR(0, 341, __pyx_L1_error)) + __Pyx_TraceLine(344,1,0,__PYX_ERR(0, 344, __pyx_L1_error)) __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetAttr(((PyObject *)__pyx_v_self), __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 341, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetAttr(((PyObject *)__pyx_v_self), __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 341, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 1, 0, __PYX_ERR(0, 344, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":340 + /* "hunter/_event.pyx":343 * return self.source_getter() * * def __getitem__(self, item): # <<<<<<<<<<<<<< @@ -9804,7 +9716,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 340, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 343, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9815,7 +9727,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_10__getitem__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pxd":43 +/* "hunter/_event.pxd":42 * cdef class Event: * cdef: * readonly FrameType frame # <<<<<<<<<<<<<< @@ -9847,11 +9759,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 43, 0, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 42, 0, 0, 0, __PYX_ERR(1, 42, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->frame); __pyx_r = ((PyObject *)__pyx_v_self->frame); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 42, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -9860,7 +9772,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 42, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.frame.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9871,7 +9783,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5frame___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":44 +/* "hunter/_event.pxd":43 * cdef: * readonly FrameType frame * readonly str kind # <<<<<<<<<<<<<< @@ -9903,11 +9815,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 44, 0, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 43, 0, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->kind); __pyx_r = __pyx_v_self->kind; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -9916,7 +9828,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 43, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.kind.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9927,7 +9839,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_4kind___get__(struct __pyx_obj_ return __pyx_r; } -/* "hunter/_event.pxd":45 +/* "hunter/_event.pxd":44 * readonly FrameType frame * readonly str kind * readonly object arg # <<<<<<<<<<<<<< @@ -9959,11 +9871,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 45, 0, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 44, 0, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->arg); __pyx_r = __pyx_v_self->arg; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -9972,7 +9884,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 44, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.arg.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -9983,7 +9895,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_3arg___get__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_event.pxd":46 +/* "hunter/_event.pxd":45 * readonly str kind * readonly object arg * readonly int depth # <<<<<<<<<<<<<< @@ -10016,13 +9928,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 46, 0, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 45, 0, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 46, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 45, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10032,7 +9944,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 45, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10043,7 +9955,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5depth___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":47 +/* "hunter/_event.pxd":46 * readonly object arg * readonly int depth * readonly int calls # <<<<<<<<<<<<<< @@ -10076,13 +9988,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 47, 0, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 46, 0, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 47, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10092,7 +10004,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 46, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10103,7 +10015,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_5calls___get__(struct __pyx_obj return __pyx_r; } -/* "hunter/_event.pxd":48 +/* "hunter/_event.pxd":47 * readonly int depth * readonly int calls * readonly bint threading_support # <<<<<<<<<<<<<< @@ -10136,13 +10048,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 48, 0, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 47, 0, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 48, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10152,7 +10064,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 47, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.threading_support.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10163,7 +10075,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_17threading_support___get__(str return __pyx_r; } -/* "hunter/_event.pxd":49 +/* "hunter/_event.pxd":48 * readonly int calls * readonly bint threading_support * readonly bint detached # <<<<<<<<<<<<<< @@ -10196,13 +10108,13 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 49, 0, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 48, 0, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 49, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 48, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10212,7 +10124,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 48, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.detached.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10223,7 +10135,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_8detached___get__(struct __pyx_ return __pyx_r; } -/* "hunter/_event.pxd":50 +/* "hunter/_event.pxd":49 * readonly bint threading_support * readonly bint detached * readonly object builtin # <<<<<<<<<<<<<< @@ -10255,11 +10167,11 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[1], 50, 0, 0, 0, __PYX_ERR(1, 50, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[1], 49, 0, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->builtin); __pyx_r = __pyx_v_self->builtin; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 50, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -10268,7 +10180,7 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 50, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(1, 49, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.Event.builtin.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -10278,36 +10190,48 @@ static PyObject *__pyx_pf_6hunter_6_event_5Event_7builtin___get__(struct __pyx_o __Pyx_RefNannyFinishContext(); return __pyx_r; } +static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict +/* "hunter/_event.pyx":347 + * + * + * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< + * limit=10): + * dedent = None */ /* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__(PyObject *__pyx_v_self, +static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_13__reduce_cython__ = {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__(PyObject *__pyx_v_self, +static PyMethodDef __pyx_mdef_6hunter_6_event_1yield_lines = {"yield_lines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_1yield_lines, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ) { + PyObject *__pyx_v_filename = 0; + PyObject *__pyx_v_module_globals = 0; + PyObject *__pyx_v_start = 0; + PyObject *__pyx_v_collector = 0; + PyObject *__pyx_v_limit = 0; #if !CYTHON_METH_FASTCALL CYTHON_UNUSED Py_ssize_t __pyx_nargs; #endif CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[5] = {0,0,0,0,0}; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; PyObject *__pyx_r = 0; __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __Pyx_RefNannySetupContext("yield_lines (wrapper)", 0); #if !CYTHON_METH_FASTCALL #if CYTHON_ASSUME_SAFE_SIZE __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); @@ -10316,843 +10240,218 @@ PyObject *__pyx_args, PyObject *__pyx_kwds #endif #endif __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL; } - const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len < 0)) return NULL; - if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords("__reduce_cython__", __pyx_kwds); return NULL;} - __pyx_r = __pyx_pf_6hunter_6_event_5Event_12__reduce_cython__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self)); + { + PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_filename_2,&__pyx_mstate_global->__pyx_n_u_module_globals,&__pyx_mstate_global->__pyx_n_u_start,&__pyx_mstate_global->__pyx_n_u_collector,&__pyx_mstate_global->__pyx_n_u_limit,0}; + const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 347, __pyx_L3_error) + if (__pyx_kwds_len > 0) { + switch (__pyx_nargs) { + case 5: + values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 347, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 4: + values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 347, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 3: + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 347, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 2: + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 347, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 1: + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 347, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "yield_lines", 0) < 0) __PYX_ERR(0, 347, __pyx_L3_error) + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); + for (Py_ssize_t i = __pyx_nargs; i < 4; i++) { + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, i); __PYX_ERR(0, 347, __pyx_L3_error) } + } + } else { + switch (__pyx_nargs) { + case 5: + values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 347, __pyx_L3_error) + CYTHON_FALLTHROUGH; + case 4: + values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 347, __pyx_L3_error) + values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 347, __pyx_L3_error) + values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 347, __pyx_L3_error) + values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 347, __pyx_L3_error) + break; + default: goto __pyx_L5_argtuple_error; + } + if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); + } + __pyx_v_filename = values[0]; + __pyx_v_module_globals = values[1]; + __pyx_v_start = values[2]; + __pyx_v_collector = ((PyObject*)values[3]); + __pyx_v_limit = values[4]; + } + goto __pyx_L6_skip; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 347, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; + __pyx_L3_error:; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_collector), (&PyList_Type), 1, "collector", 1))) __PYX_ERR(0, 347, __pyx_L1_error) + __pyx_r = __pyx_pf_6hunter_6_event_yield_lines(__pyx_self, __pyx_v_filename, __pyx_v_module_globals, __pyx_v_start, __pyx_v_collector, __pyx_v_limit); /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + goto __pyx_L7_cleaned_up; + __pyx_L0:; + for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + Py_XDECREF(values[__pyx_temp]); + } + __pyx_L7_cleaned_up:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_6hunter_6_event_5Event_12__reduce_cython__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self) { - PyObject *__pyx_v_state = 0; - PyObject *__pyx_v__dict = 0; - int __pyx_v_use_setstate; +static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_module_globals, PyObject *__pyx_v_start, PyObject *__pyx_v_collector, PyObject *__pyx_v_limit) { + struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope; PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarationsFunc __Pyx_RefNannyDeclarations + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("yield_lines", 0); + __pyx_cur_scope = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(__pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines, __pyx_mstate_global->__pyx_empty_tuple, NULL); + if (unlikely(!__pyx_cur_scope)) { + __pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)Py_None); + __Pyx_INCREF(Py_None); + __PYX_ERR(0, 347, __pyx_L1_error) + } else { + __Pyx_GOTREF((PyObject *)__pyx_cur_scope); + } + __pyx_cur_scope->__pyx_v_filename = __pyx_v_filename; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_filename); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_filename); + __pyx_cur_scope->__pyx_v_module_globals = __pyx_v_module_globals; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_module_globals); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_module_globals); + __pyx_cur_scope->__pyx_v_start = __pyx_v_start; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_start); + __pyx_cur_scope->__pyx_v_collector = __pyx_v_collector; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_collector); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_collector); + __pyx_cur_scope->__pyx_v_limit = __pyx_v_limit; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_limit); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_limit); + { + __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_6_event_2generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_hunter__event); if (unlikely(!gen)) __PYX_ERR(0, 347, __pyx_L1_error) + __Pyx_DECREF(__pyx_cur_scope); + __Pyx_RefNannyFinishContext(); + return (PyObject *) gen; + } + + /* function exit code */ + __pyx_L1_error:; + __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_DECREF((PyObject *)__pyx_cur_scope); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ +{ + struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_generator->closure); + PyObject *__pyx_r = NULL; + __Pyx_TraceDeclarationsGen PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; + size_t __pyx_t_4; + Py_ssize_t __pyx_t_5; + PyObject *(*__pyx_t_6)(PyObject *); int __pyx_t_7; + PyObject *__pyx_t_8 = NULL; + PyObject *__pyx_t_9 = NULL; + Py_ssize_t __pyx_t_10; + int __pyx_t_11; + int __pyx_t_12; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])) - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - __Pyx_TraceStartFunc("__reduce_cython__", __pyx_f[2], 1, 0, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); - - /* "(tree fragment)":5 - * cdef object _dict - * cdef bint use_setstate - * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) # <<<<<<<<<<<<<< - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: -*/ - __Pyx_TraceLine(5,37,0,__PYX_ERR(2, 5, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_v_self->detached); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_self->threading_support); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(23); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_v_self->_code); - __Pyx_GIVEREF(__pyx_v_self->_code); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_self->_code) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_filename); - __Pyx_GIVEREF(__pyx_v_self->_filename); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_self->_filename) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_fullsource); - __Pyx_GIVEREF(__pyx_v_self->_fullsource); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_self->_fullsource) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_function); - __Pyx_GIVEREF(__pyx_v_self->_function); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_v_self->_function) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_function_object); - __Pyx_GIVEREF(__pyx_v_self->_function_object); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 4, __pyx_v_self->_function_object) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_globals); - __Pyx_GIVEREF(__pyx_v_self->_globals); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 5, __pyx_v_self->_globals) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_instruction); - __Pyx_GIVEREF(__pyx_v_self->_instruction); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 6, __pyx_v_self->_instruction) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_lineno); - __Pyx_GIVEREF(__pyx_v_self->_lineno); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 7, __pyx_v_self->_lineno) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_locals); - __Pyx_GIVEREF(__pyx_v_self->_locals); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 8, __pyx_v_self->_locals) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_module); - __Pyx_GIVEREF(__pyx_v_self->_module); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 9, __pyx_v_self->_module) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_source); - __Pyx_GIVEREF(__pyx_v_self->_source); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 10, __pyx_v_self->_source) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_stdlib); - __Pyx_GIVEREF(__pyx_v_self->_stdlib); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 11, __pyx_v_self->_stdlib) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_thread); - __Pyx_GIVEREF(__pyx_v_self->_thread); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 12, __pyx_v_self->_thread) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_threadidn); - __Pyx_GIVEREF(__pyx_v_self->_threadidn); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 13, __pyx_v_self->_threadidn) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->_threadname); - __Pyx_GIVEREF(__pyx_v_self->_threadname); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 14, __pyx_v_self->_threadname) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->arg); - __Pyx_GIVEREF(__pyx_v_self->arg); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 15, __pyx_v_self->arg) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->builtin); - __Pyx_GIVEREF(__pyx_v_self->builtin); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 16, __pyx_v_self->builtin) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 17, __pyx_t_1) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 18, __pyx_t_2) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 19, __pyx_t_3) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->frame); - __Pyx_GIVEREF(__pyx_v_self->frame); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 20, ((PyObject *)__pyx_v_self->frame)) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_self->kind); - __Pyx_GIVEREF(__pyx_v_self->kind); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 21, __pyx_v_self->kind) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 22, __pyx_t_4) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_v_state = ((PyObject*)__pyx_t_5); - __pyx_t_5 = 0; - - /* "(tree fragment)":6 - * cdef bint use_setstate - * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) - * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< - * if _dict is not None: - * state += (_dict,) -*/ - __Pyx_TraceLine(6,50,0,__PYX_ERR(2, 6, __pyx_L1_error)) - __pyx_t_5 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_dict, Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_v__dict = __pyx_t_5; - __pyx_t_5 = 0; - - /* "(tree fragment)":7 - * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: # <<<<<<<<<<<<<< - * state += (_dict,) - * use_setstate = True -*/ - __Pyx_TraceLine(7,57,0,__PYX_ERR(2, 7, __pyx_L1_error)) - __pyx_t_6 = (__pyx_v__dict != Py_None); - if (__pyx_t_6) { - - /* "(tree fragment)":8 - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: - * state += (_dict,) # <<<<<<<<<<<<<< - * use_setstate = True - * else: -*/ - __Pyx_TraceLine(8,59,0,__PYX_ERR(2, 8, __pyx_L1_error)) - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 8, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_v__dict); - __Pyx_GIVEREF(__pyx_v__dict); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v__dict) != (0)) __PYX_ERR(2, 8, __pyx_L1_error); - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 8, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_4)); - __pyx_t_4 = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("yield_lines", 0); + switch (__pyx_generator->resume_label) { + case 0: goto __pyx_L3_first_run; + case 1: goto __pyx_L7_resume_from_yield; + default: /* CPython raises the right error here */ + __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 347, 0, 0, 0, __PYX_ERR(0, 347, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 347, __pyx_L1_error)); + __Pyx_RefNannyFinishContext(); + return NULL; + } + __pyx_L3_first_run:; + __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 347, 0, 0, 0, __PYX_ERR(0, 347, __pyx_L1_error)); + if (unlikely(__pyx_sent_value != Py_None)) { + if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator"); + __PYX_ERR(0, 347, __pyx_L1_error) + } - /* "(tree fragment)":9 - * if _dict is not None: - * state += (_dict,) - * use_setstate = True # <<<<<<<<<<<<<< - * else: - * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None + /* "hunter/_event.pyx":349 + * def yield_lines(filename, module_globals, start, list collector, + * limit=10): + * dedent = None # <<<<<<<<<<<<<< + * amount = 0 + * for line in getlines(filename, module_globals)[start:start + limit]: */ - __Pyx_TraceLine(9,61,0,__PYX_ERR(2, 9, __pyx_L1_error)) - __pyx_v_use_setstate = 1; + __Pyx_TraceLine(349,0,0,__PYX_ERR(0, 349, __pyx_L1_error)) + __Pyx_INCREF(Py_None); + __Pyx_GIVEREF(Py_None); + __pyx_cur_scope->__pyx_v_dedent = Py_None; - /* "(tree fragment)":7 - * state = (self._code, self._filename, self._fullsource, self._function, self._function_object, self._globals, self._instruction, self._lineno, self._locals, self._module, self._source, self._stdlib, self._thread, self._threadidn, self._threadname, self.arg, self.builtin, self.calls, self.depth, self.detached, self.frame, self.kind, self.threading_support) - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: # <<<<<<<<<<<<<< - * state += (_dict,) - * use_setstate = True + /* "hunter/_event.pyx":350 + * limit=10): + * dedent = None + * amount = 0 # <<<<<<<<<<<<<< + * for line in getlines(filename, module_globals)[start:start + limit]: + * if dedent is None: */ - goto __pyx_L3; - } - - /* "(tree fragment)":11 - * use_setstate = True - * else: - * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None # <<<<<<<<<<<<<< - * if use_setstate: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state -*/ - __Pyx_TraceLine(11,67,0,__PYX_ERR(2, 11, __pyx_L1_error)) - /*else*/ { - __pyx_t_7 = (__pyx_v_self->_code != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_filename != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_fullsource != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_function != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_function_object != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_globals != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_instruction != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_lineno != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_locals != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_module != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_source != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_stdlib != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_thread != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_threadidn != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->_threadname != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->arg != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->builtin != Py_None); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->frame != ((FrameType)Py_None)); - if (!__pyx_t_7) { - } else { - __pyx_t_6 = __pyx_t_7; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_7 = (__pyx_v_self->kind != ((PyObject*)Py_None)); - __pyx_t_6 = __pyx_t_7; - __pyx_L4_bool_binop_done:; - __pyx_v_use_setstate = __pyx_t_6; - } - __pyx_L3:; - - /* "(tree fragment)":12 - * else: - * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None - * if use_setstate: # <<<<<<<<<<<<<< - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state - * else: -*/ - __Pyx_TraceLine(12,158,0,__PYX_ERR(2, 12, __pyx_L1_error)) - if (__pyx_v_use_setstate) { - - /* "(tree fragment)":13 - * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None - * if use_setstate: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state # <<<<<<<<<<<<<< - * else: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) -*/ - __Pyx_TraceLine(13,159,0,__PYX_ERR(2, 13, __pyx_L1_error)) - __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_mstate_global->__pyx_int_157141922); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_157141922); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_mstate_global->__pyx_int_157141922) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); - __Pyx_INCREF(Py_None); - __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, Py_None) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_state); - __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_state) != (0)) __PYX_ERR(2, 13, __pyx_L1_error); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - __Pyx_TraceReturnValue(__pyx_r, 159, 0, __PYX_ERR(2, 13, __pyx_L1_error)); - goto __pyx_L0; - - /* "(tree fragment)":12 - * else: - * use_setstate = self._code is not None or self._filename is not None or self._fullsource is not None or self._function is not None or self._function_object is not None or self._globals is not None or self._instruction is not None or self._lineno is not None or self._locals is not None or self._module is not None or self._source is not None or self._stdlib is not None or self._thread is not None or self._threadidn is not None or self._threadname is not None or self.arg is not None or self.builtin is not None or self.frame is not None or self.kind is not None - * if use_setstate: # <<<<<<<<<<<<<< - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state - * else: -*/ - } - - /* "(tree fragment)":15 - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, None), state - * else: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * __pyx_unpickle_Event__set_state(self, __pyx_state) -*/ - __Pyx_TraceLine(15,167,0,__PYX_ERR(2, 15, __pyx_L1_error)) - /*else*/ { - __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 15, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 15, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_mstate_global->__pyx_int_157141922); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_157141922); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_mstate_global->__pyx_int_157141922) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); - __Pyx_INCREF(__pyx_v_state); - __Pyx_GIVEREF(__pyx_v_state); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 15, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); - __Pyx_GIVEREF(__pyx_t_5); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5) != (0)) __PYX_ERR(2, 15, __pyx_L1_error); - __pyx_t_3 = 0; - __pyx_t_5 = 0; - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; - __Pyx_TraceReturnValue(__pyx_r, 167, 0, __PYX_ERR(2, 15, __pyx_L1_error)); - goto __pyx_L0; - } - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_TraceException(__pyx_lineno, 0, 0); - #if CYTHON_USE_SYS_MONITORING - __Pyx_TraceExceptionUnwind(0, 0); - #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); - #endif - __Pyx_AddTraceback("hunter._event.Event.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_state); - __Pyx_XDECREF(__pyx_v__dict); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_PyMonitoring_ExitScope(0); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Event__set_state(self, __pyx_state) -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_5Event_15__setstate_cython__ = {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__(PyObject *__pyx_v_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - PyObject *__pyx_v___pyx_state = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[1] = {0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(2, 16, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 16, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__setstate_cython__", 0) < 0) __PYX_ERR(2, 16, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, i); __PYX_ERR(2, 16, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 1)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 16, __pyx_L3_error) - } - __pyx_v___pyx_state = values[0]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(2, 16, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter._event.Event.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6_event_5Event_14__setstate_cython__(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v_self), __pyx_v___pyx_state); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6_event_5Event_14__setstate_cython__(struct __pyx_obj_6hunter_6_event_Event *__pyx_v_self, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarationsFunc - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])) - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - __Pyx_TraceStartFunc("__setstate_cython__", __pyx_f[2], 16, 0, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); - - /* "(tree fragment)":17 - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) - * def __setstate_cython__(self, __pyx_state): - * __pyx_unpickle_Event__set_state(self, __pyx_state) # <<<<<<<<<<<<<< -*/ - __Pyx_TraceLine(17,4,0,__PYX_ERR(2, 17, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(2, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 17, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Event__set_state(self, __pyx_state) -*/ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_TraceException(__pyx_lineno, 0, 0); - #if CYTHON_USE_SYS_MONITORING - __Pyx_TraceExceptionUnwind(0, 0); - #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 16, __pyx_L1_error)); - #endif - __Pyx_AddTraceback("hunter._event.Event.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_PyMonitoring_ExitScope(0); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} -static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ - -/* "hunter/_event.pyx":344 - * - * - * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< - * limit=10): - * dedent = None -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_1yield_lines = {"yield_lines", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_1yield_lines, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_6hunter_6_event_1yield_lines(PyObject *__pyx_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_v_module_globals = 0; - PyObject *__pyx_v_start = 0; - PyObject *__pyx_v_collector = 0; - PyObject *__pyx_v_limit = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[5] = {0,0,0,0,0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("yield_lines (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_filename_2,&__pyx_mstate_global->__pyx_n_u_module_globals,&__pyx_mstate_global->__pyx_n_u_start,&__pyx_mstate_global->__pyx_n_u_collector,&__pyx_mstate_global->__pyx_n_u_limit,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 344, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 5: - values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 344, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 4: - values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 344, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 3: - values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 344, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 2: - values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 344, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 344, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "yield_lines", 0) < 0) __PYX_ERR(0, 344, __pyx_L3_error) - if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); - for (Py_ssize_t i = __pyx_nargs; i < 4; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, i); __PYX_ERR(0, 344, __pyx_L3_error) } - } - } else { - switch (__pyx_nargs) { - case 5: - values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 344, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 4: - values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 344, __pyx_L3_error) - values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 344, __pyx_L3_error) - values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 344, __pyx_L3_error) - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 344, __pyx_L3_error) - break; - default: goto __pyx_L5_argtuple_error; - } - if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)((PyObject*)__pyx_mstate_global->__pyx_int_10))); - } - __pyx_v_filename = values[0]; - __pyx_v_module_globals = values[1]; - __pyx_v_start = values[2]; - __pyx_v_collector = ((PyObject*)values[3]); - __pyx_v_limit = values[4]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("yield_lines", 0, 4, 5, __pyx_nargs); __PYX_ERR(0, 344, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_collector), (&PyList_Type), 1, "collector", 1))) __PYX_ERR(0, 344, __pyx_L1_error) - __pyx_r = __pyx_pf_6hunter_6_event_yield_lines(__pyx_self, __pyx_v_filename, __pyx_v_module_globals, __pyx_v_start, __pyx_v_collector, __pyx_v_limit); - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __pyx_r = NULL; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - goto __pyx_L7_cleaned_up; - __pyx_L0:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __pyx_L7_cleaned_up:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6_event_yield_lines(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_module_globals, PyObject *__pyx_v_start, PyObject *__pyx_v_collector, PyObject *__pyx_v_limit) { - struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("yield_lines", 0); - __pyx_cur_scope = (struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_tp_new_6hunter_6_event___pyx_scope_struct__yield_lines(__pyx_mstate_global->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines, __pyx_mstate_global->__pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)Py_None); - __Pyx_INCREF(Py_None); - __PYX_ERR(0, 344, __pyx_L1_error) - } else { - __Pyx_GOTREF((PyObject *)__pyx_cur_scope); - } - __pyx_cur_scope->__pyx_v_filename = __pyx_v_filename; - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_filename); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_filename); - __pyx_cur_scope->__pyx_v_module_globals = __pyx_v_module_globals; - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_module_globals); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_module_globals); - __pyx_cur_scope->__pyx_v_start = __pyx_v_start; - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_start); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_start); - __pyx_cur_scope->__pyx_v_collector = __pyx_v_collector; - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_collector); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_collector); - __pyx_cur_scope->__pyx_v_limit = __pyx_v_limit; - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_limit); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_limit); - { - __pyx_CoroutineObject *gen = __Pyx_Generator_New((__pyx_coroutine_body_t) __pyx_gb_6hunter_6_event_2generator, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43]), (PyObject *) __pyx_cur_scope, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_mstate_global->__pyx_n_u_hunter__event); if (unlikely(!gen)) __PYX_ERR(0, 344, __pyx_L1_error) - __Pyx_DECREF(__pyx_cur_scope); - __Pyx_RefNannyFinishContext(); - return (PyObject *) gen; - } - - /* function exit code */ - __pyx_L1_error:; - __Pyx_AddTraceback("hunter._event.yield_lines", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_DECREF((PyObject *)__pyx_cur_scope); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ -{ - struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *__pyx_cur_scope = ((struct __pyx_obj_6hunter_6_event___pyx_scope_struct__yield_lines *)__pyx_generator->closure); - PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarationsGen - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - size_t __pyx_t_4; - Py_ssize_t __pyx_t_5; - PyObject *(*__pyx_t_6)(PyObject *); - int __pyx_t_7; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - Py_ssize_t __pyx_t_10; - int __pyx_t_11; - int __pyx_t_12; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("yield_lines", 0); - switch (__pyx_generator->resume_label) { - case 0: goto __pyx_L3_first_run; - case 1: goto __pyx_L7_resume_from_yield; - default: /* CPython raises the right error here */ - __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 344, 0, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); - __Pyx_RefNannyFinishContext(); - return NULL; - } - __pyx_L3_first_run:; - __Pyx_TraceStartGen("yield_lines", __pyx_f[0], 344, 0, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); - if (unlikely(__pyx_sent_value != Py_None)) { - if (unlikely(__pyx_sent_value)) PyErr_SetString(PyExc_TypeError, "can't send non-None value to a just-started generator"); - __PYX_ERR(0, 344, __pyx_L1_error) - } - - /* "hunter/_event.pyx":346 - * def yield_lines(filename, module_globals, start, list collector, - * limit=10): - * dedent = None # <<<<<<<<<<<<<< - * amount = 0 - * for line in getlines(filename, module_globals)[start:start + limit]: -*/ - __Pyx_TraceLine(346,0,0,__PYX_ERR(0, 346, __pyx_L1_error)) - __Pyx_INCREF(Py_None); - __Pyx_GIVEREF(Py_None); - __pyx_cur_scope->__pyx_v_dedent = Py_None; - - /* "hunter/_event.pyx":347 - * limit=10): - * dedent = None - * amount = 0 # <<<<<<<<<<<<<< - * for line in getlines(filename, module_globals)[start:start + limit]: - * if dedent is None: -*/ - __Pyx_TraceLine(347,0,0,__PYX_ERR(0, 347, __pyx_L1_error)) + __Pyx_TraceLine(350,0,0,__PYX_ERR(0, 350, __pyx_L1_error)) __pyx_cur_scope->__pyx_v_amount = 0; - /* "hunter/_event.pyx":348 + /* "hunter/_event.pyx":351 * dedent = None * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: # <<<<<<<<<<<<<< * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) */ - __Pyx_TraceLine(348,0,0,__PYX_ERR(0, 348, __pyx_L1_error)) + __Pyx_TraceLine(351,0,0,__PYX_ERR(0, 351, __pyx_L1_error)) __pyx_t_2 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = 1; #if CYTHON_UNPACK_METHODS @@ -11171,12 +10470,12 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (3-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 348, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } - __pyx_t_3 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) + __pyx_t_3 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_cur_scope->__pyx_v_limit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_1, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_t_3, NULL, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 348, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_1, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_t_3, NULL, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -11185,9 +10484,9 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_5 = 0; __pyx_t_6 = NULL; } else { - __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) + __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 348, __pyx_L1_error) + __pyx_t_6 = (CYTHON_COMPILING_IN_LIMITED_API) ? PyIter_Next : __Pyx_PyObject_GetIterNextFunc(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 351, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; for (;;) { @@ -11196,7 +10495,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_3); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 348, __pyx_L1_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 351, __pyx_L1_error) #endif if (__pyx_t_5 >= __pyx_temp) break; } @@ -11206,7 +10505,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_3); #if !CYTHON_ASSUME_SAFE_SIZE - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 348, __pyx_L1_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 351, __pyx_L1_error) #endif if (__pyx_t_5 >= __pyx_temp) break; } @@ -11217,13 +10516,13 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py #endif ++__pyx_t_5; } - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 348, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 351, __pyx_L1_error) } else { __pyx_t_2 = __pyx_t_6(__pyx_t_3); if (unlikely(!__pyx_t_2)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 348, __pyx_L1_error) + if (unlikely(!__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) __PYX_ERR(0, 351, __pyx_L1_error) PyErr_Clear(); } break; @@ -11234,31 +10533,31 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_line, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_TraceLine(348,0,0,__PYX_ERR(0, 348, __pyx_L1_error)) + __Pyx_TraceLine(351,0,0,__PYX_ERR(0, 351, __pyx_L1_error)) - /* "hunter/_event.pyx":349 + /* "hunter/_event.pyx":352 * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: # <<<<<<<<<<<<<< * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' */ - __Pyx_TraceLine(349,0,0,__PYX_ERR(0, 349, __pyx_L1_error)) + __Pyx_TraceLine(352,0,0,__PYX_ERR(0, 352, __pyx_L1_error)) __pyx_t_7 = (__pyx_cur_scope->__pyx_v_dedent == Py_None); if (__pyx_t_7) { - /* "hunter/_event.pyx":350 + /* "hunter/_event.pyx":353 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) # <<<<<<<<<<<<<< * dedent = dedent[0] if dedent else '' * amount = len(dedent) */ - __Pyx_TraceLine(350,0,0,__PYX_ERR(0, 350, __pyx_L1_error)) + __Pyx_TraceLine(353,0,0,__PYX_ERR(0, 353, __pyx_L1_error)) __pyx_t_1 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 350, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_findall); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 350, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_mstate_global->__pyx_n_u_findall); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_4 = 1; @@ -11278,7 +10577,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 350, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_dedent); @@ -11286,17 +10585,17 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":351 + /* "hunter/_event.pyx":354 * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' # <<<<<<<<<<<<<< * amount = len(dedent) * elif not line.startswith(dedent): */ - __Pyx_TraceLine(351,0,0,__PYX_ERR(0, 351, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_dedent); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 351, __pyx_L1_error) + __Pyx_TraceLine(354,0,0,__PYX_ERR(0, 354, __pyx_L1_error)) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_dedent); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 354, __pyx_L1_error) if (__pyx_t_7) { - __pyx_t_9 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_dedent, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 351, __pyx_L1_error) + __pyx_t_9 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_dedent, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 354, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_2 = __pyx_t_9; __pyx_t_9 = 0; @@ -11309,18 +10608,18 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":352 + /* "hunter/_event.pyx":355 * dedent = LEADING_WHITESPACE_RE.findall(line) * dedent = dedent[0] if dedent else '' * amount = len(dedent) # <<<<<<<<<<<<<< * elif not line.startswith(dedent): * break */ - __Pyx_TraceLine(352,0,0,__PYX_ERR(0, 352, __pyx_L1_error)) - __pyx_t_10 = PyObject_Length(__pyx_cur_scope->__pyx_v_dedent); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 352, __pyx_L1_error) + __Pyx_TraceLine(355,0,0,__PYX_ERR(0, 355, __pyx_L1_error)) + __pyx_t_10 = PyObject_Length(__pyx_cur_scope->__pyx_v_dedent); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(0, 355, __pyx_L1_error) __pyx_cur_scope->__pyx_v_amount = __pyx_t_10; - /* "hunter/_event.pyx":349 + /* "hunter/_event.pyx":352 * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: * if dedent is None: # <<<<<<<<<<<<<< @@ -11330,14 +10629,14 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py goto __pyx_L6; } - /* "hunter/_event.pyx":353 + /* "hunter/_event.pyx":356 * dedent = dedent[0] if dedent else '' * amount = len(dedent) * elif not line.startswith(dedent): # <<<<<<<<<<<<<< * break * collector.append(line) */ - __Pyx_TraceLine(353,0,0,__PYX_ERR(0, 353, __pyx_L1_error)) + __Pyx_TraceLine(356,0,0,__PYX_ERR(0, 356, __pyx_L1_error)) __pyx_t_9 = __pyx_cur_scope->__pyx_v_line; __Pyx_INCREF(__pyx_t_9); __pyx_t_4 = 0; @@ -11345,25 +10644,25 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_cur_scope->__pyx_v_dedent}; __pyx_t_2 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_startswith, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 353, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 353, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_11 = (!__pyx_t_7); if (__pyx_t_11) { - /* "hunter/_event.pyx":354 + /* "hunter/_event.pyx":357 * amount = len(dedent) * elif not line.startswith(dedent): * break # <<<<<<<<<<<<<< * collector.append(line) * yield line[amount:] */ - __Pyx_TraceLine(354,0,0,__PYX_ERR(0, 354, __pyx_L1_error)) + __Pyx_TraceLine(357,0,0,__PYX_ERR(0, 357, __pyx_L1_error)) goto __pyx_L5_break; - /* "hunter/_event.pyx":353 + /* "hunter/_event.pyx":356 * dedent = dedent[0] if dedent else '' * amount = len(dedent) * elif not line.startswith(dedent): # <<<<<<<<<<<<<< @@ -11373,29 +10672,29 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py } __pyx_L6:; - /* "hunter/_event.pyx":355 + /* "hunter/_event.pyx":358 * elif not line.startswith(dedent): * break * collector.append(line) # <<<<<<<<<<<<<< * yield line[amount:] * */ - __Pyx_TraceLine(355,0,0,__PYX_ERR(0, 355, __pyx_L1_error)) + __Pyx_TraceLine(358,0,0,__PYX_ERR(0, 358, __pyx_L1_error)) if (unlikely(__pyx_cur_scope->__pyx_v_collector == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "append"); - __PYX_ERR(0, 355, __pyx_L1_error) + __PYX_ERR(0, 358, __pyx_L1_error) } - __pyx_t_12 = __Pyx_PyList_Append(__pyx_cur_scope->__pyx_v_collector, __pyx_cur_scope->__pyx_v_line); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(0, 355, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyList_Append(__pyx_cur_scope->__pyx_v_collector, __pyx_cur_scope->__pyx_v_line); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(0, 358, __pyx_L1_error) - /* "hunter/_event.pyx":356 + /* "hunter/_event.pyx":359 * break * collector.append(line) * yield line[amount:] # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(356,0,0,__PYX_ERR(0, 356, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_line, __pyx_cur_scope->__pyx_v_amount, 0, NULL, NULL, NULL, 1, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 356, __pyx_L1_error) + __Pyx_TraceLine(359,0,0,__PYX_ERR(0, 359, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_line, __pyx_cur_scope->__pyx_v_amount, 0, NULL, NULL, NULL, 1, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 359, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; @@ -11403,7 +10702,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_cur_scope->__pyx_t_0 = __pyx_t_3; __pyx_cur_scope->__pyx_t_1 = __pyx_t_5; __pyx_cur_scope->__pyx_t_2 = __pyx_t_6; - __Pyx_TraceYield(__pyx_r, 0, __PYX_ERR(0, 356, __pyx_L1_error)); + __Pyx_TraceYield(__pyx_r, 0, __PYX_ERR(0, 359, __pyx_L1_error)); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); __Pyx_Coroutine_ResetAndClearException(__pyx_generator); @@ -11411,22 +10710,22 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L7_resume_from_yield:; - __Pyx_TraceResumeGen("yield_lines", __pyx_f[0], 344, 0, __PYX_ERR(0, 356, __pyx_L1_error)); + __Pyx_TraceResumeGen("yield_lines", __pyx_f[0], 347, 0, __PYX_ERR(0, 359, __pyx_L1_error)); __pyx_t_3 = __pyx_cur_scope->__pyx_t_0; __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_3); __pyx_t_5 = __pyx_cur_scope->__pyx_t_1; __pyx_t_6 = __pyx_cur_scope->__pyx_t_2; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 356, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 359, __pyx_L1_error) - /* "hunter/_event.pyx":348 + /* "hunter/_event.pyx":351 * dedent = None * amount = 0 * for line in getlines(filename, module_globals)[start:start + limit]: # <<<<<<<<<<<<<< * if dedent is None: * dedent = LEADING_WHITESPACE_RE.findall(line) */ - __Pyx_TraceLine(348,0,0,__PYX_ERR(0, 348, __pyx_L1_error)) + __Pyx_TraceLine(351,0,0,__PYX_ERR(0, 351, __pyx_L1_error)) } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L8_for_end; @@ -11435,9 +10734,9 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py goto __pyx_L8_for_end; __pyx_L8_for_end:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 344, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 347, __pyx_L1_error)); - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":347 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< @@ -11472,7 +10771,7 @@ static PyObject *__pyx_gb_6hunter_6_event_2generator(__pyx_CoroutineObject *__py return __pyx_r; } -/* "hunter/_event.pyx":359 +/* "hunter/_event.pyx":362 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< @@ -11503,19 +10802,19 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])) __Pyx_RefNannySetupContext("fast_detach", 0); - __Pyx_TraceStartFunc("fast_detach", __pyx_f[0], 359, 0, 0, 0, __PYX_ERR(0, 359, __pyx_L1_error)); + __Pyx_TraceStartFunc("fast_detach", __pyx_f[0], 362, 0, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); - /* "hunter/_event.pyx":360 + /* "hunter/_event.pyx":363 * * cdef inline Event fast_detach(Event self, object value_filter): * event = Event.__new__(Event) # <<<<<<<<<<<<<< * * event._code = self.code_getter() */ - __Pyx_TraceLine(360,5,0,__PYX_ERR(0, 360, __pyx_L1_error)) - __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 360, __pyx_L1_error) + __Pyx_TraceLine(363,5,0,__PYX_ERR(0, 363, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); __pyx_t_2 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_2); @@ -11523,15 +10822,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":362 + /* "hunter/_event.pyx":365 * event = Event.__new__(Event) * * event._code = self.code_getter() # <<<<<<<<<<<<<< * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() */ - __Pyx_TraceLine(362,11,0,__PYX_ERR(0, 362, __pyx_L1_error)) - __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 362, __pyx_L1_error) + __Pyx_TraceLine(365,11,0,__PYX_ERR(0, 365, __pyx_L1_error)) + __pyx_t_2 = ((PyObject *)__pyx_f_6hunter_6_event_5Event_code_getter(__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_code); @@ -11539,15 +10838,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_code = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":363 + /* "hunter/_event.pyx":366 * * event._code = self.code_getter() * event._filename = self.filename_getter() # <<<<<<<<<<<<<< * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object */ - __Pyx_TraceLine(363,16,0,__PYX_ERR(0, 363, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 363, __pyx_L1_error) + __Pyx_TraceLine(366,16,0,__PYX_ERR(0, 366, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_filename_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_filename); @@ -11555,15 +10854,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":364 + /* "hunter/_event.pyx":367 * event._code = self.code_getter() * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() # <<<<<<<<<<<<<< * event._function_object = self._function_object * event._function = self.function_getter() */ - __Pyx_TraceLine(364,21,0,__PYX_ERR(0, 364, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 364, __pyx_L1_error) + __Pyx_TraceLine(367,21,0,__PYX_ERR(0, 367, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_fullsource_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_fullsource); @@ -11571,14 +10870,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_fullsource = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":365 + /* "hunter/_event.pyx":368 * event._filename = self.filename_getter() * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object # <<<<<<<<<<<<<< * event._function = self.function_getter() * event._lineno = self.lineno_getter() */ - __Pyx_TraceLine(365,25,0,__PYX_ERR(0, 365, __pyx_L1_error)) + __Pyx_TraceLine(368,25,0,__PYX_ERR(0, 368, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function_object; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11587,15 +10886,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function_object = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":366 + /* "hunter/_event.pyx":369 * event._fullsource = self.fullsource_getter() * event._function_object = self._function_object * event._function = self.function_getter() # <<<<<<<<<<<<<< * event._lineno = self.lineno_getter() * event._module = self.module_getter() */ - __Pyx_TraceLine(366,30,0,__PYX_ERR(0, 366, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error) + __Pyx_TraceLine(369,30,0,__PYX_ERR(0, 369, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_function_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_function); @@ -11603,15 +10902,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":367 + /* "hunter/_event.pyx":370 * event._function_object = self._function_object * event._function = self.function_getter() * event._lineno = self.lineno_getter() # <<<<<<<<<<<<<< * event._module = self.module_getter() * event._source = self.source_getter() */ - __Pyx_TraceLine(367,35,0,__PYX_ERR(0, 367, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error) + __Pyx_TraceLine(370,35,0,__PYX_ERR(0, 370, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_lineno_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_lineno); @@ -11619,15 +10918,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_lineno = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":368 + /* "hunter/_event.pyx":371 * event._function = self.function_getter() * event._lineno = self.lineno_getter() * event._module = self.module_getter() # <<<<<<<<<<<<<< * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() */ - __Pyx_TraceLine(368,40,0,__PYX_ERR(0, 368, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error) + __Pyx_TraceLine(371,40,0,__PYX_ERR(0, 371, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_module_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_module); @@ -11635,15 +10934,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":369 + /* "hunter/_event.pyx":372 * event._lineno = self.lineno_getter() * event._module = self.module_getter() * event._source = self.source_getter() # <<<<<<<<<<<<<< * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() */ - __Pyx_TraceLine(369,45,0,__PYX_ERR(0, 369, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error) + __Pyx_TraceLine(372,45,0,__PYX_ERR(0, 372, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_source_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_source); @@ -11651,15 +10950,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_source = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":370 + /* "hunter/_event.pyx":373 * event._module = self.module_getter() * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() # <<<<<<<<<<<<<< * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() */ - __Pyx_TraceLine(370,50,0,__PYX_ERR(0, 370, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L1_error) + __Pyx_TraceLine(373,50,0,__PYX_ERR(0, 373, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_stdlib_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 373, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_stdlib); @@ -11667,15 +10966,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_stdlib = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":371 + /* "hunter/_event.pyx":374 * event._source = self.source_getter() * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() # <<<<<<<<<<<<<< * event._threadname = self.threadname_getter() * event._instruction = self.instruction_getter() */ - __Pyx_TraceLine(371,55,0,__PYX_ERR(0, 371, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error) + __Pyx_TraceLine(374,55,0,__PYX_ERR(0, 374, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadid_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 374, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_threadidn); @@ -11683,15 +10982,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadidn = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":372 + /* "hunter/_event.pyx":375 * event._stdlib = self.stdlib_getter() * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() # <<<<<<<<<<<<<< * event._instruction = self.instruction_getter() * */ - __Pyx_TraceLine(372,60,0,__PYX_ERR(0, 372, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L1_error) + __Pyx_TraceLine(375,60,0,__PYX_ERR(0, 375, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_threadname_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 375, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_threadname); @@ -11699,15 +10998,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":373 + /* "hunter/_event.pyx":376 * event._threadidn = self.threadid_getter() * event._threadname = self.threadname_getter() * event._instruction = self.instruction_getter() # <<<<<<<<<<<<<< * * if value_filter: */ - __Pyx_TraceLine(373,65,0,__PYX_ERR(0, 373, __pyx_L1_error)) - __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 373, __pyx_L1_error) + __Pyx_TraceLine(376,65,0,__PYX_ERR(0, 376, __pyx_L1_error)) + __pyx_t_2 = __pyx_f_6hunter_6_event_5Event_instruction_getter(__pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_instruction); @@ -11715,36 +11014,36 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_instruction = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":375 + /* "hunter/_event.pyx":378 * event._instruction = self.instruction_getter() * * if value_filter: # <<<<<<<<<<<<<< * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} */ - __Pyx_TraceLine(375,67,0,__PYX_ERR(0, 375, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_value_filter); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 375, __pyx_L1_error) + __Pyx_TraceLine(378,67,0,__PYX_ERR(0, 378, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_value_filter); if (unlikely((__pyx_t_3 < 0))) __PYX_ERR(0, 378, __pyx_L1_error) if (__pyx_t_3) { - /* "hunter/_event.pyx":376 + /* "hunter/_event.pyx":379 * * if value_filter: * event._globals = {key: value_filter(value) for key, value in self.globals.items()} # <<<<<<<<<<<<<< * event._locals = {key: value_filter(value) for key, value in self.locals.items()} * event.arg = value_filter(self.arg) */ - __Pyx_TraceLine(376,70,0,__PYX_ERR(0, 376, __pyx_L1_error)) + __Pyx_TraceLine(379,70,0,__PYX_ERR(0, 379, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 376, __pyx_L6_error) + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 379, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 376, __pyx_L6_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_globals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 379, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_7); if (unlikely(__pyx_t_7 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items"); - __PYX_ERR(0, 376, __pyx_L6_error) + __PYX_ERR(0, 379, __pyx_L6_error) } - __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 376, __pyx_L6_error) + __pyx_t_8 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_5), (&__pyx_t_6)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 379, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_1); @@ -11753,7 +11052,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e while (1) { __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_5, &__pyx_t_4, &__pyx_t_8, &__pyx_t_7, NULL, __pyx_t_6); if (unlikely(__pyx_t_9 == 0)) break; - if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 376, __pyx_L6_error) + if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 379, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_7genexpr__pyx_v_key, __pyx_t_8); @@ -11780,10 +11079,10 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 376, __pyx_L6_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 379, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_7); } - if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_7genexpr__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 376, __pyx_L6_error) + if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_7genexpr__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 379, __pyx_L6_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11802,25 +11101,25 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":377 + /* "hunter/_event.pyx":380 * if value_filter: * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} # <<<<<<<<<<<<<< * event.arg = value_filter(self.arg) * else: */ - __Pyx_TraceLine(377,84,0,__PYX_ERR(0, 377, __pyx_L1_error)) + __Pyx_TraceLine(380,84,0,__PYX_ERR(0, 380, __pyx_L1_error)) { /* enter inner scope */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 377, __pyx_L12_error) + __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 380, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 377, __pyx_L12_error) + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_mstate_global->__pyx_n_u_locals); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 380, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_7); if (unlikely(__pyx_t_7 == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "items"); - __PYX_ERR(0, 377, __pyx_L12_error) + __PYX_ERR(0, 380, __pyx_L12_error) } - __pyx_t_10 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_4), (&__pyx_t_6)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 377, __pyx_L12_error) + __pyx_t_10 = __Pyx_dict_iterator(__pyx_t_7, 0, __pyx_mstate_global->__pyx_n_u_items, (&__pyx_t_4), (&__pyx_t_6)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 380, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_1); @@ -11829,7 +11128,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e while (1) { __pyx_t_9 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_4, &__pyx_t_5, &__pyx_t_10, &__pyx_t_7, NULL, __pyx_t_6); if (unlikely(__pyx_t_9 == 0)) break; - if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 377, __pyx_L12_error) + if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 380, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GOTREF(__pyx_t_7); __Pyx_XDECREF_SET(__pyx_8genexpr1__pyx_v_key, __pyx_t_10); @@ -11856,10 +11155,10 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_7 = __Pyx_PyObject_FastCall(__pyx_t_8, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 377, __pyx_L12_error) + if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 380, __pyx_L12_error) __Pyx_GOTREF(__pyx_t_7); } - if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 377, __pyx_L12_error) + if (unlikely(PyDict_SetItem(__pyx_t_2, (PyObject*)__pyx_8genexpr1__pyx_v_key, (PyObject*)__pyx_t_7))) __PYX_ERR(0, 380, __pyx_L12_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11878,14 +11177,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":378 + /* "hunter/_event.pyx":381 * event._globals = {key: value_filter(value) for key, value in self.globals.items()} * event._locals = {key: value_filter(value) for key, value in self.locals.items()} * event.arg = value_filter(self.arg) # <<<<<<<<<<<<<< * else: * event._globals = {} */ - __Pyx_TraceLine(378,99,0,__PYX_ERR(0, 378, __pyx_L1_error)) + __Pyx_TraceLine(381,99,0,__PYX_ERR(0, 381, __pyx_L1_error)) __pyx_t_1 = NULL; __Pyx_INCREF(__pyx_v_value_filter); __pyx_t_7 = __pyx_v_value_filter; @@ -11906,7 +11205,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+__pyx_t_11, (2-__pyx_t_11) | (__pyx_t_11*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 378, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 381, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_GIVEREF(__pyx_t_2); @@ -11915,7 +11214,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":375 + /* "hunter/_event.pyx":378 * event._instruction = self.instruction_getter() * * if value_filter: # <<<<<<<<<<<<<< @@ -11925,16 +11224,16 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e goto __pyx_L3; } - /* "hunter/_event.pyx":380 + /* "hunter/_event.pyx":383 * event.arg = value_filter(self.arg) * else: * event._globals = {} # <<<<<<<<<<<<<< * event._locals = {} * event.arg = None */ - __Pyx_TraceLine(380,102,0,__PYX_ERR(0, 380, __pyx_L1_error)) + __Pyx_TraceLine(383,102,0,__PYX_ERR(0, 383, __pyx_L1_error)) /*else*/ { - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 380, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 383, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_globals); @@ -11942,15 +11241,15 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":381 + /* "hunter/_event.pyx":384 * else: * event._globals = {} * event._locals = {} # <<<<<<<<<<<<<< * event.arg = None * */ - __Pyx_TraceLine(381,107,0,__PYX_ERR(0, 381, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 381, __pyx_L1_error) + __Pyx_TraceLine(384,107,0,__PYX_ERR(0, 384, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 384, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __Pyx_GOTREF(__pyx_v_event->_locals); @@ -11958,14 +11257,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":382 + /* "hunter/_event.pyx":385 * event._globals = {} * event._locals = {} * event.arg = None # <<<<<<<<<<<<<< * * event.builtin = self.builtin */ - __Pyx_TraceLine(382,108,0,__PYX_ERR(0, 382, __pyx_L1_error)) + __Pyx_TraceLine(385,108,0,__PYX_ERR(0, 385, __pyx_L1_error)) __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(__pyx_v_event->arg); @@ -11974,14 +11273,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e } __pyx_L3:; - /* "hunter/_event.pyx":384 + /* "hunter/_event.pyx":387 * event.arg = None * * event.builtin = self.builtin # <<<<<<<<<<<<<< * event.calls = self.calls * event.depth = self.depth */ - __Pyx_TraceLine(384,114,0,__PYX_ERR(0, 384, __pyx_L1_error)) + __Pyx_TraceLine(387,114,0,__PYX_ERR(0, 387, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->builtin; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -11990,46 +11289,46 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->builtin = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":385 + /* "hunter/_event.pyx":388 * * event.builtin = self.builtin * event.calls = self.calls # <<<<<<<<<<<<<< * event.depth = self.depth * event.detached = True */ - __Pyx_TraceLine(385,118,0,__PYX_ERR(0, 385, __pyx_L1_error)) + __Pyx_TraceLine(388,118,0,__PYX_ERR(0, 388, __pyx_L1_error)) __pyx_t_6 = __pyx_v_self->calls; __pyx_v_event->calls = __pyx_t_6; - /* "hunter/_event.pyx":386 + /* "hunter/_event.pyx":389 * event.builtin = self.builtin * event.calls = self.calls * event.depth = self.depth # <<<<<<<<<<<<<< * event.detached = True * event.kind = self.kind */ - __Pyx_TraceLine(386,122,0,__PYX_ERR(0, 386, __pyx_L1_error)) + __Pyx_TraceLine(389,122,0,__PYX_ERR(0, 389, __pyx_L1_error)) __pyx_t_6 = __pyx_v_self->depth; __pyx_v_event->depth = __pyx_t_6; - /* "hunter/_event.pyx":387 + /* "hunter/_event.pyx":390 * event.calls = self.calls * event.depth = self.depth * event.detached = True # <<<<<<<<<<<<<< * event.kind = self.kind * event.threading_support = self.threading_support */ - __Pyx_TraceLine(387,123,0,__PYX_ERR(0, 387, __pyx_L1_error)) + __Pyx_TraceLine(390,123,0,__PYX_ERR(0, 390, __pyx_L1_error)) __pyx_v_event->detached = 1; - /* "hunter/_event.pyx":388 + /* "hunter/_event.pyx":391 * event.depth = self.depth * event.detached = True * event.kind = self.kind # <<<<<<<<<<<<<< * event.threading_support = self.threading_support * */ - __Pyx_TraceLine(388,129,0,__PYX_ERR(0, 388, __pyx_L1_error)) + __Pyx_TraceLine(391,129,0,__PYX_ERR(0, 391, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->kind; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12038,32 +11337,32 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->kind = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":389 + /* "hunter/_event.pyx":392 * event.detached = True * event.kind = self.kind * event.threading_support = self.threading_support # <<<<<<<<<<<<<< * * return event */ - __Pyx_TraceLine(389,133,0,__PYX_ERR(0, 389, __pyx_L1_error)) + __Pyx_TraceLine(392,133,0,__PYX_ERR(0, 392, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->threading_support; __pyx_v_event->threading_support = __pyx_t_3; - /* "hunter/_event.pyx":391 + /* "hunter/_event.pyx":394 * event.threading_support = self.threading_support * * return event # <<<<<<<<<<<<<< * * cdef inline Event fast_clone(Event self): */ - __Pyx_TraceLine(391,134,0,__PYX_ERR(0, 391, __pyx_L1_error)) + __Pyx_TraceLine(394,134,0,__PYX_ERR(0, 394, __pyx_L1_error)) __Pyx_XDECREF((PyObject *)__pyx_r); __Pyx_INCREF((PyObject *)__pyx_v_event); __pyx_r = __pyx_v_event; - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 134, 0, __PYX_ERR(0, 391, __pyx_L1_error)); + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 134, 0, __PYX_ERR(0, 394, __pyx_L1_error)); goto __pyx_L0; - /* "hunter/_event.pyx":359 + /* "hunter/_event.pyx":362 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< @@ -12082,7 +11381,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 359, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 362, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._event.fast_detach", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; @@ -12098,7 +11397,7 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e return __pyx_r; } -/* "hunter/_event.pyx":393 +/* "hunter/_event.pyx":396 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< @@ -12118,19 +11417,19 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[45])) + __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])) __Pyx_RefNannySetupContext("fast_clone", 0); - __Pyx_TraceStartFunc("fast_clone", __pyx_f[0], 393, 0, 0, 0, __PYX_ERR(0, 393, __pyx_L1_error)); + __Pyx_TraceStartFunc("fast_clone", __pyx_f[0], 396, 0, 0, 0, __PYX_ERR(0, 396, __pyx_L1_error)); - /* "hunter/_event.pyx":394 + /* "hunter/_event.pyx":397 * * cdef inline Event fast_clone(Event self): * event = Event.__new__(Event) # <<<<<<<<<<<<<< * event.arg = self.arg * event.builtin = self.builtin */ - __Pyx_TraceLine(394,5,0,__PYX_ERR(0, 394, __pyx_L1_error)) - __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 394, __pyx_L1_error) + __Pyx_TraceLine(397,5,0,__PYX_ERR(0, 397, __pyx_L1_error)) + __pyx_t_1 = ((PyObject *)__pyx_tp_new_6hunter_6_event_Event(((PyTypeObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event), __pyx_mstate_global->__pyx_empty_tuple, NULL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 397, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); __pyx_t_2 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_2); @@ -12138,14 +11437,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event = ((struct __pyx_obj_6hunter_6_event_Event *)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":395 + /* "hunter/_event.pyx":398 * cdef inline Event fast_clone(Event self): * event = Event.__new__(Event) * event.arg = self.arg # <<<<<<<<<<<<<< * event.builtin = self.builtin * event.calls = self.calls */ - __Pyx_TraceLine(395,10,0,__PYX_ERR(0, 395, __pyx_L1_error)) + __Pyx_TraceLine(398,10,0,__PYX_ERR(0, 398, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->arg; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12154,14 +11453,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->arg = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":396 + /* "hunter/_event.pyx":399 * event = Event.__new__(Event) * event.arg = self.arg * event.builtin = self.builtin # <<<<<<<<<<<<<< * event.calls = self.calls * event.depth = self.depth */ - __Pyx_TraceLine(396,14,0,__PYX_ERR(0, 396, __pyx_L1_error)) + __Pyx_TraceLine(399,14,0,__PYX_ERR(0, 399, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->builtin; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12170,46 +11469,46 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->builtin = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":397 + /* "hunter/_event.pyx":400 * event.arg = self.arg * event.builtin = self.builtin * event.calls = self.calls # <<<<<<<<<<<<<< * event.depth = self.depth * event.detached = False */ - __Pyx_TraceLine(397,18,0,__PYX_ERR(0, 397, __pyx_L1_error)) + __Pyx_TraceLine(400,18,0,__PYX_ERR(0, 400, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->calls; __pyx_v_event->calls = __pyx_t_3; - /* "hunter/_event.pyx":398 + /* "hunter/_event.pyx":401 * event.builtin = self.builtin * event.calls = self.calls * event.depth = self.depth # <<<<<<<<<<<<<< * event.detached = False * event.frame = self.frame */ - __Pyx_TraceLine(398,22,0,__PYX_ERR(0, 398, __pyx_L1_error)) + __Pyx_TraceLine(401,22,0,__PYX_ERR(0, 401, __pyx_L1_error)) __pyx_t_3 = __pyx_v_self->depth; __pyx_v_event->depth = __pyx_t_3; - /* "hunter/_event.pyx":399 + /* "hunter/_event.pyx":402 * event.calls = self.calls * event.depth = self.depth * event.detached = False # <<<<<<<<<<<<<< * event.frame = self.frame * event.kind = self.kind */ - __Pyx_TraceLine(399,23,0,__PYX_ERR(0, 399, __pyx_L1_error)) + __Pyx_TraceLine(402,23,0,__PYX_ERR(0, 402, __pyx_L1_error)) __pyx_v_event->detached = 0; - /* "hunter/_event.pyx":400 + /* "hunter/_event.pyx":403 * event.depth = self.depth * event.detached = False * event.frame = self.frame # <<<<<<<<<<<<<< * event.kind = self.kind * event.threading_support = self.threading_support */ - __Pyx_TraceLine(400,29,0,__PYX_ERR(0, 400, __pyx_L1_error)) + __Pyx_TraceLine(403,29,0,__PYX_ERR(0, 403, __pyx_L1_error)) __pyx_t_2 = ((PyObject *)__pyx_v_self->frame); __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12218,14 +11517,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->frame = ((FrameType)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":401 + /* "hunter/_event.pyx":404 * event.detached = False * event.frame = self.frame * event.kind = self.kind # <<<<<<<<<<<<<< * event.threading_support = self.threading_support * event._code = self._code */ - __Pyx_TraceLine(401,33,0,__PYX_ERR(0, 401, __pyx_L1_error)) + __Pyx_TraceLine(404,33,0,__PYX_ERR(0, 404, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->kind; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12234,25 +11533,25 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->kind = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":402 + /* "hunter/_event.pyx":405 * event.frame = self.frame * event.kind = self.kind * event.threading_support = self.threading_support # <<<<<<<<<<<<<< * event._code = self._code * event._filename = self._filename */ - __Pyx_TraceLine(402,37,0,__PYX_ERR(0, 402, __pyx_L1_error)) + __Pyx_TraceLine(405,37,0,__PYX_ERR(0, 405, __pyx_L1_error)) __pyx_t_4 = __pyx_v_self->threading_support; __pyx_v_event->threading_support = __pyx_t_4; - /* "hunter/_event.pyx":403 + /* "hunter/_event.pyx":406 * event.kind = self.kind * event.threading_support = self.threading_support * event._code = self._code # <<<<<<<<<<<<<< * event._filename = self._filename * event._fullsource = self._fullsource */ - __Pyx_TraceLine(403,41,0,__PYX_ERR(0, 403, __pyx_L1_error)) + __Pyx_TraceLine(406,41,0,__PYX_ERR(0, 406, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_code; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12261,14 +11560,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_code = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":404 + /* "hunter/_event.pyx":407 * event.threading_support = self.threading_support * event._code = self._code * event._filename = self._filename # <<<<<<<<<<<<<< * event._fullsource = self._fullsource * event._function_object = self._function_object */ - __Pyx_TraceLine(404,45,0,__PYX_ERR(0, 404, __pyx_L1_error)) + __Pyx_TraceLine(407,45,0,__PYX_ERR(0, 407, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_filename; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12277,14 +11576,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_filename = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":405 + /* "hunter/_event.pyx":408 * event._code = self._code * event._filename = self._filename * event._fullsource = self._fullsource # <<<<<<<<<<<<<< * event._function_object = self._function_object * event._function = self._function */ - __Pyx_TraceLine(405,49,0,__PYX_ERR(0, 405, __pyx_L1_error)) + __Pyx_TraceLine(408,49,0,__PYX_ERR(0, 408, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_fullsource; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12293,14 +11592,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_fullsource = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":406 + /* "hunter/_event.pyx":409 * event._filename = self._filename * event._fullsource = self._fullsource * event._function_object = self._function_object # <<<<<<<<<<<<<< * event._function = self._function * event._globals = self._globals */ - __Pyx_TraceLine(406,53,0,__PYX_ERR(0, 406, __pyx_L1_error)) + __Pyx_TraceLine(409,53,0,__PYX_ERR(0, 409, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function_object; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12309,14 +11608,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function_object = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":407 + /* "hunter/_event.pyx":410 * event._fullsource = self._fullsource * event._function_object = self._function_object * event._function = self._function # <<<<<<<<<<<<<< * event._globals = self._globals * event._lineno = self._lineno */ - __Pyx_TraceLine(407,57,0,__PYX_ERR(0, 407, __pyx_L1_error)) + __Pyx_TraceLine(410,57,0,__PYX_ERR(0, 410, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_function; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12325,14 +11624,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_function = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":408 + /* "hunter/_event.pyx":411 * event._function_object = self._function_object * event._function = self._function * event._globals = self._globals # <<<<<<<<<<<<<< * event._lineno = self._lineno * event._locals = self._locals */ - __Pyx_TraceLine(408,61,0,__PYX_ERR(0, 408, __pyx_L1_error)) + __Pyx_TraceLine(411,61,0,__PYX_ERR(0, 411, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_globals; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12341,14 +11640,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_globals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":409 + /* "hunter/_event.pyx":412 * event._function = self._function * event._globals = self._globals * event._lineno = self._lineno # <<<<<<<<<<<<<< * event._locals = self._locals * event._module = self._module */ - __Pyx_TraceLine(409,65,0,__PYX_ERR(0, 409, __pyx_L1_error)) + __Pyx_TraceLine(412,65,0,__PYX_ERR(0, 412, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_lineno; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12357,14 +11656,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_lineno = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":410 + /* "hunter/_event.pyx":413 * event._globals = self._globals * event._lineno = self._lineno * event._locals = self._locals # <<<<<<<<<<<<<< * event._module = self._module * event._source = self._source */ - __Pyx_TraceLine(410,69,0,__PYX_ERR(0, 410, __pyx_L1_error)) + __Pyx_TraceLine(413,69,0,__PYX_ERR(0, 413, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_locals; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12373,14 +11672,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_locals = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":411 + /* "hunter/_event.pyx":414 * event._lineno = self._lineno * event._locals = self._locals * event._module = self._module # <<<<<<<<<<<<<< * event._source = self._source * event._stdlib = self._stdlib */ - __Pyx_TraceLine(411,73,0,__PYX_ERR(0, 411, __pyx_L1_error)) + __Pyx_TraceLine(414,73,0,__PYX_ERR(0, 414, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_module; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12389,14 +11688,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_module = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":412 + /* "hunter/_event.pyx":415 * event._locals = self._locals * event._module = self._module * event._source = self._source # <<<<<<<<<<<<<< * event._stdlib = self._stdlib * event._threadidn = self._threadidn */ - __Pyx_TraceLine(412,77,0,__PYX_ERR(0, 412, __pyx_L1_error)) + __Pyx_TraceLine(415,77,0,__PYX_ERR(0, 415, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_source; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12405,14 +11704,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_source = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":413 + /* "hunter/_event.pyx":416 * event._module = self._module * event._source = self._source * event._stdlib = self._stdlib # <<<<<<<<<<<<<< * event._threadidn = self._threadidn * event._threadname = self._threadname */ - __Pyx_TraceLine(413,81,0,__PYX_ERR(0, 413, __pyx_L1_error)) + __Pyx_TraceLine(416,81,0,__PYX_ERR(0, 416, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_stdlib; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12421,14 +11720,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_stdlib = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":414 + /* "hunter/_event.pyx":417 * event._source = self._source * event._stdlib = self._stdlib * event._threadidn = self._threadidn # <<<<<<<<<<<<<< * event._threadname = self._threadname * event._thread = self._thread */ - __Pyx_TraceLine(414,85,0,__PYX_ERR(0, 414, __pyx_L1_error)) + __Pyx_TraceLine(417,85,0,__PYX_ERR(0, 417, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_threadidn; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12437,14 +11736,14 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadidn = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":415 + /* "hunter/_event.pyx":418 * event._stdlib = self._stdlib * event._threadidn = self._threadidn * event._threadname = self._threadname # <<<<<<<<<<<<<< * event._thread = self._thread * event._instruction = self._instruction */ - __Pyx_TraceLine(415,89,0,__PYX_ERR(0, 415, __pyx_L1_error)) + __Pyx_TraceLine(418,89,0,__PYX_ERR(0, 418, __pyx_L1_error)) __pyx_t_2 = __pyx_v_self->_threadname; __Pyx_INCREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); @@ -12453,728 +11752,72 @@ static CYTHON_INLINE struct __pyx_obj_6hunter_6_event_Event *__pyx_f_6hunter_6_e __pyx_v_event->_threadname = __pyx_t_2; __pyx_t_2 = 0; - /* "hunter/_event.pyx":416 + /* "hunter/_event.pyx":419 * event._threadidn = self._threadidn * event._threadname = self._threadname * event._thread = self._thread # <<<<<<<<<<<<<< * event._instruction = self._instruction - * return event -*/ - __Pyx_TraceLine(416,93,0,__PYX_ERR(0, 416, __pyx_L1_error)) - __pyx_t_2 = __pyx_v_self->_thread; - __Pyx_INCREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_GOTREF(__pyx_v_event->_thread); - __Pyx_DECREF(__pyx_v_event->_thread); - __pyx_v_event->_thread = __pyx_t_2; - __pyx_t_2 = 0; - - /* "hunter/_event.pyx":417 - * event._threadname = self._threadname - * event._thread = self._thread - * event._instruction = self._instruction # <<<<<<<<<<<<<< - * return event -*/ - __Pyx_TraceLine(417,97,0,__PYX_ERR(0, 417, __pyx_L1_error)) - __pyx_t_2 = __pyx_v_self->_instruction; - __Pyx_INCREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_GOTREF(__pyx_v_event->_instruction); - __Pyx_DECREF(__pyx_v_event->_instruction); - __pyx_v_event->_instruction = __pyx_t_2; - __pyx_t_2 = 0; - - /* "hunter/_event.pyx":418 - * event._thread = self._thread - * event._instruction = self._instruction - * return event # <<<<<<<<<<<<<< -*/ - __Pyx_TraceLine(418,98,0,__PYX_ERR(0, 418, __pyx_L1_error)) - __Pyx_XDECREF((PyObject *)__pyx_r); - __Pyx_INCREF((PyObject *)__pyx_v_event); - __pyx_r = __pyx_v_event; - __Pyx_TraceReturnValue((PyObject *)__pyx_r, 98, 0, __PYX_ERR(0, 418, __pyx_L1_error)); - goto __pyx_L0; - - /* "hunter/_event.pyx":393 - * return event - * - * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< - * event = Event.__new__(Event) - * event.arg = self.arg -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_TraceException(__pyx_lineno, 0, 0); - #if CYTHON_USE_SYS_MONITORING - __Pyx_TraceExceptionUnwind(0, 0); - #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 393, __pyx_L1_error)); - #endif - __Pyx_AddTraceback("hunter._event.fast_clone", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_event); - __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_PyMonitoring_ExitScope(0); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __pyx_unpickle_Event(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result -*/ - -/* Python wrapper */ -static PyObject *__pyx_pw_6hunter_6_event_4__pyx_unpickle_Event(PyObject *__pyx_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -); /*proto*/ -static PyMethodDef __pyx_mdef_6hunter_6_event_4__pyx_unpickle_Event = {"__pyx_unpickle_Event", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_4__pyx_unpickle_Event, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_6hunter_6_event_4__pyx_unpickle_Event(PyObject *__pyx_self, -#if CYTHON_METH_FASTCALL -PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds -#else -PyObject *__pyx_args, PyObject *__pyx_kwds -#endif -) { - PyObject *__pyx_v___pyx_type = 0; - long __pyx_v___pyx_checksum; - PyObject *__pyx_v___pyx_state = 0; - #if !CYTHON_METH_FASTCALL - CYTHON_UNUSED Py_ssize_t __pyx_nargs; - #endif - CYTHON_UNUSED PyObject *const *__pyx_kwvalues; - PyObject* values[3] = {0,0,0}; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__pyx_unpickle_Event (wrapper)", 0); - #if !CYTHON_METH_FASTCALL - #if CYTHON_ASSUME_SAFE_SIZE - __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); - #else - __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; - #endif - #endif - __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); - { - PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_type,&__pyx_mstate_global->__pyx_n_u_pyx_checksum,&__pyx_mstate_global->__pyx_n_u_pyx_state,0}; - const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(2, 1, __pyx_L3_error) - if (__pyx_kwds_len > 0) { - switch (__pyx_nargs) { - case 3: - values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(2, 1, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 2: - values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(2, 1, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 1: - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 1, __pyx_L3_error) - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "__pyx_unpickle_Event", 0) < 0) __PYX_ERR(2, 1, __pyx_L3_error) - for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Event", 1, 3, 3, i); __PYX_ERR(2, 1, __pyx_L3_error) } - } - } else if (unlikely(__pyx_nargs != 3)) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 1, __pyx_L3_error) - values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(2, 1, __pyx_L3_error) - values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(2, 1, __pyx_L3_error) - } - __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyLong_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(2, 1, __pyx_L3_error) - __pyx_v___pyx_state = values[2]; - } - goto __pyx_L6_skip; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Event", 1, 3, 3, __pyx_nargs); __PYX_ERR(2, 1, __pyx_L3_error) - __pyx_L6_skip:; - goto __pyx_L4_argument_unpacking_done; - __pyx_L3_error:; - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_AddTraceback("hunter._event.__pyx_unpickle_Event", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_6hunter_6_event_3__pyx_unpickle_Event(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); - - /* function exit code */ - for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { - Py_XDECREF(values[__pyx_temp]); - } - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_6hunter_6_event_3__pyx_unpickle_Event(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_v___pyx_PickleError = 0; - PyObject *__pyx_v___pyx_result = 0; - PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarationsFunc - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - size_t __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46])) - __Pyx_RefNannySetupContext("__pyx_unpickle_Event", 0); - __Pyx_TraceStartFunc("__pyx_unpickle_Event", __pyx_f[2], 1, 0, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); - - /* "(tree fragment)":4 - * cdef object __pyx_PickleError - * cdef object __pyx_result - * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): # <<<<<<<<<<<<<< - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum -*/ - __Pyx_TraceLine(4,2,0,__PYX_ERR(2, 4, __pyx_L1_error)) - __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_mstate_global->__pyx_tuple[4], Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "(tree fragment)":5 - * cdef object __pyx_result - * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): - * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum - * __pyx_result = Event.__new__(__pyx_type) -*/ - __Pyx_TraceLine(5,9,0,__PYX_ERR(2, 5, __pyx_L1_error)) - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_PickleError); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_PickleError); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_mstate_global->__pyx_n_u_PickleError) != (0)) __PYX_ERR(2, 5, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __pyx_v___pyx_PickleError = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "(tree fragment)":6 - * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum # <<<<<<<<<<<<<< - * __pyx_result = Event.__new__(__pyx_type) - * if __pyx_state is not None: -*/ - __Pyx_TraceLine(6,14,0,__PYX_ERR(2, 6, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyLong_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyUnicode_Format(__pyx_mstate_global->__pyx_kp_u_Incompatible_checksums_0x_x_vs_0, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_v___pyx_PickleError, __pyx_t_1, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 6, __pyx_L1_error) - - /* "(tree fragment)":4 - * cdef object __pyx_PickleError - * cdef object __pyx_result - * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): # <<<<<<<<<<<<<< - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum -*/ - } - - /* "(tree fragment)":7 - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum - * __pyx_result = Event.__new__(__pyx_type) # <<<<<<<<<<<<<< - * if __pyx_state is not None: - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) -*/ - __Pyx_TraceLine(7,16,0,__PYX_ERR(2, 7, __pyx_L1_error)) - __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event); - __Pyx_INCREF(__pyx_t_3); - __pyx_t_4 = 0; - { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_v___pyx_type}; - __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_new, __pyx_callargs+__pyx_t_4, (2-__pyx_t_4) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - } - __pyx_v___pyx_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "(tree fragment)":8 - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum - * __pyx_result = Event.__new__(__pyx_type) - * if __pyx_state is not None: # <<<<<<<<<<<<<< - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) - * return __pyx_result -*/ - __Pyx_TraceLine(8,23,0,__PYX_ERR(2, 8, __pyx_L1_error)) - __pyx_t_2 = (__pyx_v___pyx_state != Py_None); - if (__pyx_t_2) { - - /* "(tree fragment)":9 - * __pyx_result = Event.__new__(__pyx_type) - * if __pyx_state is not None: - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< - * return __pyx_result - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): -*/ - __Pyx_TraceLine(9,28,0,__PYX_ERR(2, 9, __pyx_L1_error)) - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None) || __Pyx_RaiseUnexpectedTypeError("tuple", __pyx_v___pyx_state))) __PYX_ERR(2, 9, __pyx_L1_error) - __pyx_t_1 = __pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(((struct __pyx_obj_6hunter_6_event_Event *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "(tree fragment)":8 - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum - * __pyx_result = Event.__new__(__pyx_type) - * if __pyx_state is not None: # <<<<<<<<<<<<<< - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) - * return __pyx_result -*/ - } - - /* "(tree fragment)":10 - * if __pyx_state is not None: - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) - * return __pyx_result # <<<<<<<<<<<<<< - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] -*/ - __Pyx_TraceLine(10,29,0,__PYX_ERR(2, 10, __pyx_L1_error)) - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v___pyx_result); - __pyx_r = __pyx_v___pyx_result; - __Pyx_TraceReturnValue(__pyx_r, 29, 0, __PYX_ERR(2, 10, __pyx_L1_error)); - goto __pyx_L0; - - /* "(tree fragment)":1 - * def __pyx_unpickle_Event(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result -*/ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_TraceException(__pyx_lineno, 0, 0); - #if CYTHON_USE_SYS_MONITORING - __Pyx_TraceExceptionUnwind(0, 0); - #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 1, __pyx_L1_error)); - #endif - __Pyx_AddTraceback("hunter._event.__pyx_unpickle_Event", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v___pyx_PickleError); - __Pyx_XDECREF(__pyx_v___pyx_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_PyMonitoring_ExitScope(0); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":11 - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) - * return __pyx_result - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): + * return event */ + __Pyx_TraceLine(419,93,0,__PYX_ERR(0, 419, __pyx_L1_error)) + __pyx_t_2 = __pyx_v_self->_thread; + __Pyx_INCREF(__pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __Pyx_GOTREF(__pyx_v_event->_thread); + __Pyx_DECREF(__pyx_v_event->_thread); + __pyx_v_event->_thread = __pyx_t_2; + __pyx_t_2 = 0; -static PyObject *__pyx_f_6hunter_6_event___pyx_unpickle_Event__set_state(struct __pyx_obj_6hunter_6_event_Event *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_TraceDeclarationsFunc - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - size_t __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[47])) - __Pyx_RefNannySetupContext("__pyx_unpickle_Event__set_state", 0); - __Pyx_TraceStartFunc("__pyx_unpickle_Event__set_state", __pyx_f[2], 11, 0, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); - - /* "(tree fragment)":12 - * return __pyx_result - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] # <<<<<<<<<<<<<< - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): - * __pyx_result.__dict__.update(__pyx_state[23]) -*/ - __Pyx_TraceLine(12,3,0,__PYX_ERR(2, 12, __pyx_L1_error)) - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_code); - __Pyx_DECREF(__pyx_v___pyx_result->_code); - __pyx_v___pyx_result->_code = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_filename); - __Pyx_DECREF(__pyx_v___pyx_result->_filename); - __pyx_v___pyx_result->_filename = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 2, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_fullsource); - __Pyx_DECREF(__pyx_v___pyx_result->_fullsource); - __pyx_v___pyx_result->_fullsource = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 3, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_function); - __Pyx_DECREF(__pyx_v___pyx_result->_function); - __pyx_v___pyx_result->_function = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 4, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_function_object); - __Pyx_DECREF(__pyx_v___pyx_result->_function_object); - __pyx_v___pyx_result->_function_object = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 5, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_globals); - __Pyx_DECREF(__pyx_v___pyx_result->_globals); - __pyx_v___pyx_result->_globals = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 6, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_instruction); - __Pyx_DECREF(__pyx_v___pyx_result->_instruction); - __pyx_v___pyx_result->_instruction = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 7, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_lineno); - __Pyx_DECREF(__pyx_v___pyx_result->_lineno); - __pyx_v___pyx_result->_lineno = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 8, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_locals); - __Pyx_DECREF(__pyx_v___pyx_result->_locals); - __pyx_v___pyx_result->_locals = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 9, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_module); - __Pyx_DECREF(__pyx_v___pyx_result->_module); - __pyx_v___pyx_result->_module = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 10, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_source); - __Pyx_DECREF(__pyx_v___pyx_result->_source); - __pyx_v___pyx_result->_source = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 11, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_stdlib); - __Pyx_DECREF(__pyx_v___pyx_result->_stdlib); - __pyx_v___pyx_result->_stdlib = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 12, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_thread); - __Pyx_DECREF(__pyx_v___pyx_result->_thread); - __pyx_v___pyx_result->_thread = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 13, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_threadidn); - __Pyx_DECREF(__pyx_v___pyx_result->_threadidn); - __pyx_v___pyx_result->_threadidn = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 14, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->_threadname); - __Pyx_DECREF(__pyx_v___pyx_result->_threadname); - __pyx_v___pyx_result->_threadname = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 15, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->arg); - __Pyx_DECREF(__pyx_v___pyx_result->arg); - __pyx_v___pyx_result->arg = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 16, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->builtin); - __Pyx_DECREF(__pyx_v___pyx_result->builtin); - __pyx_v___pyx_result->builtin = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 17, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v___pyx_result->calls = __pyx_t_2; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 18, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyLong_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v___pyx_result->depth = __pyx_t_2; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 19, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v___pyx_result->detached = __pyx_t_3; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 20, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->frame); - __Pyx_DECREF(__pyx_v___pyx_result->frame); - __pyx_v___pyx_result->frame = ((FrameType)__pyx_t_1); - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 21, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyUnicode_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_1))) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->kind); - __Pyx_DECREF(__pyx_v___pyx_result->kind); - __pyx_v___pyx_result->kind = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 22, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v___pyx_result->threading_support = __pyx_t_3; - - /* "(tree fragment)":13 - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< - * __pyx_result.__dict__.update(__pyx_state[23]) -*/ - __Pyx_TraceLine(13,119,0,__PYX_ERR(2, 13, __pyx_L1_error)) - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(2, 13, __pyx_L1_error) - } - __pyx_t_4 = __Pyx_PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(2, 13, __pyx_L1_error) - __pyx_t_5 = (__pyx_t_4 > 23); - if (__pyx_t_5) { - } else { - __pyx_t_3 = __pyx_t_5; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_5 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(2, 13, __pyx_L1_error) - __pyx_t_3 = __pyx_t_5; - __pyx_L4_bool_binop_done:; - if (__pyx_t_3) { - - /* "(tree fragment)":14 - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): - * __pyx_result.__dict__.update(__pyx_state[23]) # <<<<<<<<<<<<<< + /* "hunter/_event.pyx":420 + * event._threadname = self._threadname + * event._thread = self._thread + * event._instruction = self._instruction # <<<<<<<<<<<<<< + * return event */ - __Pyx_TraceLine(14,128,0,__PYX_ERR(2, 14, __pyx_L1_error)) - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_mstate_global->__pyx_n_u_dict); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = __pyx_t_7; - __Pyx_INCREF(__pyx_t_6); - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 14, __pyx_L1_error) - } - __pyx_t_8 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 23, long, 1, __Pyx_PyLong_From_long, 0, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = 0; - { - PyObject *__pyx_callargs[2] = {__pyx_t_6, __pyx_t_8}; - __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_update, __pyx_callargs+__pyx_t_9, (2-__pyx_t_9) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_TraceLine(420,97,0,__PYX_ERR(0, 420, __pyx_L1_error)) + __pyx_t_2 = __pyx_v_self->_instruction; + __Pyx_INCREF(__pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __Pyx_GOTREF(__pyx_v_event->_instruction); + __Pyx_DECREF(__pyx_v_event->_instruction); + __pyx_v_event->_instruction = __pyx_t_2; + __pyx_t_2 = 0; - /* "(tree fragment)":13 - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< - * __pyx_result.__dict__.update(__pyx_state[23]) + /* "hunter/_event.pyx":421 + * event._thread = self._thread + * event._instruction = self._instruction + * return event # <<<<<<<<<<<<<< */ - } + __Pyx_TraceLine(421,98,0,__PYX_ERR(0, 421, __pyx_L1_error)) + __Pyx_XDECREF((PyObject *)__pyx_r); + __Pyx_INCREF((PyObject *)__pyx_v_event); + __pyx_r = __pyx_v_event; + __Pyx_TraceReturnValue((PyObject *)__pyx_r, 98, 0, __PYX_ERR(0, 421, __pyx_L1_error)); + goto __pyx_L0; - /* "(tree fragment)":11 - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) - * return __pyx_result - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): + /* "hunter/_event.pyx":396 + * return event + * + * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< + * event = Event.__new__(Event) + * event.arg = self.arg */ /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); - goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); + __Pyx_XDECREF(__pyx_t_2); __Pyx_TraceException(__pyx_lineno, 0, 0); #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 11, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(0, 396, __pyx_L1_error)); #endif - __Pyx_AddTraceback("hunter._event.__pyx_unpickle_Event__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("hunter._event.fast_clone", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); + __Pyx_XDECREF((PyObject *)__pyx_v_event); + __Pyx_XGIVEREF((PyObject *)__pyx_r); __Pyx_PyMonitoring_ExitScope(0); __Pyx_RefNannyFinishContext(); return __pyx_r; @@ -13498,8 +12141,6 @@ static PyObject *__pyx_getprop_6hunter_6_event_5Event_builtin(PyObject *o, CYTHO static PyMethodDef __pyx_methods_6hunter_6_event_Event[] = { {"detach", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_7detach, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {"clone", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_9clone, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__reduce_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, - {"__setstate_cython__", (PyCFunction)(void(*)(void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}, {0, 0, 0, 0} }; @@ -13927,35 +12568,34 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __pyx_vtable_6hunter_6_event_Event.threadname_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_threadname_getter; __pyx_vtable_6hunter_6_event_Event.instruction_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_instruction_getter; #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event_Event_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event)) __PYX_ERR(0, 44, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event_Event_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event_Event_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event)) __PYX_ERR(0, 46, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event_Event_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = &__pyx_type_6hunter_6_event_Event; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_getattro == PyObject_GenericGetAttr)) { __pyx_mstate->__pyx_ptype_6hunter_6_event_Event->tp_getattro = PyObject_GenericGetAttr; } #endif - if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event, __pyx_vtabptr_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) - if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Event, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 44, __pyx_L1_error) + if (__Pyx_SetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event, __pyx_vtabptr_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + if (__Pyx_MergeVtables(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Event, (PyObject *) __pyx_mstate->__pyx_ptype_6hunter_6_event_Event) < 0) __PYX_ERR(0, 46, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 344, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 344, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines)) __PYX_ERR(0, 347, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines_spec, __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 347, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines = &__pyx_type_6hunter_6_event___pyx_scope_struct__yield_lines; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 344, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines) < 0) __PYX_ERR(0, 347, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_dictoffset && __pyx_mstate->__pyx_ptype_6hunter_6_event___pyx_scope_struct__yield_lines->tp_getattro == PyObject_GenericGetAttr)) { @@ -13980,7 +12620,7 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); /*--- Type import code ---*/ - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 @@ -13990,7 +12630,7 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { #else sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -14304,329 +12944,330 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); (void)__Pyx_modinit_function_import_code(__pyx_mstate); /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 2, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__event", __pyx_f[0], 1, 0, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); - /* "hunter/_event.pyx":2 - * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True + /* "hunter/_event.pyx":4 + * cimport cython + * * from functools import partial # <<<<<<<<<<<<<< * from linecache import getline * from linecache import getlines */ - __Pyx_TraceLine(2,5,0,__PYX_ERR(0, 2, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) + __Pyx_TraceLine(4,4,0,__PYX_ERR(0, 4, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_functools, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_partial); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_partial, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_partial, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":3 - * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True + /* "hunter/_event.pyx":5 + * * from functools import partial * from linecache import getline # <<<<<<<<<<<<<< * from linecache import getlines * from os.path import basename */ - __Pyx_TraceLine(3,8,0,__PYX_ERR(0, 3, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) + __Pyx_TraceLine(5,7,0,__PYX_ERR(0, 5, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_getline); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getline, __pyx_t_3) < 0) __PYX_ERR(0, 3, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getline, __pyx_t_3) < 0) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":4 + /* "hunter/_event.pyx":6 * from functools import partial * from linecache import getline * from linecache import getlines # <<<<<<<<<<<<<< * from os.path import basename * from os.path import exists */ - __Pyx_TraceLine(4,11,0,__PYX_ERR(0, 4, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) + __Pyx_TraceLine(6,10,0,__PYX_ERR(0, 6, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_linecache, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_getlines); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getlines, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getlines, __pyx_t_2) < 0) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":5 + /* "hunter/_event.pyx":7 * from linecache import getline * from linecache import getlines * from os.path import basename # <<<<<<<<<<<<<< * from os.path import exists * from os.path import splitext */ - __Pyx_TraceLine(5,14,0,__PYX_ERR(0, 5, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __Pyx_TraceLine(7,13,0,__PYX_ERR(0, 7, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_basename); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_basename, __pyx_t_3) < 0) __PYX_ERR(0, 5, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_basename, __pyx_t_3) < 0) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":6 + /* "hunter/_event.pyx":8 * from linecache import getlines * from os.path import basename * from os.path import exists # <<<<<<<<<<<<<< * from os.path import splitext * from threading import current_thread */ - __Pyx_TraceLine(6,17,0,__PYX_ERR(0, 6, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) + __Pyx_TraceLine(8,16,0,__PYX_ERR(0, 8, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_exists); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_exists, __pyx_t_2) < 0) __PYX_ERR(0, 6, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_exists, __pyx_t_2) < 0) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":7 + /* "hunter/_event.pyx":9 * from os.path import basename * from os.path import exists * from os.path import splitext # <<<<<<<<<<<<<< * from threading import current_thread * from tokenize import TokenError */ - __Pyx_TraceLine(7,20,0,__PYX_ERR(0, 7, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) + __Pyx_TraceLine(9,19,0,__PYX_ERR(0, 9, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_os_path, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_splitext); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_splitext, __pyx_t_3) < 0) __PYX_ERR(0, 7, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_splitext, __pyx_t_3) < 0) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":8 + /* "hunter/_event.pyx":10 * from os.path import exists * from os.path import splitext * from threading import current_thread # <<<<<<<<<<<<<< * from tokenize import TokenError * from tokenize import generate_tokens */ - __Pyx_TraceLine(8,23,0,__PYX_ERR(0, 8, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) + __Pyx_TraceLine(10,22,0,__PYX_ERR(0, 10, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_threading, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_threading, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_current_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_current_thread, __pyx_t_2) < 0) __PYX_ERR(0, 8, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_current_thread, __pyx_t_2) < 0) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":9 + /* "hunter/_event.pyx":11 * from os.path import splitext * from threading import current_thread * from tokenize import TokenError # <<<<<<<<<<<<<< * from tokenize import generate_tokens * */ - __Pyx_TraceLine(9,26,0,__PYX_ERR(0, 9, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) + __Pyx_TraceLine(11,25,0,__PYX_ERR(0, 11, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_TokenError); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_TokenError, __pyx_t_3) < 0) __PYX_ERR(0, 9, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_TokenError, __pyx_t_3) < 0) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":10 + /* "hunter/_event.pyx":12 * from threading import current_thread * from tokenize import TokenError * from tokenize import generate_tokens # <<<<<<<<<<<<<< * * from cpython.pythread cimport PyThread_get_thread_ident */ - __Pyx_TraceLine(10,29,0,__PYX_ERR(0, 10, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) + __Pyx_TraceLine(12,28,0,__PYX_ERR(0, 12, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 10, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_tokenize, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_generate_tokens); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_generate_tokens, __pyx_t_2) < 0) __PYX_ERR(0, 10, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_generate_tokens, __pyx_t_2) < 0) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":15 + /* "hunter/_event.pyx":17 * from cpython.ref cimport PyObject * * from .const import SITE_PACKAGES_PATHS # <<<<<<<<<<<<<< * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE */ - __Pyx_TraceLine(15,35,0,__PYX_ERR(0, 15, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + __Pyx_TraceLine(17,33,0,__PYX_ERR(0, 17, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS, __pyx_t_3) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SITE_PACKAGES_PATHS, __pyx_t_3) < 0) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":16 + /* "hunter/_event.pyx":18 * * from .const import SITE_PACKAGES_PATHS * from .const import SYS_PREFIX_PATHS # <<<<<<<<<<<<<< * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE */ - __Pyx_TraceLine(16,39,0,__PYX_ERR(0, 16, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) + __Pyx_TraceLine(18,36,0,__PYX_ERR(0, 18, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_const, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS, __pyx_t_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_SYS_PREFIX_PATHS, __pyx_t_2) < 0) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":17 + /* "hunter/_event.pyx":19 * from .const import SITE_PACKAGES_PATHS * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE # <<<<<<<<<<<<<< * from .util import LEADING_WHITESPACE_RE * from .util import get_func_in_mro */ - __Pyx_TraceLine(17,42,0,__PYX_ERR(0, 17, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error) + __Pyx_TraceLine(19,39,0,__PYX_ERR(0, 19, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 17, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE, __pyx_t_3) < 0) __PYX_ERR(0, 17, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_CYTHON_SUFFIX_RE, __pyx_t_3) < 0) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":18 + /* "hunter/_event.pyx":20 * from .const import SYS_PREFIX_PATHS * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE # <<<<<<<<<<<<<< * from .util import get_func_in_mro * from .util import get_main_thread */ - __Pyx_TraceLine(18,45,0,__PYX_ERR(0, 18, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error) + __Pyx_TraceLine(20,42,0,__PYX_ERR(0, 20, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 18, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE, __pyx_t_2) < 0) __PYX_ERR(0, 18, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LEADING_WHITESPACE_RE, __pyx_t_2) < 0) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":19 + /* "hunter/_event.pyx":21 * from .util import CYTHON_SUFFIX_RE * from .util import LEADING_WHITESPACE_RE * from .util import get_func_in_mro # <<<<<<<<<<<<<< * from .util import get_main_thread * from .util import if_same_code */ - __Pyx_TraceLine(19,48,0,__PYX_ERR(0, 19, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) + __Pyx_TraceLine(21,45,0,__PYX_ERR(0, 21, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 19, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_get_func_in_mro); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_func_in_mro, __pyx_t_3) < 0) __PYX_ERR(0, 19, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_func_in_mro, __pyx_t_3) < 0) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":20 + /* "hunter/_event.pyx":22 * from .util import LEADING_WHITESPACE_RE * from .util import get_func_in_mro * from .util import get_main_thread # <<<<<<<<<<<<<< * from .util import if_same_code * */ - __Pyx_TraceLine(20,51,0,__PYX_ERR(0, 20, __pyx_L1_error)) - __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) + __Pyx_TraceLine(22,48,0,__PYX_ERR(0, 22, __pyx_L1_error)) + __pyx_t_2 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_2, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_get_main_thread); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_main_thread, __pyx_t_2) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_get_main_thread, __pyx_t_2) < 0) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "hunter/_event.pyx":21 + /* "hunter/_event.pyx":23 * from .util import get_func_in_mro * from .util import get_main_thread * from .util import if_same_code # <<<<<<<<<<<<<< * * __all__ = 'Event', */ - __Pyx_TraceLine(21,54,0,__PYX_ERR(0, 21, __pyx_L1_error)) - __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __Pyx_TraceLine(23,51,0,__PYX_ERR(0, 23, __pyx_L1_error)) + __pyx_t_3 = __Pyx_PyList_Pack(1, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_util, __pyx_t_3, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_if_same_code); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_if_same_code, __pyx_t_3) < 0) __PYX_ERR(0, 21, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_if_same_code, __pyx_t_3) < 0) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":23 + /* "hunter/_event.pyx":25 * from .util import if_same_code * * __all__ = 'Event', # <<<<<<<<<<<<<< * * cdef object UNSET = object() */ - __Pyx_TraceLine(23,56,0,__PYX_ERR(0, 23, __pyx_L1_error)) - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[5]) < 0) __PYX_ERR(0, 23, __pyx_L1_error) + __Pyx_TraceLine(25,53,0,__PYX_ERR(0, 25, __pyx_L1_error)) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_all, __pyx_mstate_global->__pyx_tuple[4]) < 0) __PYX_ERR(0, 25, __pyx_L1_error) - /* "hunter/_event.pyx":25 + /* "hunter/_event.pyx":27 * __all__ = 'Event', * * cdef object UNSET = object() # <<<<<<<<<<<<<< * * */ - __Pyx_TraceLine(25,59,0,__PYX_ERR(0, 25, __pyx_L1_error)) + __Pyx_TraceLine(27,56,0,__PYX_ERR(0, 27, __pyx_L1_error)) __pyx_t_3 = NULL; __Pyx_INCREF(__pyx_builtin_object); __pyx_t_4 = __pyx_builtin_object; @@ -14636,7 +13277,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 25, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_XGOTREF(__pyx_v_6hunter_6_event_UNSET); @@ -14644,66 +13285,66 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":28 + /* "hunter/_event.pyx":30 * * * cdef str CALL = 'call' # <<<<<<<<<<<<<< * cdef str EXCEPTION = 'exception' * cdef str LINE = 'line' */ - __Pyx_TraceLine(28,60,0,__PYX_ERR(0, 28, __pyx_L1_error)) + __Pyx_TraceLine(30,57,0,__PYX_ERR(0, 30, __pyx_L1_error)) __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_call); __Pyx_XGOTREF(__pyx_v_6hunter_6_event_CALL); __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_CALL, __pyx_mstate_global->__pyx_n_u_call); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_call); - /* "hunter/_event.pyx":29 + /* "hunter/_event.pyx":31 * * cdef str CALL = 'call' * cdef str EXCEPTION = 'exception' # <<<<<<<<<<<<<< * cdef str LINE = 'line' * cdef str RETURN = 'return' */ - __Pyx_TraceLine(29,62,0,__PYX_ERR(0, 29, __pyx_L1_error)) + __Pyx_TraceLine(31,59,0,__PYX_ERR(0, 31, __pyx_L1_error)) __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_exception); __Pyx_XGOTREF(__pyx_v_6hunter_6_event_EXCEPTION); __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_EXCEPTION, __pyx_mstate_global->__pyx_n_u_exception); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_exception); - /* "hunter/_event.pyx":30 + /* "hunter/_event.pyx":32 * cdef str CALL = 'call' * cdef str EXCEPTION = 'exception' * cdef str LINE = 'line' # <<<<<<<<<<<<<< * cdef str RETURN = 'return' * */ - __Pyx_TraceLine(30,64,0,__PYX_ERR(0, 30, __pyx_L1_error)) + __Pyx_TraceLine(32,61,0,__PYX_ERR(0, 32, __pyx_L1_error)) __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_line); __Pyx_XGOTREF(__pyx_v_6hunter_6_event_LINE); __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_LINE, __pyx_mstate_global->__pyx_n_u_line); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_line); - /* "hunter/_event.pyx":31 + /* "hunter/_event.pyx":33 * cdef str EXCEPTION = 'exception' * cdef str LINE = 'line' * cdef str RETURN = 'return' # <<<<<<<<<<<<<< * * cdef const PyObject** KIND_NAMES = [ */ - __Pyx_TraceLine(31,66,0,__PYX_ERR(0, 31, __pyx_L1_error)) + __Pyx_TraceLine(33,63,0,__PYX_ERR(0, 33, __pyx_L1_error)) __Pyx_INCREF(__pyx_mstate_global->__pyx_n_u_return); __Pyx_XGOTREF(__pyx_v_6hunter_6_event_RETURN); __Pyx_DECREF_SET(__pyx_v_6hunter_6_event_RETURN, __pyx_mstate_global->__pyx_n_u_return); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_u_return); - /* "hunter/_event.pyx":33 + /* "hunter/_event.pyx":35 * cdef str RETURN = 'return' * * cdef const PyObject** KIND_NAMES = [ # <<<<<<<<<<<<<< * CALL, * EXCEPTION, */ - __Pyx_TraceLine(33,69,0,__PYX_ERR(0, 33, __pyx_L1_error)) + __Pyx_TraceLine(35,66,0,__PYX_ERR(0, 35, __pyx_L1_error)) __pyx_t_6[0] = ((PyObject *)__pyx_v_6hunter_6_event_CALL); __pyx_t_6[1] = ((PyObject *)__pyx_v_6hunter_6_event_EXCEPTION); __pyx_t_6[2] = ((PyObject *)__pyx_v_6hunter_6_event_LINE); @@ -14713,252 +13354,208 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __pyx_t_6[6] = ((PyObject *)__pyx_v_6hunter_6_event_RETURN); __pyx_v_6hunter_6_event_KIND_NAMES = __pyx_t_6; - /* "hunter/_event.pyx":90 + /* "hunter/_event.pyx":93 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * */ - __Pyx_TraceLine(90,96,0,__PYX_ERR(0, 90, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_detach, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_TraceLine(93,93,0,__PYX_ERR(0, 93, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_7detach, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_detach, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[6]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_detach, __pyx_t_2) < 0) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[5]); + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_detach, __pyx_t_2) < 0) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":93 + /* "hunter/_event.pyx":96 * return fast_detach(self, value_filter) * * def clone(self): # <<<<<<<<<<<<<< * return fast_clone(self) * */ - __Pyx_TraceLine(93,98,0,__PYX_ERR(0, 93, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_clone, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_TraceLine(96,95,0,__PYX_ERR(0, 96, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_9clone, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event_clone, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_clone, __pyx_t_2) < 0) __PYX_ERR(0, 93, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_clone, __pyx_t_2) < 0) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":96 + /* "hunter/_event.pyx":99 * return fast_clone(self) * * cdef inline instruction_getter(self): # <<<<<<<<<<<<<< * cdef int position * */ - __Pyx_TraceLine(96,99,0,__PYX_ERR(0, 96, __pyx_L1_error)) + __Pyx_TraceLine(99,96,0,__PYX_ERR(0, 99, __pyx_L1_error)) - /* "hunter/_event.pyx":112 + /* "hunter/_event.pyx":115 * return self.instruction_getter() * * cdef inline threadid_getter(self): # <<<<<<<<<<<<<< * cdef long current * */ - __Pyx_TraceLine(112,101,0,__PYX_ERR(0, 112, __pyx_L1_error)) + __Pyx_TraceLine(115,98,0,__PYX_ERR(0, 115, __pyx_L1_error)) - /* "hunter/_event.pyx":128 + /* "hunter/_event.pyx":131 * return self.threadid_getter() * * cdef inline threadname_getter(self): # <<<<<<<<<<<<<< * if self._threadname is UNSET: * if self._thread is UNSET: */ - __Pyx_TraceLine(128,103,0,__PYX_ERR(0, 128, __pyx_L1_error)) + __Pyx_TraceLine(131,100,0,__PYX_ERR(0, 131, __pyx_L1_error)) - /* "hunter/_event.pyx":139 + /* "hunter/_event.pyx":142 * return self.threadname_getter() * * cdef inline locals_getter(self): # <<<<<<<<<<<<<< * if self._locals is UNSET: * if self.builtin: */ - __Pyx_TraceLine(139,105,0,__PYX_ERR(0, 139, __pyx_L1_error)) + __Pyx_TraceLine(142,102,0,__PYX_ERR(0, 142, __pyx_L1_error)) - /* "hunter/_event.pyx":151 + /* "hunter/_event.pyx":154 * return self.locals_getter() * * cdef inline globals_getter(self): # <<<<<<<<<<<<<< * if self._globals is UNSET: * if self.builtin: */ - __Pyx_TraceLine(151,107,0,__PYX_ERR(0, 151, __pyx_L1_error)) + __Pyx_TraceLine(154,104,0,__PYX_ERR(0, 154, __pyx_L1_error)) - /* "hunter/_event.pyx":163 + /* "hunter/_event.pyx":166 * return self.globals_getter() * * cdef inline function_getter(self): # <<<<<<<<<<<<<< * if self._function is UNSET: * if self.builtin: */ - __Pyx_TraceLine(163,109,0,__PYX_ERR(0, 163, __pyx_L1_error)) + __Pyx_TraceLine(166,106,0,__PYX_ERR(0, 166, __pyx_L1_error)) - /* "hunter/_event.pyx":206 + /* "hunter/_event.pyx":209 * return self._function_object * * cdef inline module_getter(self): # <<<<<<<<<<<<<< * if self._module is UNSET: * if self.builtin: */ - __Pyx_TraceLine(206,112,0,__PYX_ERR(0, 206, __pyx_L1_error)) + __Pyx_TraceLine(209,109,0,__PYX_ERR(0, 209, __pyx_L1_error)) - /* "hunter/_event.pyx":221 + /* "hunter/_event.pyx":224 * return self.module_getter() * * cdef inline filename_getter(self): # <<<<<<<<<<<<<< * cdef CodeType code * if self._filename is UNSET: */ - __Pyx_TraceLine(221,114,0,__PYX_ERR(0, 221, __pyx_L1_error)) + __Pyx_TraceLine(224,111,0,__PYX_ERR(0, 224, __pyx_L1_error)) - /* "hunter/_event.pyx":247 + /* "hunter/_event.pyx":250 * return self.filename_getter() * * cdef inline lineno_getter(self): # <<<<<<<<<<<<<< * if self._lineno is UNSET: * self._lineno = Hunter_PyFrame_GetLineNumber(self.frame) */ - __Pyx_TraceLine(247,116,0,__PYX_ERR(0, 247, __pyx_L1_error)) + __Pyx_TraceLine(250,113,0,__PYX_ERR(0, 250, __pyx_L1_error)) - /* "hunter/_event.pyx":256 + /* "hunter/_event.pyx":259 * return self.lineno_getter() * * cdef inline CodeType code_getter(self): # <<<<<<<<<<<<<< * if self._code is UNSET: * return Hunter_PyFrame_GetCode(self.frame) */ - __Pyx_TraceLine(256,118,0,__PYX_ERR(0, 256, __pyx_L1_error)) + __Pyx_TraceLine(259,115,0,__PYX_ERR(0, 259, __pyx_L1_error)) - /* "hunter/_event.pyx":266 + /* "hunter/_event.pyx":269 * return self.code_getter() * * cdef inline stdlib_getter(self): # <<<<<<<<<<<<<< * if self._stdlib is UNSET: * module_parts = self.module.split('.') */ - __Pyx_TraceLine(266,120,0,__PYX_ERR(0, 266, __pyx_L1_error)) + __Pyx_TraceLine(269,117,0,__PYX_ERR(0, 269, __pyx_L1_error)) - /* "hunter/_event.pyx":288 + /* "hunter/_event.pyx":291 * return self.stdlib_getter() * * cdef inline fullsource_getter(self): # <<<<<<<<<<<<<< * cdef list lines * cdef CodeType code */ - __Pyx_TraceLine(288,122,0,__PYX_ERR(0, 288, __pyx_L1_error)) + __Pyx_TraceLine(291,119,0,__PYX_ERR(0, 291, __pyx_L1_error)) - /* "hunter/_event.pyx":325 + /* "hunter/_event.pyx":328 * return self.fullsource_getter() * * cdef inline source_getter(self): # <<<<<<<<<<<<<< * if self._source is UNSET: * if self.filename.endswith(('.so', '.pyd')): */ - __Pyx_TraceLine(325,124,0,__PYX_ERR(0, 325, __pyx_L1_error)) - - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict -*/ - __Pyx_TraceLine(1,1,0,__PYX_ERR(2, 1, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_13__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_TraceLine(328,121,0,__PYX_ERR(0, 328, __pyx_L1_error)) - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Event, (type(self), 0x95dcba2, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Event__set_state(self, __pyx_state) -*/ - __Pyx_TraceLine(16,36,0,__PYX_ERR(2, 16, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_5Event_15__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Event___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 16, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_6_event_Event, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < 0) __PYX_ERR(2, 16, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":347 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None */ - __Pyx_TraceLine(344,127,0,__PYX_ERR(0, 344, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_1yield_lines, 0, __pyx_mstate_global->__pyx_n_u_yield_lines, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_TraceLine(347,124,0,__PYX_ERR(0, 347, __pyx_L1_error)) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_1yield_lines, 0, __pyx_mstate_global->__pyx_n_u_yield_lines, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[7]); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_t_2) < 0) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[6]); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_yield_lines, __pyx_t_2) < 0) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "hunter/_event.pyx":359 + /* "hunter/_event.pyx":362 * * * cdef inline Event fast_detach(Event self, object value_filter): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * */ - __Pyx_TraceLine(359,129,0,__PYX_ERR(0, 359, __pyx_L1_error)) + __Pyx_TraceLine(362,126,0,__PYX_ERR(0, 362, __pyx_L1_error)) - /* "hunter/_event.pyx":393 + /* "hunter/_event.pyx":396 * return event * * cdef inline Event fast_clone(Event self): # <<<<<<<<<<<<<< * event = Event.__new__(Event) * event.arg = self.arg */ - __Pyx_TraceLine(393,130,0,__PYX_ERR(0, 393, __pyx_L1_error)) - - - /* "(tree fragment)":1 - * def __pyx_unpickle_Event(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result -*/ - __Pyx_TraceLine(1,0,0,__PYX_ERR(2, 1, __pyx_L1_error)) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_6_event_4__pyx_unpickle_Event, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event, NULL, __pyx_mstate_global->__pyx_n_u_hunter__event, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Event, __pyx_t_2) < 0) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "(tree fragment)":11 - * __pyx_unpickle_Event__set_state( __pyx_result, __pyx_state) - * return __pyx_result - * cdef __pyx_unpickle_Event__set_state(Event __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< - * __pyx_result._code = __pyx_state[0]; __pyx_result._filename = __pyx_state[1]; __pyx_result._fullsource = __pyx_state[2]; __pyx_result._function = __pyx_state[3]; __pyx_result._function_object = __pyx_state[4]; __pyx_result._globals = __pyx_state[5]; __pyx_result._instruction = __pyx_state[6]; __pyx_result._lineno = __pyx_state[7]; __pyx_result._locals = __pyx_state[8]; __pyx_result._module = __pyx_state[9]; __pyx_result._source = __pyx_state[10]; __pyx_result._stdlib = __pyx_state[11]; __pyx_result._thread = __pyx_state[12]; __pyx_result._threadidn = __pyx_state[13]; __pyx_result._threadname = __pyx_state[14]; __pyx_result.arg = __pyx_state[15]; __pyx_result.builtin = __pyx_state[16]; __pyx_result.calls = __pyx_state[17]; __pyx_result.depth = __pyx_state[18]; __pyx_result.detached = __pyx_state[19]; __pyx_result.frame = __pyx_state[20]; __pyx_result.kind = __pyx_state[21]; __pyx_result.threading_support = __pyx_state[22] - * if len(__pyx_state) > 23 and hasattr(__pyx_result, '__dict__'): -*/ - __Pyx_TraceLine(11,30,0,__PYX_ERR(2, 11, __pyx_L1_error)) + __Pyx_TraceLine(396,127,0,__PYX_ERR(0, 396, __pyx_L1_error)) /* "hunter/_event.pyx":1 * # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True # <<<<<<<<<<<<<< - * from functools import partial - * from linecache import getline + * cimport cython + * */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(0, 1, __pyx_L1_error)) __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; - __Pyx_TraceReturnValue(Py_None, 2, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -14969,7 +13566,7 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(2, 0); + __Pyx_TraceExceptionUnwind(0, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._event", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -15000,11 +13597,11 @@ __Pyx_RefNannySetupContext("PyInit__event", 0); typedef struct { const char *s; -#if 302 <= 65535 +#if 179 <= 65535 const unsigned short n; -#elif 302 / 2 < INT_MAX +#elif 179 / 2 < INT_MAX const unsigned int n; -#elif 302 / 2 < LONG_MAX +#elif 179 / 2 < LONG_MAX const unsigned long n; #else const Py_ssize_t n; @@ -15028,19 +13625,15 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_CYTHON_SUFFIX_RE, sizeof(__pyx_k_CYTHON_SUFFIX_RE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_CYTHON_SUFFIX_RE */ {__pyx_k_EXCEPTION, sizeof(__pyx_k_EXCEPTION), 0, 1, 1}, /* PyObject cname: __pyx_n_u_EXCEPTION */ {__pyx_k_Event, sizeof(__pyx_k_Event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event */ - {__pyx_k_Event___reduce_cython, sizeof(__pyx_k_Event___reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event___reduce_cython */ - {__pyx_k_Event___setstate_cython, sizeof(__pyx_k_Event___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event___setstate_cython */ {__pyx_k_Event_clone, sizeof(__pyx_k_Event_clone), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_clone */ {__pyx_k_Event_detach, sizeof(__pyx_k_Event_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_Event_detach */ {__pyx_k_Event_kind, sizeof(__pyx_k_Event_kind), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Event_kind */ - {__pyx_k_Incompatible_checksums_0x_x_vs_0, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Incompatible_checksums_0x_x_vs_0 */ {__pyx_k_KIND_NAMES, sizeof(__pyx_k_KIND_NAMES), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KIND_NAMES */ {__pyx_k_LEADING_WHITESPACE_RE, sizeof(__pyx_k_LEADING_WHITESPACE_RE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LEADING_WHITESPACE_RE */ {__pyx_k_LINE, sizeof(__pyx_k_LINE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LINE */ {__pyx_k_NO_SOURCE, sizeof(__pyx_k_NO_SOURCE), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_NO_SOURCE */ {__pyx_k_NO_SOURCE_not_reading_binary, sizeof(__pyx_k_NO_SOURCE_not_reading_binary), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_NO_SOURCE_not_reading_binary */ {__pyx_k_Note_that_Cython_is_deliberately, sizeof(__pyx_k_Note_that_Cython_is_deliberately), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Note_that_Cython_is_deliberately */ - {__pyx_k_PickleError, sizeof(__pyx_k_PickleError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PickleError */ {__pyx_k_RETURN, sizeof(__pyx_k_RETURN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_RETURN */ {__pyx_k_SITE_PACKAGES_PATHS, sizeof(__pyx_k_SITE_PACKAGES_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SITE_PACKAGES_PATHS */ {__pyx_k_SYS_PREFIX_PATHS, sizeof(__pyx_k_SYS_PREFIX_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_SYS_PREFIX_PATHS */ @@ -15074,8 +13667,6 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_depth, sizeof(__pyx_k_depth), 0, 1, 1}, /* PyObject cname: __pyx_n_u_depth */ {__pyx_k_detach, sizeof(__pyx_k_detach), 0, 1, 1}, /* PyObject cname: __pyx_n_u_detach */ {__pyx_k_detached, sizeof(__pyx_k_detached), 0, 1, 1}, /* PyObject cname: __pyx_n_u_detached */ - {__pyx_k_dict, sizeof(__pyx_k_dict), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict */ - {__pyx_k_dict_2, sizeof(__pyx_k_dict_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_dict_2 */ {__pyx_k_disable, sizeof(__pyx_k_disable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_disable */ {__pyx_k_enable, sizeof(__pyx_k_enable), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_enable */ {__pyx_k_endswith, sizeof(__pyx_k_endswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_endswith */ @@ -15113,7 +13704,6 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_getitem, sizeof(__pyx_k_getitem), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getitem */ {__pyx_k_getline, sizeof(__pyx_k_getline), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getline */ {__pyx_k_getlines, sizeof(__pyx_k_getlines), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getlines */ - {__pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_getstate */ {__pyx_k_globals, sizeof(__pyx_k_globals), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals */ {__pyx_k_globals_2, sizeof(__pyx_k_globals_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals_2 */ {__pyx_k_globals_getter, sizeof(__pyx_k_globals_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_globals_getter */ @@ -15150,13 +13740,11 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_name, sizeof(__pyx_k_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name */ {__pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 1, 1}, /* PyObject cname: __pyx_n_u_name_2 */ {__pyx_k_namedtuple, sizeof(__pyx_k_namedtuple), 0, 1, 1}, /* PyObject cname: __pyx_n_u_namedtuple */ - {__pyx_k_new, sizeof(__pyx_k_new), 0, 1, 1}, /* PyObject cname: __pyx_n_u_new */ {__pyx_k_next, sizeof(__pyx_k_next), 0, 1, 1}, /* PyObject cname: __pyx_n_u_next */ {__pyx_k_object, sizeof(__pyx_k_object), 0, 1, 1}, /* PyObject cname: __pyx_n_u_object */ {__pyx_k_os_path, sizeof(__pyx_k_os_path), 0, 1, 1}, /* PyObject cname: __pyx_n_u_os_path */ {__pyx_k_other, sizeof(__pyx_k_other), 0, 1, 1}, /* PyObject cname: __pyx_n_u_other */ {__pyx_k_partial, sizeof(__pyx_k_partial), 0, 1, 1}, /* PyObject cname: __pyx_n_u_partial */ - {__pyx_k_pickle, sizeof(__pyx_k_pickle), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pickle */ {__pyx_k_pkg_resources, sizeof(__pyx_k_pkg_resources), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pkg_resources */ {__pyx_k_pop, sizeof(__pyx_k_pop), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pop */ {__pyx_k_py, sizeof(__pyx_k_py), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_py */ @@ -15164,25 +13752,13 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_pyd, sizeof(__pyx_k_pyd), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyd */ {__pyx_k_pyo, sizeof(__pyx_k_pyo), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyo */ {__pyx_k_pyx, sizeof(__pyx_k_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_pyx */ - {__pyx_k_pyx_PickleError, sizeof(__pyx_k_pyx_PickleError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_PickleError */ - {__pyx_k_pyx_checksum, sizeof(__pyx_k_pyx_checksum), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_checksum */ - {__pyx_k_pyx_result, sizeof(__pyx_k_pyx_result), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_result */ - {__pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_state */ - {__pyx_k_pyx_type, sizeof(__pyx_k_pyx_type), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_type */ - {__pyx_k_pyx_unpickle_Event, sizeof(__pyx_k_pyx_unpickle_Event), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Event */ - {__pyx_k_pyx_unpickle_Event__set_state, sizeof(__pyx_k_pyx_unpickle_Event__set_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_unpickle_Event__set_state */ {__pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 1, 1}, /* PyObject cname: __pyx_n_u_pyx_vtable */ {__pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 1, 1}, /* PyObject cname: __pyx_n_u_qualname */ - {__pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce */ - {__pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_cython */ - {__pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 1, 1}, /* PyObject cname: __pyx_n_u_reduce_ex */ {__pyx_k_repr, sizeof(__pyx_k_repr), 0, 1, 1}, /* PyObject cname: __pyx_n_u_repr */ {__pyx_k_return, sizeof(__pyx_k_return), 0, 1, 1}, /* PyObject cname: __pyx_n_u_return */ {__pyx_k_self, sizeof(__pyx_k_self), 0, 1, 1}, /* PyObject cname: __pyx_n_u_self */ {__pyx_k_send, sizeof(__pyx_k_send), 0, 1, 1}, /* PyObject cname: __pyx_n_u_send */ {__pyx_k_set_name, sizeof(__pyx_k_set_name), 0, 1, 1}, /* PyObject cname: __pyx_n_u_set_name */ - {__pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate */ - {__pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_setstate_cython */ {__pyx_k_site, sizeof(__pyx_k_site), 0, 1, 1}, /* PyObject cname: __pyx_n_u_site */ {__pyx_k_so, sizeof(__pyx_k_so), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_so */ {__pyx_k_source, sizeof(__pyx_k_source), 0, 1, 1}, /* PyObject cname: __pyx_n_u_source */ @@ -15193,11 +13769,9 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_src_hunter__event_pyx, sizeof(__pyx_k_src_hunter__event_pyx), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_src_hunter__event_pyx */ {__pyx_k_start, sizeof(__pyx_k_start), 0, 1, 1}, /* PyObject cname: __pyx_n_u_start */ {__pyx_k_startswith, sizeof(__pyx_k_startswith), 0, 1, 1}, /* PyObject cname: __pyx_n_u_startswith */ - {__pyx_k_state, sizeof(__pyx_k_state), 0, 1, 1}, /* PyObject cname: __pyx_n_u_state */ {__pyx_k_stdlib, sizeof(__pyx_k_stdlib), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib */ {__pyx_k_stdlib_getter, sizeof(__pyx_k_stdlib_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_stdlib_getter */ {__pyx_k_string, sizeof(__pyx_k_string), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_string */ - {__pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_stringsource */ {__pyx_k_sub, sizeof(__pyx_k_sub), 0, 1, 1}, /* PyObject cname: __pyx_n_u_sub */ {__pyx_k_test, sizeof(__pyx_k_test), 0, 1, 1}, /* PyObject cname: __pyx_n_u_test */ {__pyx_k_thread, sizeof(__pyx_k_thread), 0, 1, 1}, /* PyObject cname: __pyx_n_u_thread */ @@ -15209,8 +13783,6 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_threadname_getter, sizeof(__pyx_k_threadname_getter), 0, 1, 1}, /* PyObject cname: __pyx_n_u_threadname_getter */ {__pyx_k_throw, sizeof(__pyx_k_throw), 0, 1, 1}, /* PyObject cname: __pyx_n_u_throw */ {__pyx_k_tokenize, sizeof(__pyx_k_tokenize), 0, 1, 1}, /* PyObject cname: __pyx_n_u_tokenize */ - {__pyx_k_update, sizeof(__pyx_k_update), 0, 1, 1}, /* PyObject cname: __pyx_n_u_update */ - {__pyx_k_use_setstate, sizeof(__pyx_k_use_setstate), 0, 1, 1}, /* PyObject cname: __pyx_n_u_use_setstate */ {__pyx_k_util, sizeof(__pyx_k_util), 0, 1, 1}, /* PyObject cname: __pyx_n_u_util */ {__pyx_k_v, sizeof(__pyx_k_v), 0, 1, 1}, /* PyObject cname: __pyx_n_u_v */ {__pyx_k_value, sizeof(__pyx_k_value), 0, 1, 1}, /* PyObject cname: __pyx_n_u_value */ @@ -15226,7 +13798,7 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, c static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); - __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_object); if (!__pyx_builtin_object) __PYX_ERR(0, 25, __pyx_L1_error) + __pyx_builtin_object = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_object); if (!__pyx_builtin_object) __PYX_ERR(0, 27, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; @@ -15238,104 +13810,93 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "hunter/_event.pyx":211 + /* "hunter/_event.pyx":214 * module = self.arg.__module__ * else: * module = self.globals.get('__name__', '') # <<<<<<<<<<<<<< * if module is None: * module = '?' */ - __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_kp_u__2); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 211, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_n_u_name_2, __pyx_mstate_global->__pyx_kp_u__2); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 214, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); - /* "hunter/_event.pyx":230 + /* "hunter/_event.pyx":233 * if not filename: * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): # <<<<<<<<<<<<<< * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): */ - __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyc, __pyx_mstate_global->__pyx_kp_u_pyo); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 230, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyc, __pyx_mstate_global->__pyx_kp_u_pyo); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]); - /* "hunter/_event.pyx":231 + /* "hunter/_event.pyx":234 * filename = '?' * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] # <<<<<<<<<<<<<< * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) */ - __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 231, __pyx_L1_error) + __pyx_mstate_global->__pyx_slice[0] = PySlice_New(Py_None, __pyx_mstate_global->__pyx_int_neg_1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_slice[0])) __PYX_ERR(0, 234, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_slice[0]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_slice[0]); - /* "hunter/_event.pyx":232 + /* "hunter/_event.pyx":235 * elif filename.endswith(('.pyc', '.pyo')): * filename = filename[:-1] * elif filename.endswith(('.so', '.pyd')): # <<<<<<<<<<<<<< * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): */ - __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_so, __pyx_mstate_global->__pyx_kp_u_pyd); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 232, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_so, __pyx_mstate_global->__pyx_kp_u_pyd); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[2]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[2]); - /* "hunter/_event.pyx":234 + /* "hunter/_event.pyx":237 * elif filename.endswith(('.so', '.pyd')): * cybasename = CYTHON_SUFFIX_RE.sub('', filename) * for ext in ('.pyx', '.py'): # <<<<<<<<<<<<<< * cyfilename = cybasename + ext * if exists(cyfilename): */ - __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyx, __pyx_mstate_global->__pyx_kp_u_py); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 234, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u_pyx, __pyx_mstate_global->__pyx_kp_u_py); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 237, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[3]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[3]); - /* "(tree fragment)":4 - * cdef object __pyx_PickleError - * cdef object __pyx_result - * if __pyx_checksum not in (0x95dcba2, 0x623b824, 0xe024db4): # <<<<<<<<<<<<<< - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError, "Incompatible checksums (0x%x vs (0x95dcba2, 0x623b824, 0xe024db4) = (_code, _filename, _fullsource, _function, _function_object, _globals, _instruction, _lineno, _locals, _module, _source, _stdlib, _thread, _threadidn, _threadname, arg, builtin, calls, depth, detached, frame, kind, threading_support))" % __pyx_checksum -*/ - __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(3, __pyx_mstate_global->__pyx_int_157141922, __pyx_mstate_global->__pyx_int_103004196, __pyx_mstate_global->__pyx_int_235031988); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); - - /* "hunter/_event.pyx":23 + /* "hunter/_event.pyx":25 * from .util import if_same_code * * __all__ = 'Event', # <<<<<<<<<<<<<< * * cdef object UNSET = object() */ - __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Event); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(0, 23, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]); + __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_n_u_Event); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(0, 25, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); - /* "hunter/_event.pyx":90 + /* "hunter/_event.pyx":93 * return self is other * * def detach(self, value_filter=None): # <<<<<<<<<<<<<< * return fast_detach(self, value_filter) * */ - __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 90, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]); + __pyx_mstate_global->__pyx_tuple[5] = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[5])) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[5]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[5]); - /* "hunter/_event.pyx":344 + /* "hunter/_event.pyx":347 * * * def yield_lines(filename, module_globals, start, list collector, # <<<<<<<<<<<<<< * limit=10): * dedent = None */ - __pyx_mstate_global->__pyx_tuple[7] = PyTuple_Pack(1, ((PyObject*)__pyx_mstate_global->__pyx_int_10)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[7])) __PYX_ERR(0, 344, __pyx_L1_error) - __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[7]); - __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[7]); + __pyx_mstate_global->__pyx_tuple[6] = PyTuple_Pack(1, ((PyObject*)__pyx_mstate_global->__pyx_int_10)); if (unlikely(!__pyx_mstate_global->__pyx_tuple[6])) __PYX_ERR(0, 347, __pyx_L1_error) + __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[6]); + __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[6]); __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -15351,9 +13912,6 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) { if (__Pyx_InitStrings(__pyx_string_tab, __pyx_mstate->__pyx_string_tab, __pyx_string_tab_encodings) < 0) __PYX_ERR(0, 1, __pyx_L1_error); __pyx_mstate->__pyx_int_1 = PyLong_FromLong(1); if (unlikely(!__pyx_mstate->__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) __pyx_mstate->__pyx_int_10 = PyLong_FromLong(10); if (unlikely(!__pyx_mstate->__pyx_int_10)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_mstate->__pyx_int_103004196 = PyLong_FromLong(103004196L); if (unlikely(!__pyx_mstate->__pyx_int_103004196)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_mstate->__pyx_int_157141922 = PyLong_FromLong(157141922L); if (unlikely(!__pyx_mstate->__pyx_int_157141922)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_mstate->__pyx_int_235031988 = PyLong_FromLong(235031988L); if (unlikely(!__pyx_mstate->__pyx_int_235031988)) __PYX_ERR(0, 1, __pyx_L1_error) __pyx_mstate->__pyx_int_neg_1 = PyLong_FromLong(-1); if (unlikely(!__pyx_mstate->__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error) return 0; __pyx_L1_error:; @@ -15385,244 +13943,224 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { PyObject* tuple_dedup_map = PyDict_New(); if (unlikely(!tuple_dedup_map)) return -1; { - const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 56, 176}; + const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 59, 176}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support}; __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_init, __pyx_k_A_G1_IQ_HF_AQ_IQ_IQ_L_KuBa_IQ_M, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 82, 28}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 85, 28}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_repr, __pyx_k_A_q_t_d_4_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 87, 11}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 90, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other}; __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_eq, __pyx_k_A_uCq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 90, 16}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 93, 16}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter}; __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_detach, __pyx_k_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 93, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 96, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_clone, __pyx_k_A_z, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 96, 86}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 99, 86}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_instruction_getter, __pyx_k_A_4_S_at1_nAT_Q_xt3ay_a_G1A_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 108, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 111, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 112, 70}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 115, 70}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadid_getter, __pyx_k_A_4_3a_q_uG5_HCt1_N_N_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 124, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 127, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 128, 51}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 131, 51}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_threadname_getter, __pyx_k_A_4_Cq_t9Cq_K_Q_t81_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 135, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 138, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 139, 48}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 142, 48}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_locals_getter, __pyx_k_A_4y_1_t1_Kq_K_7q_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 147, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 150, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 151, 48}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 154, 48}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_globals_getter, __pyx_k_A_4z_A_t1_Kq_L_9_a_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 159, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 162, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_2, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 163, 51}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 166, 51}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_function_getter, __pyx_k_A_4_Q_t1_M_T_M_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 171, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 174, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 175, 213}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 178, 213}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_code_2, __pyx_mstate->__pyx_n_u_candidate, __pyx_mstate->__pyx_n_u_func_2, __pyx_mstate->__pyx_n_u_first_arg, __pyx_mstate->__pyx_n_u_v}; __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 206, 72}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 209, 72}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_module_getter, __pyx_k_A_4y_1_t1_T_XT_a_wc_1_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 217, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 220, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 221, 157}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 224, 157}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_filename_getter, __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 243, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 246, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 247, 34}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 250, 34}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_lineno_getter, __pyx_k_A_4y_1_7q_A_t1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 252, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 255, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 256, 32}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 259, 32}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_code_getter, __pyx_k_A_4wc_a_4q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 262, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 265, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 266, 136}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 269, 136}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_stdlib_getter, __pyx_k_A_4y_1_4wfAQ_s_Kq_Zs_U_g_X___ggj, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 284, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 287, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 288, 212}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 291, 212}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fullsource_getter, __pyx_k_A_4_Cq_O1_t_q_4vS_t4y_1_A_Cwc_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 321, 12}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 324, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 325, 110}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 24, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 328, 110}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_frame, __pyx_mstate->__pyx_n_u_kind, __pyx_mstate->__pyx_n_u_arg, __pyx_mstate->__pyx_n_u_depth, __pyx_mstate->__pyx_n_u_calls, __pyx_mstate->__pyx_n_u_threading_support, __pyx_mstate->__pyx_n_u_detached, __pyx_mstate->__pyx_n_u_builtin, __pyx_mstate->__pyx_n_u_code, __pyx_mstate->__pyx_n_u_filename_3, __pyx_mstate->__pyx_n_u_fullsource, __pyx_mstate->__pyx_n_u_function_3, __pyx_mstate->__pyx_n_u_function_object, __pyx_mstate->__pyx_n_u_globals_2, __pyx_mstate->__pyx_n_u_lineno_3, __pyx_mstate->__pyx_n_u_locals_2, __pyx_mstate->__pyx_n_u_module_5, __pyx_mstate->__pyx_n_u_source, __pyx_mstate->__pyx_n_u_stdlib, __pyx_mstate->__pyx_n_u_thread, __pyx_mstate->__pyx_n_u_threadidn, __pyx_mstate->__pyx_n_u_threadname, __pyx_mstate->__pyx_n_u_instruction}; __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_source_getter, __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 336, 11}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 339, 11}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_A_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 340, 13}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 343, 13}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_item}; __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_getitem, __pyx_k_A_wavQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 42, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 44, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 43, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 45, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 44, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 46, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 45, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 47, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 46, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 48, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 47, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 49, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 48, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 50, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 49, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pxd, __pyx_mstate->__pyx_n_u_get_2, __pyx_k__5, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 921}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_state, __pyx_mstate->__pyx_n_u_dict_2, __pyx_mstate->__pyx_n_u_use_setstate}; - __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_k_T_4_4Obbffqqu_v_E_E_I_I_S_S_W_W, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 16, 11}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state}; - __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_1F, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 344, 5}; + const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_GENERATOR), 347, 5}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_filename_2, __pyx_mstate->__pyx_n_u_module_globals, __pyx_mstate->__pyx_n_u_start, __pyx_mstate->__pyx_n_u_collector, __pyx_mstate->__pyx_n_u_limit, __pyx_mstate->__pyx_n_u_dedent, __pyx_mstate->__pyx_n_u_amount, __pyx_mstate->__pyx_n_u_line}; - __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_yield_lines, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_yield_lines, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 359, 311}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 362, 311}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_value_filter, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_CALL, __pyx_mstate->__pyx_n_u_EXCEPTION, __pyx_mstate->__pyx_n_u_LINE, __pyx_mstate->__pyx_n_u_RETURN, __pyx_mstate->__pyx_n_u_KIND_NAMES}; - __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_detach, __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_detach, __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 393, 228}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 396, 228}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_CALL, __pyx_mstate->__pyx_n_u_EXCEPTION, __pyx_mstate->__pyx_n_u_LINE, __pyx_mstate->__pyx_n_u_RETURN, __pyx_mstate->__pyx_n_u_KIND_NAMES}; - __pyx_mstate_global->__pyx_codeobj_tab[45] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_clone, __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[45])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1, 86}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_type, __pyx_mstate->__pyx_n_u_pyx_checksum, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_pyx_PickleError, __pyx_mstate->__pyx_n_u_pyx_result}; - __pyx_mstate_global->__pyx_codeobj_tab[46] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Event, __pyx_k_hk_A_1_S_S_U_U_V_5_7_q_a_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[46])) goto bad; - } - { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 11, 776}; - PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_pyx_result, __pyx_mstate->__pyx_n_u_pyx_state, __pyx_mstate->__pyx_n_u_UNSET, __pyx_mstate->__pyx_n_u_CALL, __pyx_mstate->__pyx_n_u_EXCEPTION, __pyx_mstate->__pyx_n_u_LINE, __pyx_mstate->__pyx_n_u_RETURN, __pyx_mstate->__pyx_n_u_KIND_NAMES}; - __pyx_mstate_global->__pyx_codeobj_tab[47] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_pyx_unpickle_Event__set_state, __pyx_k_AT_QdR_mmxxyy_J_J_W_W_b_b_c_c_g, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[47])) goto bad; + __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__event_pyx, __pyx_mstate->__pyx_n_u_fast_clone, __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; } Py_DECREF(tuple_dedup_map); return 0; @@ -18317,49 +16855,6 @@ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { return PyObject_GetAttr(o, n); } -/* GetAttr3 */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 -static PyObject *__Pyx_GetAttr3Default(PyObject *d) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (unlikely(!__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) - return NULL; - __Pyx_PyErr_Clear(); - Py_INCREF(d); - return d; -} -#endif -static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { - PyObject *r; -#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000 - int res = PyObject_GetOptionalAttr(o, n, &r); - return (res != 0) ? r : __Pyx_NewRef(d); -#else - #if CYTHON_USE_TYPE_SLOTS - if (likely(PyUnicode_Check(n))) { - r = __Pyx_PyObject_GetAttrStrNoError(o, n); - if (unlikely(!r) && likely(!PyErr_Occurred())) { - r = __Pyx_NewRef(d); - } - return r; - } - #endif - r = PyObject_GetAttr(o, n); - return (likely(r)) ? r : __Pyx_GetAttr3Default(d); -#endif -} - -/* RaiseUnexpectedTypeError */ -static int -__Pyx_RaiseUnexpectedTypeError(const char *expected, PyObject *obj) -{ - __Pyx_TypeName obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj)); - PyErr_Format(PyExc_TypeError, "Expected %s, got " __Pyx_FMT_TYPENAME, - expected, obj_type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; -} - /* ArgTypeTest */ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) { @@ -18397,243 +16892,46 @@ static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *nam PyObject *res; PyObject *vargs[2]; vargs[0] = PyErr_GetRaisedException(); - vargs[1] = extra_info; - res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); - Py_XDECREF(res); - PyErr_SetRaisedException(vargs[0]); - } -#endif - __Pyx_DECREF_TypeName(type_name); - __Pyx_DECREF_TypeName(obj_type_name); - return 0; -} - -/* pep479 */ -static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { - PyObject *exc, *val, *tb, *cur_exc, *new_exc; - __Pyx_PyThreadState_declare - int is_async_stopiteration = 0; - CYTHON_MAYBE_UNUSED_VAR(in_async_gen); - __Pyx_PyThreadState_assign - cur_exc = __Pyx_PyErr_CurrentExceptionType(); - if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) { - if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) { - is_async_stopiteration = 1; - } else { - return; - } - } - __Pyx_GetException(&exc, &val, &tb); - Py_XDECREF(exc); - Py_XDECREF(tb); - new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s", - is_async_stopiteration ? "async generator raised StopAsyncIteration" : - in_async_gen ? "async generator raised StopIteration" : - "generator raised StopIteration"); - if (!new_exc) { - Py_XDECREF(val); - return; - } - PyException_SetCause(new_exc, val); // steals ref to val - PyErr_SetObject(PyExc_RuntimeError, new_exc); -} - -/* Import */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { - PyObject *module = 0; - PyObject *empty_dict = 0; - PyObject *empty_list = 0; - empty_dict = PyDict_New(); - if (unlikely(!empty_dict)) - goto bad; - if (level == -1) { - const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); - if (package_sep != (0)) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); - if (unlikely(!module)) { - if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - if (!module) { - module = PyImport_ImportModuleLevelObject( - name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); - } -bad: - Py_XDECREF(empty_dict); - Py_XDECREF(empty_list); - return module; -} - -/* ImportFrom */ -static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { - PyObject* value = __Pyx_PyObject_GetAttrStr(module, name); - if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) { - const char* module_name_str = 0; - PyObject* module_name = 0; - PyObject* module_dot = 0; - PyObject* full_name = 0; - PyErr_Clear(); - module_name_str = PyModule_GetName(module); - if (unlikely(!module_name_str)) { goto modbad; } - module_name = PyUnicode_FromString(module_name_str); - if (unlikely(!module_name)) { goto modbad; } - module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__4); - if (unlikely(!module_dot)) { goto modbad; } - full_name = PyUnicode_Concat(module_dot, name); - if (unlikely(!full_name)) { goto modbad; } - #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ - CYTHON_COMPILING_IN_GRAAL - { - PyObject *modules = PyImport_GetModuleDict(); - if (unlikely(!modules)) - goto modbad; - value = PyObject_GetItem(modules, full_name); - } - #else - value = PyImport_GetModule(full_name); - #endif - modbad: - Py_XDECREF(full_name); - Py_XDECREF(module_dot); - Py_XDECREF(module_name); - } - if (unlikely(!value)) { - PyErr_Format(PyExc_ImportError, "cannot import name %S", name); - } - return value; -} - -/* RaiseException */ -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - PyObject* owned_instance = NULL; - if (tb == Py_None) { - tb = 0; - } else if (tb && !PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto bad; - } - if (value == Py_None) - value = 0; - if (PyExceptionInstance_Check(type)) { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto bad; - } - value = type; - type = (PyObject*) Py_TYPE(value); - } else if (PyExceptionClass_Check(type)) { - PyObject *instance_class = NULL; - if (value && PyExceptionInstance_Check(value)) { - instance_class = (PyObject*) Py_TYPE(value); - if (instance_class != type) { - int is_subclass = PyObject_IsSubclass(instance_class, type); - if (!is_subclass) { - instance_class = NULL; - } else if (unlikely(is_subclass == -1)) { - goto bad; - } else { - type = instance_class; - } - } - } - if (!instance_class) { - PyObject *args; - if (!value) - args = PyTuple_New(0); - else if (PyTuple_Check(value)) { - Py_INCREF(value); - args = value; - } else - args = PyTuple_Pack(1, value); - if (!args) - goto bad; - owned_instance = PyObject_Call(type, args, NULL); - Py_DECREF(args); - if (!owned_instance) - goto bad; - value = owned_instance; - if (!PyExceptionInstance_Check(value)) { - PyErr_Format(PyExc_TypeError, - "calling %R should have returned an instance of " - "BaseException, not %R", - type, Py_TYPE(value)); - goto bad; - } - } - } else { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto bad; - } - if (cause) { - PyObject *fixed_cause; - if (cause == Py_None) { - fixed_cause = NULL; - } else if (PyExceptionClass_Check(cause)) { - fixed_cause = PyObject_CallObject(cause, NULL); - if (fixed_cause == NULL) - goto bad; - } else if (PyExceptionInstance_Check(cause)) { - fixed_cause = cause; - Py_INCREF(fixed_cause); - } else { - PyErr_SetString(PyExc_TypeError, - "exception causes must derive from " - "BaseException"); - goto bad; - } - PyException_SetCause(value, fixed_cause); - } - PyErr_SetObject(type, value); - if (tb) { -#if PY_VERSION_HEX >= 0x030C00A6 - PyException_SetTraceback(value, tb); -#elif CYTHON_FAST_THREAD_STATE - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* tmp_tb = tstate->curexc_traceback; - if (tb != tmp_tb) { - Py_INCREF(tb); - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_tb); - } -#else - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); - Py_INCREF(tb); - PyErr_Restore(tmp_type, tmp_value, tb); - Py_XDECREF(tmp_tb); -#endif + vargs[1] = extra_info; + res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL); + Py_XDECREF(res); + PyErr_SetRaisedException(vargs[0]); } -bad: - Py_XDECREF(owned_instance); - return; +#endif + __Pyx_DECREF_TypeName(type_name); + __Pyx_DECREF_TypeName(obj_type_name); + return 0; } -/* HasAttr */ -#if __PYX_LIMITED_VERSION_HEX < 0x030d0000 -static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { - PyObject *r; - if (unlikely(!PyUnicode_Check(n))) { - PyErr_SetString(PyExc_TypeError, - "hasattr(): attribute name must be string"); - return -1; +/* pep479 */ +static void __Pyx_Generator_Replace_StopIteration(int in_async_gen) { + PyObject *exc, *val, *tb, *cur_exc, *new_exc; + __Pyx_PyThreadState_declare + int is_async_stopiteration = 0; + CYTHON_MAYBE_UNUSED_VAR(in_async_gen); + __Pyx_PyThreadState_assign + cur_exc = __Pyx_PyErr_CurrentExceptionType(); + if (likely(!__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopIteration))) { + if (in_async_gen && unlikely(__Pyx_PyErr_GivenExceptionMatches(cur_exc, PyExc_StopAsyncIteration))) { + is_async_stopiteration = 1; + } else { + return; + } } - r = __Pyx_PyObject_GetAttrStrNoError(o, n); - if (!r) { - return (unlikely(PyErr_Occurred())) ? -1 : 0; - } else { - Py_DECREF(r); - return 1; + __Pyx_GetException(&exc, &val, &tb); + Py_XDECREF(exc); + Py_XDECREF(tb); + new_exc = PyObject_CallFunction(PyExc_RuntimeError, "s", + is_async_stopiteration ? "async generator raised StopAsyncIteration" : + in_async_gen ? "async generator raised StopIteration" : + "generator raised StopIteration"); + if (!new_exc) { + Py_XDECREF(val); + return; } + PyException_SetCause(new_exc, val); // steals ref to val + PyErr_SetObject(PyExc_RuntimeError, new_exc); } -#endif /* CallTypeTraverse */ #if !CYTHON_USE_TYPE_SPECS || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x03090000) @@ -19196,130 +17494,6 @@ static int __Pyx_MergeVtables(PyTypeObject *type) { return -1; } -/* DelItemOnTypeDict */ -static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) { - int result; - PyObject *tp_dict; -#if CYTHON_COMPILING_IN_LIMITED_API - tp_dict = __Pyx_GetTypeDict(tp); - if (unlikely(!tp_dict)) return -1; -#else - tp_dict = tp->tp_dict; -#endif - result = PyDict_DelItem(tp_dict, k); - if (likely(!result)) PyType_Modified(tp); - return result; -} - -/* SetupReduce */ -static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { - int ret; - PyObject *name_attr; - name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name_2); - if (likely(name_attr)) { - ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); - } else { - ret = -1; - } - if (unlikely(ret < 0)) { - PyErr_Clear(); - ret = 0; - } - Py_XDECREF(name_attr); - return ret; -} -static int __Pyx_setup_reduce(PyObject* type_obj) { - int ret = 0; - PyObject *object_reduce = NULL; - PyObject *object_getstate = NULL; - PyObject *object_reduce_ex = NULL; - PyObject *reduce = NULL; - PyObject *reduce_ex = NULL; - PyObject *reduce_cython = NULL; - PyObject *setstate = NULL; - PyObject *setstate_cython = NULL; - PyObject *getstate = NULL; -#if CYTHON_USE_PYTYPE_LOOKUP - getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_getstate); -#else - getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_getstate); - if (!getstate && PyErr_Occurred()) { - goto __PYX_BAD; - } -#endif - if (getstate) { -#if CYTHON_USE_PYTYPE_LOOKUP - object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); -#else - object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate); - if (!object_getstate && PyErr_Occurred()) { - goto __PYX_BAD; - } -#endif - if (object_getstate != getstate) { - goto __PYX_GOOD; - } - } -#if CYTHON_USE_PYTYPE_LOOKUP - object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; -#else - object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; -#endif - reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; - if (reduce_ex == object_reduce_ex) { -#if CYTHON_USE_PYTYPE_LOOKUP - object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; -#else - object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce); if (!object_reduce) goto __PYX_BAD; -#endif - reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce); if (unlikely(!reduce)) goto __PYX_BAD; - if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython)) { - reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); - if (likely(reduce_cython)) { - ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (reduce == object_reduce || PyErr_Occurred()) { - goto __PYX_BAD; - } - setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate); - if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); - if (likely(setstate_cython)) { - ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (!setstate || PyErr_Occurred()) { - goto __PYX_BAD; - } - } - PyType_Modified((PyTypeObject*)type_obj); - } - } - goto __PYX_GOOD; -__PYX_BAD: - if (!PyErr_Occurred()) { - __Pyx_TypeName type_obj_name = - __Pyx_PyType_GetFullyQualifiedName((PyTypeObject*)type_obj); - PyErr_Format(PyExc_RuntimeError, - "Unable to initialize pickling for " __Pyx_FMT_TYPENAME, type_obj_name); - __Pyx_DECREF_TypeName(type_obj_name); - } - ret = -1; -__PYX_GOOD: -#if !CYTHON_USE_PYTYPE_LOOKUP - Py_XDECREF(object_reduce); - Py_XDECREF(object_reduce_ex); - Py_XDECREF(object_getstate); - Py_XDECREF(getstate); -#endif - Py_XDECREF(reduce); - Py_XDECREF(reduce_ex); - Py_XDECREF(reduce_cython); - Py_XDECREF(setstate); - Py_XDECREF(setstate_cython); - return ret; -} - /* ListPack */ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) { va_list va; @@ -19339,6 +17513,76 @@ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) { return l; } +/* Import */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { + PyObject *module = 0; + PyObject *empty_dict = 0; + PyObject *empty_list = 0; + empty_dict = PyDict_New(); + if (unlikely(!empty_dict)) + goto bad; + if (level == -1) { + const char* package_sep = strchr(__Pyx_MODULE_NAME, '.'); + if (package_sep != (0)) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, 1); + if (unlikely(!module)) { + if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError))) + goto bad; + PyErr_Clear(); + } + } + level = 0; + } + if (!module) { + module = PyImport_ImportModuleLevelObject( + name, __pyx_mstate_global->__pyx_d, empty_dict, from_list, level); + } +bad: + Py_XDECREF(empty_dict); + Py_XDECREF(empty_list); + return module; +} + +/* ImportFrom */ +static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { + PyObject* value = __Pyx_PyObject_GetAttrStr(module, name); + if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) { + const char* module_name_str = 0; + PyObject* module_name = 0; + PyObject* module_dot = 0; + PyObject* full_name = 0; + PyErr_Clear(); + module_name_str = PyModule_GetName(module); + if (unlikely(!module_name_str)) { goto modbad; } + module_name = PyUnicode_FromString(module_name_str); + if (unlikely(!module_name)) { goto modbad; } + module_dot = PyUnicode_Concat(module_name, __pyx_mstate_global->__pyx_kp_u__4); + if (unlikely(!module_dot)) { goto modbad; } + full_name = PyUnicode_Concat(module_dot, name); + if (unlikely(!full_name)) { goto modbad; } + #if (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM < 0x07030400) ||\ + CYTHON_COMPILING_IN_GRAAL + { + PyObject *modules = PyImport_GetModuleDict(); + if (unlikely(!modules)) + goto modbad; + value = PyObject_GetItem(modules, full_name); + } + #else + value = PyImport_GetModule(full_name); + #endif + modbad: + Py_XDECREF(full_name); + Py_XDECREF(module_dot); + Py_XDECREF(module_name); + } + if (unlikely(!value)) { + PyErr_Format(PyExc_ImportError, "cannot import name %S", name); + } + return value; +} + /* FetchSharedCythonModule */ static PyObject *__Pyx_FetchSharedCythonABIModule(void) { return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME); @@ -20918,154 +19162,51 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, funcname, c_line, py_line, filename); if (!py_code) { /* If the code object creation fails, then we should clear the - fetched exception references and propagate the new exception */ - Py_XDECREF(ptype); - Py_XDECREF(pvalue); - Py_XDECREF(ptraceback); - goto bad; - } - __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); - __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); - } - py_frame = PyFrame_New( - tstate, /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - __Pyx_PyFrame_SetLineNumber(py_frame, py_line); - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} -#endif - -/* CIntFromPyVerify */ -#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) -#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) -#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ - {\ - func_type value = func_value;\ - if (sizeof(target_type) < sizeof(func_type)) {\ - if (unlikely(value != (func_type) (target_type) value)) {\ - func_type zero = 0;\ - if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ - return (target_type) -1;\ - if (is_unsigned && unlikely(value < zero))\ - goto raise_neg_overflow;\ - else\ - goto raise_overflow;\ - }\ - }\ - return (target_type) value;\ - } - -/* PyObjectVectorCallKwBuilder */ -#if CYTHON_VECTORCALL -static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - (void)__Pyx_PyObject_FastCallDict; - if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; - Py_INCREF(key); - args[n] = value; - return 0; -} -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - (void)__Pyx_VectorcallBuilder_AddArgStr; - if (unlikely(!PyUnicode_Check(key))) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - return -1; - } - return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); -} -static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { - PyObject *pyKey = PyUnicode_FromString(key); - if (!pyKey) return -1; - return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); -} -#else // CYTHON_VECTORCALL -CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { - if (unlikely(!PyUnicode_Check(key))) { - PyErr_SetString(PyExc_TypeError, "keywords must be strings"); - return -1; - } - return PyDict_SetItem(builder, key, value); -} -#endif - -/* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const int neg_one = (int) -1, const_zero = (int) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(int) < sizeof(long)) { - return PyLong_FromLong((long) value); - } else if (sizeof(int) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY - } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif - } - } else { - if (sizeof(int) <= sizeof(long)) { - return PyLong_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif + fetched exception references and propagate the new exception */ + Py_XDECREF(ptype); + Py_XDECREF(pvalue); + Py_XDECREF(ptraceback); + goto bad; } + __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); + __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); } - { - unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 - if (is_unsigned) { - return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); - } else { - return PyLong_FromNativeBytes(bytes, sizeof(value), -1); - } -#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 - int one = 1; int little = (int)*(unsigned char *)&one; - return _PyLong_FromByteArray(bytes, sizeof(int), - little, !is_unsigned); -#else - int one = 1; int little = (int)*(unsigned char *)&one; - PyObject *from_bytes, *result = NULL, *kwds = NULL; - PyObject *py_bytes = NULL, *order_str = NULL; - from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); - if (!from_bytes) return NULL; - py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); - if (!py_bytes) goto limited_bad; - order_str = PyUnicode_FromString(little ? "little" : "big"); - if (!order_str) goto limited_bad; - { - PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; - if (!is_unsigned) { - kwds = __Pyx_MakeVectorcallBuilderKwds(1); - if (!kwds) goto limited_bad; - if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; - } - result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); - } - limited_bad: - Py_XDECREF(kwds); - Py_XDECREF(order_str); - Py_XDECREF(py_bytes); - Py_XDECREF(from_bytes); - return result; + py_frame = PyFrame_New( + tstate, /*PyThreadState *tstate,*/ + py_code, /*PyCodeObject *code,*/ + __pyx_mstate_global->__pyx_d, /*PyObject *globals,*/ + 0 /*PyObject *locals*/ + ); + if (!py_frame) goto bad; + __Pyx_PyFrame_SetLineNumber(py_frame, py_line); + PyTraceBack_Here(py_frame); +bad: + Py_XDECREF(py_code); + Py_XDECREF(py_frame); +} #endif + +/* CIntFromPyVerify */ +#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) +#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) +#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ + {\ + func_type value = func_value;\ + if (sizeof(target_type) < sizeof(func_type)) {\ + if (unlikely(value != (func_type) (target_type) value)) {\ + func_type zero = 0;\ + if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ + return (target_type) -1;\ + if (is_unsigned && unlikely(value < zero))\ + goto raise_neg_overflow;\ + else\ + goto raise_overflow;\ + }\ + }\ + return (target_type) value;\ } -} /* CIntFromPy */ static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { @@ -21307,20 +19448,233 @@ static CYTHON_INLINE int __Pyx_PyLong_As_int(PyObject *x) { Py_XDECREF(mask); Py_XDECREF(stepval); #endif - if (unlikely(ret)) - return (int) -1; - return val; + if (unlikely(ret)) + return (int) -1; + return val; + } +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to int"); + return (int) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to int"); + return (int) -1; +} + +/* PyObjectVectorCallKwBuilder */ +#if CYTHON_VECTORCALL +static int __Pyx_VectorcallBuilder_AddArg(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_PyObject_FastCallDict; + if (__Pyx_PyTuple_SET_ITEM(builder, n, key) != (0)) return -1; + Py_INCREF(key); + args[n] = value; + return 0; +} +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + (void)__Pyx_VectorcallBuilder_AddArgStr; + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return __Pyx_VectorcallBuilder_AddArg(key, value, builder, args, n); +} +static int __Pyx_VectorcallBuilder_AddArgStr(const char *key, PyObject *value, PyObject *builder, PyObject **args, int n) { + PyObject *pyKey = PyUnicode_FromString(key); + if (!pyKey) return -1; + return __Pyx_VectorcallBuilder_AddArg(pyKey, value, builder, args, n); +} +#else // CYTHON_VECTORCALL +CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyObject *value, PyObject *builder, CYTHON_UNUSED PyObject **args, CYTHON_UNUSED int n) { + if (unlikely(!PyUnicode_Check(key))) { + PyErr_SetString(PyExc_TypeError, "keywords must be strings"); + return -1; + } + return PyDict_SetItem(builder, key, value); +} +#endif + +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(int value) { +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wconversion" +#endif + const int neg_one = (int) -1, const_zero = (int) 0; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic pop +#endif + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(int) < sizeof(long)) { + return PyLong_FromLong((long) value); + } else if (sizeof(int) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(int) <= sizeof(long)) { + return PyLong_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; + return _PyLong_FromByteArray(bytes, sizeof(int), + little, !is_unsigned); +#else + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(int)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); + } + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif + } +} + +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wconversion" +#endif + const long neg_one = (long) -1, const_zero = (long) 0; +#ifdef __Pyx_HAS_GCC_DIAGNOSTIC +#pragma GCC diagnostic pop +#endif + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(long) < sizeof(long)) { + return PyLong_FromLong((long) value); + } else if (sizeof(long) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif + } + } else { + if (sizeof(long) <= sizeof(long)) { + return PyLong_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + unsigned char *bytes = (unsigned char *)&value; +#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 + if (is_unsigned) { + return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + } else { + return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + } +#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 + int one = 1; int little = (int)*(unsigned char *)&one; + return _PyLong_FromByteArray(bytes, sizeof(long), + little, !is_unsigned); +#else + int one = 1; int little = (int)*(unsigned char *)&one; + PyObject *from_bytes, *result = NULL, *kwds = NULL; + PyObject *py_bytes = NULL, *order_str = NULL; + from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); + if (!from_bytes) return NULL; + py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); + if (!py_bytes) goto limited_bad; + order_str = PyUnicode_FromString(little ? "little" : "big"); + if (!order_str) goto limited_bad; + { + PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; + if (!is_unsigned) { + kwds = __Pyx_MakeVectorcallBuilderKwds(1); + if (!kwds) goto limited_bad; + if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; + } + result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); + } + limited_bad: + Py_XDECREF(kwds); + Py_XDECREF(order_str); + Py_XDECREF(py_bytes); + Py_XDECREF(from_bytes); + return result; +#endif } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to int"); - return (int) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to int"); - return (int) -1; } +/* FormatTypeName */ +#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 +static __Pyx_TypeName +__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) +{ + PyObject *module = NULL, *name = NULL, *result = NULL; + #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 + name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_qualname); + #else + name = PyType_GetQualName(tp); + #endif + if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; + module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, + __pyx_mstate_global->__pyx_n_u_module_3); + if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; + if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { + result = name; + name = NULL; + goto done; + } + result = PyUnicode_FromFormat("%U.%U", module, name); + if (unlikely(result == NULL)) goto bad; + done: + Py_XDECREF(name); + Py_XDECREF(module); + return result; + bad: + PyErr_Clear(); + if (name) { + result = name; + name = NULL; + } else { + result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__3); + } + goto done; +} +#endif + /* CIntFromPy */ static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { #ifdef __Pyx_HAS_GCC_DIAGNOSTIC @@ -21575,116 +19929,114 @@ static CYTHON_INLINE long __Pyx_PyLong_As_long(PyObject *x) { return (long) -1; } -/* CIntToPy */ -static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(long value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const long neg_one = (long) -1, const_zero = (long) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(long) < sizeof(long)) { - return PyLong_FromLong((long) value); - } else if (sizeof(long) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#if defined(HAVE_LONG_LONG) && !CYTHON_COMPILING_IN_PYPY - } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif +/* RaiseException */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { + PyObject* owned_instance = NULL; + if (tb == Py_None) { + tb = 0; + } else if (tb && !PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto bad; + } + if (value == Py_None) + value = 0; + if (PyExceptionInstance_Check(type)) { + if (value) { + PyErr_SetString(PyExc_TypeError, + "instance exception may not have a separate value"); + goto bad; } - } else { - if (sizeof(long) <= sizeof(long)) { - return PyLong_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif + value = type; + type = (PyObject*) Py_TYPE(value); + } else if (PyExceptionClass_Check(type)) { + PyObject *instance_class = NULL; + if (value && PyExceptionInstance_Check(value)) { + instance_class = (PyObject*) Py_TYPE(value); + if (instance_class != type) { + int is_subclass = PyObject_IsSubclass(instance_class, type); + if (!is_subclass) { + instance_class = NULL; + } else if (unlikely(is_subclass == -1)) { + goto bad; + } else { + type = instance_class; + } + } + } + if (!instance_class) { + PyObject *args; + if (!value) + args = PyTuple_New(0); + else if (PyTuple_Check(value)) { + Py_INCREF(value); + args = value; + } else + args = PyTuple_Pack(1, value); + if (!args) + goto bad; + owned_instance = PyObject_Call(type, args, NULL); + Py_DECREF(args); + if (!owned_instance) + goto bad; + value = owned_instance; + if (!PyExceptionInstance_Check(value)) { + PyErr_Format(PyExc_TypeError, + "calling %R should have returned an instance of " + "BaseException, not %R", + type, Py_TYPE(value)); + goto bad; + } } + } else { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto bad; } - { - unsigned char *bytes = (unsigned char *)&value; -#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4 - if (is_unsigned) { - return PyLong_FromUnsignedNativeBytes(bytes, sizeof(value), -1); + if (cause) { + PyObject *fixed_cause; + if (cause == Py_None) { + fixed_cause = NULL; + } else if (PyExceptionClass_Check(cause)) { + fixed_cause = PyObject_CallObject(cause, NULL); + if (fixed_cause == NULL) + goto bad; + } else if (PyExceptionInstance_Check(cause)) { + fixed_cause = cause; + Py_INCREF(fixed_cause); } else { - return PyLong_FromNativeBytes(bytes, sizeof(value), -1); + PyErr_SetString(PyExc_TypeError, + "exception causes must derive from " + "BaseException"); + goto bad; } -#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000 - int one = 1; int little = (int)*(unsigned char *)&one; - return _PyLong_FromByteArray(bytes, sizeof(long), - little, !is_unsigned); -#else - int one = 1; int little = (int)*(unsigned char *)&one; - PyObject *from_bytes, *result = NULL, *kwds = NULL; - PyObject *py_bytes = NULL, *order_str = NULL; - from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes"); - if (!from_bytes) return NULL; - py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long)); - if (!py_bytes) goto limited_bad; - order_str = PyUnicode_FromString(little ? "little" : "big"); - if (!order_str) goto limited_bad; - { - PyObject *args[3+(CYTHON_VECTORCALL ? 1 : 0)] = { NULL, py_bytes, order_str }; - if (!is_unsigned) { - kwds = __Pyx_MakeVectorcallBuilderKwds(1); - if (!kwds) goto limited_bad; - if (__Pyx_VectorcallBuilder_AddArgStr("signed", __Pyx_NewRef(Py_True), kwds, args+3, 0) < 0) goto limited_bad; - } - result = __Pyx_Object_Vectorcall_CallFromBuilder(from_bytes, args+1, 2 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds); + PyException_SetCause(value, fixed_cause); + } + PyErr_SetObject(type, value); + if (tb) { +#if PY_VERSION_HEX >= 0x030C00A6 + PyException_SetTraceback(value, tb); +#elif CYTHON_FAST_THREAD_STATE + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject* tmp_tb = tstate->curexc_traceback; + if (tb != tmp_tb) { + Py_INCREF(tb); + tstate->curexc_traceback = tb; + Py_XDECREF(tmp_tb); } - limited_bad: - Py_XDECREF(kwds); - Py_XDECREF(order_str); - Py_XDECREF(py_bytes); - Py_XDECREF(from_bytes); - return result; +#else + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); + Py_INCREF(tb); + PyErr_Restore(tmp_type, tmp_value, tb); + Py_XDECREF(tmp_tb); #endif } +bad: + Py_XDECREF(owned_instance); + return; } -/* FormatTypeName */ -#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000 -static __Pyx_TypeName -__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp) -{ - PyObject *module = NULL, *name = NULL, *result = NULL; - #if __PYX_LIMITED_VERSION_HEX < 0x030b0000 - name = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_mstate_global->__pyx_n_u_qualname); - #else - name = PyType_GetQualName(tp); - #endif - if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) goto bad; - module = __Pyx_PyObject_GetAttrStr((PyObject *)tp, - __pyx_mstate_global->__pyx_n_u_module_3); - if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module))) goto bad; - if (PyUnicode_CompareWithASCIIString(module, "builtins") == 0) { - result = name; - name = NULL; - goto done; - } - result = PyUnicode_FromFormat("%U.%U", module, name); - if (unlikely(result == NULL)) goto bad; - done: - Py_XDECREF(name); - Py_XDECREF(module); - return result; - bad: - PyErr_Clear(); - if (name) { - result = name; - name = NULL; - } else { - result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u__3); - } - goto done; -} -#endif - /* PyObjectCall2Args */ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { PyObject *args[3] = {NULL, arg1, arg2}; diff --git a/src/hunter/_event.pxd b/src/hunter/_event.pxd index f55a1bc..ed07b5d 100644 --- a/src/hunter/_event.pxd +++ b/src/hunter/_event.pxd @@ -37,7 +37,6 @@ cdef extern from "vendor/_compat.h": @cython.final -@cython.auto_pickle(False) cdef class Event: cdef: readonly FrameType frame diff --git a/src/hunter/_event.pyx b/src/hunter/_event.pyx index 57eb851..9933276 100644 --- a/src/hunter/_event.pyx +++ b/src/hunter/_event.pyx @@ -1,4 +1,6 @@ # cython: linetrace=True, language_level=3str, c_string_encoding=ascii, freethreading_compatible=True +cimport cython + from functools import partial from linecache import getline from linecache import getlines @@ -41,6 +43,7 @@ cdef const PyObject** KIND_NAMES = [ ] +@cython.auto_pickle(False) cdef class Event: """ A wrapper object for Frame objects. Instances of this are passed to your custom functions or predicates. diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index bebc9ef..f5f446b 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -1641,8 +1641,8 @@ typedef PyObject *(*__pyx_t_6hunter_11_predicates_Event_getter_typedef)(struct _ * * * @cython.final # <<<<<<<<<<<<<< - * @cython.auto_pickle(False) * cdef class Event: + * cdef: */ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD @@ -1927,8 +1927,8 @@ struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__l * * * @cython.final # <<<<<<<<<<<<<< - * @cython.auto_pickle(False) * cdef class Event: + * cdef: */ struct __pyx_vtabstruct_6hunter_6_event_Event { @@ -32429,7 +32429,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 2, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 0, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32774,7 +32774,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32797,7 +32797,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32809,7 +32809,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32830,7 +32830,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32863,7 +32863,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32896,7 +32896,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32908,7 +32908,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32929,7 +32929,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32941,7 +32941,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32962,7 +32962,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33018,7 +33018,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33030,7 +33030,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33051,7 +33051,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33064,7 +33064,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33072,7 +33072,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33085,7 +33085,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,32,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33093,7 +33093,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33106,7 +33106,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.condition = __pyx_state[0]; __pyx_result.origin_calls = __pyx_state[1]; __pyx_result.origin_depth = __pyx_state[2]; __pyx_result.predicate = __pyx_state[3]; __pyx_result.watermark = __pyx_state[4] * if len(__pyx_state) > 5 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,31,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33114,7 +33114,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33127,7 +33127,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33135,7 +33135,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33148,7 +33148,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33156,7 +33156,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33177,7 +33177,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33190,7 +33190,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 @@ -33198,12 +33198,12 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 2, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33213,7 +33213,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(2, 0); + __Pyx_TraceExceptionUnwind(0, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index cbe9c9c..4554dcb 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -1624,8 +1624,8 @@ typedef PyObject *FrameType; * * * @cython.final # <<<<<<<<<<<<<< - * @cython.auto_pickle(False) * cdef class Event: + * cdef: */ struct __pyx_obj_6hunter_6_event_Event { PyObject_HEAD @@ -1795,8 +1795,8 @@ struct __pyx_obj_6hunter_7_tracer_Tracer { * * * @cython.final # <<<<<<<<<<<<<< - * @cython.auto_pickle(False) * cdef class Event: + * cdef: */ struct __pyx_vtabstruct_6hunter_6_event_Event { From ec5f723f7c8aa72f4a27a1df1d5c09c6607fca0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 12:05:50 +0300 Subject: [PATCH 43/80] Can't build debug mode on github actions. --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 0a22ab0..075735a 100644 --- a/tox.ini +++ b/tox.ini @@ -56,7 +56,7 @@ deps = ipdb commands = {py38,py39,py310,py311,py312,py313}: python tests/setup.py clean --all - {py38,py39,py310,py311,py312,py313}: python tests/setup.py build_ext --force --inplace --debug + {py38,py39,py310,py311,py312,py313}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From d9f11cd1d76bd3e59ac26f26da64310a553fa82e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 12:08:45 +0300 Subject: [PATCH 44/80] Update changelog. --- CHANGELOG.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 61b64d3..ffa4e30 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,14 @@ Changelog ========= +3.8.0 (2025-07-10) +------------------ + +* Drop support for Python 3.8. +* Added support for Python 3.13. +* Fixed issues with latest Cython release (3.1.2). +* Simplified the `Event.__init__` so doesn't require a Tracer instance anymore. + 3.7.0 (2024-05-02) ------------------ From 7ea39c433b833cb5574fce2fcbfa3a4e3a26e96c Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Fri, 4 Jul 2025 11:45:12 +1000 Subject: [PATCH 45/80] Use sys.executable everywhere in test_remote Not all systems use python to run the interpreter, and this also doesn't help if the user has multiple interpreters in their path. Use sys.executable like the other test case in this file. --- tests/test_remote.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/test_remote.py b/tests/test_remote.py index 6574cc8..76e2869 100644 --- a/tests/test_remote.py +++ b/tests/test_remote.py @@ -15,7 +15,7 @@ @pytest.mark.skipif('platform.system() == "Windows"') def test_manhole(): - with TestProcess('python', '-msamplemanhole') as target, dump_on_error(target.read): + with TestProcess(sys.executable, '-msamplemanhole') as target, dump_on_error(target.read): wait_for_strings(target.read, TIMEOUT, 'Oneshot activation is done by signal') with TestProcess('hunter-trace', '-p', str(target.proc.pid), 'stdlib=False') as tracer, dump_on_error(tracer.read): @@ -32,7 +32,7 @@ def test_manhole(): @pytest.mark.skipif('platform.system() == "Windows"') def test_manhole_reattach(): - with TestProcess('python', '-msamplemanhole') as target, dump_on_error(target.read): + with TestProcess(sys.executable, '-msamplemanhole') as target, dump_on_error(target.read): wait_for_strings(target.read, TIMEOUT, 'Oneshot activation is done by signal') with TestProcess('hunter-trace', '-p', str(target.proc.pid), 'stdlib=False') as tracer, dump_on_error(tracer.read): @@ -61,7 +61,7 @@ def test_manhole_reattach(): @pytest.mark.skipif('platform.system() == "Windows"') def test_manhole_clean_exit(): - with TestProcess('python', '-msamplemanhole') as target, dump_on_error(target.read): + with TestProcess(sys.executable, '-msamplemanhole') as target, dump_on_error(target.read): wait_for_strings(target.read, TIMEOUT, 'Oneshot activation is done by signal') with TestProcess('hunter-trace', '-p', str(target.proc.pid), 'stdlib=False') as tracer, dump_on_error(tracer.read): @@ -90,7 +90,7 @@ def test_manhole_clean_exit(): @pytest.mark.skipif('platform.python_implementation() == "PyPy"') @pytest.mark.skipif('not which("gdb")') def test_gdb(): - with TestProcess('python', '-msamplemanhole') as target, dump_on_error(target.read): + with TestProcess(sys.executable, '-msamplemanhole') as target, dump_on_error(target.read): with TestProcess('hunter-trace', '-p', str(target.proc.pid), '--gdb', 'stdlib=False') as tracer, dump_on_error(tracer.read): wait_for_strings( tracer.read, From c8415acbdb01ba6c4b6ab68a929cee9727f62c33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 12:53:15 +0300 Subject: [PATCH 46/80] Fix some doc build issues. --- docs/conf.py | 4 ++-- docs/configuration.rst | 2 +- docs/reference.rst | 8 ++++---- tox.ini | 2 -- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index f5bea50..9757631 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -21,9 +21,9 @@ author = 'Ionel Cristian Mărieș' copyright = f'{year}, {author}' try: - from pkg_resources import get_distribution + from importlib import metadata - version = release = get_distribution('hunter').version + version = release = metadata.version('hunter') except Exception: import traceback diff --git a/docs/configuration.rst b/docs/configuration.rst index 20d45a7..de4f3df 100644 --- a/docs/configuration.rst +++ b/docs/configuration.rst @@ -4,7 +4,7 @@ Configuration Default predicates and action kwargs defaults can be configured via a ``PYTHONHUNTERCONFIG`` environment variable. -All the :ref:`actions ` kwargs: +All the :ref:`actions` kwargs: * ``klass`` * ``stream`` diff --git a/docs/reference.rst b/docs/reference.rst index cf12c4f..f400a13 100644 --- a/docs/reference.rst +++ b/docs/reference.rst @@ -3,7 +3,7 @@ Reference .. _helpers-summary: -.. highlights:: :ref:`reference:Helpers` +.. highlights:: :ref:`Helpers` .. autosummary:: @@ -17,7 +17,7 @@ Reference hunter.Or hunter.Q -.. highlights:: :ref:`reference:Actions` +.. highlights:: :ref:`Actions` .. autosummary:: @@ -36,7 +36,7 @@ Reference The following (Predicates and Internals) have Cython implementations in modules prefixed with "_". They should be imported from the ``hunter`` module, not ``hunter.something`` to be sure you get the best available implementation. -.. highlights:: :ref:`reference:Predicates` +.. highlights:: :ref:`Predicates` .. autosummary:: @@ -48,7 +48,7 @@ Reference hunter.predicates.Query hunter.predicates.When -.. highlights:: :ref:`reference:Internals` +.. highlights:: :ref:`Internals` .. autosummary:: diff --git a/tox.ini b/tox.ini index 075735a..87b1313 100644 --- a/tox.ini +++ b/tox.ini @@ -86,8 +86,6 @@ commands = [testenv:docs] usedevelop = true -install_command = - python -m pip install --no-use-pep517 {opts} {packages} deps = -r{toxinidir}/docs/requirements.txt commands = From 01070d01f0f47c15b85d6e89f5c766adbd1f2098 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 13:07:36 +0300 Subject: [PATCH 47/80] Clean this up, and skip pth tests - it's hopeless to test pth behavior in a develop env with these nonstop packaging deprecations/feature deletions. Also reformat those `' [' 'backlog' ']'` to something that ruff doesn't undo (the intention there was to avoid catching that in output matching from some tests). --- pyproject.toml | 2 -- tests/sample7args.py | 2 +- tests/test_integration.py | 6 +++++- tests/test_tracer.py | 4 +++- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index f99d09a..3b7fcd0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,8 +5,6 @@ requires = [ "setuptools_scm>=3.3.1,!=4.0.0", ] build-backend = "setuptools.build_meta" -#build-backend = "backend" -#backend-path = ["build_backend"] [tool.setuptools_scm] diff --git a/tests/sample7args.py b/tests/sample7args.py index a6934c1..3a20dfb 100644 --- a/tests/sample7args.py +++ b/tests/sample7args.py @@ -47,7 +47,7 @@ def six(): Backlog( stack=15, vars=True, - action=DebugCallPrinter(' [' 'backlog' ']'), + action=DebugCallPrinter(' [' + 'backlog' + ']'), function='five', ).filter(~Q(function='six')), action=DebugCallPrinter, diff --git a/tests/test_integration.py b/tests/test_integration.py index 3095873..03e05a2 100644 --- a/tests/test_integration.py +++ b/tests/test_integration.py @@ -36,6 +36,7 @@ pytest_plugins = ('pytester',) +@pytest.mark.xfail('cover' in os.getenv('TOX_ENV_NAME', ''), reason='develop envs are incomplete') def test_pth_activation(): module_name = os.path.__name__ expected_module = '{0}'.format(module_name) @@ -53,6 +54,7 @@ def test_pth_activation(): assert expected_call.encode() in output +@pytest.mark.xfail('cover' in os.getenv('TOX_ENV_NAME', ''), reason='develop envs are incomplete') def test_pth_sample4(): env = dict(os.environ, PYTHONHUNTER='CodePrinter') env.pop('COVERAGE_PROCESS_START', None) @@ -68,6 +70,7 @@ def test_pth_sample4(): assert output +@pytest.mark.xfail('cover' in os.getenv('TOX_ENV_NAME', ''), reason='develop envs are incomplete') def test_pth_sample2(LineMatcher): env = dict(os.environ, PYTHONHUNTER="module='__main__',action=CodePrinter") env.pop('COVERAGE_PROCESS_START', None) @@ -370,6 +373,7 @@ def test_depth_limit(LineMatcher, depth): assert 'five' not in output +@pytest.mark.xfail('cover' in os.getenv('TOX_ENV_NAME', ''), reason='develop envs are incomplete') @pytest.mark.parametrize('depth', [2, 3, 4], ids='depth_lt={}'.format) def test_depth_limit_subprocess(LineMatcher, depth): hunter_env = "action=CallPrinter,depth_lt={!r},kind_in=['call','return'],stdlib=0".format(depth + 1) @@ -664,7 +668,7 @@ def test_backlog(LineMatcher, stack): size=19, stack=stack, vars=False, - action=DebugCallPrinter(' [' 'backlog' ']', stream=buff), + action=DebugCallPrinter(' [' + 'backlog' + ']', stream=buff), ).filter(~Q(function='six')), action=DebugCallPrinter(stream=buff), ): diff --git a/tests/test_tracer.py b/tests/test_tracer.py index 26a87e1..fe120a2 100644 --- a/tests/test_tracer.py +++ b/tests/test_tracer.py @@ -1769,7 +1769,9 @@ def test_backlog_specific(LineMatcher, size, stack, vars, condition, filter): from sample7args import one with trace( - Backlog(size=size, stack=stack, vars=vars, action=DebugCallPrinter(' [' 'backlog' ']', stream=buff), filter=filter, **condition), + Backlog( + size=size, stack=stack, vars=vars, action=DebugCallPrinter(' [' + 'backlog' + ']', stream=buff), filter=filter, **condition + ), action=DebugCallPrinter(stream=buff), ): one() From 5e5630e9a9d935d69534d29f57ec88abf8015466 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 13:30:41 +0300 Subject: [PATCH 48/80] Twine/cryptography is still busted on freethreading. --- .github/workflows/github-actions.yml | 3 ++- ci/templates/.github/workflows/github-actions.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 094b3c1..81ac7cb 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1244,7 +1244,8 @@ jobs: verbose: true flags: ${{ matrix.tox_env }} - name: check wheel - if: matrix.cibw_build + if: > + !matrix.cibw_ft && matrix.cibw_build run: twine check wheelhouse/*.whl - name: upload wheel uses: actions/upload-artifact@v4 diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 66c8bde..3e86ec3 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -118,7 +118,8 @@ jobs: verbose: true flags: {{ '${{ matrix.tox_env }}' }} - name: check wheel - if: matrix.cibw_build + if: > + !matrix.cibw_ft && matrix.cibw_build run: twine check wheelhouse/*.whl - name: upload wheel uses: actions/upload-artifact@v4 From ee26153d276f19f54a4c16777abc4356e425d919 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 9 Jul 2025 13:38:06 +0300 Subject: [PATCH 49/80] Don't install cython on pypy (breaks coverage with it's plugin). Also build exts on freethreading. --- tox.ini | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tox.ini b/tox.ini index 87b1313..073a59b 100644 --- a/tox.ini +++ b/tox.ini @@ -14,7 +14,7 @@ envlist = clean, check, docs, - {py39,py310,py311,py312,py313,py313-ft,pypy39,pypy310}-{pure,cython}-{cover,nocov}, + {py39,py310,py311,py312,py313,py313-ft,pypy39,pypy310,pypy310}-{pure,cython}-{cover,nocov}, report ignore_basepython_conflict = true @@ -45,7 +45,7 @@ deps = pytest pytest-benchmark cover: pytest-cov - cython + {py38,py39,py310,py311,py312,py313,py313ft}: cython manhole process-tests setuptools-scm @@ -55,8 +55,8 @@ deps = tzdata ipdb commands = - {py38,py39,py310,py311,py312,py313}: python tests/setup.py clean --all - {py38,py39,py310,py311,py312,py313}: python tests/setup.py build_ext --force --inplace + {py38,py39,py310,py311,py312,py313,py313ft}: python tests/setup.py clean --all + {py38,py39,py310,py311,py312,py313,py313ft}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From e39c915a3278205e5eb798cd18a5baac9d75d31a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 02:10:31 +0300 Subject: [PATCH 50/80] Try loosening ptrace security. --- .github/workflows/github-actions.yml | 1 + ci/templates/.github/workflows/github-actions.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 81ac7cb..b8e6b05 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1213,6 +1213,7 @@ jobs: !matrix.cibw_build && matrix.os == 'ubuntu' run: > sudo apt-get install gdb + echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope - name: cibw build and test if: matrix.cibw_build run: cibuildwheel diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 3e86ec3..1338238 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -87,6 +87,7 @@ jobs: !matrix.cibw_build && matrix.os == 'ubuntu' run: > sudo apt-get install gdb + echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope - name: cibw build and test if: matrix.cibw_build run: cibuildwheel From 7877e11bd270d971f79099bc9e729461475a0d24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 02:30:20 +0300 Subject: [PATCH 51/80] Try setting CIBW_CONTAINER_ENGINE with ptrace options as well. --- .github/workflows/github-actions.yml | 1 + ci/templates/.github/workflows/github-actions.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index b8e6b05..5bee9ac 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1222,6 +1222,7 @@ jobs: CIBW_ARCHS: '${{ matrix.cibw_arch }}' CIBW_BUILD: '${{ matrix.cibw_build }}' CIBW_FREE_THREADED_SUPPORT: '${{ matrix.cibw_ft }}' + CIBW_CONTAINER_ENGINE: "docker; create_args: --cap-add=SYS_PTRACE" CIBW_BUILD_VERBOSITY: '3' CIBW_TEST_REQUIRES: > tox diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 1338238..8c20c38 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -96,6 +96,7 @@ jobs: CIBW_ARCHS: '{{ '${{ matrix.cibw_arch }}' }}' CIBW_BUILD: '{{ '${{ matrix.cibw_build }}' }}' CIBW_FREE_THREADED_SUPPORT: '{{ '${{ matrix.cibw_ft }}' }}' + CIBW_CONTAINER_ENGINE: "docker; create_args: --cap-add=SYS_PTRACE" CIBW_BUILD_VERBOSITY: '3' CIBW_TEST_REQUIRES: > tox From 7071bf88071e73c23e35f6196a3398fb6dc434ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 17:26:42 +0300 Subject: [PATCH 52/80] Only install twine if needed. --- .github/workflows/github-actions.yml | 6 ++++-- ci/requirements.txt | 1 - ci/templates/.github/workflows/github-actions.yml | 6 ++++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 5bee9ac..d282cb7 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1211,7 +1211,7 @@ jobs: - name: install dependencies (gdb) if: > !matrix.cibw_build && matrix.os == 'ubuntu' - run: > + run: | sudo apt-get install gdb echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope - name: cibw build and test @@ -1248,7 +1248,9 @@ jobs: - name: check wheel if: > !matrix.cibw_ft && matrix.cibw_build - run: twine check wheelhouse/*.whl + run: | + python -mpip install --progress-bar=off twine + twine check wheelhouse/*.whl - name: upload wheel uses: actions/upload-artifact@v4 if: matrix.cibw_build diff --git a/ci/requirements.txt b/ci/requirements.txt index 48e3b0c..9603ab0 100644 --- a/ci/requirements.txt +++ b/ci/requirements.txt @@ -2,4 +2,3 @@ virtualenv>=20.4.7 pip>=19.1.1 setuptools>=18.0.1 tox -twine diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 8c20c38..7c6c28f 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -85,7 +85,7 @@ jobs: - name: install dependencies (gdb) if: > !matrix.cibw_build && matrix.os == 'ubuntu' - run: > + run: | sudo apt-get install gdb echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope - name: cibw build and test @@ -122,7 +122,9 @@ jobs: - name: check wheel if: > !matrix.cibw_ft && matrix.cibw_build - run: twine check wheelhouse/*.whl + run: | + python -mpip install --progress-bar=off twine + twine check wheelhouse/*.whl - name: upload wheel uses: actions/upload-artifact@v4 if: matrix.cibw_build From d4e6bdc594a7f9c75549dc45c4eccb4f44d74909 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 17:44:34 +0300 Subject: [PATCH 53/80] Seems the freethreading requires an explicit opt-in. --- .github/workflows/github-actions.yml | 1 + ci/templates/.github/workflows/github-actions.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index d282cb7..d91dbd8 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1223,6 +1223,7 @@ jobs: CIBW_BUILD: '${{ matrix.cibw_build }}' CIBW_FREE_THREADED_SUPPORT: '${{ matrix.cibw_ft }}' CIBW_CONTAINER_ENGINE: "docker; create_args: --cap-add=SYS_PTRACE" + CIBW_ENABLE: cpython-freethreading CIBW_BUILD_VERBOSITY: '3' CIBW_TEST_REQUIRES: > tox diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 7c6c28f..ad0c0e7 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -97,6 +97,7 @@ jobs: CIBW_BUILD: '{{ '${{ matrix.cibw_build }}' }}' CIBW_FREE_THREADED_SUPPORT: '{{ '${{ matrix.cibw_ft }}' }}' CIBW_CONTAINER_ENGINE: "docker; create_args: --cap-add=SYS_PTRACE" + CIBW_ENABLE: cpython-freethreading CIBW_BUILD_VERBOSITY: '3' CIBW_TEST_REQUIRES: > tox From c2c78a052f326df2698a85688bbd27f8fa440bbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 18:01:07 +0300 Subject: [PATCH 54/80] Conditionally enable the cython plugin and strip the pypy/cython envs. --- .coveragerc | 2 +- .github/workflows/github-actions.yml | 114 --------------------------- tox.ini | 4 +- 3 files changed, 4 insertions(+), 116 deletions(-) diff --git a/.coveragerc b/.coveragerc index 2d8a895..a9a2ce8 100644 --- a/.coveragerc +++ b/.coveragerc @@ -7,7 +7,7 @@ source = src tests parallel = true -plugins = Cython.Coverage +plugins = ${COVERAGE_PLUGIN} [report] show_missing = true diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index d91dbd8..03b0509 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -1018,63 +1018,6 @@ jobs: cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'pypy39-cython-cover (ubuntu/x86_64)' - artifact: 'pypy39-cython-ubuntu-x86_64' - python: 'pypy-3.9' - toxpython: 'pypy3.9' - python_arch: 'x64' - tox_env: 'pypy39-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'pypy39-cython-cover (windows/AMD64)' - artifact: 'pypy39-cython-windows-AMD64' - python: 'pypy-3.9' - toxpython: 'pypy3.9' - python_arch: 'x64' - tox_env: 'pypy39-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'pypy39-cython-cover (macos/arm64)' - artifact: 'pypy39-cython-macos-arm64' - python: 'pypy-3.9' - toxpython: 'pypy3.9' - python_arch: 'arm64' - tox_env: 'pypy39-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'pypy39-cython-nocov (ubuntu/x86_64/manylinux)' - artifact: 'pypy39-cython-ubuntu-x86_64-manylinux' - python: 'pypy-3.9' - toxpython: 'pypy3.9' - python_arch: 'x64' - tox_env: 'pypy39-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'pypy39-cython-nocov (windows/AMD64)' - artifact: 'pypy39-cython-windows-AMD64' - python: 'pypy-3.9' - toxpython: 'pypy3.9' - python_arch: 'x64' - tox_env: 'pypy39-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'pypy39-cython-nocov (macos/arm64)' - artifact: 'pypy39-cython-macos-arm64' - python: 'pypy-3.9' - toxpython: 'pypy3.9' - python_arch: 'arm64' - tox_env: 'pypy39-cython-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - name: 'pypy310-pure-cover (ubuntu/x86_64)' artifact: 'pypy310-pure-ubuntu-x86_64' python: 'pypy-3.10' @@ -1132,63 +1075,6 @@ jobs: cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'pypy310-cython-cover (ubuntu/x86_64)' - artifact: 'pypy310-cython-ubuntu-x86_64' - python: 'pypy-3.10' - toxpython: 'pypy3.10' - python_arch: 'x64' - tox_env: 'pypy310-cython-cover' - cover: true - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'pypy310-cython-cover (windows/AMD64)' - artifact: 'pypy310-cython-windows-AMD64' - python: 'pypy-3.10' - toxpython: 'pypy3.10' - python_arch: 'x64' - tox_env: 'pypy310-cython-cover' - cover: true - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'pypy310-cython-cover (macos/arm64)' - artifact: 'pypy310-cython-macos-arm64' - python: 'pypy-3.10' - toxpython: 'pypy3.10' - python_arch: 'arm64' - tox_env: 'pypy310-cython-cover' - cover: true - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' - - name: 'pypy310-cython-nocov (ubuntu/x86_64/manylinux)' - artifact: 'pypy310-cython-ubuntu-x86_64-manylinux' - python: 'pypy-3.10' - toxpython: 'pypy3.10' - python_arch: 'x64' - tox_env: 'pypy310-cython-nocov' - cibw_arch: 'x86_64' - cibw_build: false - os: 'ubuntu-latest' - - name: 'pypy310-cython-nocov (windows/AMD64)' - artifact: 'pypy310-cython-windows-AMD64' - python: 'pypy-3.10' - toxpython: 'pypy3.10' - python_arch: 'x64' - tox_env: 'pypy310-cython-nocov' - cibw_arch: 'AMD64' - cibw_build: false - os: 'windows-latest' - - name: 'pypy310-cython-nocov (macos/arm64)' - artifact: 'pypy310-cython-macos-arm64' - python: 'pypy-3.10' - toxpython: 'pypy3.10' - python_arch: 'arm64' - tox_env: 'pypy310-cython-nocov' - cibw_arch: 'arm64' - cibw_build: false - os: 'macos-latest' steps: - uses: docker/setup-qemu-action@v3 if: matrix.cibw_arch == 'aarch64' diff --git a/tox.ini b/tox.ini index 073a59b..072d117 100644 --- a/tox.ini +++ b/tox.ini @@ -14,7 +14,8 @@ envlist = clean, check, docs, - {py39,py310,py311,py312,py313,py313-ft,pypy39,pypy310,pypy310}-{pure,cython}-{cover,nocov}, + {py39,py310,py311,py312,py313,py313-ft}-{pure,cython}-{cover,nocov}, + {pypy39,pypy310,pypy310}-{pure}-{cover,nocov}, report ignore_basepython_conflict = true @@ -36,6 +37,7 @@ setenv = {docs,pure}: PUREPYTHONHUNTER=yes {docs,pure}: SETUPPY_FORCE_PURE=yes cover: SETUPPY_EXT_COVERAGE=yes + cython-cover: COVERAGE_PLUGIN=Cython.Coverage passenv = * usedevelop = From 6e2476d6699f53539367c479381aa96c1873a342 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 18:59:50 +0300 Subject: [PATCH 55/80] Try fix freethreaded config. --- .github/workflows/github-actions.yml | 96 +++++++++---------- .../.github/workflows/github-actions.yml | 14 +-- tox.ini | 5 +- 3 files changed, 58 insertions(+), 57 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 03b0509..9c09022 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -804,159 +804,159 @@ jobs: cibw_build: 'cp313-*' cibw_ft: 'false' os: 'macos-latest' - - name: 'py313-ft-pure-cover (ubuntu/x86_64)' - artifact: 'py313-ft-pure-ubuntu-x86_64' + - name: 'py313t-pure-cover (ubuntu/x86_64)' + artifact: 'py313t-pure-ubuntu-x86_64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-pure-cover' + tox_env: 'py313t-pure-cover' cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'py313-ft-pure-cover (windows/AMD64)' - artifact: 'py313-ft-pure-windows-AMD64' + - name: 'py313t-pure-cover (windows/AMD64)' + artifact: 'py313t-pure-windows-AMD64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-pure-cover' + tox_env: 'py313t-pure-cover' cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py313-ft-pure-cover (macos/arm64)' - artifact: 'py313-ft-pure-macos-arm64' + - name: 'py313t-pure-cover (macos/arm64)' + artifact: 'py313t-pure-macos-arm64' python: '3.13' toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' - tox_env: 'py313-ft-pure-cover' + tox_env: 'py313t-pure-cover' cover: true cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'py313-ft-pure-nocov (ubuntu/x86_64)' - artifact: 'py313-ft-pure-ubuntu-x86_64' + - name: 'py313t-pure-nocov (ubuntu/x86_64)' + artifact: 'py313t-pure-ubuntu-x86_64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-pure-nocov' + tox_env: 'py313t-pure-nocov' cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'py313-ft-pure-nocov (windows/AMD64)' - artifact: 'py313-ft-pure-windows-AMD64' + - name: 'py313t-pure-nocov (windows/AMD64)' + artifact: 'py313t-pure-windows-AMD64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-pure-nocov' + tox_env: 'py313t-pure-nocov' cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py313-ft-pure-nocov (macos/arm64)' - artifact: 'py313-ft-pure-macos-arm64' + - name: 'py313t-pure-nocov (macos/arm64)' + artifact: 'py313t-pure-macos-arm64' python: '3.13' toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' - tox_env: 'py313-ft-pure-nocov' + tox_env: 'py313t-pure-nocov' cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'py313-ft-cython-cover (ubuntu/x86_64)' - artifact: 'py313-ft-cython-ubuntu-x86_64' + - name: 'py313t-cython-cover (ubuntu/x86_64)' + artifact: 'py313t-cython-ubuntu-x86_64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-cover' + tox_env: 'py313t-cython-cover' cover: true cibw_arch: 'x86_64' cibw_build: false os: 'ubuntu-latest' - - name: 'py313-ft-cython-cover (windows/AMD64)' - artifact: 'py313-ft-cython-windows-AMD64' + - name: 'py313t-cython-cover (windows/AMD64)' + artifact: 'py313t-cython-windows-AMD64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-cover' + tox_env: 'py313t-cython-cover' cover: true cibw_arch: 'AMD64' cibw_build: false os: 'windows-latest' - - name: 'py313-ft-cython-cover (macos/arm64)' - artifact: 'py313-ft-cython-macos-arm64' + - name: 'py313t-cython-cover (macos/arm64)' + artifact: 'py313t-cython-macos-arm64' python: '3.13' toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' - tox_env: 'py313-ft-cython-cover' + tox_env: 'py313t-cython-cover' cover: true cibw_arch: 'arm64' cibw_build: false os: 'macos-latest' - - name: 'py313-ft-cython-nocov (ubuntu/x86_64/manylinux)' - artifact: 'py313-ft-cython-ubuntu-x86_64-manylinux' + - name: 'py313t-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py313t-cython-ubuntu-x86_64-manylinux' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp313t-*manylinux*' cibw_ft: 'true' os: 'ubuntu-latest' - - name: 'py313-ft-cython-nocov (ubuntu/x86_64/musllinux)' - artifact: 'py313-ft-cython-ubuntu-x86_64-musllinux' + - name: 'py313t-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py313t-cython-ubuntu-x86_64-musllinux' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'x86_64' cibw_build: 'cp313t-*musllinux*' cibw_ft: 'true' os: 'ubuntu-latest' - - name: 'py313-ft-cython-nocov (ubuntu/aarch64/manylinux)' - artifact: 'py313-ft-cython-ubuntu-aarch64-manylinux' + - name: 'py313t-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py313t-cython-ubuntu-aarch64-manylinux' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp313t-*manylinux*' cibw_ft: 'true' os: 'ubuntu-latest' - - name: 'py313-ft-cython-nocov (ubuntu/aarch64/musllinux)' - artifact: 'py313-ft-cython-ubuntu-aarch64-musllinux' + - name: 'py313t-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py313t-cython-ubuntu-aarch64-musllinux' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'aarch64' cibw_build: 'cp313t-*musllinux*' cibw_ft: 'true' os: 'ubuntu-latest' - - name: 'py313-ft-cython-nocov (windows/AMD64)' - artifact: 'py313-ft-cython-windows-AMD64' + - name: 'py313t-cython-nocov (windows/AMD64)' + artifact: 'py313t-cython-windows-AMD64' python: '3.13' toxpython: 'python3.13t' python_arch: 'x64-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'AMD64' cibw_build: 'cp313t-*' cibw_ft: 'true' os: 'windows-latest' - - name: 'py313-ft-cython-nocov (windows/x86)' - artifact: 'py313-ft-cython-windows-x86' + - name: 'py313t-cython-nocov (windows/x86)' + artifact: 'py313t-cython-windows-x86' python: '3.13' toxpython: 'python3.13t' python_arch: 'x86-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'x86' cibw_build: 'cp313t-*' cibw_ft: 'true' os: 'windows-latest' - - name: 'py313-ft-cython-nocov (macos/arm64)' - artifact: 'py313-ft-cython-macos-arm64' + - name: 'py313t-cython-nocov (macos/arm64)' + artifact: 'py313t-cython-macos-arm64' python: '3.13' toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' - tox_env: 'py313-ft-cython-nocov' + tox_env: 'py313t-cython-nocov' cibw_arch: 'arm64' cibw_build: 'cp313t-*' cibw_ft: 'true' diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index ad0c0e7..640dcf5 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -21,15 +21,15 @@ jobs: os: 'ubuntu-latest' {% for env in tox_environments %} {% set prefix = env.split('-')[0] -%} -{% set nogil = 'ft' in env %} +{% set freethreaded = prefix.endswith('t') %} {% if prefix.startswith('pypy') %} {% set python %}pypy-{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% set cpython %}pp{{ prefix[4:5] }}{% endset %} -{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{{ 't' if nogil else '' }}{% endset %} +{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% else %} -{% set python %}{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} +{% set python %}{{ prefix[2] }}.{{ prefix[3:].rstrip('t') }}{% endset %} {% set cpython %}cp{{ prefix[2:] }}{% endset %} -{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{{ 't' if nogil else '' }}{% endset %} +{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} {% endif %} {% for os, python_arch, cibw_arch, wheel_arch, include_cover in [ ['ubuntu', 'x64', 'x86_64', '*manylinux*', True], @@ -47,15 +47,15 @@ jobs: artifact: '{{ env.rsplit('-', 1)[0] }}-{{ os }}-{{ cibw_arch }}{{ name_suffix.replace('/', '-') }}' python: '{{ python }}' toxpython: '{{ toxpython }}' - python_arch: '{{ python_arch }}{% if nogil %}-freethreaded{% endif %}' + python_arch: '{{ python_arch }}{% if freethreaded %}-freethreaded{% endif %}' tox_env: '{{ env }}' {% if 'cover' in env %} cover: true {% endif %} cibw_arch: '{{ cibw_arch }}' {% if env.endswith('cython-nocov') and not prefix.startswith('pypy') %} - cibw_build: '{{ cpython }}{% if nogil %}t{% endif %}-{{ wheel_arch }}' - cibw_ft: '{% if nogil %}true{% else %}false{% endif %}' + cibw_build: '{{ cpython }}-{{ wheel_arch }}' + cibw_ft: '{% if freethreaded %}true{% else %}false{% endif %}' {% else %} cibw_build: false {% endif %} diff --git a/tox.ini b/tox.ini index 072d117..44d0761 100644 --- a/tox.ini +++ b/tox.ini @@ -14,7 +14,7 @@ envlist = clean, check, docs, - {py39,py310,py311,py312,py313,py313-ft}-{pure,cython}-{cover,nocov}, + {py39,py310,py311,py312,py313,py313t}-{pure,cython}-{cover,nocov}, {pypy39,pypy310,pypy310}-{pure}-{cover,nocov}, report ignore_basepython_conflict = true @@ -28,7 +28,7 @@ basepython = py311: {env:TOXPYTHON:python3.11} py312: {env:TOXPYTHON:python3.12} py313: {env:TOXPYTHON:python3.13} - py313ft: {env:TOXPYTHON:python3.13t} + py313t: {env:TOXPYTHON:python3.13t} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests @@ -43,6 +43,7 @@ passenv = usedevelop = cover: true nocov: false +package = wheel deps = pytest pytest-benchmark From 979240dd35b175b22ef03bca0f8f17fa59907da0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 19:07:10 +0300 Subject: [PATCH 56/80] Remove most of the toxpython overrides (seems unnecessary). --- ci/templates/.github/workflows/github-actions.yml | 14 ++++---------- tox.ini | 8 -------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 640dcf5..324ea09 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -10,13 +10,13 @@ jobs: matrix: include: - name: 'check' - python: '3.11' - toxpython: 'python3.11' + python: '3.13' + toxpython: 'python3.13' tox_env: 'check' os: 'ubuntu-latest' - name: 'docs' - python: '3.11' - toxpython: 'python3.11' + python: '3.13' + toxpython: 'python3.13' tox_env: 'docs' os: 'ubuntu-latest' {% for env in tox_environments %} @@ -25,11 +25,9 @@ jobs: {% if prefix.startswith('pypy') %} {% set python %}pypy-{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% set cpython %}pp{{ prefix[4:5] }}{% endset %} -{% set toxpython %}pypy{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% else %} {% set python %}{{ prefix[2] }}.{{ prefix[3:].rstrip('t') }}{% endset %} {% set cpython %}cp{{ prefix[2:] }}{% endset %} -{% set toxpython %}python{{ prefix[2] }}.{{ prefix[3:] }}{% endset %} {% endif %} {% for os, python_arch, cibw_arch, wheel_arch, include_cover in [ ['ubuntu', 'x64', 'x86_64', '*manylinux*', True], @@ -46,7 +44,6 @@ jobs: - name: '{{ env }} ({{ os }}/{{ cibw_arch }}{{ name_suffix }})' artifact: '{{ env.rsplit('-', 1)[0] }}-{{ os }}-{{ cibw_arch }}{{ name_suffix.replace('/', '-') }}' python: '{{ python }}' - toxpython: '{{ toxpython }}' python_arch: '{{ python_arch }}{% if freethreaded %}-freethreaded{% endif %}' tox_env: '{{ env }}' {% if 'cover' in env %} @@ -92,7 +89,6 @@ jobs: if: matrix.cibw_build run: cibuildwheel env: - TOXPYTHON: '{{ '${{ matrix.toxpython }}' }}' CIBW_ARCHS: '{{ '${{ matrix.cibw_arch }}' }}' CIBW_BUILD: '{{ '${{ matrix.cibw_build }}' }}' CIBW_FREE_THREADED_SUPPORT: '{{ '${{ matrix.cibw_ft }}' }}' @@ -109,8 +105,6 @@ jobs: cd /d {project} && tox --skip-pkg-install --direct-yolo -e {{ '${{ matrix.tox_env }}' }} -v - name: regular build and test - env: - TOXPYTHON: '{{ '${{ matrix.toxpython }}' }}' if: > !matrix.cibw_build run: > diff --git a/tox.ini b/tox.ini index 44d0761..169c9de 100644 --- a/tox.ini +++ b/tox.ini @@ -21,14 +21,6 @@ ignore_basepython_conflict = true [testenv] basepython = - pypy39: {env:TOXPYTHON:pypy3.9} - pypy310: {env:TOXPYTHON:pypy3.10} - py39: {env:TOXPYTHON:python3.9} - py310: {env:TOXPYTHON:python3.10} - py311: {env:TOXPYTHON:python3.11} - py312: {env:TOXPYTHON:python3.12} - py313: {env:TOXPYTHON:python3.13} - py313t: {env:TOXPYTHON:python3.13t} {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests From 13a18c19e8c98b9e30e191ddd1e258982984c85c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 19:37:50 +0300 Subject: [PATCH 57/80] Move basepython completely out. This should make this work with tox-uv. --- tox.ini | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tox.ini b/tox.ini index 169c9de..6ca6c44 100644 --- a/tox.ini +++ b/tox.ini @@ -20,8 +20,6 @@ envlist = ignore_basepython_conflict = true [testenv] -basepython = - {bootstrap,clean,check,report,docs,codecov}: {env:TOXPYTHON:python3} setenv = PYTHONPATH={toxinidir}/tests PYTHONUNBUFFERED=yes @@ -80,6 +78,7 @@ commands = {posargs:python setup.py clean --all build_ext --force} [testenv:docs] +basepython = {env:TOXPYTHON:python3.13} usedevelop = true deps = -r{toxinidir}/docs/requirements.txt @@ -88,6 +87,7 @@ commands = sphinx-build -b linkcheck docs dist/docs [testenv:report] +basepython = {env:TOXPYTHON:python3.13} deps = coverage cython @@ -99,6 +99,7 @@ commands = coverage html [testenv:clean] +basepython = {env:TOXPYTHON:python3.13} commands = python setup.py clean coverage erase From 5ab996f1231df6c956e90d5d7ac8418737c09a8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 20:09:35 +0300 Subject: [PATCH 58/80] Oops. --- tox.ini | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tox.ini b/tox.ini index 6ca6c44..1fbcda7 100644 --- a/tox.ini +++ b/tox.ini @@ -48,8 +48,8 @@ deps = tzdata ipdb commands = - {py38,py39,py310,py311,py312,py313,py313ft}: python tests/setup.py clean --all - {py38,py39,py310,py311,py312,py313,py313ft}: python tests/setup.py build_ext --force --inplace + {py38,py39,py310,py311,py312,py313,py313t}: python tests/setup.py clean --all + {py38,py39,py310,py311,py312,py313,py313t}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing -vv} From 91ded97ebb10af891e2720d3140f3251ec22c4aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 10 Jul 2025 23:05:05 +0300 Subject: [PATCH 59/80] Regen. --- src/hunter/_predicates.c | 58 ++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index f5f446b..6043361 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -32429,7 +32429,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 0, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 6, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32774,7 +32774,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32797,7 +32797,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32809,7 +32809,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Query__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32830,7 +32830,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32863,7 +32863,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32875,7 +32875,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32896,7 +32896,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32929,7 +32929,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32941,7 +32941,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,54,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32962,7 +32962,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32974,7 +32974,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33018,7 +33018,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33030,7 +33030,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33051,7 +33051,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33064,7 +33064,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33072,7 +33072,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33085,7 +33085,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33114,7 +33114,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33127,7 +33127,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33135,7 +33135,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33148,7 +33148,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33156,7 +33156,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33169,7 +33169,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33177,7 +33177,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33190,7 +33190,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result._filter = __pyx_state[0]; __pyx_result._try_repr = __pyx_state[1]; __pyx_result.action = __pyx_state[2]; __pyx_result.condition = __pyx_state[3]; __pyx_result.queue = __pyx_state[4]; __pyx_result.size = __pyx_state[5]; __pyx_result.stack = __pyx_state[6]; __pyx_result.strip = __pyx_state[7]; __pyx_result.vars = __pyx_state[8] * if len(__pyx_state) > 9 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,30,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "hunter/_predicates.pyx":1 @@ -33198,12 +33198,12 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,6,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 6, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33213,7 +33213,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(0, 0); + __Pyx_TraceExceptionUnwind(6, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); From 870a964350b33c86c68d7f1b72743e36d251c314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 11 Jul 2025 02:50:36 +0300 Subject: [PATCH 60/80] Fix. --- tox.ini | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tox.ini b/tox.ini index 1fbcda7..48a9d66 100644 --- a/tox.ini +++ b/tox.ini @@ -33,12 +33,12 @@ passenv = usedevelop = cover: true nocov: false -package = wheel +package = sdist deps = pytest pytest-benchmark cover: pytest-cov - {py38,py39,py310,py311,py312,py313,py313ft}: cython + {py38,py39,py310,py311,py312,py313,py313t}: cython manhole process-tests setuptools-scm From 7a170bf9fbaa350bb5234c5761eea135e7744cbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 11 Jul 2025 06:44:16 +0300 Subject: [PATCH 61/80] Remove unnecessary. --- src/hunter/_tracer.pxd | 1 - 1 file changed, 1 deletion(-) diff --git a/src/hunter/_tracer.pxd b/src/hunter/_tracer.pxd index 1ffd2fd..49e8e60 100644 --- a/src/hunter/_tracer.pxd +++ b/src/hunter/_tracer.pxd @@ -1,4 +1,3 @@ -# cython: language_level=3str cimport cython from cpython.pystate cimport Py_tracefunc from cpython.ref cimport PyObject From d8169def936e5b64810cde7d5b5339fc0062a4d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 11 Jul 2025 06:44:24 +0300 Subject: [PATCH 62/80] Mark as threadsafe. --- tests/eviltracer.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/eviltracer.pyx b/tests/eviltracer.pyx index fc5ec41..81d6aeb 100644 --- a/tests/eviltracer.pyx +++ b/tests/eviltracer.pyx @@ -1,4 +1,4 @@ -# cython: language_level=3str, c_string_encoding=ascii +# cython: language_level=3str, c_string_encoding=ascii, freethreading_compatible=True import hunter from hunter._event cimport Event From 4b757b71240db5cfa3607c184f8921cd54780623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 11 Jul 2025 06:45:46 +0300 Subject: [PATCH 63/80] Make extra verbose and update. --- .github/workflows/github-actions.yml | 125 +----------------- .../.github/workflows/github-actions.yml | 6 +- 2 files changed, 10 insertions(+), 121 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 9c09022..2e6efa0 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -10,19 +10,18 @@ jobs: matrix: include: - name: 'check' - python: '3.11' - toxpython: 'python3.11' + python: '3.13' + toxpython: 'python3.13' tox_env: 'check' os: 'ubuntu-latest' - name: 'docs' - python: '3.11' - toxpython: 'python3.11' + python: '3.13' + toxpython: 'python3.13' tox_env: 'docs' os: 'ubuntu-latest' - name: 'py39-pure-cover (ubuntu/x86_64)' artifact: 'py39-pure-ubuntu-x86_64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-pure-cover' cover: true @@ -32,7 +31,6 @@ jobs: - name: 'py39-pure-cover (windows/AMD64)' artifact: 'py39-pure-windows-AMD64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-pure-cover' cover: true @@ -42,7 +40,6 @@ jobs: - name: 'py39-pure-cover (macos/arm64)' artifact: 'py39-pure-macos-arm64' python: '3.9' - toxpython: 'python3.9' python_arch: 'arm64' tox_env: 'py39-pure-cover' cover: true @@ -52,7 +49,6 @@ jobs: - name: 'py39-pure-nocov (ubuntu/x86_64)' artifact: 'py39-pure-ubuntu-x86_64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-pure-nocov' cibw_arch: 'x86_64' @@ -61,7 +57,6 @@ jobs: - name: 'py39-pure-nocov (windows/AMD64)' artifact: 'py39-pure-windows-AMD64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-pure-nocov' cibw_arch: 'AMD64' @@ -70,7 +65,6 @@ jobs: - name: 'py39-pure-nocov (macos/arm64)' artifact: 'py39-pure-macos-arm64' python: '3.9' - toxpython: 'python3.9' python_arch: 'arm64' tox_env: 'py39-pure-nocov' cibw_arch: 'arm64' @@ -79,7 +73,6 @@ jobs: - name: 'py39-cython-cover (ubuntu/x86_64)' artifact: 'py39-cython-ubuntu-x86_64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-cover' cover: true @@ -89,7 +82,6 @@ jobs: - name: 'py39-cython-cover (windows/AMD64)' artifact: 'py39-cython-windows-AMD64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-cover' cover: true @@ -99,7 +91,6 @@ jobs: - name: 'py39-cython-cover (macos/arm64)' artifact: 'py39-cython-macos-arm64' python: '3.9' - toxpython: 'python3.9' python_arch: 'arm64' tox_env: 'py39-cython-cover' cover: true @@ -109,7 +100,6 @@ jobs: - name: 'py39-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py39-cython-ubuntu-x86_64-manylinux' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' @@ -119,7 +109,6 @@ jobs: - name: 'py39-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py39-cython-ubuntu-x86_64-musllinux' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'x86_64' @@ -129,7 +118,6 @@ jobs: - name: 'py39-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py39-cython-ubuntu-aarch64-manylinux' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' @@ -139,7 +127,6 @@ jobs: - name: 'py39-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py39-cython-ubuntu-aarch64-musllinux' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'aarch64' @@ -149,7 +136,6 @@ jobs: - name: 'py39-cython-nocov (windows/AMD64)' artifact: 'py39-cython-windows-AMD64' python: '3.9' - toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39-cython-nocov' cibw_arch: 'AMD64' @@ -159,7 +145,6 @@ jobs: - name: 'py39-cython-nocov (windows/x86)' artifact: 'py39-cython-windows-x86' python: '3.9' - toxpython: 'python3.9' python_arch: 'x86' tox_env: 'py39-cython-nocov' cibw_arch: 'x86' @@ -169,7 +154,6 @@ jobs: - name: 'py39-cython-nocov (macos/arm64)' artifact: 'py39-cython-macos-arm64' python: '3.9' - toxpython: 'python3.9' python_arch: 'arm64' tox_env: 'py39-cython-nocov' cibw_arch: 'arm64' @@ -179,7 +163,6 @@ jobs: - name: 'py310-pure-cover (ubuntu/x86_64)' artifact: 'py310-pure-ubuntu-x86_64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-pure-cover' cover: true @@ -189,7 +172,6 @@ jobs: - name: 'py310-pure-cover (windows/AMD64)' artifact: 'py310-pure-windows-AMD64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-pure-cover' cover: true @@ -199,7 +181,6 @@ jobs: - name: 'py310-pure-cover (macos/arm64)' artifact: 'py310-pure-macos-arm64' python: '3.10' - toxpython: 'python3.10' python_arch: 'arm64' tox_env: 'py310-pure-cover' cover: true @@ -209,7 +190,6 @@ jobs: - name: 'py310-pure-nocov (ubuntu/x86_64)' artifact: 'py310-pure-ubuntu-x86_64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-pure-nocov' cibw_arch: 'x86_64' @@ -218,7 +198,6 @@ jobs: - name: 'py310-pure-nocov (windows/AMD64)' artifact: 'py310-pure-windows-AMD64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-pure-nocov' cibw_arch: 'AMD64' @@ -227,7 +206,6 @@ jobs: - name: 'py310-pure-nocov (macos/arm64)' artifact: 'py310-pure-macos-arm64' python: '3.10' - toxpython: 'python3.10' python_arch: 'arm64' tox_env: 'py310-pure-nocov' cibw_arch: 'arm64' @@ -236,7 +214,6 @@ jobs: - name: 'py310-cython-cover (ubuntu/x86_64)' artifact: 'py310-cython-ubuntu-x86_64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-cover' cover: true @@ -246,7 +223,6 @@ jobs: - name: 'py310-cython-cover (windows/AMD64)' artifact: 'py310-cython-windows-AMD64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-cover' cover: true @@ -256,7 +232,6 @@ jobs: - name: 'py310-cython-cover (macos/arm64)' artifact: 'py310-cython-macos-arm64' python: '3.10' - toxpython: 'python3.10' python_arch: 'arm64' tox_env: 'py310-cython-cover' cover: true @@ -266,7 +241,6 @@ jobs: - name: 'py310-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py310-cython-ubuntu-x86_64-manylinux' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' @@ -276,7 +250,6 @@ jobs: - name: 'py310-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py310-cython-ubuntu-x86_64-musllinux' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'x86_64' @@ -286,7 +259,6 @@ jobs: - name: 'py310-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py310-cython-ubuntu-aarch64-manylinux' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' @@ -296,7 +268,6 @@ jobs: - name: 'py310-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py310-cython-ubuntu-aarch64-musllinux' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'aarch64' @@ -306,7 +277,6 @@ jobs: - name: 'py310-cython-nocov (windows/AMD64)' artifact: 'py310-cython-windows-AMD64' python: '3.10' - toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310-cython-nocov' cibw_arch: 'AMD64' @@ -316,7 +286,6 @@ jobs: - name: 'py310-cython-nocov (windows/x86)' artifact: 'py310-cython-windows-x86' python: '3.10' - toxpython: 'python3.10' python_arch: 'x86' tox_env: 'py310-cython-nocov' cibw_arch: 'x86' @@ -326,7 +295,6 @@ jobs: - name: 'py310-cython-nocov (macos/arm64)' artifact: 'py310-cython-macos-arm64' python: '3.10' - toxpython: 'python3.10' python_arch: 'arm64' tox_env: 'py310-cython-nocov' cibw_arch: 'arm64' @@ -336,7 +304,6 @@ jobs: - name: 'py311-pure-cover (ubuntu/x86_64)' artifact: 'py311-pure-ubuntu-x86_64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-pure-cover' cover: true @@ -346,7 +313,6 @@ jobs: - name: 'py311-pure-cover (windows/AMD64)' artifact: 'py311-pure-windows-AMD64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-pure-cover' cover: true @@ -356,7 +322,6 @@ jobs: - name: 'py311-pure-cover (macos/arm64)' artifact: 'py311-pure-macos-arm64' python: '3.11' - toxpython: 'python3.11' python_arch: 'arm64' tox_env: 'py311-pure-cover' cover: true @@ -366,7 +331,6 @@ jobs: - name: 'py311-pure-nocov (ubuntu/x86_64)' artifact: 'py311-pure-ubuntu-x86_64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-pure-nocov' cibw_arch: 'x86_64' @@ -375,7 +339,6 @@ jobs: - name: 'py311-pure-nocov (windows/AMD64)' artifact: 'py311-pure-windows-AMD64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-pure-nocov' cibw_arch: 'AMD64' @@ -384,7 +347,6 @@ jobs: - name: 'py311-pure-nocov (macos/arm64)' artifact: 'py311-pure-macos-arm64' python: '3.11' - toxpython: 'python3.11' python_arch: 'arm64' tox_env: 'py311-pure-nocov' cibw_arch: 'arm64' @@ -393,7 +355,6 @@ jobs: - name: 'py311-cython-cover (ubuntu/x86_64)' artifact: 'py311-cython-ubuntu-x86_64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-cover' cover: true @@ -403,7 +364,6 @@ jobs: - name: 'py311-cython-cover (windows/AMD64)' artifact: 'py311-cython-windows-AMD64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-cover' cover: true @@ -413,7 +373,6 @@ jobs: - name: 'py311-cython-cover (macos/arm64)' artifact: 'py311-cython-macos-arm64' python: '3.11' - toxpython: 'python3.11' python_arch: 'arm64' tox_env: 'py311-cython-cover' cover: true @@ -423,7 +382,6 @@ jobs: - name: 'py311-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py311-cython-ubuntu-x86_64-manylinux' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' @@ -433,7 +391,6 @@ jobs: - name: 'py311-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py311-cython-ubuntu-x86_64-musllinux' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'x86_64' @@ -443,7 +400,6 @@ jobs: - name: 'py311-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py311-cython-ubuntu-aarch64-manylinux' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' @@ -453,7 +409,6 @@ jobs: - name: 'py311-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py311-cython-ubuntu-aarch64-musllinux' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'aarch64' @@ -463,7 +418,6 @@ jobs: - name: 'py311-cython-nocov (windows/AMD64)' artifact: 'py311-cython-windows-AMD64' python: '3.11' - toxpython: 'python3.11' python_arch: 'x64' tox_env: 'py311-cython-nocov' cibw_arch: 'AMD64' @@ -473,7 +427,6 @@ jobs: - name: 'py311-cython-nocov (windows/x86)' artifact: 'py311-cython-windows-x86' python: '3.11' - toxpython: 'python3.11' python_arch: 'x86' tox_env: 'py311-cython-nocov' cibw_arch: 'x86' @@ -483,7 +436,6 @@ jobs: - name: 'py311-cython-nocov (macos/arm64)' artifact: 'py311-cython-macos-arm64' python: '3.11' - toxpython: 'python3.11' python_arch: 'arm64' tox_env: 'py311-cython-nocov' cibw_arch: 'arm64' @@ -493,7 +445,6 @@ jobs: - name: 'py312-pure-cover (ubuntu/x86_64)' artifact: 'py312-pure-ubuntu-x86_64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-pure-cover' cover: true @@ -503,7 +454,6 @@ jobs: - name: 'py312-pure-cover (windows/AMD64)' artifact: 'py312-pure-windows-AMD64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-pure-cover' cover: true @@ -513,7 +463,6 @@ jobs: - name: 'py312-pure-cover (macos/arm64)' artifact: 'py312-pure-macos-arm64' python: '3.12' - toxpython: 'python3.12' python_arch: 'arm64' tox_env: 'py312-pure-cover' cover: true @@ -523,7 +472,6 @@ jobs: - name: 'py312-pure-nocov (ubuntu/x86_64)' artifact: 'py312-pure-ubuntu-x86_64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-pure-nocov' cibw_arch: 'x86_64' @@ -532,7 +480,6 @@ jobs: - name: 'py312-pure-nocov (windows/AMD64)' artifact: 'py312-pure-windows-AMD64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-pure-nocov' cibw_arch: 'AMD64' @@ -541,7 +488,6 @@ jobs: - name: 'py312-pure-nocov (macos/arm64)' artifact: 'py312-pure-macos-arm64' python: '3.12' - toxpython: 'python3.12' python_arch: 'arm64' tox_env: 'py312-pure-nocov' cibw_arch: 'arm64' @@ -550,7 +496,6 @@ jobs: - name: 'py312-cython-cover (ubuntu/x86_64)' artifact: 'py312-cython-ubuntu-x86_64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-cover' cover: true @@ -560,7 +505,6 @@ jobs: - name: 'py312-cython-cover (windows/AMD64)' artifact: 'py312-cython-windows-AMD64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-cover' cover: true @@ -570,7 +514,6 @@ jobs: - name: 'py312-cython-cover (macos/arm64)' artifact: 'py312-cython-macos-arm64' python: '3.12' - toxpython: 'python3.12' python_arch: 'arm64' tox_env: 'py312-cython-cover' cover: true @@ -580,7 +523,6 @@ jobs: - name: 'py312-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py312-cython-ubuntu-x86_64-manylinux' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' @@ -590,7 +532,6 @@ jobs: - name: 'py312-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py312-cython-ubuntu-x86_64-musllinux' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'x86_64' @@ -600,7 +541,6 @@ jobs: - name: 'py312-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py312-cython-ubuntu-aarch64-manylinux' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' @@ -610,7 +550,6 @@ jobs: - name: 'py312-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py312-cython-ubuntu-aarch64-musllinux' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'aarch64' @@ -620,7 +559,6 @@ jobs: - name: 'py312-cython-nocov (windows/AMD64)' artifact: 'py312-cython-windows-AMD64' python: '3.12' - toxpython: 'python3.12' python_arch: 'x64' tox_env: 'py312-cython-nocov' cibw_arch: 'AMD64' @@ -630,7 +568,6 @@ jobs: - name: 'py312-cython-nocov (windows/x86)' artifact: 'py312-cython-windows-x86' python: '3.12' - toxpython: 'python3.12' python_arch: 'x86' tox_env: 'py312-cython-nocov' cibw_arch: 'x86' @@ -640,7 +577,6 @@ jobs: - name: 'py312-cython-nocov (macos/arm64)' artifact: 'py312-cython-macos-arm64' python: '3.12' - toxpython: 'python3.12' python_arch: 'arm64' tox_env: 'py312-cython-nocov' cibw_arch: 'arm64' @@ -650,7 +586,6 @@ jobs: - name: 'py313-pure-cover (ubuntu/x86_64)' artifact: 'py313-pure-ubuntu-x86_64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-pure-cover' cover: true @@ -660,7 +595,6 @@ jobs: - name: 'py313-pure-cover (windows/AMD64)' artifact: 'py313-pure-windows-AMD64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-pure-cover' cover: true @@ -670,7 +604,6 @@ jobs: - name: 'py313-pure-cover (macos/arm64)' artifact: 'py313-pure-macos-arm64' python: '3.13' - toxpython: 'python3.13' python_arch: 'arm64' tox_env: 'py313-pure-cover' cover: true @@ -680,7 +613,6 @@ jobs: - name: 'py313-pure-nocov (ubuntu/x86_64)' artifact: 'py313-pure-ubuntu-x86_64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-pure-nocov' cibw_arch: 'x86_64' @@ -689,7 +621,6 @@ jobs: - name: 'py313-pure-nocov (windows/AMD64)' artifact: 'py313-pure-windows-AMD64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-pure-nocov' cibw_arch: 'AMD64' @@ -698,7 +629,6 @@ jobs: - name: 'py313-pure-nocov (macos/arm64)' artifact: 'py313-pure-macos-arm64' python: '3.13' - toxpython: 'python3.13' python_arch: 'arm64' tox_env: 'py313-pure-nocov' cibw_arch: 'arm64' @@ -707,7 +637,6 @@ jobs: - name: 'py313-cython-cover (ubuntu/x86_64)' artifact: 'py313-cython-ubuntu-x86_64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-cover' cover: true @@ -717,7 +646,6 @@ jobs: - name: 'py313-cython-cover (windows/AMD64)' artifact: 'py313-cython-windows-AMD64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-cover' cover: true @@ -727,7 +655,6 @@ jobs: - name: 'py313-cython-cover (macos/arm64)' artifact: 'py313-cython-macos-arm64' python: '3.13' - toxpython: 'python3.13' python_arch: 'arm64' tox_env: 'py313-cython-cover' cover: true @@ -737,7 +664,6 @@ jobs: - name: 'py313-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py313-cython-ubuntu-x86_64-manylinux' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-nocov' cibw_arch: 'x86_64' @@ -747,7 +673,6 @@ jobs: - name: 'py313-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py313-cython-ubuntu-x86_64-musllinux' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-nocov' cibw_arch: 'x86_64' @@ -757,7 +682,6 @@ jobs: - name: 'py313-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py313-cython-ubuntu-aarch64-manylinux' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-nocov' cibw_arch: 'aarch64' @@ -767,7 +691,6 @@ jobs: - name: 'py313-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py313-cython-ubuntu-aarch64-musllinux' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-nocov' cibw_arch: 'aarch64' @@ -777,7 +700,6 @@ jobs: - name: 'py313-cython-nocov (windows/AMD64)' artifact: 'py313-cython-windows-AMD64' python: '3.13' - toxpython: 'python3.13' python_arch: 'x64' tox_env: 'py313-cython-nocov' cibw_arch: 'AMD64' @@ -787,7 +709,6 @@ jobs: - name: 'py313-cython-nocov (windows/x86)' artifact: 'py313-cython-windows-x86' python: '3.13' - toxpython: 'python3.13' python_arch: 'x86' tox_env: 'py313-cython-nocov' cibw_arch: 'x86' @@ -797,7 +718,6 @@ jobs: - name: 'py313-cython-nocov (macos/arm64)' artifact: 'py313-cython-macos-arm64' python: '3.13' - toxpython: 'python3.13' python_arch: 'arm64' tox_env: 'py313-cython-nocov' cibw_arch: 'arm64' @@ -807,7 +727,6 @@ jobs: - name: 'py313t-pure-cover (ubuntu/x86_64)' artifact: 'py313t-pure-ubuntu-x86_64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-pure-cover' cover: true @@ -817,7 +736,6 @@ jobs: - name: 'py313t-pure-cover (windows/AMD64)' artifact: 'py313t-pure-windows-AMD64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-pure-cover' cover: true @@ -827,7 +745,6 @@ jobs: - name: 'py313t-pure-cover (macos/arm64)' artifact: 'py313t-pure-macos-arm64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' tox_env: 'py313t-pure-cover' cover: true @@ -837,7 +754,6 @@ jobs: - name: 'py313t-pure-nocov (ubuntu/x86_64)' artifact: 'py313t-pure-ubuntu-x86_64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-pure-nocov' cibw_arch: 'x86_64' @@ -846,7 +762,6 @@ jobs: - name: 'py313t-pure-nocov (windows/AMD64)' artifact: 'py313t-pure-windows-AMD64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-pure-nocov' cibw_arch: 'AMD64' @@ -855,7 +770,6 @@ jobs: - name: 'py313t-pure-nocov (macos/arm64)' artifact: 'py313t-pure-macos-arm64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' tox_env: 'py313t-pure-nocov' cibw_arch: 'arm64' @@ -864,7 +778,6 @@ jobs: - name: 'py313t-cython-cover (ubuntu/x86_64)' artifact: 'py313t-cython-ubuntu-x86_64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-cover' cover: true @@ -874,7 +787,6 @@ jobs: - name: 'py313t-cython-cover (windows/AMD64)' artifact: 'py313t-cython-windows-AMD64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-cover' cover: true @@ -884,7 +796,6 @@ jobs: - name: 'py313t-cython-cover (macos/arm64)' artifact: 'py313t-cython-macos-arm64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' tox_env: 'py313t-cython-cover' cover: true @@ -894,7 +805,6 @@ jobs: - name: 'py313t-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py313t-cython-ubuntu-x86_64-manylinux' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'x86_64' @@ -904,7 +814,6 @@ jobs: - name: 'py313t-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py313t-cython-ubuntu-x86_64-musllinux' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'x86_64' @@ -914,7 +823,6 @@ jobs: - name: 'py313t-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py313t-cython-ubuntu-aarch64-manylinux' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'aarch64' @@ -924,7 +832,6 @@ jobs: - name: 'py313t-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py313t-cython-ubuntu-aarch64-musllinux' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'aarch64' @@ -934,7 +841,6 @@ jobs: - name: 'py313t-cython-nocov (windows/AMD64)' artifact: 'py313t-cython-windows-AMD64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x64-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'AMD64' @@ -944,7 +850,6 @@ jobs: - name: 'py313t-cython-nocov (windows/x86)' artifact: 'py313t-cython-windows-x86' python: '3.13' - toxpython: 'python3.13t' python_arch: 'x86-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'x86' @@ -954,7 +859,6 @@ jobs: - name: 'py313t-cython-nocov (macos/arm64)' artifact: 'py313t-cython-macos-arm64' python: '3.13' - toxpython: 'python3.13t' python_arch: 'arm64-freethreaded' tox_env: 'py313t-cython-nocov' cibw_arch: 'arm64' @@ -964,7 +868,6 @@ jobs: - name: 'pypy39-pure-cover (ubuntu/x86_64)' artifact: 'pypy39-pure-ubuntu-x86_64' python: 'pypy-3.9' - toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-pure-cover' cover: true @@ -974,7 +877,6 @@ jobs: - name: 'pypy39-pure-cover (windows/AMD64)' artifact: 'pypy39-pure-windows-AMD64' python: 'pypy-3.9' - toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-pure-cover' cover: true @@ -984,7 +886,6 @@ jobs: - name: 'pypy39-pure-cover (macos/arm64)' artifact: 'pypy39-pure-macos-arm64' python: 'pypy-3.9' - toxpython: 'pypy3.9' python_arch: 'arm64' tox_env: 'pypy39-pure-cover' cover: true @@ -994,7 +895,6 @@ jobs: - name: 'pypy39-pure-nocov (ubuntu/x86_64)' artifact: 'pypy39-pure-ubuntu-x86_64' python: 'pypy-3.9' - toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-pure-nocov' cibw_arch: 'x86_64' @@ -1003,7 +903,6 @@ jobs: - name: 'pypy39-pure-nocov (windows/AMD64)' artifact: 'pypy39-pure-windows-AMD64' python: 'pypy-3.9' - toxpython: 'pypy3.9' python_arch: 'x64' tox_env: 'pypy39-pure-nocov' cibw_arch: 'AMD64' @@ -1012,7 +911,6 @@ jobs: - name: 'pypy39-pure-nocov (macos/arm64)' artifact: 'pypy39-pure-macos-arm64' python: 'pypy-3.9' - toxpython: 'pypy3.9' python_arch: 'arm64' tox_env: 'pypy39-pure-nocov' cibw_arch: 'arm64' @@ -1021,7 +919,6 @@ jobs: - name: 'pypy310-pure-cover (ubuntu/x86_64)' artifact: 'pypy310-pure-ubuntu-x86_64' python: 'pypy-3.10' - toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-pure-cover' cover: true @@ -1031,7 +928,6 @@ jobs: - name: 'pypy310-pure-cover (windows/AMD64)' artifact: 'pypy310-pure-windows-AMD64' python: 'pypy-3.10' - toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-pure-cover' cover: true @@ -1041,7 +937,6 @@ jobs: - name: 'pypy310-pure-cover (macos/arm64)' artifact: 'pypy310-pure-macos-arm64' python: 'pypy-3.10' - toxpython: 'pypy3.10' python_arch: 'arm64' tox_env: 'pypy310-pure-cover' cover: true @@ -1051,7 +946,6 @@ jobs: - name: 'pypy310-pure-nocov (ubuntu/x86_64)' artifact: 'pypy310-pure-ubuntu-x86_64' python: 'pypy-3.10' - toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-pure-nocov' cibw_arch: 'x86_64' @@ -1060,7 +954,6 @@ jobs: - name: 'pypy310-pure-nocov (windows/AMD64)' artifact: 'pypy310-pure-windows-AMD64' python: 'pypy-3.10' - toxpython: 'pypy3.10' python_arch: 'x64' tox_env: 'pypy310-pure-nocov' cibw_arch: 'AMD64' @@ -1069,7 +962,6 @@ jobs: - name: 'pypy310-pure-nocov (macos/arm64)' artifact: 'pypy310-pure-macos-arm64' python: 'pypy-3.10' - toxpython: 'pypy3.10' python_arch: 'arm64' tox_env: 'pypy310-pure-nocov' cibw_arch: 'arm64' @@ -1104,7 +996,6 @@ jobs: if: matrix.cibw_build run: cibuildwheel env: - TOXPYTHON: '${{ matrix.toxpython }}' CIBW_ARCHS: '${{ matrix.cibw_arch }}' CIBW_BUILD: '${{ matrix.cibw_build }}' CIBW_FREE_THREADED_SUPPORT: '${{ matrix.cibw_ft }}' @@ -1116,17 +1007,15 @@ jobs: tox-direct CIBW_TEST_COMMAND: > cd {project} && - tox --skip-pkg-install --direct-yolo -e ${{ matrix.tox_env }} -v + tox --skip-pkg-install --direct-yolo -e ${{ matrix.tox_env }} -vv CIBW_TEST_COMMAND_WINDOWS: > cd /d {project} && - tox --skip-pkg-install --direct-yolo -e ${{ matrix.tox_env }} -v + tox --skip-pkg-install --direct-yolo -e ${{ matrix.tox_env }} -vv - name: regular build and test - env: - TOXPYTHON: '${{ matrix.toxpython }}' if: > !matrix.cibw_build run: > - tox -e ${{ matrix.tox_env }} -v + tox -e ${{ matrix.tox_env }} -vv - uses: codecov/codecov-action@v5 if: matrix.cover with: diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 324ea09..f7377b0 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -100,15 +100,15 @@ jobs: tox-direct CIBW_TEST_COMMAND: > cd {project} && - tox --skip-pkg-install --direct-yolo -e {{ '${{ matrix.tox_env }}' }} -v + tox --skip-pkg-install --direct-yolo -e {{ '${{ matrix.tox_env }}' }} -vv CIBW_TEST_COMMAND_WINDOWS: > cd /d {project} && - tox --skip-pkg-install --direct-yolo -e {{ '${{ matrix.tox_env }}' }} -v + tox --skip-pkg-install --direct-yolo -e {{ '${{ matrix.tox_env }}' }} -vv - name: regular build and test if: > !matrix.cibw_build run: > - tox -e {{ '${{ matrix.tox_env }}' }} -v + tox -e {{ '${{ matrix.tox_env }}' }} -vv - uses: codecov/codecov-action@v5 if: matrix.cover with: From ab605ba3a34e6df9af0137d6b422d4c8973c31f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 11 Jul 2025 17:47:40 +0300 Subject: [PATCH 64/80] Update changelog. --- AUTHORS.rst | 1 + CHANGELOG.rst | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/AUTHORS.rst b/AUTHORS.rst index 2d46974..42f04ff 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -7,3 +7,4 @@ Authors * Mikhail Borisov - https://github.com/borman * Dan Ailenei - https://github.com/Dan-Ailenei * Tom Schraitle - https://github.com/tomschr +* Steve Kowalik - https://github.com/s-t-e-v-e-n-k diff --git a/CHANGELOG.rst b/CHANGELOG.rst index ffa4e30..17b243d 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,13 +2,15 @@ Changelog ========= -3.8.0 (2025-07-10) +3.8.0 (2025-07-11) ------------------ * Drop support for Python 3.8. -* Added support for Python 3.13. +* Added support for Python 3.13, including freethreading variant (but not really tested, as most of the test suite is singlethreaded). * Fixed issues with latest Cython release (3.1.2). -* Simplified the `Event.__init__` so doesn't require a Tracer instance anymore. +* Simplified the `Event.__init__` so doesn't require or accept a Tracer instance anymore to fill in some options. +* Fixed hardcoded python executable in tests. + Contributed by Steve Kowalik in `#126 `. 3.7.0 (2024-05-02) ------------------ From a63402f55fed1d369ee954c3041edfd1bffab78d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 11 Jul 2025 17:48:44 +0300 Subject: [PATCH 65/80] =?UTF-8?q?Bump=20version:=203.7.0=20=E2=86=92=203.8?= =?UTF-8?q?.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .bumpversion.cfg | 2 +- .cookiecutterrc | 2 +- README.rst | 4 ++-- docs/conf.py | 2 +- setup.py | 2 +- src/hunter/__init__.py | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index d9adf56..499ca8e 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.7.0 +current_version = 3.8.0 commit = True tag = True diff --git a/.cookiecutterrc b/.cookiecutterrc index 126dcc2..cacf86a 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -54,7 +54,7 @@ default_context: sphinx_theme: "furo" test_matrix_separate_coverage: "yes" tests_inside_package: "no" - version: "3.7.0" + version: 3.8.0 version_manager: "bump2version" website: "https://blog.ionelmc.ro" year_from: "2015" diff --git a/README.rst b/README.rst index 06a11f5..ff0b51c 100644 --- a/README.rst +++ b/README.rst @@ -41,9 +41,9 @@ Overview :alt: Supported implementations :target: https://pypi.org/project/hunter -.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-hunter/v3.7.0.svg +.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-hunter/v3.8.0.svg :alt: Commits since latest release - :target: https://github.com/ionelmc/python-hunter/compare/v3.7.0...master + :target: https://github.com/ionelmc/python-hunter/compare/v3.8.0...master diff --git a/docs/conf.py b/docs/conf.py index 9757631..b9ca1ed 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -28,7 +28,7 @@ import traceback traceback.print_exc() - version = release = '3.7.0' + version = release = '3.8.0' pygments_style = 'trac' templates_path = ['.'] diff --git a/setup.py b/setup.py index 819c2ca..123cff4 100755 --- a/setup.py +++ b/setup.py @@ -121,7 +121,7 @@ def read(*names, **kwargs): use_scm_version={ 'local_scheme': 'dirty-tag', 'write_to': 'src/hunter/_version.py', - 'fallback_version': '3.7.0', + 'fallback_version': '3.8.0', }, license='BSD-2-Clause', description='Hunter is a flexible code tracing toolkit.', diff --git a/src/hunter/__init__.py b/src/hunter/__init__.py index 0d72b41..f05ea67 100644 --- a/src/hunter/__init__.py +++ b/src/hunter/__init__.py @@ -43,7 +43,7 @@ try: from ._version import version as __version__ except ImportError: - __version__ = '3.7.0' + __version__ = '3.8.0' __all__ = ( 'And', From dbc4ec4e8dc996454e652252a9d0db3f42d29a04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Sat, 12 Jul 2025 21:29:49 +0300 Subject: [PATCH 66/80] Modernize a bit project packaging metadata. --- .bumpversion.cfg | 6 +- .cookiecutterrc | 102 ++++++++---------- .github/workflows/github-actions.yml | 2 - .pre-commit-config.yaml | 2 +- ci/requirements.txt | 7 +- .../.github/workflows/github-actions.yml | 2 - pyproject.toml | 66 +++++++++++- setup.py | 67 +----------- tox.ini | 6 +- 9 files changed, 116 insertions(+), 144 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 499ca8e..b2230a4 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -3,9 +3,9 @@ current_version = 3.8.0 commit = True tag = True -[bumpversion:file:setup.py] -search = 'fallback_version': '{current_version}' -replace = 'fallback_version': '{new_version}' +[bumpversion:file:pyproject.toml] +search = fallback_version = "{current_version}" +replace = fallback_version = "{new_version}" [bumpversion:file (badge):README.rst] search = /v{current_version}.svg diff --git a/.cookiecutterrc b/.cookiecutterrc index cacf86a..8029de9 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -1,61 +1,47 @@ -# This file exists so you can easily regenerate your project. -# -# `cookiepatcher` is a convenient shim around `cookiecutter` -# for regenerating projects (it will generate a .cookiecutterrc -# automatically for any template). To use it: -# -# pip install cookiepatcher -# cookiepatcher gh:ionelmc/cookiecutter-pylibrary python-hunter -# -# See: -# https://pypi.org/project/cookiepatcher -# -# Alternatively, you can run: -# -# cookiecutter --overwrite-if-exists --config-file=python-hunter/.cookiecutterrc gh:ionelmc/cookiecutter-pylibrary +# Generated by cookiepatcher, a small shim around cookiecutter (pip install cookiepatcher) default_context: - c_extension_optional: "yes" - c_extension_support: "cython" - codacy: "no" - codacy_projectid: "-" - codeclimate: "no" - codecov: "yes" - command_line_interface: "argparse" - command_line_interface_bin_name: "hunter-trace" - coveralls: "no" - distribution_name: "hunter" - email: "contact@ionelmc.ro" - formatter_quote_style: "single" - full_name: "Ionel Cristian Mărieș" - function_name: "compute" - github_actions: "yes" - github_actions_osx: "yes" - github_actions_windows: "yes" - license: "BSD 2-Clause License" - module_name: "core" - package_name: "hunter" - pre_commit: "yes" - project_name: "Hunter" - project_short_description: "Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API and a convenient terminal API (see `Environment variable activation `_)." - pypi_badge: "yes" - pypi_disable_upload: "no" - release_date: "2024-05-02" - repo_hosting: "github.com" - repo_hosting_domain: "github.com" - repo_main_branch: "master" - repo_name: "python-hunter" - repo_username: "ionelmc" - scrutinizer: "no" - setup_py_uses_setuptools_scm: "yes" - sphinx_docs: "yes" - sphinx_docs_hosting: "https://python-hunter.readthedocs.io/" - sphinx_doctest: "no" - sphinx_theme: "furo" - test_matrix_separate_coverage: "yes" - tests_inside_package: "no" + c_extension_optional: 'yes' + c_extension_support: cython + codacy: 'no' + codacy_projectid: '-' + codeclimate: 'no' + codecov: 'yes' + command_line_interface: argparse + command_line_interface_bin_name: hunter-trace + coveralls: 'no' + distribution_name: hunter + email: contact@ionelmc.ro + formatter_quote_style: single + full_name: Ionel Cristian Mărieș + function_name: compute + github_actions: 'yes' + github_actions_osx: 'yes' + github_actions_windows: 'yes' + license: BSD 2-Clause License + module_name: core + package_name: hunter + pre_commit: 'yes' + project_name: Hunter + project_short_description: Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API and a convenient terminal API (see `Environment variable activation `_). + pypi_badge: 'yes' + pypi_disable_upload: 'no' + release_date: '2024-05-02' + repo_hosting: github.com + repo_hosting_domain: github.com + repo_main_branch: master + repo_name: python-hunter + repo_username: ionelmc + scrutinizer: 'no' + setup_py_uses_setuptools_scm: 'yes' + sphinx_docs: 'yes' + sphinx_docs_hosting: https://python-hunter.readthedocs.io/ + sphinx_doctest: 'no' + sphinx_theme: furo + test_matrix_separate_coverage: 'yes' + tests_inside_package: 'no' version: 3.8.0 - version_manager: "bump2version" - website: "https://blog.ionelmc.ro" - year_from: "2015" - year_to: "2025" + version_manager: bump2version + website: https://blog.ionelmc.ro + year_from: '2015' + year_to: '2025' diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 2e6efa0..e6ed075 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -11,12 +11,10 @@ jobs: include: - name: 'check' python: '3.13' - toxpython: 'python3.13' tox_env: 'check' os: 'ubuntu-latest' - name: 'docs' python: '3.13' - toxpython: 'python3.13' tox_env: 'docs' os: 'ubuntu-latest' - name: 'py39-pure-cover (ubuntu/x86_64)' diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 9f8d403..6defa6a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,7 +6,7 @@ exclude: '^(.tox/|ci/templates/|src/hunter.(pth|embed)$|src/hunter/vendor/|.bump # Note the order is intentional to avoid multiple passes of the hooks repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.12.2 + rev: v0.12.3 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix, --show-fixes] diff --git a/ci/requirements.txt b/ci/requirements.txt index 9603ab0..8577393 100644 --- a/ci/requirements.txt +++ b/ci/requirements.txt @@ -1,4 +1,3 @@ -virtualenv>=20.4.7 -pip>=19.1.1 -setuptools>=18.0.1 -tox +pip>=24.2 +setuptools>=69 +tox>=4 diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index f7377b0..630f6ad 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -11,12 +11,10 @@ jobs: include: - name: 'check' python: '3.13' - toxpython: 'python3.13' tox_env: 'check' os: 'ubuntu-latest' - name: 'docs' python: '3.13' - toxpython: 'python3.13' tox_env: 'docs' os: 'ubuntu-latest' {% for env in tox_environments %} diff --git a/pyproject.toml b/pyproject.toml index 3b7fcd0..a706de6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,12 +1,72 @@ [build-system] requires = [ - "setuptools>=64.0.0", - "wheel", - "setuptools_scm>=3.3.1,!=4.0.0", + "setuptools>=69", + "setuptools_scm>=8", ] build-backend = "setuptools.build_meta" +[project] +dynamic = [ + "readme", + "version", +] +name = "hunter" +license = "BSD-2-Clause" +license-files = ["LICENSE"] +description = "Hunter is a flexible code tracing toolkit." +authors = [ + { name = "Ionel Cristian Mărieș", email = "contact@ionelmc.ro" }, +] +classifiers = [ + # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "Operating System :: Unix", + "Operating System :: POSIX", + "Operating System :: Microsoft :: Windows", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3 :: Only", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: Implementation :: CPython", + "Programming Language :: Python :: Implementation :: PyPy", + "Topic :: Utilities", + "Topic :: Software Development :: Debuggers" +] +keywords = [ + "trace", + "tracer", + "settrace", + "debugger", + "debugging", + "code", + "source", +] +requires-python = ">=3.9" +dependencies = [ + "manhole>=1.5; platform_system!='Windows'", +] + +[project.optional-dependencies] +# rst = ["docutils>=0.11"] + +[project.scripts] +hunter-trace = "hunter.remote:main" + +[project.urls] +"Sources" = "https://github.com/ionelmc/python-hunter" +"Documentation" = "https://python-hunter.readthedocs.io/" +"Changelog" = "https://python-hunter.readthedocs.io/en/latest/changelog.html" +"Issue Tracker" = "https://github.com/ionelmc/python-hunter/issues" + [tool.setuptools_scm] +local_scheme = "dirty-tag" +write_to = "src/hunter/_version.py" +fallback_version = "3.8.0" [tool.ruff] extend-exclude = ["static", "ci/templates"] diff --git a/setup.py b/setup.py index 123cff4..6958a41 100755 --- a/setup.py +++ b/setup.py @@ -30,7 +30,7 @@ CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_TRACE=1 -DCYTHON_USE_SYS_MONITORING=0' LFLAGS = os.environ['LFLAGS'] = '' else: - CFLAGS = '-DCYTHON_USE_SYS_MONITORING=0' + CFLAGS = '' LFLAGS = '' allow_extensions = True @@ -117,81 +117,16 @@ def read(*names, **kwargs): setup( - name='hunter', - use_scm_version={ - 'local_scheme': 'dirty-tag', - 'write_to': 'src/hunter/_version.py', - 'fallback_version': '3.8.0', - }, - license='BSD-2-Clause', - description='Hunter is a flexible code tracing toolkit.', long_description='{}\n{}'.format( re.compile('^.. start-badges.*^.. end-badges', re.M | re.S).sub('', read('README.rst')), re.sub(':[a-z]+:`~?(.*?)`', r'``\1``', read('CHANGELOG.rst')), ), long_description_content_type='text/x-rst', - author='Ionel Cristian Mărieș', - author_email='contact@ionelmc.ro', - url='https://github.com/ionelmc/python-hunter', packages=find_namespace_packages('src'), package_dir={'': 'src'}, py_modules=[path.stem for path in Path('src').glob('*.py')], include_package_data=True, zip_safe=False, - classifiers=[ - # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers - 'Development Status :: 5 - Production/Stable', - 'Intended Audience :: Developers', - 'Operating System :: Unix', - 'Operating System :: POSIX', - 'Operating System :: Microsoft :: Windows', - 'Programming Language :: Python', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3 :: Only', - 'Programming Language :: Python :: 3.9', - 'Programming Language :: Python :: 3.10', - 'Programming Language :: Python :: 3.11', - 'Programming Language :: Python :: 3.12', - 'Programming Language :: Python :: 3.13', - 'Programming Language :: Python :: Implementation :: CPython', - 'Programming Language :: Python :: Implementation :: PyPy', - 'Topic :: Utilities', - 'Topic :: Software Development :: Debuggers', - ], - project_urls={ - 'Documentation': 'https://python-hunter.readthedocs.io/', - 'Changelog': 'https://python-hunter.readthedocs.io/en/latest/changelog.html', - 'Issue Tracker': 'https://github.com/ionelmc/python-hunter/issues', - }, - keywords=[ - 'trace', - 'tracer', - 'settrace', - 'debugger', - 'debugging', - 'code', - 'source', - ], - python_requires='>=3.9', - install_requires=[], - extras_require={ - ':platform_system != "Windows"': ['manhole >= 1.5'], - }, - setup_requires=( - [ - 'setuptools_scm>=3.3.1,!=4.0.0', - 'cython', - ] - if Cython - else [ - 'setuptools_scm>=3.3.1,!=4.0.0', - ] - ), - entry_points={ - 'console_scripts': [ - 'hunter-trace = hunter.remote:main', - ] - }, cmdclass={ 'build': BuildWithPTH, 'easy_install': EasyInstallWithPTH, diff --git a/tox.ini b/tox.ini index 48a9d66..fdb3d72 100644 --- a/tox.ini +++ b/tox.ini @@ -52,7 +52,7 @@ commands = {py38,py39,py310,py311,py312,py313,py313t}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} - cover: {posargs:pytest --cov --cov-report=term-missing -vv} + cover: {posargs:pytest --cov --cov-report=term-missing --cov-report=xml -vv} [testenv:check] deps = @@ -68,7 +68,6 @@ commands = pre-commit run --all-files --show-diff-on-failure [testenv:cythonize] -basepython = {env:TOXPYTHON:python3.13} pip_pre = true deps = cython @@ -78,7 +77,6 @@ commands = {posargs:python setup.py clean --all build_ext --force} [testenv:docs] -basepython = {env:TOXPYTHON:python3.13} usedevelop = true deps = -r{toxinidir}/docs/requirements.txt @@ -87,7 +85,6 @@ commands = sphinx-build -b linkcheck docs dist/docs [testenv:report] -basepython = {env:TOXPYTHON:python3.13} deps = coverage cython @@ -99,7 +96,6 @@ commands = coverage html [testenv:clean] -basepython = {env:TOXPYTHON:python3.13} commands = python setup.py clean coverage erase From 51e8fe4d594a79eb8dfa2a3de5b59484878323b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Sun, 13 Jul 2025 18:42:11 +0300 Subject: [PATCH 67/80] Workaround pyproject.toml being loaded for this test extension. --- tests/setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/setup.py b/tests/setup.py index 1238af1..28b332d 100644 --- a/tests/setup.py +++ b/tests/setup.py @@ -23,6 +23,7 @@ if __name__ == '__main__': setup( + long_description='', package_dir={'': 'tests'}, zip_safe=False, setup_requires=( From ccd4b7c34c5a25d217b6dc4dd5ff11be001ff577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Sun, 13 Jul 2025 20:17:01 +0300 Subject: [PATCH 68/80] Trim this. --- .cookiecutterrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cookiecutterrc b/.cookiecutterrc index 8029de9..33520a4 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -23,7 +23,7 @@ default_context: package_name: hunter pre_commit: 'yes' project_name: Hunter - project_short_description: Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API and a convenient terminal API (see `Environment variable activation `_). + project_short_description: Hunter is a flexible code tracing toolkit. pypi_badge: 'yes' pypi_disable_upload: 'no' release_date: '2024-05-02' From a570776ec334f0a2c513a0d5542654fad7611962 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 21 Aug 2025 14:31:40 +0300 Subject: [PATCH 69/80] Add python 3.14 in test grid and update precommit. --- .github/workflows/github-actions.yml | 283 +++++++++++++++++- .pre-commit-config.yaml | 9 +- .taplo.toml | 3 + .../.github/workflows/github-actions.yml | 4 +- pyproject.toml | 28 +- tox.ini | 6 +- 6 files changed, 312 insertions(+), 21 deletions(-) create mode 100644 .taplo.toml diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index e6ed075..c8fcac5 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -863,6 +863,288 @@ jobs: cibw_build: 'cp313t-*' cibw_ft: 'true' os: 'macos-latest' + - name: 'py314-pure-cover (ubuntu/x86_64)' + artifact: 'py314-pure-ubuntu-x86_64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py314-pure-cover (windows/AMD64)' + artifact: 'py314-pure-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py314-pure-cover (macos/arm64)' + artifact: 'py314-pure-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64' + tox_env: 'py314-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py314-pure-nocov (ubuntu/x86_64)' + artifact: 'py314-pure-ubuntu-x86_64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py314-pure-nocov (windows/AMD64)' + artifact: 'py314-pure-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py314-pure-nocov (macos/arm64)' + artifact: 'py314-pure-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64' + tox_env: 'py314-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py314-cython-cover (ubuntu/x86_64)' + artifact: 'py314-cython-ubuntu-x86_64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py314-cython-cover (windows/AMD64)' + artifact: 'py314-cython-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py314-cython-cover (macos/arm64)' + artifact: 'py314-cython-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64' + tox_env: 'py314-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py314-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py314-cython-ubuntu-x86_64-manylinux' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp314-*manylinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py314-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py314-cython-ubuntu-x86_64-musllinux' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp314-*musllinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py314-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py314-cython-ubuntu-aarch64-manylinux' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp314-*manylinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py314-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py314-cython-ubuntu-aarch64-musllinux' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp314-*musllinux*' + cibw_ft: 'false' + os: 'ubuntu-latest' + - name: 'py314-cython-nocov (windows/AMD64)' + artifact: 'py314-cython-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64' + tox_env: 'py314-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp314-*' + cibw_ft: 'false' + os: 'windows-latest' + - name: 'py314-cython-nocov (windows/x86)' + artifact: 'py314-cython-windows-x86' + python: '3.14.0-rc' + python_arch: 'x86' + tox_env: 'py314-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp314-*' + cibw_ft: 'false' + os: 'windows-latest' + - name: 'py314-cython-nocov (macos/arm64)' + artifact: 'py314-cython-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64' + tox_env: 'py314-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp314-*' + cibw_ft: 'false' + os: 'macos-latest' + - name: 'py314t-pure-cover (ubuntu/x86_64)' + artifact: 'py314t-pure-ubuntu-x86_64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-pure-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py314t-pure-cover (windows/AMD64)' + artifact: 'py314t-pure-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-pure-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py314t-pure-cover (macos/arm64)' + artifact: 'py314t-pure-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64-freethreaded' + tox_env: 'py314t-pure-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py314t-pure-nocov (ubuntu/x86_64)' + artifact: 'py314t-pure-ubuntu-x86_64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-pure-nocov' + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py314t-pure-nocov (windows/AMD64)' + artifact: 'py314t-pure-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-pure-nocov' + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py314t-pure-nocov (macos/arm64)' + artifact: 'py314t-pure-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64-freethreaded' + tox_env: 'py314t-pure-nocov' + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py314t-cython-cover (ubuntu/x86_64)' + artifact: 'py314t-cython-ubuntu-x86_64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-cover' + cover: true + cibw_arch: 'x86_64' + cibw_build: false + os: 'ubuntu-latest' + - name: 'py314t-cython-cover (windows/AMD64)' + artifact: 'py314t-cython-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-cover' + cover: true + cibw_arch: 'AMD64' + cibw_build: false + os: 'windows-latest' + - name: 'py314t-cython-cover (macos/arm64)' + artifact: 'py314t-cython-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64-freethreaded' + tox_env: 'py314t-cython-cover' + cover: true + cibw_arch: 'arm64' + cibw_build: false + os: 'macos-latest' + - name: 'py314t-cython-nocov (ubuntu/x86_64/manylinux)' + artifact: 'py314t-cython-ubuntu-x86_64-manylinux' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp314-*manylinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py314t-cython-nocov (ubuntu/x86_64/musllinux)' + artifact: 'py314t-cython-ubuntu-x86_64-musllinux' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'x86_64' + cibw_build: 'cp314-*musllinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py314t-cython-nocov (ubuntu/aarch64/manylinux)' + artifact: 'py314t-cython-ubuntu-aarch64-manylinux' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp314-*manylinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py314t-cython-nocov (ubuntu/aarch64/musllinux)' + artifact: 'py314t-cython-ubuntu-aarch64-musllinux' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'aarch64' + cibw_build: 'cp314-*musllinux*' + cibw_ft: 'true' + os: 'ubuntu-latest' + - name: 'py314t-cython-nocov (windows/AMD64)' + artifact: 'py314t-cython-windows-AMD64' + python: '3.14.0-rc' + python_arch: 'x64-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'AMD64' + cibw_build: 'cp314-*' + cibw_ft: 'true' + os: 'windows-latest' + - name: 'py314t-cython-nocov (windows/x86)' + artifact: 'py314t-cython-windows-x86' + python: '3.14.0-rc' + python_arch: 'x86-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'x86' + cibw_build: 'cp314-*' + cibw_ft: 'true' + os: 'windows-latest' + - name: 'py314t-cython-nocov (macos/arm64)' + artifact: 'py314t-cython-macos-arm64' + python: '3.14.0-rc' + python_arch: 'arm64-freethreaded' + tox_env: 'py314t-cython-nocov' + cibw_arch: 'arm64' + cibw_build: 'cp314-*' + cibw_ft: 'true' + os: 'macos-latest' - name: 'pypy39-pure-cover (ubuntu/x86_64)' artifact: 'pypy39-pure-ubuntu-x86_64' python: 'pypy-3.9' @@ -996,7 +1278,6 @@ jobs: env: CIBW_ARCHS: '${{ matrix.cibw_arch }}' CIBW_BUILD: '${{ matrix.cibw_build }}' - CIBW_FREE_THREADED_SUPPORT: '${{ matrix.cibw_ft }}' CIBW_CONTAINER_ENGINE: "docker; create_args: --cap-add=SYS_PTRACE" CIBW_ENABLE: cpython-freethreading CIBW_BUILD_VERBOSITY: '3' diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6defa6a..68c24af 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,13 +6,18 @@ exclude: '^(.tox/|ci/templates/|src/hunter.(pth|embed)$|src/hunter/vendor/|.bump # Note the order is intentional to avoid multiple passes of the hooks repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.12.3 + rev: v0.12.9 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix, --show-fixes] - id: ruff-format + - repo: https://github.com/ComPWA/taplo-pre-commit + rev: v0.9.3 + hooks: + - id: taplo-format + - id: taplo-lint - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v5.0.0 + rev: v6.0.0 hooks: - id: trailing-whitespace exclude_types: diff --git a/.taplo.toml b/.taplo.toml new file mode 100644 index 0000000..8f8054d --- /dev/null +++ b/.taplo.toml @@ -0,0 +1,3 @@ +[formatting] +array_auto_collapse = false +indent_string = " " diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 630f6ad..befe941 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -23,6 +23,9 @@ jobs: {% if prefix.startswith('pypy') %} {% set python %}pypy-{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% set cpython %}pp{{ prefix[4:5] }}{% endset %} +{% elif prefix.startswith('py314') %} +{% set python %}3.14.0-rc{% endset %} +{% set cpython %}cp314{% endset %} {% else %} {% set python %}{{ prefix[2] }}.{{ prefix[3:].rstrip('t') }}{% endset %} {% set cpython %}cp{{ prefix[2:] }}{% endset %} @@ -89,7 +92,6 @@ jobs: env: CIBW_ARCHS: '{{ '${{ matrix.cibw_arch }}' }}' CIBW_BUILD: '{{ '${{ matrix.cibw_build }}' }}' - CIBW_FREE_THREADED_SUPPORT: '{{ '${{ matrix.cibw_ft }}' }}' CIBW_CONTAINER_ENGINE: "docker; create_args: --cap-add=SYS_PTRACE" CIBW_ENABLE: cpython-freethreading CIBW_BUILD_VERBOSITY: '3' diff --git a/pyproject.toml b/pyproject.toml index a706de6..d179d1e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,7 +35,7 @@ classifiers = [ "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Utilities", - "Topic :: Software Development :: Debuggers" + "Topic :: Software Development :: Debuggers", ] keywords = [ "trace", @@ -83,31 +83,31 @@ max-line-length = 140 [tool.ruff.lint] ignore = [ - "RUF001", # ruff-specific rules ambiguous-unicode-character-string - "S101", # flake8-bandit assert + "RUF001", # ruff-specific rules ambiguous-unicode-character-string + "S101", # flake8-bandit assert "S307", - "S308", # flake8-bandit suspicious-mark-safe-usage - "E501", # pycodestyle line-too-long + "S308", # flake8-bandit suspicious-mark-safe-usage + "E501", # pycodestyle line-too-long "PLC0415", # import-outside-top-level ] select = [ - "B", # flake8-bugbear - "C4", # flake8-comprehensions + "B", # flake8-bugbear + "C4", # flake8-comprehensions "DTZ", # flake8-datetimez - "E", # pycodestyle errors + "E", # pycodestyle errors "EXE", # flake8-executable - "F", # pyflakes - "I", # isort + "F", # pyflakes + "I", # isort "INT", # flake8-gettext "PIE", # flake8-pie "PLC", # pylint convention "PLE", # pylint errors - "PT", # flake8-pytest-style + "PT", # flake8-pytest-style "RSE", # flake8-raise "RUF", # ruff-specific rules - "S", # flake8-bandit - "UP", # pyupgrade - "W", # pycodestyle warnings + "S", # flake8-bandit + "UP", # pyupgrade + "W", # pycodestyle warnings ] [tool.ruff.lint.flake8-pytest-style] diff --git a/tox.ini b/tox.ini index fdb3d72..e35a144 100644 --- a/tox.ini +++ b/tox.ini @@ -14,7 +14,7 @@ envlist = clean, check, docs, - {py39,py310,py311,py312,py313,py313t}-{pure,cython}-{cover,nocov}, + {py39,py310,py311,py312,py313,py313t,py314,py314t}-{pure,cython}-{cover,nocov}, {pypy39,pypy310,pypy310}-{pure}-{cover,nocov}, report ignore_basepython_conflict = true @@ -30,10 +30,10 @@ setenv = cython-cover: COVERAGE_PLUGIN=Cython.Coverage passenv = * +package = sdist usedevelop = cover: true nocov: false -package = sdist deps = pytest pytest-benchmark @@ -70,8 +70,8 @@ commands = [testenv:cythonize] pip_pre = true deps = - cython setuptools + cython skip_install = true commands = {posargs:python setup.py clean --all build_ext --force} From 0457d382697f74d5cb719c0e0a552ca29abdf938 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 21 Aug 2025 16:26:38 +0300 Subject: [PATCH 70/80] Explicit rc2. --- .github/workflows/github-actions.yml | 64 +++++++++---------- .../.github/workflows/github-actions.yml | 2 +- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index c8fcac5..1fd8bdc 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -865,7 +865,7 @@ jobs: os: 'macos-latest' - name: 'py314-pure-cover (ubuntu/x86_64)' artifact: 'py314-pure-ubuntu-x86_64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-pure-cover' cover: true @@ -874,7 +874,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-pure-cover (windows/AMD64)' artifact: 'py314-pure-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-pure-cover' cover: true @@ -883,7 +883,7 @@ jobs: os: 'windows-latest' - name: 'py314-pure-cover (macos/arm64)' artifact: 'py314-pure-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64' tox_env: 'py314-pure-cover' cover: true @@ -892,7 +892,7 @@ jobs: os: 'macos-latest' - name: 'py314-pure-nocov (ubuntu/x86_64)' artifact: 'py314-pure-ubuntu-x86_64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-pure-nocov' cibw_arch: 'x86_64' @@ -900,7 +900,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-pure-nocov (windows/AMD64)' artifact: 'py314-pure-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-pure-nocov' cibw_arch: 'AMD64' @@ -908,7 +908,7 @@ jobs: os: 'windows-latest' - name: 'py314-pure-nocov (macos/arm64)' artifact: 'py314-pure-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64' tox_env: 'py314-pure-nocov' cibw_arch: 'arm64' @@ -916,7 +916,7 @@ jobs: os: 'macos-latest' - name: 'py314-cython-cover (ubuntu/x86_64)' artifact: 'py314-cython-ubuntu-x86_64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-cover' cover: true @@ -925,7 +925,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-cython-cover (windows/AMD64)' artifact: 'py314-cython-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-cover' cover: true @@ -934,7 +934,7 @@ jobs: os: 'windows-latest' - name: 'py314-cython-cover (macos/arm64)' artifact: 'py314-cython-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64' tox_env: 'py314-cython-cover' cover: true @@ -943,7 +943,7 @@ jobs: os: 'macos-latest' - name: 'py314-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py314-cython-ubuntu-x86_64-manylinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-nocov' cibw_arch: 'x86_64' @@ -952,7 +952,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py314-cython-ubuntu-x86_64-musllinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-nocov' cibw_arch: 'x86_64' @@ -961,7 +961,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py314-cython-ubuntu-aarch64-manylinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-nocov' cibw_arch: 'aarch64' @@ -970,7 +970,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py314-cython-ubuntu-aarch64-musllinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-nocov' cibw_arch: 'aarch64' @@ -979,7 +979,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314-cython-nocov (windows/AMD64)' artifact: 'py314-cython-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64' tox_env: 'py314-cython-nocov' cibw_arch: 'AMD64' @@ -988,7 +988,7 @@ jobs: os: 'windows-latest' - name: 'py314-cython-nocov (windows/x86)' artifact: 'py314-cython-windows-x86' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x86' tox_env: 'py314-cython-nocov' cibw_arch: 'x86' @@ -997,7 +997,7 @@ jobs: os: 'windows-latest' - name: 'py314-cython-nocov (macos/arm64)' artifact: 'py314-cython-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64' tox_env: 'py314-cython-nocov' cibw_arch: 'arm64' @@ -1006,7 +1006,7 @@ jobs: os: 'macos-latest' - name: 'py314t-pure-cover (ubuntu/x86_64)' artifact: 'py314t-pure-ubuntu-x86_64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-pure-cover' cover: true @@ -1015,7 +1015,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-pure-cover (windows/AMD64)' artifact: 'py314t-pure-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-pure-cover' cover: true @@ -1024,7 +1024,7 @@ jobs: os: 'windows-latest' - name: 'py314t-pure-cover (macos/arm64)' artifact: 'py314t-pure-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64-freethreaded' tox_env: 'py314t-pure-cover' cover: true @@ -1033,7 +1033,7 @@ jobs: os: 'macos-latest' - name: 'py314t-pure-nocov (ubuntu/x86_64)' artifact: 'py314t-pure-ubuntu-x86_64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-pure-nocov' cibw_arch: 'x86_64' @@ -1041,7 +1041,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-pure-nocov (windows/AMD64)' artifact: 'py314t-pure-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-pure-nocov' cibw_arch: 'AMD64' @@ -1049,7 +1049,7 @@ jobs: os: 'windows-latest' - name: 'py314t-pure-nocov (macos/arm64)' artifact: 'py314t-pure-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64-freethreaded' tox_env: 'py314t-pure-nocov' cibw_arch: 'arm64' @@ -1057,7 +1057,7 @@ jobs: os: 'macos-latest' - name: 'py314t-cython-cover (ubuntu/x86_64)' artifact: 'py314t-cython-ubuntu-x86_64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-cover' cover: true @@ -1066,7 +1066,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-cython-cover (windows/AMD64)' artifact: 'py314t-cython-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-cover' cover: true @@ -1075,7 +1075,7 @@ jobs: os: 'windows-latest' - name: 'py314t-cython-cover (macos/arm64)' artifact: 'py314t-cython-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64-freethreaded' tox_env: 'py314t-cython-cover' cover: true @@ -1084,7 +1084,7 @@ jobs: os: 'macos-latest' - name: 'py314t-cython-nocov (ubuntu/x86_64/manylinux)' artifact: 'py314t-cython-ubuntu-x86_64-manylinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'x86_64' @@ -1093,7 +1093,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-cython-nocov (ubuntu/x86_64/musllinux)' artifact: 'py314t-cython-ubuntu-x86_64-musllinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'x86_64' @@ -1102,7 +1102,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-cython-nocov (ubuntu/aarch64/manylinux)' artifact: 'py314t-cython-ubuntu-aarch64-manylinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'aarch64' @@ -1111,7 +1111,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-cython-nocov (ubuntu/aarch64/musllinux)' artifact: 'py314t-cython-ubuntu-aarch64-musllinux' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'aarch64' @@ -1120,7 +1120,7 @@ jobs: os: 'ubuntu-latest' - name: 'py314t-cython-nocov (windows/AMD64)' artifact: 'py314t-cython-windows-AMD64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x64-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'AMD64' @@ -1129,7 +1129,7 @@ jobs: os: 'windows-latest' - name: 'py314t-cython-nocov (windows/x86)' artifact: 'py314t-cython-windows-x86' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'x86-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'x86' @@ -1138,7 +1138,7 @@ jobs: os: 'windows-latest' - name: 'py314t-cython-nocov (macos/arm64)' artifact: 'py314t-cython-macos-arm64' - python: '3.14.0-rc' + python: '3.14.0-rc.2' python_arch: 'arm64-freethreaded' tox_env: 'py314t-cython-nocov' cibw_arch: 'arm64' diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index befe941..34fa743 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -24,7 +24,7 @@ jobs: {% set python %}pypy-{{ prefix[4] }}.{{ prefix[5:] }}{% endset %} {% set cpython %}pp{{ prefix[4:5] }}{% endset %} {% elif prefix.startswith('py314') %} -{% set python %}3.14.0-rc{% endset %} +{% set python %}3.14.0-rc.2{% endset %} {% set cpython %}cp314{% endset %} {% else %} {% set python %}{{ prefix[2] }}.{{ prefix[3:].rstrip('t') }}{% endset %} From b202a7970f29054f0fd3614cd06667ff5143d1dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 21 Aug 2025 16:29:44 +0300 Subject: [PATCH 71/80] Always disable sysmonitoring. --- setup.py | 2 +- src/hunter/_event.c | 77 ++++++----- src/hunter/_predicates.c | 205 ++++++++++++++++-------------- src/hunter/_tracer.c | 267 +++++++++++++++++++++------------------ 4 files changed, 298 insertions(+), 253 deletions(-) diff --git a/setup.py b/setup.py index 6958a41..ec67ced 100755 --- a/setup.py +++ b/setup.py @@ -30,7 +30,7 @@ CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_TRACE=1 -DCYTHON_USE_SYS_MONITORING=0' LFLAGS = os.environ['LFLAGS'] = '' else: - CFLAGS = '' + CFLAGS = os.environ['CFLAGS'] = '-DCYTHON_USE_SYS_MONITORING=0' LFLAGS = '' allow_extensions = True diff --git a/src/hunter/_event.c b/src/hunter/_event.c index ee680bb..f5efe0d 100644 --- a/src/hunter/_event.c +++ b/src/hunter/_event.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.1.2 */ +/* Generated by Cython 3.1.3 */ /* BEGIN: Cython Metadata { @@ -35,8 +35,8 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x03080000 #error Cython requires Python 3.8+. #else -#define __PYX_ABI_VERSION "3_1_2" -#define CYTHON_HEX_VERSION 0x030102F0 +#define __PYX_ABI_VERSION "3_1_3" +#define CYTHON_HEX_VERSION 0x030103F0 #define CYTHON_FUTURE_DIVISION 1 /* CModulePreamble */ #include @@ -399,6 +399,9 @@ END: Cython Metadata */ enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; #endif #endif +#ifndef CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME + #define CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME 100 +#endif #ifndef __has_attribute #define __has_attribute(x) 0 #endif @@ -2696,22 +2699,22 @@ static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visi #endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 -#define __PYX_HAVE_RT_ImportType_proto_3_1_2 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_3 +#define __PYX_HAVE_RT_ImportType_proto_3_1_3 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_3(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_3(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_1_2 { - __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, - __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 +enum __Pyx_ImportType_CheckSize_3_1_3 { + __Pyx_ImportType_CheckSize_Error_3_1_3 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_3 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_3 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_3(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_3 check_size); #endif /* LimitedApiGetTypeDict.proto */ @@ -3355,7 +3358,7 @@ static const char __pyx_k_NO_SOURCE_not_reading_binary[] = "\077\077? NO SOURCE: static const char __pyx_k_HE_A_D_a_a_Q_a_Q_d_a_d_A_T_d_T[] = "\200\001\330\004\014\210H\220E\230\030\240\021\240!\330\004\t\210\027\220\004\220A\330\004\t\210\033\220D\230\001\330\004\t\210\031\220$\220a\330\004\t\210\031\220$\220a\330\004\t\210\034\220Q\330\004\t\210\031\220$\220a\330\004\t\210\030\220\024\220Q\330\004\t\320\t\036\230d\240!\330\004\t\210\031\220$\220a\330\004\t\210\035\220d\230!\330\004\t\210\037\230\004\230A\330\004\t\320\t\035\230T\240\021\330\004\t\210\035\220d\230!\330\004\t\210\034\220T\230\021\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\033\220D\230\001\330\004\t\210\036\220t\2301\330\004\t\210\037\230\004\230A\330\004\t\210\033\220D\230\001\330\004\t\320\t\031\230\024\230Q\330\004\013\2101"; static const char __pyx_k_HE_l_d_a_T_d_D_a_D_a_D_a_D_a_t[] = "\200\001\330\004\014\210H\220E\230\030\240\021\240!\340\004\t\210\031\220$\220l\240!\330\004\t\210\035\220d\320\032*\250!\330\004\t\210\037\230\004\320\034.\250a\330\004\t\320\t\035\230T\240\021\330\004\t\210\035\220d\320\032*\250!\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\033\220D\230\016\240a\330\004\t\210\036\220t\320\033+\2501\330\004\t\210\037\230\004\320\034.\250a\330\004\t\320\t\031\230\024\320\0350\260\001\340\004\007\200q\330\010\r\210\\\230\021\230%\230|\2501\250G\2604\260u\270I\300T\310\030\320QW\320WX\330\010\r\210[\230\001\230\025\230l\250!\2507\260$\260e\2709\300D\310\007\310v\320UV\330\010\r\210W\220L\240\001\240\024\240Q\340\010\r\210\\\230\021\330\010\r\210[\230\001\330\010\r\210W\220A\340\004\t\210\033\220D\230\001\330\004\t\210\031\220$\220a\330\004\t\210\031\220$\220a\330\004\t\210\034\220Q\330\004\t\210\030\220\024\220Q\330\004\t\320\t\036\230d\240!\340\004\013\2101"; static const char __pyx_k_A_4_Cq_O1_t_q_4vS_t4y_1_A_Cwc_E[] = "\200A\360\010\000\t\014\2104\210}\230C\230q\330\014\r\330\020\024\220O\2401\330\020\027\220t\230<\240q\330\020\023\2204\220v\230S\240\007\240t\2504\250y\270\003\2701\330\024\034\230A\330\024\025\330\030\034\230C\230w\240c\250\023\250E\260\037\300\001\330\034#\2401\330 !\330 +\2501\330$(\250\001\330$(\250\006\250a\330$(\250\010\260\002\260!\330$%\360\010\000\035 \230v\240T\250\027\260\t\270\021\330 $\240O\2602\260U\270!\2701\330 !\330\033\034\330\030\031\330\020\023\2204\220}\240C\240q\330\024\030\230\017\240w\250a\250t\260;\270d\300)\3104\310q\330\014\023\220=\240\001\330\020\024\220O\2402\320%8\270\001\330\010\017\210t\2201"; -static const char __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1[] = "\200A\360\006\000\t\014\2104\210q\330\014\023\2204\220q\330\r\021\320\021#\2403\240a\330\014\023\2204\220|\2401\330\014\017\210t\2209\230C\230q\330\020\027\220q\340\014\030\230\004\230H\240D\250\001\250\024\250Z\260q\330\014\023\220<\230q\240\013\2501\360\n\000\r\020\210u\220C\220u\230D\240\004\240M\260\023\260A\330\020\034\230D\240\007\240t\2501\320,>\270a\270u\300A\300Q\330\020\027\220\240a\240{\260!\360\006\000\r\020\210u\220C\220q\330\020\024\220E\230\024\230X\240W\250A\330\024\027\220t\230:\240Q\240c\250\021\330\030\031\330\024\033\230?\250!\2503\250a\330\024\027\220u\230G\2401\330\030\031\330\014\020\320\020$\240A\330\010\017\210t\2201"; +static const char __pyx_k_A_4q_4q_3a_4_1_t9Cq_q_HD_Zq_q_1[] = "\200A\360\006\000\t\014\2104\210q\330\014\023\2204\220q\330\r\021\320\021#\2403\240a\330\014\023\2204\220|\2401\330\014\017\210t\2209\230C\230q\330\020\027\220q\340\014\030\230\004\230H\240D\250\001\250\024\250Z\260q\330\014\023\220<\230q\240\013\2501\360\n\000\r\020\210u\220C\220u\230D\240\004\240M\260\023\260A\330\020\034\230D\240\007\240t\2501\320,>\270a\270u\300A\300Q\330\020\027\220\177\240a\240{\260!\360\006\000\r\020\210u\220C\220q\330\020\024\220E\230\024\230X\240W\250A\330\024\027\220t\230:\240Q\240c\250\021\330\030\031\330\024\033\230?\250!\2503\250a\330\024\027\220u\230G\2401\330\030\031\330\014\020\320\020$\240A\330\010\017\210t\2201"; static const char __pyx_k_A_4y_1_t9IRwa_Kr_GxqPXXYY_hhiij[] = "\200A\330\010\013\2104\210y\230\003\2301\330\014\017\210t\2209\230I\240R\240w\250a\330\020\024\220K\230r\320!G\300x\310q\320PX\320XY\320Y]\320]h\320hi\320ij\330\014\r\330\020\024\220K\230w\240a\240t\250;\260d\270)\3004\300q\330\014\023\220=\240\001\330\020\024\220K\230r\320!4\260A\340\010\017\210t\2201"; static const char __pyx_k_A_G1_IQ_HF_AQ_IQ_IQ_L_KuBa_IQ_M[] = "\200A\330\010\014\210G\2201\330\010\014\210I\220Q\330\010\014\210H\220F\230*\240A\240Q\330\010\014\210I\220Q\330\010\014\210I\220Q\330\010\014\320\014!\240\021\330\010\014\210L\230\001\330\010\014\210K\220u\230B\230a\340\010\014\210I\220Q\330\010\014\210M\230\021\330\010\014\210O\2301\330\010\014\320\014 \240\001\330\010\014\210M\230\021\330\010\014\210L\230\001\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210K\220q\330\010\014\210N\230!\330\010\014\210O\2301\330\010\014\210K\220q\330\010\014\320\014\034\230A"; static const char __pyx_k_A_4_Q_4_1_t1_t1_4xt1A_t1_1_HA_83[] = "\200A\340\010\013\2104\210{\230#\230Q\330\014\023\2204\220|\2401\330\014\027\220t\2301\330\014\017\210t\2201\330\020\033\2304\230x\240t\2501\250A\330\014\017\210t\2201\330\020\033\2301\330\021\031\230\031\240\"\240H\250A\330\020\033\2308\2403\240a\330\021\031\230\031\240\"\240G\2501\330\020\035\320\035-\250T\260\021\260$\260a\330\020\024\220G\2301\230H\240A\330\024!\240\033\250B\250a\330\024\027\220v\230Q\230a\330\030#\2401\330\030\031\340\014\020\220\r\230Q\330\010\017\210t\2201"; @@ -12544,15 +12547,15 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { /*--- Type init code ---*/ __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_3(__pyx_t_1, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #else - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(1, 7, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Ignore_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(1, 7, __pyx_L1_error) __pyx_vtabptr_6hunter_6_event_Event = &__pyx_vtable_6hunter_6_event_Event; __pyx_vtable_6hunter_6_event_Event.code_getter = (PyCodeObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_code_getter; __pyx_vtable_6hunter_6_event_Event.filename_getter = (PyObject *(*)(struct __pyx_obj_6hunter_6_event_Event *))__pyx_f_6hunter_6_event_5Event_filename_getter; @@ -12622,15 +12625,15 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_3(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -15927,6 +15930,13 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me /* PyObjectCallMethod0 */ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) { +#if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000)) + PyObject *args[1] = {obj}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_CallNoArg; + return PyObject_VectorcallMethod(method_name, args, 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else PyObject *method = NULL, *result = NULL; int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); if (likely(is_method)) { @@ -15939,6 +15949,7 @@ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name Py_DECREF(method); bad: return result; +#endif } /* RaiseNeedMoreValuesToUnpack */ @@ -16953,10 +16964,10 @@ static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visi #endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_1_2 -#define __PYX_HAVE_RT_ImportType_3_1_2 -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_3 +#define __PYX_HAVE_RT_ImportType_3_1_3 +static PyTypeObject *__Pyx_ImportType_3_1_3(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_3 check_size) { PyObject *result = 0; Py_ssize_t basicsize; @@ -17012,7 +17023,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_3 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -17020,7 +17031,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_3 && (size_t)basicsize > size) { if (PyErr_WarnFormat(NULL, 0, "%.200s.%.200s size changed, may indicate binary incompatibility. " "Expected %zd from C header, got %zd from PyObject", @@ -17136,6 +17147,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject changed = 1; } #endif // CYTHON_METH_FASTCALL +#if !CYTHON_COMPILING_IN_PYPY else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -17150,11 +17162,13 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject } changed = 1; } +#endif // !CYTHON_COMPILING_IN_PYPY } memb++; } } #endif // !CYTHON_COMPILING_IN_LIMITED_API +#if !CYTHON_COMPILING_IN_PYPY slot = spec->slots; while (slot && slot->slot && slot->slot != Py_tp_getset) slot++; @@ -17186,6 +17200,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject ++getset; } } +#endif // !CYTHON_COMPILING_IN_PYPY if (changed) PyType_Modified(type); #endif // PY_VERSION_HEX > 0x030900B1 @@ -17709,7 +17724,7 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyOb } /* CommonTypesMetaclass */ -PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { +static PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); } static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { @@ -20044,7 +20059,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyOb } /* PyObjectCallMethod1 */ -#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000) +#if !(CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000))) static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); Py_DECREF(method); @@ -20052,7 +20067,7 @@ static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { } #endif static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { -#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000 +#if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000)) PyObject *args[2] = {obj, arg}; (void) __Pyx_PyObject_GetMethod; (void) __Pyx_PyObject_CallOneArg; diff --git a/src/hunter/_predicates.c b/src/hunter/_predicates.c index 6043361..0b8944a 100644 --- a/src/hunter/_predicates.c +++ b/src/hunter/_predicates.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.1.2 */ +/* Generated by Cython 3.1.3 */ /* BEGIN: Cython Metadata { @@ -35,8 +35,8 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x03080000 #error Cython requires Python 3.8+. #else -#define __PYX_ABI_VERSION "3_1_2" -#define CYTHON_HEX_VERSION 0x030102F0 +#define __PYX_ABI_VERSION "3_1_3" +#define CYTHON_HEX_VERSION 0x030103F0 #define CYTHON_FUTURE_DIVISION 1 /* CModulePreamble */ #include @@ -399,6 +399,9 @@ END: Cython Metadata */ enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; #endif #endif +#ifndef CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME + #define CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME 100 +#endif #ifndef __has_attribute #define __has_attribute(x) 0 #endif @@ -1619,7 +1622,7 @@ struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_6hunter_11_predicates_object__l */ typedef PyObject *FrameType; -/* "_tracer.pxd":7 +/* "_tracer.pxd":6 * * * ctypedef extern FrameType # <<<<<<<<<<<<<< @@ -1673,7 +1676,7 @@ struct __pyx_obj_6hunter_6_event_Event { }; -/* "_tracer.pxd":26 +/* "_tracer.pxd":25 * * * @cython.final # <<<<<<<<<<<<<< @@ -3167,22 +3170,22 @@ static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k); static int __Pyx_setup_reduce(PyObject* type_obj); /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 -#define __PYX_HAVE_RT_ImportType_proto_3_1_2 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_3 +#define __PYX_HAVE_RT_ImportType_proto_3_1_3 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_3(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_3(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_1_2 { - __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, - __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 +enum __Pyx_ImportType_CheckSize_3_1_3 { + __Pyx_ImportType_CheckSize_Error_3_1_3 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_3 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_3 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_3(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_3 check_size); #endif /* GetVTable.proto */ @@ -3405,7 +3408,7 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig); /* FunctionImport.proto */ -static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig); +static int __Pyx_ImportFunction_3_1_3(PyObject *module, const char *funcname, void (**f)(void), const char *sig); /* MultiPhaseInitModuleState.proto */ #if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE @@ -3624,7 +3627,7 @@ static const char __pyx_k_wrap[] = "wrap"; static const char __pyx_k_A_8_a[] = "\200A\330\010\017\320\0178\270\002\270$\270a"; static const char __pyx_k_A_AV1[] = "\200A\330\010\017\210}\230A\230V\2401"; static const char __pyx_k_A_QfA[] = "\200A\330\010\017\210~\230Q\230f\240A"; -static const char __pyx_k_A_avQ[] = "\200A\330\010\017\210\230a\230v\240Q"; +static const char __pyx_k_A_avQ[] = "\200A\330\010\017\210\177\230a\230v\240Q"; static const char __pyx_k_A_q_2[] = "\200A\330\010\017\320\017 \240\001\240\026\240q"; static const char __pyx_k_A_q_U[] = "\200A\330\010\017\210q\330\014\020\220\001\330\014\020\220\005\220U\230!"; static const char __pyx_k_A_s_1[] = "\200A\330\010\017\210s\220!\2201"; @@ -3848,24 +3851,24 @@ static const char __pyx_k_And___setstate_cython[] = "And.__setstate_cython__"; static const char __pyx_k_Event_get_instruction[] = "Event_get_instruction"; static const char __pyx_k_Not___setstate_cython[] = "Not.__setstate_cython__"; static const char __pyx_k_Query___reduce_cython[] = "Query.__reduce_cython__"; -static const char __pyx_k_hk_A_1_A_4xq_7_awnA_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!}\320}\360\000\000@\002A\002\330\004\023\2204\220x\230q\240\001\330\004\007\200|\2207\230!\330\010&\240a\240w\250n\270A\330\004\013\2101"; +static const char __pyx_k_hk_A_1_A_4xq_7_awnA_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!}\320}\177\360\000\000@\002A\002\330\004\023\2204\220x\230q\240\001\330\004\007\200|\2207\230!\330\010&\240a\240w\250n\270A\330\004\013\2101"; static const char __pyx_k_init___locals_genexpr[] = "__init__..genexpr"; static const char __pyx_k_From___setstate_cython[] = "From.__setstate_cython__"; static const char __pyx_k_When___setstate_cython[] = "When.__setstate_cython__"; static const char __pyx_k_Backlog___reduce_cython[] = "Backlog.__reduce_cython__"; static const char __pyx_k_Query___setstate_cython[] = "Query.__setstate_cython__"; -static const char __pyx_k_hk_A_1_uuwwx_2XQa_7_AU_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!u\320uw\320wx\330\004\023\2202\220X\230Q\230a\330\004\007\200|\2207\230!\330\010$\240A\240U\250.\270\001\330\004\013\2101"; +static const char __pyx_k_hk_A_1_uuwwx_2XQa_7_AU_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!u\320uw\320wx\330\004\023\2202\220X\230Q\230a\330\004\007\200|\2207\230!\330\010$\240A\240U\250.\270\001\330\004\013\2101"; static const char __pyx_k_A_1_4y_q_k_wa_WF_he4wgT_6[] = "\200A\330\010\r\210^\2301\340\010\013\2104\210y\230\007\230q\330\014\032\230$\230k\250\021\340\010\017\210w\220a\330\014\020\220\001\330\014\021\220\024\220W\230F\240$\240h\250e\2604\260w\270g\300T\310\021\330\014\023\2206\230\022\230>\250\021"; static const char __pyx_k_A_4q_c_T_QgS_3as_F_F_2QfA[] = "\200A\330\010\013\2104\210q\220\006\220c\230\024\230T\240\024\240Q\240g\250S\260\001\330\014\023\2203\220a\220s\230\"\230F\240%\240}\260F\270&\300\001\340\014\023\2202\220Q\220f\230A"; static const char __pyx_k_Backlog___setstate_cython[] = "Backlog.__setstate_cython__"; -static const char __pyx_k_hk_A_1_ttvvw_3haq_7_QfN_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!t\320tv\320vw\330\004\023\2203\220h\230a\230q\330\004\007\200|\2207\230!\330\010%\240Q\240f\250N\270!\330\004\013\2101"; -static const char __pyx_k_hk_A_1_uuwwx_3haq_7_QfN_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!u\320uw\320wx\330\004\023\2203\220h\230a\230q\330\004\007\200|\2207\230!\330\010%\240Q\240f\250N\270!\330\004\013\2101"; +static const char __pyx_k_hk_A_1_ttvvw_3haq_7_QfN_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!t\320tv\320vw\330\004\023\2203\220h\230a\230q\330\004\007\200|\2207\230!\330\010%\240Q\240f\250N\270!\330\004\013\2101"; +static const char __pyx_k_hk_A_1_uuwwx_3haq_7_QfN_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\320!u\320uw\320wx\330\004\023\2203\220h\230a\230q\330\004\007\200|\2207\230!\330\010%\240Q\240f\250N\270!\330\004\013\2101"; static const char __pyx_k_hunter_predicates_Query_s[] = ""; static const char __pyx_k_A_awiq_4z_d_F_t_V7_d_F_JfA[] = "\200A\330\010\t\330\014\026\220a\220w\230i\240q\330\014\020\220\013\2304\230z\250\026\250{\270!\330\014\020\220\006\220d\230*\240F\250&\260\001\330\014\020\220\007\220t\230:\240V\2507\260!\330\014\020\220\006\220d\230*\240F\250&\260\001\330\014\020\220\010\230\004\230J\240f\250A"; static const char __pyx_k_QueryEntry___reduce_cython[] = "QueryEntry.__reduce_cython__"; static const char __pyx_k_T_G1F_a_vWA_q_t_wa_q_4q_4q[] = "\200\001\360\010\000\005\016\210T\220\021\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\230<\240w\250a\330\004\007\200q\330\010\017\320\017#\2404\240q\250\007\250{\270'\300\021\340\010\017\320\017#\2404\240q\250\007\250{\270!"; -static const char __pyx_k_hk_A_1_g_g_i_i_j_5_7_q_a_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"g\003\360\000\000g\003i\003\360\000\000i\003j\003\330\004\023\2205\230\010\240\001\240\021\330\004\007\200|\2207\230!\330\010'\240q\250\010\260\016\270a\330\004\013\2101"; -static const char __pyx_k_hk_A_1_r_r_t_t_u_7_1_7_N_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"r\002\360\000\000r\002t\002\360\000\000t\002u\002\330\004\023\2207\230(\240!\2401\330\004\007\200|\2207\230!\330\010)\250\021\250*\260N\300!\330\004\013\2101"; +static const char __pyx_k_hk_A_1_g_g_i_i_j_5_7_q_a_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"g\003\360\000\000g\003i\003\360\000\000i\003j\003\330\004\023\2205\230\010\240\001\240\021\330\004\007\200|\2207\230!\330\010'\240q\250\010\260\016\270a\330\004\013\2101"; +static const char __pyx_k_hk_A_1_r_r_t_t_u_7_1_7_N_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"r\002\360\000\000r\002t\002\360\000\000t\002u\002\330\004\023\2207\230(\240!\2401\330\004\007\200|\2207\230!\330\010)\250\021\250*\260N\300!\330\004\013\2101"; static const char __pyx_k_pyx_unpickle_Or__set_state[] = "__pyx_unpickle_Or__set_state"; static const char __pyx_k_src_hunter__predicates_pxd[] = "src/hunter/_predicates.pxd"; static const char __pyx_k_src_hunter__predicates_pyx[] = "src/hunter/_predicates.pyx"; @@ -3883,7 +3886,7 @@ static const char __pyx_k_pyx_unpickle_When__set_state[] = "__pyx_unpickle_When_ static const char __pyx_k_with_optional_operators_like[] = " with optional operators like: "; static const char __pyx_k_9I_TUUYYeeu_v_A_A_B_B_F_F_R_R[] = "\200\001\330\004\020\220\r\230[\250\001\250\024\250\\\3209I\310\033\320TU\320UY\320Ye\320eu\360\000\000v\001A\002\360\000\000A\002B\002\360\000\000B\002F\002\360\000\000F\002R\002\360\000\000R\002_\002\360\000\000_\002j\002\360\000\000j\002k\002\360\000\000k\002o\002\360\000\000o\002{\002\360\000\000{\002H\003\360\000\000H\003S\003\360\000\000S\003T\003\360\000\000T\003U\003\330\004\007\200s\210!\210=\230\002\230\"\230D\240\007\240q\250\016\260a\330\010\024\220I\230W\240A\240[\260\001\260\021"; static const char __pyx_k_Must_give_at_least_one_action[] = "Must give at least one action."; -static const char __pyx_k_hk_A_1_g_g_i_i_j_4xq_7_awnA_1[] = "\200\001\360\006\000\005\010\200\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"g\002\360\000\000g\002i\002\360\000\000i\002j\002\330\004\023\2204\220x\230q\240\001\330\004\007\200|\2207\230!\330\010&\240a\240w\250n\270A\330\004\013\2101"; +static const char __pyx_k_hk_A_1_g_g_i_i_j_4xq_7_awnA_1[] = "\200\001\360\006\000\005\010\200\177\220h\230k\250\033\260A\330\010\r\210^\2301\330\010\016\320\016!\360\000\000\"g\002\360\000\000g\002i\002\360\000\000i\002j\002\330\004\023\2204\220x\230q\240\001\330\004\007\200|\2207\230!\330\010&\240a\240w\250n\270A\330\004\013\2101"; static const char __pyx_k_pyx_unpickle_Query__set_state[] = "__pyx_unpickle_Query__set_state"; static const char __pyx_k_A_r_E_1_A_A_d_A_d_4q_A_Q_A_Q_q[] = "\200A\330\010\017\320\017/\250r\260\023\260E\270\021\270!\330\014\020\220\003\2201\330\014\020\220\005\220[\240\001\330\021 \240\004\240A\330\021 \240\004\240A\330\021&\240d\250!\330\021(\250\004\250A\330\021&\240d\250!\330\021#\2404\240q\330\021 \240\004\240A\330\021!\240\024\240Q\330\021 \240\004\240A\330\021!\240\024\240Q\340\014\017\210q"; static const char __pyx_k_Pyx_CFunc_6hunter_11_predicate[] = "__Pyx_CFunc_6hunter_11_predicates_object__lParenEvent__rParen_to_py_5event..wrap"; @@ -3894,7 +3897,7 @@ static const char __pyx_k_pyx_unpickle_Backlog__set_stat[] = "__pyx_unpickle_Bac static const char __pyx_k_A_1_Qa_E_F_Q_Q_D_a_D_a_t1_D_T_D[] = "\200A\330\010\017\210|\2301\330\014\020\220\005\220Q\220a\330\020\024\220E\230\021\230!\330\020\024\220F\230+\240Q\330\025\031\230\024\230Q\330\025\034\230D\240\001\330\025\"\240$\240a\330\025$\240D\250\001\330\025\"\240$\240a\330\025\037\230t\2401\330\025\034\230D\240\001\330\025\035\230T\240\021\330\025\034\230D\240\001\330\025\035\230T\240\021\340\020\023\2201"; static const char __pyx_k_Qd_PP_llx_y_D_D_E_E_I_I_U_U_a_a[] = "\200\001\330\004\020\320\020\"\240+\250Q\250d\260,\320>P\320P[\320[\\\320\\`\320`l\320lx\360\000\000y\001D\002\360\000\000D\002E\002\360\000\000E\002I\002\360\000\000I\002U\002\360\000\000U\002a\002\360\000\000a\002l\002\360\000\000l\002m\002\360\000\000m\002q\002\360\000\000q\002}\002\360\000\000}\002J\003\360\000\000J\003U\003\360\000\000U\003V\003\360\000\000V\003Z\003\360\000\000Z\003f\003\360\000\000f\003r\003\360\000\000r\003}\003\360\000\000}\003~\003\360\000\000~\003B\004\360\000\000B\004N\004\360\000\000N\004Z\004\360\000\000Z\004e\004\360\000\000e\004f\004\360\000\000f\004j\004\360\000\000j\004v\004\360\000\000v\004C\005\360\000\000C\005N\005\360\000\000N\005O\005\360\000\000O\005S\005\360\000\000S\005_\005\360\000\000_\005n\005\360\000\000n\005y\005\360\000\000y\005z\005\360\000\000z\005~\005\360\000\000~\005J\006\360\000\000J\006^\006\360\000\000^\006i\006\360\000\000i\006j\006\360\000\000j\006k\006\330\004\007\200s\210!\210=\230\002\230#\230T\240\027\250\001\250\036\260q\330\010\024\220I\230W\240A\240[\260\001\260\021"; static const char __pyx_k_T_4_4y_L_HTXX__cckkooww_G1F_a_v[] = "\200\001\360\010\000\005\016\210T\220\032\2304\230|\2504\250y\270\004\270L\310\004\310H\320TX\320X_\320_c\320ck\320ko\320ow\320w{\320{|\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\2309\240G\2505\260\003\2604\260{\300'\310\025\310c\320QU\320U]\320]d\320di\320il\320lp\320p{\360\000\000|\001C\002\360\000\000C\002H\002\360\000\000H\002K\002\360\000\000K\002O\002\360\000\000O\002V\002\360\000\000V\002]\002\360\000\000]\002^\002\330\004\007\200q\330\010\017\320\017(\250\004\250A\250W\260K\270w\300a\340\010\017\320\017(\250\004\250A\250W\260K\270q"; -static const char __pyx_k_T_7t_d_UYYeeiittx_y_D_D_H_H_T_T[] = "\200\001\360\010\000\005\016\210T\320\021\"\240$\320&7\260t\270;\300d\310+\320UY\320Ye\320ei\320it\320tx\360\000\000y\001D\002\360\000\000D\002H\002\360\000\000H\002T\002\360\000\000T\002X\002\360\000\000X\002f\002\360\000\000f\002j\002\360\000\000j\002k\002\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\320\033+\2507\260%\260s\270$\320>N\310g\320UZ\320Z]\320]a\320ak\320kr\320rw\320wz\320z~\360\000\000\001I\002\360\000\000I\002P\002\360\000\000P\002U\002\360\000\000U\002X\002\360\000\000X\002\\\002\360\000\000\\\002g\002\360\000\000g\002n\002\360\000\000n\002s\002\360\000\000s\002v\002\360\000\000v\002z\002\360\000\000z\002D\003\360\000\000D\003K\003\360\000\000K\003P\003\360\000\000P\003S\003\360\000\000S\003W\003\360\000\000W\003a\003\360\000\000a\003h\003\360\000\000h\003m\003\360\000\000m\003p\003\360\000\000p\003t\003\360\000\000t\003\003\360\000\000\003F\004\360\000\000F\004K\004\360\000\000K\004N\004\360\000\000N\004R\004\360\000\000R\004_\004\360\000\000_\004f\004\360\000\000f\004k\004\360\000\000k\004n\004\360\000\000n\004r\004\360\000\000r\004D\005\360\000\000D\005K\005\360\000\000K\005L\005\330\004\007\200q\330\010\017\320\017&\240d\250!\2507\260+\270W\300A\340\010\017\320\017&\240d\250!\2507\260+\270Q"; +static const char __pyx_k_T_7t_d_UYYeeiittx_y_D_D_H_H_T_T[] = "\200\001\360\010\000\005\016\210T\320\021\"\240$\320&7\260t\270;\300d\310+\320UY\320Ye\320ei\320it\320tx\360\000\000y\001D\002\360\000\000D\002H\002\360\000\000H\002T\002\360\000\000T\002X\002\360\000\000X\002f\002\360\000\000f\002j\002\360\000\000j\002k\002\330\004\014\210G\2201\220F\230,\240a\330\004\007\200v\210W\220A\330\010\022\220!\330\010\027\220q\340\010\027\220t\320\033+\2507\260%\260s\270$\320>N\310g\320UZ\320Z]\320]a\320ak\320kr\320rw\320wz\320z~\360\000\000\177\001I\002\360\000\000I\002P\002\360\000\000P\002U\002\360\000\000U\002X\002\360\000\000X\002\\\002\360\000\000\\\002g\002\360\000\000g\002n\002\360\000\000n\002s\002\360\000\000s\002v\002\360\000\000v\002z\002\360\000\000z\002D\003\360\000\000D\003K\003\360\000\000K\003P\003\360\000\000P\003S\003\360\000\000S\003W\003\360\000\000W\003a\003\360\000\000a\003h\003\360\000\000h\003m\003\360\000\000m\003p\003\360\000\000p\003t\003\360\000\000t\003\177\003\360\000\000\177\003F\004\360\000\000F\004K\004\360\000\000K\004N\004\360\000\000N\004R\004\360\000\000R\004_\004\360\000\000_\004f\004\360\000\000f\004k\004\360\000\000k\004n\004\360\000\000n\004r\004\360\000\000r\004D\005\360\000\000D\005K\005\360\000\000K\005L\005\330\004\007\200q\330\010\017\320\017&\240d\250!\2507\260+\270W\300A\340\010\017\320\017&\240d\250!\2507\260+\270Q"; static const char __pyx_k_Ubbc_JfF_j_VW_4z_iq_1_ERt1_M_IU[] = "\320\004'\240{\260)\270=\310\r\320Ub\320bc\330\010\014\210J\220f\230F\240'\250\021\250(\260$\260j\300\001\300\030\310\035\320VW\330\010\013\2104\210z\230\021\230$\230i\240q\330\014\022\220)\2301\320\034E\300R\300t\3101\330\010\014\210M\230\021\330\010\014\210I\220U\230!\2307\240!\330\010\014\210H\220A\330\010\014\210I\220Q\330\010\014\210I\220Q\330\010\014\210H\220A\330\010\014\210M\230\024\230W\240M\260\024\260[\300\001\330\010\014\210K\220q"; static const char __pyx_k_Yat_q_q_4q_xq_fAQ_Q_gRq_KvS_q_2[] = "\200\001\360\034\000\005\016\210Y\220a\220t\230<\240q\330\004\007\200q\330\010\013\2104\210q\330\014\020\220\007\220x\230q\340\014\032\230(\240$\240f\250A\250Q\330\014\032\230+\240Q\330\014!\240\025\240g\250R\250q\330\014\034\230K\240v\250S\260\001\330\014\037\230q\320 2\260#\260T\270\027\300\002\320BU\320UW\320WX\330\014\017\210q\330\020\023\220>\240\024\240[\260\007\260w\270a\330\024\"\240+\250V\2601\340\024\"\240+\250Q\330\020\023\220<\230w\240a\330\024#\2405\250\001\330\024\034\230A\330\024\"\240!\330\024\032\230&\240\004\240L\260\002\260!\330\030&\240e\2501\330\034\"\240'\250\025\250c\260\024\260Q\330\034.\250e\2601\330\034\"\240,\250b\260\014\270B\270c\300\027\310\001\340\030\033\2304\230t\2401\340\034'\240{\260!\330\034'\240|\2601\330\034'\240|\2601\330\030$\240K\250q\260\001\330\030 \240\005\240Q\330\030'\240q\330\024\030\230\017\240q\330\030\033\2304\230y\250\003\2505\260\003\2604\260x\270q\300\001\330\034 \240\007\240q\250\001\330\014\020\320\020!\240\024\240Q\330\020\023\2204\220y\240\003\2401\330\024\030\230\007\230q\240\001\330\025\036\230a\230t\240:\250X\260Q\330\024\030\230\007\230q\240\001\330\014\020\220\006\220f\230A\340\010\013\2104\210w\220d\230%\230w\240b\250\001\360\006\000\r\021\220\006\220f\230A\330\010\013\2104\210y\230\003\2305\240\003\2404\240x\250q\260\001\330\014\035\230[\250\001\250\027\260\004\260A\330\014\032\230)\2405\250\001\330\014\020\220\006\220g\230Q\230a\340\004\013\2101"; static const char __pyx_k_Yd_M_waq_D_V1_1_Yd_M_waq_F_HM_q[] = "\200\001\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\320\013\034\230D\240\r\250V\2601\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\014\210F\320\022$\240H\250M\270\026\270q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\014\210M\230\026\230w\240h\250f\260A\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2105\220\006\320\026'\240{\260\"\260M\300\026\300q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2105\220\006\320\026'\240y\260\002\260-\270v\300Q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2105\220\r\230V\2406\250\026\250q\260\001\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\003\240=\260\006\260a\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\004\240M\260\026\260q\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\003\240=\260\006\260a\330\014\023\2201\330\004\010\210\005\210Y\220d\230!\330\010\034\230M\250\026\250w\260a\260q\330\010\013\2104\320\017 \240\004\240M\260\026\260q\330\014\023\2201\340\004\013\2101"; @@ -3906,7 +3909,7 @@ static const char __pyx_k_hunter__predicates_When_conditi[] = "\320>[\320[\\\340\020\032\230!\330\020\031\230\021\340\014\017\210w\220g\230Q\330\020\026\220i\230q\240\002\320\":\320:R\320RS\340\014\023\2201\220J\230j\250\001\250\027\260\001\340\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\320\014 \240\005\240W\250A\320-=\270V\3001\330\010\014\320\014\036\230e\2407\250!\250>\270\026\270q\330\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\320\014\036\230e\2407\250!\250>\270\026\270q\330\010\014\210O\2305\240\007\240q\250\013\2606\270\021\330\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\210M\230\025\230g\240Q\240i\250v\260Q\330\010\014\210L\230\005\230W\240A\240X\250V\2601\330\010\014\210M\230\025\230g\240Q\240i\250v\260Q"; static const char __pyx_k_A_awa_Jd_d_D_a_Jd_D_a_M_XV1_Jd_K[] = "\200A\330\010\t\330\014\026\220a\220w\230a\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\320\024&\240d\250(\260&\270\001\330\014\020\220\004\320\024$\240D\250\010\260\006\260a\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\320\024$\240D\250\010\260\006\260a\330\014\020\220\004\220M\240\024\240X\250V\2601\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\220K\230t\2408\2506\260\021\330\014\020\220\004\220J\230d\240(\250&\260\001\330\014\020\220\004\220K\230t\2408\2506\260\021"; @@ -32046,63 +32049,63 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_3(__pyx_t_1, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #else - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(3, 7, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Ignore_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(3, 7, __pyx_L1_error) __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._event", "Event", + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._event", "Event", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_6_event_Event), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_6_event_Event), #else - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_6_event_Event), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(3, 39, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(3, 39, __pyx_L1_error) __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(3, 39, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_2, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_3(__pyx_t_2, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 13, __pyx_L1_error) + __pyx_t_2 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_2, "types", "CodeType", + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_3(__pyx_t_2, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #else - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(5, 13, __pyx_L1_error) - __pyx_t_1 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 26, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Ignore_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(5, 12, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("hunter._tracer"); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 25, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_2(__pyx_t_1, "hunter._tracer", "Tracer", + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = __Pyx_ImportType_3_1_3(__pyx_t_1, "hunter._tracer", "Tracer", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_7_tracer_Tracer), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_7_tracer_Tracer), #else - sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_7_tracer_Tracer), + sizeof(struct __pyx_obj_6hunter_7_tracer_Tracer), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_7_tracer_Tracer), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(5, 26, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) __PYX_ERR(5, 25, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); @@ -32134,8 +32137,8 @@ static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { /*--- Function import code ---*/ __pyx_t_1 = PyImport_ImportModule("hunter._event"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_ImportFunction_3_1_2(__pyx_t_1, "fast_clone", (void (**)(void))&__pyx_f_6hunter_6_event_fast_clone, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) - if (__Pyx_ImportFunction_3_1_2(__pyx_t_1, "fast_detach", (void (**)(void))&__pyx_f_6hunter_6_event_fast_detach, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *, PyObject *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_1_3(__pyx_t_1, "fast_clone", (void (**)(void))&__pyx_f_6hunter_6_event_fast_clone, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_1_3(__pyx_t_1, "fast_detach", (void (**)(void))&__pyx_f_6hunter_6_event_fast_detach, "struct __pyx_obj_6hunter_6_event_Event *(struct __pyx_obj_6hunter_6_event_Event *, PyObject *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -32429,7 +32432,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 6, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__predicates", __pyx_f[0], 1, 3, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "cfunc.to_py":65 * @@ -32774,7 +32777,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * raise TypeError, "self.getter cannot be converted to a Python object for pickling" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,6,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_10QueryEntry_7__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_QueryEntry___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32797,7 +32800,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5Query_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Query___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Query, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32830,7 +32833,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32842,7 +32845,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_When__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,49,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4When_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_When___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[59])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_When, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32863,7 +32866,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,11,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[74])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32875,7 +32878,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_From__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_4From_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_From___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[75])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_From, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32896,7 +32899,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[87])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32908,7 +32911,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_And__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,48,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3And_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_And___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[88])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_And, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32929,7 +32932,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[100])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32941,7 +32944,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Or__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,50,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_2Or_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Or___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[101])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Or, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -32962,7 +32965,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[112])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -32974,7 +32977,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Not__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,52,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,47,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3Not_19__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Not___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[113])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Not, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33018,7 +33021,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef tuple state * cdef object _dict */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,4,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_19__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[134])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33030,7 +33033,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< * __pyx_unpickle_Backlog__set_state(self, __pyx_state) */ - __Pyx_TraceLine(16,53,0,__PYX_ERR(1, 16, __pyx_L1_error)) + __Pyx_TraceLine(16,51,0,__PYX_ERR(1, 16, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7Backlog_21__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Backlog___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[135])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_6hunter_11_predicates_Backlog, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_3) < 0) __PYX_ERR(1, 16, __pyx_L1_error) @@ -33051,7 +33054,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,3,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,5,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_1__pyx_unpickle_Query, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[137])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Query, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33064,7 +33067,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.query_contains = __pyx_state[0]; __pyx_result.query_endswith = __pyx_state[1]; __pyx_result.query_eq = __pyx_state[2]; __pyx_result.query_gt = __pyx_state[3]; __pyx_result.query_gte = __pyx_state[4]; __pyx_result.query_in = __pyx_state[5]; __pyx_result.query_lt = __pyx_state[6]; __pyx_result.query_lte = __pyx_state[7]; __pyx_result.query_regex = __pyx_state[8]; __pyx_result.query_startswith = __pyx_state[9] * if len(__pyx_state) > 10 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33072,7 +33075,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,10,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_3__pyx_unpickle_When, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[139])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_When, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33085,7 +33088,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.actions = __pyx_state[0]; __pyx_result.condition = __pyx_state[1] * if len(__pyx_state) > 2 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33093,7 +33096,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,15,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_5__pyx_unpickle_From, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[141])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_From, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33114,7 +33117,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,8,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,14,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_7__pyx_unpickle_And, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[143])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_And, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33127,7 +33130,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,34,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33135,7 +33138,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,7,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,13,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_9__pyx_unpickle_Or, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[145])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Or, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33148,7 +33151,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicates = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,33,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,36,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33156,7 +33159,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,12,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_11__pyx_unpickle_Not, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[147])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Not, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33169,7 +33172,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * __pyx_result.predicate = __pyx_state[0] * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): */ - __Pyx_TraceLine(11,29,0,__PYX_ERR(1, 11, __pyx_L1_error)) + __Pyx_TraceLine(11,35,0,__PYX_ERR(1, 11, __pyx_L1_error)) /* "(tree fragment)":1 @@ -33177,7 +33180,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * cdef object __pyx_PickleError * cdef object __pyx_result */ - __Pyx_TraceLine(1,2,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,9,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_11_predicates_13__pyx_unpickle_Backlog, 0, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, NULL, __pyx_mstate_global->__pyx_n_u_hunter__predicates, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[149])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_pyx_unpickle_Backlog, __pyx_t_3) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -33198,12 +33201,12 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); * from __future__ import absolute_import * */ - __Pyx_TraceLine(1,6,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,3,0,__PYX_ERR(0, 1, __pyx_L1_error)) __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_TraceReturnValue(Py_None, 6, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 3, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -33213,7 +33216,7 @@ __Pyx_RefNannySetupContext("PyInit__predicates", 0); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(6, 0); + __Pyx_TraceExceptionUnwind(3, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._predicates", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -35976,6 +35979,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject changed = 1; } #endif // CYTHON_METH_FASTCALL +#if !CYTHON_COMPILING_IN_PYPY else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -35990,11 +35994,13 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject } changed = 1; } +#endif // !CYTHON_COMPILING_IN_PYPY } memb++; } } #endif // !CYTHON_COMPILING_IN_LIMITED_API +#if !CYTHON_COMPILING_IN_PYPY slot = spec->slots; while (slot && slot->slot && slot->slot != Py_tp_getset) slot++; @@ -36026,6 +36032,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject ++getset; } } +#endif // !CYTHON_COMPILING_IN_PYPY if (changed) PyType_Modified(type); #endif // PY_VERSION_HEX > 0x030900B1 @@ -36158,7 +36165,7 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyOb } /* CommonTypesMetaclass */ -PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { +static PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); } static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { @@ -37702,6 +37709,13 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me /* PyObjectCallMethod0 */ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) { +#if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000)) + PyObject *args[1] = {obj}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_CallNoArg; + return PyObject_VectorcallMethod(method_name, args, 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else PyObject *method = NULL, *result = NULL; int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); if (likely(is_method)) { @@ -37714,6 +37728,7 @@ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name Py_DECREF(method); bad: return result; +#endif } /* RaiseNeedMoreValuesToUnpack */ @@ -38878,7 +38893,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, } /* PyObjectCallMethod1 */ -#if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000) +#if !(CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000))) static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { PyObject *result = __Pyx_PyObject_CallOneArg(method, arg); Py_DECREF(method); @@ -38886,7 +38901,7 @@ static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) { } #endif static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) { -#if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000 +#if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000)) PyObject *args[2] = {obj, arg}; (void) __Pyx_PyObject_GetMethod; (void) __Pyx_PyObject_CallOneArg; @@ -39232,10 +39247,10 @@ static int __Pyx_setup_reduce(PyObject* type_obj) { } /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_1_2 -#define __PYX_HAVE_RT_ImportType_3_1_2 -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_3 +#define __PYX_HAVE_RT_ImportType_3_1_3 +static PyTypeObject *__Pyx_ImportType_3_1_3(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_3 check_size) { PyObject *result = 0; Py_ssize_t basicsize; @@ -39291,7 +39306,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_3 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -39299,7 +39314,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_3 && (size_t)basicsize > size) { if (PyErr_WarnFormat(NULL, 0, "%.200s.%.200s size changed, may indicate binary incompatibility. " "Expected %zd from C header, got %zd from PyObject", @@ -41795,9 +41810,9 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s } /* FunctionImport */ -#ifndef __PYX_HAVE_RT_ImportFunction_3_1_2 -#define __PYX_HAVE_RT_ImportFunction_3_1_2 -static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { +#ifndef __PYX_HAVE_RT_ImportFunction_3_1_3 +#define __PYX_HAVE_RT_ImportFunction_3_1_3 +static int __Pyx_ImportFunction_3_1_3(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { PyObject *d = 0; PyObject *cobj = 0; union { diff --git a/src/hunter/_tracer.c b/src/hunter/_tracer.c index 4554dcb..8a39a5a 100644 --- a/src/hunter/_tracer.c +++ b/src/hunter/_tracer.c @@ -1,4 +1,4 @@ -/* Generated by Cython 3.1.2 */ +/* Generated by Cython 3.1.3 */ /* BEGIN: Cython Metadata { @@ -35,8 +35,8 @@ END: Cython Metadata */ #elif PY_VERSION_HEX < 0x03080000 #error Cython requires Python 3.8+. #else -#define __PYX_ABI_VERSION "3_1_2" -#define CYTHON_HEX_VERSION 0x030102F0 +#define __PYX_ABI_VERSION "3_1_3" +#define CYTHON_HEX_VERSION 0x030103F0 #define CYTHON_FUTURE_DIVISION 1 /* CModulePreamble */ #include @@ -399,6 +399,9 @@ END: Cython Metadata */ enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; #endif #endif +#ifndef CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME + #define CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME 100 +#endif #ifndef __has_attribute #define __has_attribute(x) 0 #endif @@ -1611,7 +1614,7 @@ struct __pyx_obj_6hunter_7_tracer_Tracer; */ typedef PyObject *FrameType; -/* "hunter/_tracer.pxd":7 +/* "hunter/_tracer.pxd":6 * * * ctypedef extern FrameType # <<<<<<<<<<<<<< @@ -1769,7 +1772,7 @@ struct __pyx_obj_6hunter_11_predicates_Backlog { }; -/* "hunter/_tracer.pxd":26 +/* "hunter/_tracer.pxd":25 * * * @cython.final # <<<<<<<<<<<<<< @@ -2716,22 +2719,22 @@ static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visi #endif /* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2 -#define __PYX_HAVE_RT_ImportType_proto_3_1_2 +#ifndef __PYX_HAVE_RT_ImportType_proto_3_1_3 +#define __PYX_HAVE_RT_ImportType_proto_3_1_3 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L #include #endif #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_3(s) alignof(s) #else -#define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*) +#define __PYX_GET_STRUCT_ALIGNMENT_3_1_3(s) sizeof(void*) #endif -enum __Pyx_ImportType_CheckSize_3_1_2 { - __Pyx_ImportType_CheckSize_Error_3_1_2 = 0, - __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1, - __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2 +enum __Pyx_ImportType_CheckSize_3_1_3 { + __Pyx_ImportType_CheckSize_Error_3_1_3 = 0, + __Pyx_ImportType_CheckSize_Warn_3_1_3 = 1, + __Pyx_ImportType_CheckSize_Ignore_3_1_3 = 2 }; -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size); +static PyTypeObject *__Pyx_ImportType_3_1_3(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_3 check_size); #endif /* LimitedApiGetTypeDict.proto */ @@ -2995,7 +2998,7 @@ static unsigned long __Pyx_get_runtime_version(void); static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer); /* FunctionImport.proto */ -static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig); +static int __Pyx_ImportFunction_3_1_3(PyObject *module, const char *funcname, void (**f)(void), const char *sig); /* MultiPhaseInitModuleState.proto */ #if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE @@ -6178,7 +6181,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14__exit__(struct __pyx_obj_6 return __pyx_r; } -/* "hunter/_tracer.pxd":29 +/* "hunter/_tracer.pxd":28 * cdef class Tracer: * cdef: * readonly object handler # <<<<<<<<<<<<<< @@ -6210,11 +6213,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 29, 0, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 28, 0, 0, 0, __PYX_ERR(2, 28, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->handler); __pyx_r = __pyx_v_self->handler; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 28, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6223,7 +6226,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 28, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.handler.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6234,7 +6237,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_7handler___get__(struct __pyx return __pyx_r; } -/* "hunter/_tracer.pxd":30 +/* "hunter/_tracer.pxd":29 * cdef: * readonly object handler * readonly object previous # <<<<<<<<<<<<<< @@ -6266,11 +6269,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 30, 0, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 29, 0, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->previous); __pyx_r = __pyx_v_self->previous; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6279,7 +6282,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 29, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.previous.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6290,7 +6293,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_8previous___get__(struct __py return __pyx_r; } -/* "hunter/_tracer.pxd":31 +/* "hunter/_tracer.pxd":30 * readonly object handler * readonly object previous * readonly object threading_support # <<<<<<<<<<<<<< @@ -6322,11 +6325,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 31, 0, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 30, 0, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->threading_support); __pyx_r = __pyx_v_self->threading_support; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6335,7 +6338,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 30, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.threading_support.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6346,7 +6349,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_17threading_support___get__(s return __pyx_r; } -/* "hunter/_tracer.pxd":32 +/* "hunter/_tracer.pxd":31 * readonly object previous * readonly object threading_support * readonly bint profiling_mode # <<<<<<<<<<<<<< @@ -6379,13 +6382,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 32, 0, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 31, 0, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 32, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_self->profiling_mode); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6395,7 +6398,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 31, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.profiling_mode.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6406,7 +6409,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_14profiling_mode___get__(stru return __pyx_r; } -/* "hunter/_tracer.pxd":33 +/* "hunter/_tracer.pxd":32 * readonly object threading_support * readonly bint profiling_mode * readonly int depth # <<<<<<<<<<<<<< @@ -6439,13 +6442,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 33, 0, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 32, 0, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 33, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->depth); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6455,7 +6458,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 32, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.depth.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6466,7 +6469,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5depth___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_tracer.pxd":34 +/* "hunter/_tracer.pxd":33 * readonly bint profiling_mode * readonly int depth * readonly int calls # <<<<<<<<<<<<<< @@ -6499,13 +6502,13 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 34, 0, 0, 0, __PYX_ERR(2, 34, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 33, 0, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 34, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_self->calls); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 33, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 34, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6515,7 +6518,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 34, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 33, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer.calls.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6526,7 +6529,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_5calls___get__(struct __pyx_o return __pyx_r; } -/* "hunter/_tracer.pxd":38 +/* "hunter/_tracer.pxd":37 * object __weakref__ * * readonly object _threading_previous # <<<<<<<<<<<<<< @@ -6557,11 +6560,11 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__ int __pyx_clineno = 0; __Pyx_TraceFrameInit(((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])) __Pyx_RefNannySetupContext("__get__", 0); - __Pyx_TraceStartFunc("__get__", __pyx_f[2], 38, 0, 0, 0, __PYX_ERR(2, 38, __pyx_L1_error)); + __Pyx_TraceStartFunc("__get__", __pyx_f[2], 37, 0, 0, 0, __PYX_ERR(2, 37, __pyx_L1_error)); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_self->_threading_previous); __pyx_r = __pyx_v_self->_threading_previous; - __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 38, __pyx_L1_error)); + __Pyx_TraceReturnValue(__pyx_r, 0, 0, __PYX_ERR(2, 37, __pyx_L1_error)); goto __pyx_L0; /* function exit code */ @@ -6570,7 +6573,7 @@ static PyObject *__pyx_pf_6hunter_7_tracer_6Tracer_19_threading_previous___get__ #if CYTHON_USE_SYS_MONITORING __Pyx_TraceExceptionUnwind(0, 0); #else - __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 38, __pyx_L1_error)); + __Pyx_TraceReturnValue(NULL, 0, 0, __PYX_ERR(2, 37, __pyx_L1_error)); #endif __Pyx_AddTraceback("hunter._tracer.Tracer._threading_previous.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; @@ -6953,9 +6956,9 @@ static PyMemberDef __pyx_type_6hunter_7_tracer_Tracer_members[] = { }; #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x03090000 #if defined(__GNUC__) || defined(__clang__) -#warning "src/hunter/_tracer.pxd:36:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9." +#warning "src/hunter/_tracer.pxd:35:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9." #elif defined(_MSC_VER) -#pragma message("src/hunter/_tracer.pxd:36:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9.") +#pragma message("src/hunter/_tracer.pxd:35:15: : __weakref__ is unsupported in the Limited API when running on Python <3.9.") #endif #endif static PyType_Slot __pyx_type_6hunter_7_tracer_Tracer_slots[] = { @@ -7112,17 +7115,17 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ - __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 13, __pyx_L1_error) + __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + __pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType = __Pyx_ImportType_3_1_3(__pyx_t_1, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #else - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(2, 13, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Ignore_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_CodeType) __PYX_ERR(2, 12, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_6hunter_7_tracer_Tracer_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer)) __PYX_ERR(0, 58, __pyx_L1_error) if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_6hunter_7_tracer_Tracer_spec, __pyx_mstate->__pyx_ptype_6hunter_7_tracer_Tracer) < 0) __PYX_ERR(0, 58, __pyx_L1_error) @@ -7165,106 +7168,106 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) { /*--- Type import code ---*/ __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", + __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_1_3(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyTypeObject), + sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyTypeObject), #elif CYTHON_COMPILING_IN_LIMITED_API 0, 0, #else - sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyHeapTypeObject), + sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyHeapTypeObject), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyImport_ImportModule("types"); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_2(__pyx_t_1, "types", "CodeType", + __pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType = __Pyx_ImportType_3_1_3(__pyx_t_1, "types", "CodeType", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #else - sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(PyCodeObject), + sizeof(PyCodeObject), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(PyCodeObject), #endif - __Pyx_ImportType_CheckSize_Ignore_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(4, 7, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Ignore_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_CodeType) __PYX_ERR(4, 7, __pyx_L1_error) __pyx_t_2 = PyImport_ImportModule("hunter._event"); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._event", "Event", + __pyx_mstate->__pyx_ptype_6hunter_6_event_Event = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._event", "Event", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_6_event_Event), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_6_event_Event), #else - sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_6_event_Event), + sizeof(struct __pyx_obj_6hunter_6_event_Event), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_6_event_Event), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(4, 39, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_6_event_Event) __PYX_ERR(4, 39, __pyx_L1_error) __pyx_vtabptr_6hunter_6_event_Event = (struct __pyx_vtabstruct_6hunter_6_event_Event*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6hunter_6_event_Event); if (unlikely(!__pyx_vtabptr_6hunter_6_event_Event)) __PYX_ERR(4, 39, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyImport_ImportModule("hunter._predicates"); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Query", + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "Query", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Query), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Query), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Query), + sizeof(struct __pyx_obj_6hunter_11_predicates_Query), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Query), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(5, 7, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "And", + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Query) __PYX_ERR(5, 7, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_And = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "And", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), + sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_And), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), + sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_And), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_And), + sizeof(struct __pyx_obj_6hunter_11_predicates_And), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_And), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(5, 22, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Or", + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_And) __PYX_ERR(5, 22, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "Or", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Or), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Or), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Or), + sizeof(struct __pyx_obj_6hunter_11_predicates_Or), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Or), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(5, 28, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Not", + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Or) __PYX_ERR(5, 28, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "Not", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Not), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Not), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Not), + sizeof(struct __pyx_obj_6hunter_11_predicates_Not), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Not), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(5, 34, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "When", + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Not) __PYX_ERR(5, 34, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_When = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "When", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), + sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_When), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), + sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_When), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_When), + sizeof(struct __pyx_obj_6hunter_11_predicates_When), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_When), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(5, 40, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "From", + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_When) __PYX_ERR(5, 40, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_From = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "From", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), + sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_From), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), + sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_From), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_From), + sizeof(struct __pyx_obj_6hunter_11_predicates_From), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_From), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(5, 47, __pyx_L1_error) - __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_1_2(__pyx_t_2, "hunter._predicates", "Backlog", + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_From) __PYX_ERR(5, 47, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog = __Pyx_ImportType_3_1_3(__pyx_t_2, "hunter._predicates", "Backlog", #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), + sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Backlog), #elif CYTHON_COMPILING_IN_LIMITED_API - sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), + sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Backlog), #else - sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6hunter_11_predicates_Backlog), + sizeof(struct __pyx_obj_6hunter_11_predicates_Backlog), __PYX_GET_STRUCT_ALIGNMENT_3_1_3(struct __pyx_obj_6hunter_11_predicates_Backlog), #endif - __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(5, 57, __pyx_L1_error) + __Pyx_ImportType_CheckSize_Warn_3_1_3); if (!__pyx_mstate->__pyx_ptype_6hunter_11_predicates_Backlog) __PYX_ERR(5, 57, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7295,7 +7298,7 @@ static int __Pyx_modinit_function_import_code(__pyx_mstatetype *__pyx_mstate) { /*--- Function import code ---*/ __pyx_t_1 = PyImport_ImportModule("hunter._predicates"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_ImportFunction_3_1_2(__pyx_t_1, "fast_call", (void (**)(void))&__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) + if (__Pyx_ImportFunction_3_1_3(__pyx_t_1, "fast_call", (void (**)(void))&__pyx_f_6hunter_11_predicates_fast_call, "PyObject *(PyObject *, struct __pyx_obj_6hunter_6_event_Event *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_RefNannyFinishContext(); return 0; @@ -7587,7 +7590,7 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); (void)__Pyx_modinit_variable_import_code(__pyx_mstate); if (unlikely((__Pyx_modinit_function_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Execution code ---*/ - __Pyx_TraceStartFunc("PyInit__tracer", __pyx_f[0], 1, 1, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceStartFunc("PyInit__tracer", __pyx_f[0], 1, 0, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); /* "hunter/_tracer.pyx":2 * # cython: linetrace=True, language_level=3str, freethreading_compatible=True @@ -7725,7 +7728,7 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); * raise TypeError, "no default __reduce__ due to non-trivial __cinit__" * def __setstate_cython__(self, __pyx_state): */ - __Pyx_TraceLine(1,0,0,__PYX_ERR(1, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,1,0,__PYX_ERR(1, 1, __pyx_L1_error)) __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_6hunter_7_tracer_6Tracer_17__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Tracer___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_hunter__tracer, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < 0) __PYX_ERR(1, 1, __pyx_L1_error) @@ -7748,12 +7751,12 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); * import threading * import traceback */ - __Pyx_TraceLine(1,1,0,__PYX_ERR(0, 1, __pyx_L1_error)) + __Pyx_TraceLine(1,0,0,__PYX_ERR(0, 1, __pyx_L1_error)) __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; - __Pyx_TraceReturnValue(Py_None, 1, 0, __PYX_ERR(0, 1, __pyx_L1_error)); + __Pyx_TraceReturnValue(Py_None, 0, 0, __PYX_ERR(0, 1, __pyx_L1_error)); __Pyx_PyMonitoring_ExitScope(0); /*--- Wrapped vars code ---*/ @@ -7762,7 +7765,7 @@ __Pyx_RefNannySetupContext("PyInit__tracer", 0); __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_TraceException(__pyx_lineno, 0, 0); - __Pyx_TraceExceptionUnwind(1, 0); + __Pyx_TraceExceptionUnwind(0, 0); if (__pyx_m) { if (__pyx_mstate->__pyx_d && stringtab_initialized) { __Pyx_AddTraceback("init hunter._tracer", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -8042,37 +8045,37 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pyx, __pyx_mstate->__pyx_n_u_exit, __pyx_k_A_E, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 29, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 28, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 30, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 29, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 31, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 30, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 32, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 31, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 33, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 32, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 34, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 33, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 38, 2}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 37, 2}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self}; __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_src_hunter__tracer_pxd, __pyx_mstate->__pyx_n_u_get, __pyx_k__6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; } @@ -10224,10 +10227,10 @@ static int __Pyx_call_type_traverse(PyObject *o, int always_call, visitproc visi #endif /* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType_3_1_2 -#define __PYX_HAVE_RT_ImportType_3_1_2 -static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name, - size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size) +#ifndef __PYX_HAVE_RT_ImportType_3_1_3 +#define __PYX_HAVE_RT_ImportType_3_1_3 +static PyTypeObject *__Pyx_ImportType_3_1_3(PyObject *module, const char *module_name, const char *class_name, + size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_3 check_size) { PyObject *result = 0; Py_ssize_t basicsize; @@ -10283,7 +10286,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module module_name, class_name, size, basicsize+itemsize); goto bad; } - if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 && + if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_3 && ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) { PyErr_Format(PyExc_ValueError, "%.200s.%.200s size changed, may indicate binary incompatibility. " @@ -10291,7 +10294,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module module_name, class_name, size, basicsize, basicsize+itemsize); goto bad; } - else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) { + else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_3 && (size_t)basicsize > size) { if (PyErr_WarnFormat(NULL, 0, "%.200s.%.200s size changed, may indicate binary incompatibility. " "Expected %zd from C header, got %zd from PyObject", @@ -10407,6 +10410,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject changed = 1; } #endif // CYTHON_METH_FASTCALL +#if !CYTHON_COMPILING_IN_PYPY else if (strcmp(memb->name, "__module__") == 0) { PyObject *descr; assert(memb->type == T_OBJECT); @@ -10421,11 +10425,13 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject } changed = 1; } +#endif // !CYTHON_COMPILING_IN_PYPY } memb++; } } #endif // !CYTHON_COMPILING_IN_LIMITED_API +#if !CYTHON_COMPILING_IN_PYPY slot = spec->slots; while (slot && slot->slot && slot->slot != Py_tp_getset) slot++; @@ -10457,6 +10463,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject ++getset; } } +#endif // !CYTHON_COMPILING_IN_PYPY if (changed) PyType_Modified(type); #endif // PY_VERSION_HEX > 0x030900B1 @@ -10561,6 +10568,13 @@ static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **me /* PyObjectCallMethod0 */ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) { +#if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000)) + PyObject *args[1] = {obj}; + (void) __Pyx_PyObject_GetMethod; + (void) __Pyx_PyObject_CallOneArg; + (void) __Pyx_PyObject_CallNoArg; + return PyObject_VectorcallMethod(method_name, args, 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL); +#else PyObject *method = NULL, *result = NULL; int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); if (likely(is_method)) { @@ -10573,6 +10587,7 @@ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name Py_DECREF(method); bad: return result; +#endif } /* ValidateBasesTuple */ @@ -11160,7 +11175,7 @@ static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyOb } /* CommonTypesMetaclass */ -PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { +static PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) { return PyUnicode_FromString(__PYX_ABI_MODULE_NAME); } static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = { @@ -13489,9 +13504,9 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt } /* FunctionImport */ -#ifndef __PYX_HAVE_RT_ImportFunction_3_1_2 -#define __PYX_HAVE_RT_ImportFunction_3_1_2 -static int __Pyx_ImportFunction_3_1_2(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { +#ifndef __PYX_HAVE_RT_ImportFunction_3_1_3 +#define __PYX_HAVE_RT_ImportFunction_3_1_3 +static int __Pyx_ImportFunction_3_1_3(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { PyObject *d = 0; PyObject *cobj = 0; union { From 8e16a3363f6293ec1732bc20568c7ea32c4e855e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 21 Aug 2025 17:29:03 +0300 Subject: [PATCH 72/80] Use syntax that is allowed in python 3.14. --- tests/sample8errors.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/sample8errors.py b/tests/sample8errors.py index 9acaec2..a3057c0 100644 --- a/tests/sample8errors.py +++ b/tests/sample8errors.py @@ -31,7 +31,7 @@ def silenced2(): def silenced3(): try: error() - finally: + except: return 'mwhahaha' From 7ee84129aa7ede2568bec231d6eda537e13cf97d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 21 Aug 2025 17:29:14 +0300 Subject: [PATCH 73/80] Update envs. --- tox.ini | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tox.ini b/tox.ini index e35a144..68a5be6 100644 --- a/tox.ini +++ b/tox.ini @@ -38,7 +38,7 @@ deps = pytest pytest-benchmark cover: pytest-cov - {py38,py39,py310,py311,py312,py313,py313t}: cython + {py38,py39,py310,py311,py312,py313,py313t,py314,py314t}: cython manhole process-tests setuptools-scm @@ -48,8 +48,8 @@ deps = tzdata ipdb commands = - {py38,py39,py310,py311,py312,py313,py313t}: python tests/setup.py clean --all - {py38,py39,py310,py311,py312,py313,py313t}: python tests/setup.py build_ext --force --inplace + {py38,py39,py310,py311,py312,py313,py313t,py314,py314t}: python tests/setup.py clean --all + {py38,py39,py310,py311,py312,py313,py313t,py314,py314t}: python tests/setup.py build_ext --force --inplace cover: python setup.py clean --all build_ext --force --inplace nocov: {posargs:pytest -vv --ignore=src} cover: {posargs:pytest --cov --cov-report=term-missing --cov-report=xml -vv} From 3f147726ee12e8d3af89281e680fa39fb82493f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 22 Aug 2025 18:42:08 +0300 Subject: [PATCH 74/80] Force ctrace coverage "core". Apparently for 3.14 and up the default is sysmon (which is broken with cython). --- tox.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/tox.ini b/tox.ini index 68a5be6..d80c79f 100644 --- a/tox.ini +++ b/tox.ini @@ -24,6 +24,7 @@ setenv = PYTHONPATH={toxinidir}/tests PYTHONUNBUFFERED=yes PYTHONHUNTERCONFIG= + COVERAGE_CORE=ctrace {docs,pure}: PUREPYTHONHUNTER=yes {docs,pure}: SETUPPY_FORCE_PURE=yes cover: SETUPPY_EXT_COVERAGE=yes From af37b5667b9b3027120606bd00a43d375dc480eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 22 Aug 2025 18:42:26 +0300 Subject: [PATCH 75/80] Force recent build deps. --- ci/requirements.txt | 6 ++++-- pyproject.toml | 2 +- tox.ini | 13 +++++++++---- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/ci/requirements.txt b/ci/requirements.txt index 8577393..c1a2807 100644 --- a/ci/requirements.txt +++ b/ci/requirements.txt @@ -1,3 +1,5 @@ -pip>=24.2 -setuptools>=69 +pip>=25 +setuptools>=80 +setuptools_scm>=8 tox>=4 +virtualenv>=20.34 diff --git a/pyproject.toml b/pyproject.toml index d179d1e..7d51463 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [build-system] requires = [ - "setuptools>=69", + "setuptools>=80", "setuptools_scm>=8", ] build-backend = "setuptools.build_meta" diff --git a/tox.ini b/tox.ini index d80c79f..c972cb0 100644 --- a/tox.ini +++ b/tox.ini @@ -25,6 +25,7 @@ setenv = PYTHONUNBUFFERED=yes PYTHONHUNTERCONFIG= COVERAGE_CORE=ctrace + {docs,pure}: PUREPYTHONHUNTER=yes {docs,pure}: SETUPPY_FORCE_PURE=yes cover: SETUPPY_EXT_COVERAGE=yes @@ -42,7 +43,8 @@ deps = {py38,py39,py310,py311,py312,py313,py313t,py314,py314t}: cython manhole process-tests - setuptools-scm + setuptools>=80 + setuptools_scm>=8 aspectlib six py @@ -62,7 +64,8 @@ deps = readme-renderer pygments isort - setuptools-scm + setuptools>=80 + setuptools_scm>=8 skip_install = true commands = python setup.py check --strict --metadata --restructuredtext @@ -71,7 +74,8 @@ commands = [testenv:cythonize] pip_pre = true deps = - setuptools + setuptools>=80 + setuptools_scm>=8 cython skip_install = true commands = @@ -102,6 +106,7 @@ commands = coverage erase skip_install = true deps = - setuptools + setuptools>=80 + setuptools_scm>=8 coverage cython From c518422b6a52d31704d24caa76a318c619a99dd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 22 Aug 2025 18:44:29 +0300 Subject: [PATCH 76/80] Remove borken anchor. --- docs/cookbook.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cookbook.rst b/docs/cookbook.rst index 19d1385..af49513 100644 --- a/docs/cookbook.rst +++ b/docs/cookbook.rst @@ -141,7 +141,7 @@ Say you want to stop tracing after 1000 events, you'd do this: "Probe" - lightweight tracing ============================= -Based on Robert Brewer's `FunctionProbe `_ +Based on Robert Brewer's `FunctionProbe `_ example. The use-case is that you'd like to trace a huge application and running a tracer (even a cython one) would have a too From e6dd9a68b2828c0697b985cba1ed8aa98cf615ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 22 Aug 2025 20:15:50 +0300 Subject: [PATCH 77/80] Fix some ci/doc issues and bump precommit. --- .pre-commit-config.yaml | 2 +- LICENSE | 2 +- ci/bootstrap.py | 2 -- ci/templates/.github/workflows/github-actions.yml | 3 ++- docs/conf.py | 11 ++++++++++- 5 files changed, 14 insertions(+), 6 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 68c24af..2d81bbc 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,7 +6,7 @@ exclude: '^(.tox/|ci/templates/|src/hunter.(pth|embed)$|src/hunter/vendor/|.bump # Note the order is intentional to avoid multiple passes of the hooks repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.12.9 + rev: v0.12.10 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix, --show-fixes] diff --git a/LICENSE b/LICENSE index d50735b..c774d65 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ BSD 2-Clause License -Copyright (c) 2015-2024, Ionel Cristian Mărieș. All rights reserved. +Copyright (c) 2015-2025, Ionel Cristian Mărieș. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/ci/bootstrap.py b/ci/bootstrap.py index f3c9a7e..ee69e2c 100755 --- a/ci/bootstrap.py +++ b/ci/bootstrap.py @@ -20,8 +20,6 @@ def exec_in_env(): else: bin_path = env_path / 'bin' if not env_path.exists(): - import subprocess - print(f'Making bootstrap env in: {env_path} ...') try: check_call([sys.executable, '-m', 'venv', env_path]) diff --git a/ci/templates/.github/workflows/github-actions.yml b/ci/templates/.github/workflows/github-actions.yml index 34fa743..2c70b41 100644 --- a/ci/templates/.github/workflows/github-actions.yml +++ b/ci/templates/.github/workflows/github-actions.yml @@ -136,5 +136,6 @@ jobs: name: all-wheels - uses: codecov/codecov-action@v5 with: - CODECOV_TOKEN: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %} + verbose: true + token: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %} {{ '' }} diff --git a/docs/conf.py b/docs/conf.py index b9ca1ed..be08cc6 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -39,9 +39,18 @@ html_theme = 'furo' html_theme_options = { - 'githuburl': 'https://github.com/ionelmc/python-hunter/', + 'source_repository': 'https://github.com/ionelmc/python-hunter/', + 'source_branch': 'master', + 'source_directory': 'docs/', + 'footer_icons': [ + { + 'url': 'https://github.com/ionelmc/python-hunter/', + 'html': 'github.com/ionelmc/python-hunter', + }, + ], } + html_use_smartypants = True html_last_updated_fmt = '%b %d, %Y' html_split_index = False From 6b3a6048a9579762e4a61d6345391c77b860d726 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Fri, 22 Aug 2025 21:49:18 +0300 Subject: [PATCH 78/80] Use ctrace on cython envs (non-pypy). --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index c972cb0..f8b6465 100644 --- a/tox.ini +++ b/tox.ini @@ -24,7 +24,7 @@ setenv = PYTHONPATH={toxinidir}/tests PYTHONUNBUFFERED=yes PYTHONHUNTERCONFIG= - COVERAGE_CORE=ctrace + cython: COVERAGE_CORE=ctrace {docs,pure}: PUREPYTHONHUNTER=yes {docs,pure}: SETUPPY_FORCE_PURE=yes From 84dacd41622be9718ca6255f25bab7685353bbcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Sat, 23 Aug 2025 00:11:14 +0300 Subject: [PATCH 79/80] Update changelog. --- CHANGELOG.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 17b243d..561731b 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,12 @@ Changelog ========= +3.9.0 (2025-08-22) +------------------ + +* Added support and wheels for Python 3.14. +* Modernized packaging to have metadata in ``pyproject.toml``. + 3.8.0 (2025-07-11) ------------------ From b29fb483a14db7cedbb68d354ffd6188c0415c68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Sat, 23 Aug 2025 00:11:31 +0300 Subject: [PATCH 80/80] =?UTF-8?q?Bump=20version:=203.8.0=20=E2=86=92=203.9?= =?UTF-8?q?.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .bumpversion.cfg | 2 +- .cookiecutterrc | 2 +- README.rst | 4 ++-- docs/conf.py | 2 +- pyproject.toml | 2 +- src/hunter/__init__.py | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index b2230a4..e37a7bf 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.8.0 +current_version = 3.9.0 commit = True tag = True diff --git a/.cookiecutterrc b/.cookiecutterrc index 33520a4..dea7b0c 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -40,7 +40,7 @@ default_context: sphinx_theme: furo test_matrix_separate_coverage: 'yes' tests_inside_package: 'no' - version: 3.8.0 + version: 3.9.0 version_manager: bump2version website: https://blog.ionelmc.ro year_from: '2015' diff --git a/README.rst b/README.rst index ff0b51c..2def86d 100644 --- a/README.rst +++ b/README.rst @@ -41,9 +41,9 @@ Overview :alt: Supported implementations :target: https://pypi.org/project/hunter -.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-hunter/v3.8.0.svg +.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-hunter/v3.9.0.svg :alt: Commits since latest release - :target: https://github.com/ionelmc/python-hunter/compare/v3.8.0...master + :target: https://github.com/ionelmc/python-hunter/compare/v3.9.0...master diff --git a/docs/conf.py b/docs/conf.py index be08cc6..20ebe57 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -28,7 +28,7 @@ import traceback traceback.print_exc() - version = release = '3.8.0' + version = release = '3.9.0' pygments_style = 'trac' templates_path = ['.'] diff --git a/pyproject.toml b/pyproject.toml index 7d51463..9c1450c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -66,7 +66,7 @@ hunter-trace = "hunter.remote:main" [tool.setuptools_scm] local_scheme = "dirty-tag" write_to = "src/hunter/_version.py" -fallback_version = "3.8.0" +fallback_version = "3.9.0" [tool.ruff] extend-exclude = ["static", "ci/templates"] diff --git a/src/hunter/__init__.py b/src/hunter/__init__.py index f05ea67..8616a59 100644 --- a/src/hunter/__init__.py +++ b/src/hunter/__init__.py @@ -43,7 +43,7 @@ try: from ._version import version as __version__ except ImportError: - __version__ = '3.8.0' + __version__ = '3.9.0' __all__ = ( 'And',